summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/static_checks.yml2
-rw-r--r--.mailmap1
-rw-r--r--AUTHORS.md5
-rw-r--r--DONORS.md45
-rw-r--r--README.md19
-rw-r--r--SConstruct1
-rw-r--r--core/core_bind.cpp14
-rw-r--r--core/core_bind.h1
-rw-r--r--core/core_builders.py4
-rw-r--r--core/core_constants.cpp2
-rw-r--r--core/input/gamecontrollerdb.txt1038
-rw-r--r--core/input/input.cpp13
-rw-r--r--core/io/resource.h1
-rw-r--r--core/io/resource_format_binary.cpp8
-rw-r--r--core/math/aabb.cpp2
-rw-r--r--core/math/aabb.h4
-rw-r--r--core/math/quaternion.h7
-rw-r--r--core/object/object.cpp4
-rw-r--r--core/object/object.h2
-rw-r--r--core/object/script_language.cpp2
-rw-r--r--core/os/os.cpp9
-rw-r--r--core/os/os.h1
-rw-r--r--core/string/translation.cpp2
-rw-r--r--core/templates/ordered_hash_map.h6
-rw-r--r--core/templates/thread_work_pool.h24
-rw-r--r--core/typedefs.h3
-rw-r--r--core/variant/array.cpp66
-rw-r--r--core/variant/array.h3
-rw-r--r--core/variant/dictionary.cpp62
-rw-r--r--core/variant/dictionary.h3
-rw-r--r--core/variant/variant.cpp84
-rw-r--r--core/variant/variant.h8
-rw-r--r--core/variant/variant_call.cpp17
-rw-r--r--core/variant/variant_parser.cpp73
-rw-r--r--core/variant/variant_parser.h2
-rw-r--r--core/variant/variant_setget.cpp12
-rw-r--r--doc/classes/@GlobalScope.xml51
-rw-r--r--doc/classes/AABB.xml20
-rw-r--r--doc/classes/Area3D.xml2
-rw-r--r--doc/classes/BitMap.xml2
-rw-r--r--doc/classes/CPUParticles3D.xml2
-rw-r--r--doc/classes/CodeEdit.xml1
-rw-r--r--doc/classes/EditorProperty.xml10
-rw-r--r--doc/classes/EditorResourcePicker.xml3
-rw-r--r--doc/classes/Environment.xml2
-rw-r--r--doc/classes/GradientTexture1D.xml (renamed from doc/classes/GradientTexture.xml)4
-rw-r--r--doc/classes/InputEventScreenDrag.xml2
-rw-r--r--doc/classes/MenuButton.xml3
-rw-r--r--doc/classes/NavigationObstacle2D.xml8
-rw-r--r--doc/classes/NavigationObstacle3D.xml8
-rw-r--r--doc/classes/OS.xml14
-rw-r--r--doc/classes/PackedScene.xml4
-rw-r--r--doc/classes/ParticlesMaterial.xml2
-rw-r--r--doc/classes/PhysicalBone3D.xml22
-rw-r--r--doc/classes/PhysicsDirectSpaceState2D.xml50
-rw-r--r--doc/classes/PhysicsDirectSpaceState3D.xml35
-rw-r--r--doc/classes/PhysicsPointQueryParameters2D.xml31
-rw-r--r--doc/classes/PhysicsPointQueryParameters3D.xml28
-rw-r--r--doc/classes/PhysicsRayQueryParameters2D.xml31
-rw-r--r--doc/classes/PhysicsRayQueryParameters3D.xml31
-rw-r--r--doc/classes/PhysicsServer2D.xml24
-rw-r--r--doc/classes/PhysicsServer3D.xml24
-rw-r--r--doc/classes/PhysicsShapeQueryParameters2D.xml2
-rw-r--r--doc/classes/PhysicsShapeQueryParameters3D.xml5
-rw-r--r--doc/classes/PopupMenu.xml9
-rw-r--r--doc/classes/ProjectSettings.xml5
-rw-r--r--doc/classes/RenderingServer.xml7
-rw-r--r--doc/classes/RigidDynamicBody2D.xml20
-rw-r--r--doc/classes/RigidDynamicBody3D.xml20
-rw-r--r--doc/classes/SceneState.xml4
-rw-r--r--doc/classes/String.xml14
-rw-r--r--doc/classes/TileMapPattern.xml2
-rw-r--r--doc/classes/Tween.xml12
-rw-r--r--doc/classes/VisualShaderNodeParticleEmitter.xml6
-rwxr-xr-xdoc/tools/make_rst.py218
-rw-r--r--doc/translations/ar.po1476
-rw-r--r--doc/translations/ca.po1966
-rw-r--r--doc/translations/classes.pot1465
-rw-r--r--doc/translations/cs.po1605
-rw-r--r--doc/translations/de.po2063
-rw-r--r--doc/translations/el.po1465
-rw-r--r--doc/translations/es.po1567
-rw-r--r--doc/translations/et.po69329
-rw-r--r--doc/translations/fa.po1465
-rw-r--r--doc/translations/fi.po1481
-rw-r--r--doc/translations/fil.po1465
-rw-r--r--doc/translations/fr.po1508
-rw-r--r--doc/translations/gl.po1465
-rw-r--r--doc/translations/hi.po1465
-rw-r--r--doc/translations/hu.po1471
-rw-r--r--doc/translations/id.po1465
-rw-r--r--doc/translations/it.po1482
-rw-r--r--doc/translations/ja.po1524
-rw-r--r--doc/translations/ko.po1472
-rw-r--r--doc/translations/lv.po1500
-rw-r--r--doc/translations/mr.po1465
-rw-r--r--doc/translations/nb.po69345
-rw-r--r--doc/translations/nl.po1465
-rw-r--r--doc/translations/pl.po1489
-rw-r--r--doc/translations/pt_BR.po1638
-rw-r--r--doc/translations/ro.po1465
-rw-r--r--doc/translations/ru.po1857
-rw-r--r--doc/translations/sk.po1465
-rw-r--r--doc/translations/sr_Cyrl.po1465
-rw-r--r--doc/translations/sv.po69336
-rw-r--r--doc/translations/th.po1465
-rw-r--r--doc/translations/tr.po1465
-rw-r--r--doc/translations/uk.po1465
-rw-r--r--doc/translations/vi.po1465
-rw-r--r--doc/translations/zh_CN.po6109
-rw-r--r--doc/translations/zh_TW.po1465
-rw-r--r--drivers/gles3/rasterizer_storage_gles3.cpp2
-rw-r--r--drivers/pulseaudio/audio_driver_pulseaudio.cpp25
-rw-r--r--editor/SCsub4
-rw-r--r--editor/editor_builders.py8
-rw-r--r--editor/editor_export.cpp8
-rw-r--r--editor/editor_inspector.cpp333
-rw-r--r--editor/editor_inspector.h13
-rw-r--r--editor/editor_node.cpp18
-rw-r--r--editor/editor_properties.cpp37
-rw-r--r--editor/editor_properties.h3
-rw-r--r--editor/editor_properties_array_dict.cpp21
-rw-r--r--editor/editor_resource_picker.cpp14
-rw-r--r--editor/editor_resource_picker.h2
-rw-r--r--editor/editor_run.cpp2
-rw-r--r--editor/editor_settings.cpp4
-rw-r--r--editor/editor_toaster.cpp7
-rw-r--r--editor/icons/GradientTexture1D.svg (renamed from editor/icons/GradientTexture.svg)0
-rw-r--r--editor/icons/InterpCubic.svg2
-rw-r--r--editor/icons/InterpLinear.svg2
-rw-r--r--editor/icons/InterpWrapClamp.svg2
-rw-r--r--editor/icons/InterpWrapLoop.svg2
-rw-r--r--editor/icons/TrackCapture.svg2
-rw-r--r--editor/icons/TrackDiscrete.svg2
-rw-r--r--editor/icons/TrackTrigger.svg2
-rw-r--r--editor/import/editor_import_collada.cpp4
-rw-r--r--editor/import/resource_importer_obj.cpp2
-rw-r--r--editor/import/resource_importer_scene.cpp20
-rw-r--r--editor/import/resource_importer_texture.cpp3
-rw-r--r--editor/import/scene_import_settings.cpp2
-rw-r--r--editor/plugins/canvas_item_editor_plugin.cpp6
-rw-r--r--editor/plugins/editor_preview_plugins.cpp56
-rw-r--r--editor/plugins/editor_preview_plugins.h32
-rw-r--r--editor/plugins/mesh_instance_3d_editor_plugin.cpp12
-rw-r--r--editor/plugins/node_3d_editor_plugin.cpp28
-rw-r--r--editor/plugins/script_editor_plugin.cpp30
-rw-r--r--editor/plugins/script_text_editor.cpp4
-rw-r--r--editor/plugins/shader_editor_plugin.cpp5
-rw-r--r--editor/plugins/text_editor.cpp2
-rw-r--r--editor/plugins/theme_editor_plugin.cpp2
-rw-r--r--editor/plugins/theme_editor_plugin.h2
-rw-r--r--editor/plugins/tiles/tile_map_editor.cpp703
-rw-r--r--editor/plugins/tiles/tile_map_editor.h37
-rw-r--r--editor/plugins/tiles/tile_set_editor.cpp10
-rw-r--r--editor/plugins/tiles/tile_set_editor.h6
-rw-r--r--editor/plugins/tiles/tile_set_scenes_collection_source_editor.cpp10
-rw-r--r--editor/plugins/tiles/tile_set_scenes_collection_source_editor.h5
-rw-r--r--editor/plugins/tiles/tiles_editor_plugin.cpp19
-rw-r--r--editor/plugins/tiles/tiles_editor_plugin.h6
-rw-r--r--editor/plugins/visual_shader_editor_plugin.cpp236
-rw-r--r--editor/plugins/visual_shader_editor_plugin.h27
-rw-r--r--editor/project_manager.cpp22
-rw-r--r--editor/property_editor.cpp44
-rw-r--r--editor/property_editor.h1
-rw-r--r--editor/scene_tree_dock.cpp34
-rw-r--r--editor/scene_tree_dock.h4
-rw-r--r--editor/shader_create_dialog.cpp7
-rw-r--r--editor/shader_create_dialog.h2
-rw-r--r--editor/translations/af.po4
-rw-r--r--editor/translations/ar.po29
-rw-r--r--editor/translations/az.po4
-rw-r--r--editor/translations/bg.po4
-rw-r--r--editor/translations/bn.po8
-rw-r--r--editor/translations/br.po4
-rw-r--r--editor/translations/ca.po8
-rw-r--r--editor/translations/cs.po600
-rw-r--r--editor/translations/da.po95
-rw-r--r--editor/translations/de.po20
-rw-r--r--editor/translations/editor.pot4
-rw-r--r--editor/translations/el.po8
-rw-r--r--editor/translations/eo.po8
-rw-r--r--editor/translations/es.po15
-rw-r--r--editor/translations/es_AR.po8
-rw-r--r--editor/translations/et.po4
-rw-r--r--editor/translations/eu.po4
-rw-r--r--editor/translations/fa.po4
-rw-r--r--editor/translations/fi.po32
-rw-r--r--editor/translations/fil.po4
-rw-r--r--editor/translations/fr.po8
-rw-r--r--editor/translations/ga.po4
-rw-r--r--editor/translations/gl.po8
-rw-r--r--editor/translations/he.po8
-rw-r--r--editor/translations/hi.po19
-rw-r--r--editor/translations/hr.po4
-rw-r--r--editor/translations/hu.po22
-rw-r--r--editor/translations/id.po8
-rw-r--r--editor/translations/is.po4
-rw-r--r--editor/translations/it.po14
-rw-r--r--editor/translations/ja.po8
-rw-r--r--editor/translations/ka.po4
-rw-r--r--editor/translations/km.po4
-rw-r--r--editor/translations/ko.po188
-rw-r--r--editor/translations/lt.po4
-rw-r--r--editor/translations/lv.po1710
-rw-r--r--editor/translations/mi.po4
-rw-r--r--editor/translations/mk.po4
-rw-r--r--editor/translations/ml.po4
-rw-r--r--editor/translations/mr.po4
-rw-r--r--editor/translations/ms.po4
-rw-r--r--editor/translations/nb.po12
-rw-r--r--editor/translations/nl.po20
-rw-r--r--editor/translations/or.po4
-rw-r--r--editor/translations/pl.po46
-rw-r--r--editor/translations/pr.po4
-rw-r--r--editor/translations/pt.po8
-rw-r--r--editor/translations/pt_BR.po273
-rw-r--r--editor/translations/ro.po4
-rw-r--r--editor/translations/ru.po8
-rw-r--r--editor/translations/si.po4
-rw-r--r--editor/translations/sk.po4
-rw-r--r--editor/translations/sl.po4
-rw-r--r--editor/translations/sq.po4
-rw-r--r--editor/translations/sr_Cyrl.po8
-rw-r--r--editor/translations/sr_Latn.po4
-rw-r--r--editor/translations/sv.po178
-rw-r--r--editor/translations/ta.po4
-rw-r--r--editor/translations/te.po4
-rw-r--r--editor/translations/th.po8
-rw-r--r--editor/translations/tr.po8
-rw-r--r--editor/translations/tt.po4
-rw-r--r--editor/translations/tzm.po4
-rw-r--r--editor/translations/uk.po8
-rw-r--r--editor/translations/ur_PK.po4
-rw-r--r--editor/translations/vi.po8
-rw-r--r--editor/translations/zh_CN.po8
-rw-r--r--editor/translations/zh_HK.po4
-rw-r--r--editor/translations/zh_TW.po8
-rw-r--r--main/main.cpp7
-rw-r--r--modules/bullet/area_bullet.cpp17
-rw-r--r--modules/bullet/area_bullet.h5
-rw-r--r--modules/bullet/bullet_physics_server.cpp8
-rw-r--r--modules/bullet/bullet_physics_server.h4
-rw-r--r--modules/csg/csg_shape.cpp4
-rw-r--r--modules/denoise/config.py8
-rw-r--r--modules/fbx/editor_scene_importer_fbx.cpp2
-rw-r--r--modules/gdnative/include/nativescript/godot_nativescript.h2
-rw-r--r--modules/gdnative/videodecoder/video_stream_gdnative.cpp2
-rw-r--r--modules/gdscript/gdscript.cpp4
-rw-r--r--modules/gdscript/gdscript_tokenizer.cpp9
-rw-r--r--modules/gdscript/gdscript_tokenizer.h1
-rw-r--r--modules/gdscript/language_server/gdscript_extend_parser.cpp2
-rw-r--r--modules/gdscript/tests/scripts/parser/errors/mixing_tabs_spaces.out2
-rw-r--r--modules/gltf/doc_classes/GLTFMesh.xml2
-rw-r--r--modules/gltf/gltf_document.cpp53
-rw-r--r--modules/gltf/gltf_mesh.cpp11
-rw-r--r--modules/gltf/gltf_mesh.h3
-rw-r--r--modules/minimp3/audio_stream_mp3.cpp6
-rw-r--r--modules/mono/build_scripts/make_android_mono_config.py4
-rw-r--r--modules/mono/csharp_script.cpp2
-rw-r--r--modules/mono/glue/GodotSharp/GodotSharp/Core/Quaternion.cs28
-rw-r--r--modules/ogg/ogg_packet_sequence.cpp6
-rw-r--r--modules/opensimplex/doc_classes/NoiseTexture.xml5
-rw-r--r--modules/opensimplex/noise_texture.cpp2
-rw-r--r--modules/raycast/config.py2
-rw-r--r--modules/theora/video_stream_theora.cpp2
-rw-r--r--modules/visual_script/visual_script.cpp4
-rw-r--r--modules/visual_script/visual_script_editor.cpp270
-rw-r--r--modules/visual_script/visual_script_editor.h2
-rw-r--r--modules/visual_script/visual_script_expression.cpp2
-rw-r--r--modules/visual_script/visual_script_func_nodes.cpp12
-rw-r--r--modules/visual_script/visual_script_nodes.cpp6
-rw-r--r--modules/visual_script/visual_script_yield_nodes.cpp4
-rw-r--r--modules/vorbis/audio_stream_ogg_vorbis.cpp2
-rw-r--r--platform/android/export/export_plugin.cpp4
-rw-r--r--platform/android/java/app/config.gradle4
-rw-r--r--platform/android/java/lib/AndroidManifest.xml3
-rw-r--r--platform/android/java/lib/src/org/godotengine/godot/Godot.java2
-rw-r--r--platform/iphone/export/export_plugin.cpp10
-rw-r--r--platform/javascript/export/export_plugin.cpp4
-rw-r--r--platform/linuxbsd/detect.py12
-rw-r--r--platform/linuxbsd/display_server_x11.cpp287
-rw-r--r--platform/osx/SCsub2
-rw-r--r--platform/osx/context_gl_osx.mm161
-rw-r--r--platform/osx/detect.py7
-rw-r--r--platform/osx/display_server_osx.h13
-rw-r--r--platform/osx/display_server_osx.mm130
-rw-r--r--platform/osx/export/export_plugin.cpp17
-rw-r--r--platform/osx/gl_manager_osx.h106
-rw-r--r--platform/osx/gl_manager_osx.mm233
-rw-r--r--platform/osx/os_osx.h4
-rw-r--r--platform/osx/os_osx.mm81
-rw-r--r--platform/windows/os_windows.cpp4
-rw-r--r--scene/2d/area_2d.cpp12
-rw-r--r--scene/2d/audio_stream_player_2d.cpp8
-rw-r--r--scene/2d/camera_2d.cpp2
-rw-r--r--scene/2d/cpu_particles_2d.cpp2
-rw-r--r--scene/2d/light_2d.cpp2
-rw-r--r--scene/2d/navigation_obstacle_2d.cpp65
-rw-r--r--scene/2d/navigation_obstacle_2d.h17
-rw-r--r--scene/2d/navigation_region_2d.cpp6
-rw-r--r--scene/2d/physics_body_2d.cpp39
-rw-r--r--scene/2d/physics_body_2d.h20
-rw-r--r--scene/2d/polygon_2d.cpp11
-rw-r--r--scene/2d/ray_cast_2d.cpp11
-rw-r--r--scene/2d/sprite_2d.cpp2
-rw-r--r--scene/2d/tile_map.cpp21
-rw-r--r--scene/3d/area_3d.cpp11
-rw-r--r--scene/3d/audio_stream_player_3d.cpp8
-rw-r--r--scene/3d/camera_3d.cpp6
-rw-r--r--scene/3d/cpu_particles_3d.cpp2
-rw-r--r--scene/3d/decal.cpp2
-rw-r--r--scene/3d/fog_volume.cpp1
-rw-r--r--scene/3d/light_3d.cpp6
-rw-r--r--scene/3d/lightmap_gi.cpp6
-rw-r--r--scene/3d/mesh_instance_3d.cpp14
-rw-r--r--scene/3d/navigation_obstacle_3d.cpp65
-rw-r--r--scene/3d/navigation_obstacle_3d.h17
-rw-r--r--scene/3d/node_3d.cpp2
-rw-r--r--scene/3d/occluder_instance_3d.cpp4
-rw-r--r--scene/3d/physics_body_3d.cpp84
-rw-r--r--scene/3d/physics_body_3d.h40
-rw-r--r--scene/3d/ray_cast_3d.cpp11
-rw-r--r--scene/3d/reflection_probe.cpp2
-rw-r--r--scene/3d/skeleton_3d.cpp14
-rw-r--r--scene/3d/spring_arm_3d.cpp27
-rw-r--r--scene/3d/vehicle_body_3d.cpp8
-rw-r--r--scene/3d/voxel_gi.cpp4
-rw-r--r--scene/animation/animation_blend_space_1d.cpp12
-rw-r--r--scene/animation/animation_blend_space_2d.cpp20
-rw-r--r--scene/animation/animation_blend_tree.cpp8
-rw-r--r--scene/animation/animation_node_state_machine.cpp12
-rw-r--r--scene/animation/animation_player.cpp8
-rw-r--r--scene/animation/animation_tree.cpp4
-rw-r--r--scene/animation/tween.cpp2
-rw-r--r--scene/gui/box_container.cpp2
-rw-r--r--scene/gui/item_list.cpp3
-rw-r--r--scene/gui/line_edit.cpp2
-rw-r--r--scene/gui/menu_button.cpp74
-rw-r--r--scene/gui/menu_button.h9
-rw-r--r--scene/gui/option_button.cpp2
-rw-r--r--scene/gui/popup.cpp2
-rw-r--r--scene/gui/popup_menu.cpp217
-rw-r--r--scene/gui/popup_menu.h8
-rw-r--r--scene/main/canvas_layer.cpp2
-rw-r--r--scene/main/node.cpp64
-rw-r--r--scene/main/node.h8
-rw-r--r--scene/main/resource_preloader.cpp2
-rw-r--r--scene/main/viewport.cpp17
-rw-r--r--scene/property_utils.cpp185
-rw-r--r--scene/property_utils.h (renamed from platform/osx/context_gl_osx.h)57
-rw-r--r--scene/register_scene_types.cpp3
-rw-r--r--scene/resources/animation.cpp18
-rw-r--r--scene/resources/audio_stream_sample.cpp2
-rw-r--r--scene/resources/bit_map.cpp2
-rw-r--r--scene/resources/camera_effects.cpp2
-rw-r--r--scene/resources/concave_polygon_shape_3d.cpp2
-rw-r--r--scene/resources/curve.cpp6
-rw-r--r--scene/resources/environment.cpp20
-rw-r--r--scene/resources/importer_mesh.cpp2
-rw-r--r--scene/resources/material.cpp12
-rw-r--r--scene/resources/mesh.cpp4
-rw-r--r--scene/resources/mesh_data_tool.cpp2
-rw-r--r--scene/resources/navigation_mesh.cpp4
-rw-r--r--scene/resources/packed_scene.cpp218
-rw-r--r--scene/resources/packed_scene.h16
-rw-r--r--scene/resources/particles_material.cpp2
-rw-r--r--scene/resources/polygon_path_finder.cpp2
-rw-r--r--scene/resources/resource_format_text.cpp6
-rw-r--r--scene/resources/shader.cpp2
-rw-r--r--scene/resources/skeleton_modification_2d_jiggle.cpp8
-rw-r--r--scene/resources/skeleton_modification_3d_jiggle.cpp8
-rw-r--r--scene/resources/skin.cpp2
-rw-r--r--scene/resources/sprite_frames.cpp2
-rw-r--r--scene/resources/style_box.cpp2
-rw-r--r--scene/resources/texture.cpp50
-rw-r--r--scene/resources/texture.h11
-rw-r--r--scene/resources/tile_set.cpp148
-rw-r--r--scene/resources/tile_set.h27
-rw-r--r--scene/resources/visual_shader.cpp34
-rw-r--r--scene/resources/visual_shader.h1
-rw-r--r--scene/resources/visual_shader_particle_nodes.cpp81
-rw-r--r--scene/resources/visual_shader_particle_nodes.h11
-rw-r--r--scene/resources/world_3d.cpp4
-rw-r--r--servers/audio_server.cpp16
-rw-r--r--servers/physics_2d/godot_area_2d.cpp132
-rw-r--r--servers/physics_2d/godot_area_2d.h14
-rw-r--r--servers/physics_2d/godot_body_2d.cpp86
-rw-r--r--servers/physics_2d/godot_body_2d.h18
-rw-r--r--servers/physics_2d/godot_body_direct_state_2d.cpp4
-rw-r--r--servers/physics_2d/godot_physics_server_2d.cpp8
-rw-r--r--servers/physics_2d/godot_physics_server_2d.h4
-rw-r--r--servers/physics_2d/godot_space_2d.cpp109
-rw-r--r--servers/physics_2d/godot_space_2d.h15
-rw-r--r--servers/physics_2d/godot_step_2d.cpp6
-rw-r--r--servers/physics_3d/godot_area_3d.cpp130
-rw-r--r--servers/physics_3d/godot_area_3d.h15
-rw-r--r--servers/physics_3d/godot_body_3d.cpp78
-rw-r--r--servers/physics_3d/godot_body_3d.h15
-rw-r--r--servers/physics_3d/godot_body_direct_state_3d.cpp4
-rw-r--r--servers/physics_3d/godot_collision_object_3d.cpp2
-rw-r--r--servers/physics_3d/godot_physics_server_3d.cpp8
-rw-r--r--servers/physics_3d/godot_physics_server_3d.h4
-rw-r--r--servers/physics_3d/godot_shape_3d.h14
-rw-r--r--servers/physics_3d/godot_space_3d.cpp92
-rw-r--r--servers/physics_3d/godot_space_3d.h12
-rw-r--r--servers/physics_3d/godot_step_3d.cpp6
-rw-r--r--servers/physics_server_2d.cpp266
-rw-r--r--servers/physics_server_2d.h215
-rw-r--r--servers/physics_server_2d_wrap_mt.h4
-rw-r--r--servers/physics_server_3d.cpp217
-rw-r--r--servers/physics_server_3d.h215
-rw-r--r--servers/physics_server_3d_wrap_mt.h4
-rw-r--r--servers/register_server_types.cpp8
-rw-r--r--servers/rendering/rasterizer_dummy.h2
-rw-r--r--servers/rendering/renderer_rd/renderer_storage_rd.cpp3
-rw-r--r--servers/rendering/rendering_device_binds.h2
-rw-r--r--servers/rendering/rendering_server_default.cpp26
-rw-r--r--servers/rendering/rendering_server_default.h10
-rw-r--r--servers/rendering/shader_language.cpp9
-rw-r--r--servers/rendering_server.cpp2
-rw-r--r--servers/rendering_server.h4
-rw-r--r--tests/test_aabb.h30
-rw-r--r--tests/test_array.h234
-rw-r--r--tests/test_dictionary.h367
-rw-r--r--tests/test_macros.h1
-rw-r--r--tests/test_variant.h211
-rw-r--r--thirdparty/README.md2
-rw-r--r--thirdparty/harfbuzz/src/hb-aat-layout-bsln-table.hh4
-rw-r--r--thirdparty/harfbuzz/src/hb-aat-layout-common.hh18
-rw-r--r--thirdparty/harfbuzz/src/hb-aat-layout-just-table.hh8
-rw-r--r--thirdparty/harfbuzz/src/hb-aat-layout-kerx-table.hh14
-rw-r--r--thirdparty/harfbuzz/src/hb-aat-layout-morx-table.hh42
-rw-r--r--thirdparty/harfbuzz/src/hb-algs.hh99
-rw-r--r--thirdparty/harfbuzz/src/hb-array.hh14
-rw-r--r--thirdparty/harfbuzz/src/hb-atomic.hh10
-rw-r--r--thirdparty/harfbuzz/src/hb-bimap.hh15
-rw-r--r--thirdparty/harfbuzz/src/hb-bit-set-invertible.hh18
-rw-r--r--thirdparty/harfbuzz/src/hb-bit-set.hh25
-rw-r--r--thirdparty/harfbuzz/src/hb-buffer.cc42
-rw-r--r--thirdparty/harfbuzz/src/hb-buffer.h7
-rw-r--r--thirdparty/harfbuzz/src/hb-buffer.hh1
-rw-r--r--thirdparty/harfbuzz/src/hb-debug.hh8
-rw-r--r--thirdparty/harfbuzz/src/hb-directwrite.cc36
-rw-r--r--thirdparty/harfbuzz/src/hb-dispatch.hh2
-rw-r--r--thirdparty/harfbuzz/src/hb-font.hh14
-rw-r--r--thirdparty/harfbuzz/src/hb-iter.hh14
-rw-r--r--thirdparty/harfbuzz/src/hb-map.hh69
-rw-r--r--thirdparty/harfbuzz/src/hb-meta.hh197
-rw-r--r--thirdparty/harfbuzz/src/hb-mutex.hh37
-rw-r--r--thirdparty/harfbuzz/src/hb-open-type.hh49
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-cff-common.hh2
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-cmap-table.hh4
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-color-cbdt-table.hh8
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-color-colr-table.hh741
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-color-colrv1-closure.hh53
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-glyf-table.hh4
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-head-table.hh4
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-kern-table.hh8
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-base-table.hh2
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-common.hh118
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-gdef-table.hh10
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-gpos-table.hh52
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-gsub-table.hh156
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-gsubgpos.hh251
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout-jstf-table.hh2
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout.cc44
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-layout.hh6
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-math-table.hh333
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-name.h30
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic-fallback.hh14
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic.cc2
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-indic.cc3
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-khmer.hh4
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar-machine.hh473
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.cc2
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.hh10
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh533
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-use-table.hh350
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-complex-use.cc1
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-normalize.cc5
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape-normalize.hh1
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-shape.cc12
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-var-common.hh264
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-var-hvar-table.hh88
-rw-r--r--thirdparty/harfbuzz/src/hb-ot-vorg-table.hh2
-rw-r--r--thirdparty/harfbuzz/src/hb-repacker.hh737
-rw-r--r--thirdparty/harfbuzz/src/hb-sanitize.hh6
-rw-r--r--thirdparty/harfbuzz/src/hb-serialize.hh62
-rw-r--r--thirdparty/harfbuzz/src/hb-set-digest.hh14
-rw-r--r--thirdparty/harfbuzz/src/hb-set.hh32
-rw-r--r--thirdparty/harfbuzz/src/hb-style.cc4
-rw-r--r--thirdparty/harfbuzz/src/hb-subset-input.hh22
-rw-r--r--thirdparty/harfbuzz/src/hb-subset-plan.cc76
-rw-r--r--thirdparty/harfbuzz/src/hb-subset-plan.hh1
-rw-r--r--thirdparty/harfbuzz/src/hb-subset.cc4
-rw-r--r--thirdparty/harfbuzz/src/hb-subset.hh6
-rw-r--r--thirdparty/harfbuzz/src/hb-unicode.hh5
-rw-r--r--thirdparty/harfbuzz/src/hb-vector.hh57
-rw-r--r--thirdparty/harfbuzz/src/hb-version.h6
-rw-r--r--thirdparty/harfbuzz/src/hb.hh1
500 files changed, 251123 insertions, 31314 deletions
diff --git a/.github/workflows/static_checks.yml b/.github/workflows/static_checks.yml
index e457066c6c..1f8888885a 100644
--- a/.github/workflows/static_checks.yml
+++ b/.github/workflows/static_checks.yml
@@ -27,7 +27,7 @@ jobs:
sudo apt-get install -qq dos2unix recode clang-format-13
sudo update-alternatives --remove-all clang-format
sudo update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-13 100
- sudo pip3 install black==20.8b1 pygments
+ sudo pip3 install black==21.10b0 pygments
- name: File formatting checks (file_format.sh)
run: |
diff --git a/.mailmap b/.mailmap
index 1fa6466f4d..0c01b02681 100644
--- a/.mailmap
+++ b/.mailmap
@@ -82,6 +82,7 @@ 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>
+Manuele Finocchiaro <m4nu3lf@gmail.com>
Manuel Strey <manuel.strey@gmx.de>
Marcel Admiraal <madmiraal@users.noreply.github.com>
Marcelo Fernandez <marcelofg55@gmail.com>
diff --git a/AUTHORS.md b/AUTHORS.md
index a86bc3ffe4..f58afc2b17 100644
--- a/AUTHORS.md
+++ b/AUTHORS.md
@@ -49,6 +49,7 @@ name is available.
Bhuvan Vemula (Bhu1-V)
Błażej Szczygieł (zaps166)
Bojidar Marinov (bojidar-bg)
+ Brian Semrau (briansemrau)
Bruno Lourenço (MadEqua)
bruvzg
Cameron Reikes (creikey)
@@ -108,6 +109,7 @@ name is available.
Ilaria Cislaghi (QbieShay)
Indah Sylvia (ISylvox)
J08nY
+ Jake Young (Duroxxigar)
Jakub Grzesik (kubecz3k)
James Buck (jbuck3)
Jean-Michel Bernard (jmb462)
@@ -133,8 +135,8 @@ name is available.
Liz Haas (27thLiz)
Lucien Menassol (Kanabenki)
Lyuma
- m4nu3lf
Maganty Rushyendra (mrushyendra)
+ Manuele Finocchiaro (m4nu3lf)
Marcel Admiraal (madmiraal)
Marcelo Fernandez (marcelofg55)
Marc Gilleron (Zylann)
@@ -212,6 +214,7 @@ name is available.
박한얼 (volzhs)
V. Vamsi Krishna (vkbsb)
Wilhem Barbier (nounoursheureux)
+ William Deurwaarder (williamd67)
Will Nations (willnationsdev)
Wilson E. Alvarez (Rubonnek)
Xavier Cho (mysticfall)
diff --git a/DONORS.md b/DONORS.md
index 0bc6d5898f..33a68650d9 100644
--- a/DONORS.md
+++ b/DONORS.md
@@ -40,8 +40,8 @@ generous deed immortalized in the next stable release of Godot Engine.
## Mini sponsors
AD Ford
- alex brown
Andrew Bowen
+ Andrew Dunai
Angry Skull
anti666
blurp
@@ -59,7 +59,6 @@ generous deed immortalized in the next stable release of Godot Engine.
GameDev.net
Hein-Pieter van Braam
Jasper Brooks
- Jay Sistar
Jeffery Chiu
John G Gentzel
Jonah Stich
@@ -119,9 +118,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Markus Wiesner
Mathieu
Matthew Hillier
- Michael
Mick
- Monster Vial
Officine Pixel S.n.c.
Patrick Brock
Paul E Hansen
@@ -149,6 +146,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Adam Nakonieczny
Adam Nelson
+ Adrian Adamiak
Alexander Erlemann
Alexander J Maynard
Alex Khayrullin
@@ -186,10 +184,10 @@ generous deed immortalized in the next stable release of Godot Engine.
Dimitri Nüscheler
Donn Eddy
Edgar Sun
- Eric
Eric Brand
Eugenio Hugo Salgüero Jáñez
EXUREI
+ Felix Winterhalter
flesk
foxydevloper
Fransiska
@@ -199,7 +197,9 @@ generous deed immortalized in the next stable release of Godot Engine.
General Chicken
Geoffroy Warin
GGGames.org
+ Giorgi Khmaladze
gisora
+ GlassBrick
GrayDwarf
Guilherme Felipe de C. G. da Silva
Harvey Fong
@@ -227,14 +227,12 @@ generous deed immortalized in the next stable release of Godot Engine.
Joshua Lesperance
Juan Velandia
Judd
- Julián Absatz
Julian Todd
Juraj Móza
JUSTIN CARROLL
Kelteseth
kickmaniac
kinfox
- Kis Levente Lorand
Kos
Lakshaya Goel
Laszlo Kiss
@@ -258,10 +256,8 @@ generous deed immortalized in the next stable release of Godot Engine.
Mecha Kaiju X
medecau
Michael
- Michael Bordießer-Krauth
Michael Dürwald
Michael Policastro
- MightyPossum
MikadoSC
Mike Barbee
minz1
@@ -276,6 +272,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Paul Von Zimmerman
Pavel Kotlyar
Pete Goodwin
+ Peter Richmond
Petr Malac
PhaineOfCatz
Piotr Wyszyński
@@ -283,22 +280,20 @@ generous deed immortalized in the next stable release of Godot Engine.
Raymond Harris
Rene Tailleur
Rhodochrone
+ Rickard Hermanson
Rob
Robert McDermott
Robert Willes
Rob McInroy
Rocknight Studios
- Rodrigo Favarete
Romeo Disca
Ronnie Ashlock
Ronny Mühle
Ryan Scott
Samuel Hummerstone
Samuel Judd
- Samuel Smart
Sean Morgan
Sebastian Hutter
- Sébastien
Serban Serafimescu
Sergey Fonaryov
Sergey Minakov
@@ -318,13 +313,14 @@ generous deed immortalized in the next stable release of Godot Engine.
Tobias Bocanegra
Tobias Raggl
Todd Smith
+ Tom Wor
Torbulous
toto bibi
Troy Kinsella
Turntsnaco
tweaklab
+ Tyler Chase
Valryia
- VikFro
Vincent Cloutier
Vlad Ceru Opran
VoidPointer
@@ -338,6 +334,7 @@ generous deed immortalized in the next stable release of Godot Engine.
## Silver donors
1D_Inc
+ Aaron Mayfield
Aaron Oldenburg
A. B.
Actual_Dio
@@ -370,7 +367,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Alex (Well Done Games)
Allan Davis
Allen Schade
- Aloehart
Anders Marstein Kruke
Andre Stackhouse
Andrew Groot
@@ -393,7 +389,6 @@ generous deed immortalized in the next stable release of Godot Engine.
AzulCrescent
Balázs Batári
Baptiste Le Bourhis
- Bartosz Bielecki
bcat
Benedikt
Benoit Jauvin-Girard
@@ -418,7 +413,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Bronson Zgeb
Bruno Hurth
Burney Waring
- bwhirt
c64cosmin
Caleb Gartner
Caleb Makela
@@ -432,12 +426,12 @@ generous deed immortalized in the next stable release of Godot Engine.
Chad Steadman
Chris Chapin
Chris Langford
- Christian Clavet
Christian Mauduit
Christian Winter
Christoffer Dahlblom
Christophe Gagnier
Christopher Chin
+ Christoph Woinke
Chris Truebe
Cody Parker
Conall O
@@ -468,7 +462,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Douglas Plumley
Dragontrapper
Dr Ewan Murray
- Dr.Raccoon
Duobix
Duodecimal
DurrDiss
@@ -520,7 +513,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Ian ORourke
Ian Williams
IndustrialRobot
- Ivan Nikolaev
iveks
Jackson Harmer
Jacob D
@@ -540,7 +532,6 @@ generous deed immortalized in the next stable release of Godot Engine.
JARKKO PARVIAINEN
Jason Bolton
Jason Evans
- Jason Malcolm-Herzmark
Jason Uechi
Jeff Hungerford
Jeff Messer
@@ -563,6 +554,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Jonatan R
Jonathan Bieber
Jonathan G
+ Jonathan Turner
Jon Bonazza
Jon Sully
Jordan West
@@ -571,6 +563,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Jorge Araya Navarro
Jose C. Rubio
Joseph Catrambone
+ Josh P
Josh Taylor
Joshua Heidrich
jromkjrom
@@ -637,6 +630,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Martin Liška
Martin Trbola
Martin Zabinski
+ Mathieu Meissonnier
Matt Edwards
Matthew Booe
Matt Sylvia
@@ -652,9 +646,11 @@ generous deed immortalized in the next stable release of Godot Engine.
Michael Bruce-Lockhart
Michael Haney
Michael Morrison
+ Michael Toporkov
Michał Skwarek
Michel Candries
MidoriBunn 'tis BS
+ Mikael Nordenberg
Mikayla
Mike
Mike Birkhead
@@ -683,7 +679,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Niclas Eriksen
Nicolas Goll-Perrier
Nicolas Rosset
- Nicolas SAN AGUSTIN
Nils Nordmark
Nima Farid
Noel Billig
@@ -695,6 +690,7 @@ generous deed immortalized in the next stable release of Godot Engine.
oscar1000108
Oscar Domingo
Pascal
+ Patrick Indermühle
Patrick Nafarrete
Paul Gieske
Paweł Kowal
@@ -717,6 +713,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Rainer Amler
Rami Hanano
Rammeow
+ red1939
Remi Rampin
Reneator
René Habermann
@@ -738,7 +735,6 @@ generous deed immortalized in the next stable release of Godot Engine.
Ryan Groom
Sam Caulfield
Sam Edson
- Samuel Egger
Scott Longley
Sean Lynch
Sean Wall
@@ -764,6 +760,7 @@ generous deed immortalized in the next stable release of Godot Engine.
Spencer Everhart
Squirrel
Stéphane Roussel
+ Stephen Rice
Steve Cloete
Steven Drovie
summerblind
@@ -809,20 +806,22 @@ generous deed immortalized in the next stable release of Godot Engine.
Vaida Narušė
Vaughan Ling
Victor
+ VikFro
Vincent Foulon
Vi Watch
Vladimir Savin
Vladislav Smirnov
VoxelVisions.com
Wapiti .
+ Watchinofoye
werner mendizabal
Wiley Thompson
William Edwards
William F Siqueira
William Hogben
Wyatt Goodin
- x1212
xenomat
+ yakcyll
Yan Shi
Yegor Smirnov
Zak Stephens
diff --git a/README.md b/README.md
index 8ddddf0e63..a7e67f8946 100644
--- a/README.md
+++ b/README.md
@@ -10,8 +10,8 @@
**[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
+comprehensive set of [common tools](https://godotengine.org/features), so that users can focus on making games
+without having to reinvent the wheel. Games can be exported with 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
@@ -19,18 +19,19 @@ Windows), mobile platforms (Android, iOS), as well as Web-based platforms
## Free, open source and community-driven
-Godot is completely free and open source under the very permissive MIT license.
+Godot is completely free and open source under the very permissive [MIT license](https://godotengine.org/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](https://sfconservancy.org/)
not-for-profit.
-Before being open sourced in February 2014, Godot had been developed by Juan
-Linietsky and Ariel Manzur (both still maintaining the project) for several
+Before being open sourced in [February 2014](https://github.com/godotengine/godot/commit/0b806ee0fc9097fa7bda7ac0109191c9c5e0a1ac),
+Godot had been developed by [Juan Linietsky](https://github.com/reduz) and
+[Ariel Manzur](https://github.com/punto-) (both still maintaining the project) for several
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)
+![Screenshot of a 3D scene in the Godot Engine editor](https://raw.githubusercontent.com/godotengine/godot-design/master/screenshots/editor_tps_demo_1920x1080.jpg)
## Getting the engine
@@ -49,7 +50,7 @@ for compilation instructions for every supported platform.
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 engine developers, the best way is to join the
+The best way to get in touch with the core engine developers is to join the
[Godot Contributors Chat](https://chat.godotengine.org).
To get started contributing to the project, see the [contributing guide](CONTRIBUTING.md).
@@ -62,8 +63,8 @@ It is maintained by the Godot community in its own [GitHub repository](https://g
The [class reference](https://docs.godotengine.org/en/latest/classes/)
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.
+We also maintain official demos in their own [GitHub repository](https://github.com/godotengine/godot-demo-projects)
+as well as a list of [awesome Godot community resources](https://github.com/godotengine/awesome-godot).
There are also a number of other
[learning resources](https://docs.godotengine.org/en/latest/community/tutorials.html)
diff --git a/SConstruct b/SConstruct
index 78e3d28337..fea0e0ab28 100644
--- a/SConstruct
+++ b/SConstruct
@@ -132,6 +132,7 @@ opts.Add(BoolVariable("deprecated", "Enable deprecated features", True))
opts.Add(BoolVariable("minizip", "Enable ZIP archive support using minizip", True))
opts.Add(BoolVariable("xaudio2", "Enable the XAudio2 audio driver", False))
opts.Add(BoolVariable("vulkan", "Enable the vulkan video driver", True))
+opts.Add(BoolVariable("opengl3", "Enable the OpenGL/GLES3 video driver", True))
opts.Add("custom_modules", "A list of comma-separated directory paths containing custom modules to build.", "")
opts.Add(BoolVariable("custom_modules_recursive", "Detect custom modules recursively for each specified path.", True))
opts.Add(BoolVariable("use_volk", "Use the volk library to load the Vulkan loader dynamically", True))
diff --git a/core/core_bind.cpp b/core/core_bind.cpp
index afd82939ca..b1858c6b32 100644
--- a/core/core_bind.cpp
+++ b/core/core_bind.cpp
@@ -235,6 +235,19 @@ int OS::execute(const String &p_path, const Vector<String> &p_arguments, Array r
return exitcode;
}
+int OS::create_instance(const Vector<String> &p_arguments) {
+ List<String> args;
+ for (int i = 0; i < p_arguments.size(); i++) {
+ args.push_back(p_arguments[i]);
+ }
+ ::OS::ProcessID pid = 0;
+ Error err = ::OS::get_singleton()->create_instance(args, &pid);
+ if (err != OK) {
+ return -1;
+ }
+ return pid;
+}
+
int OS::create_process(const String &p_path, const Vector<String> &p_arguments) {
List<String> args;
for (int i = 0; i < p_arguments.size(); i++) {
@@ -537,6 +550,7 @@ void OS::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_executable_path"), &OS::get_executable_path);
ClassDB::bind_method(D_METHOD("execute", "path", "arguments", "output", "read_stderr"), &OS::execute, DEFVAL(Array()), DEFVAL(false));
ClassDB::bind_method(D_METHOD("create_process", "path", "arguments"), &OS::create_process);
+ ClassDB::bind_method(D_METHOD("create_instance", "arguments"), &OS::create_instance);
ClassDB::bind_method(D_METHOD("kill", "pid"), &OS::kill);
ClassDB::bind_method(D_METHOD("shell_open", "uri"), &OS::shell_open);
ClassDB::bind_method(D_METHOD("get_process_id"), &OS::get_process_id);
diff --git a/core/core_bind.h b/core/core_bind.h
index 010d1e2419..72865f583c 100644
--- a/core/core_bind.h
+++ b/core/core_bind.h
@@ -165,6 +165,7 @@ public:
String get_executable_path() const;
int execute(const String &p_path, const Vector<String> &p_arguments, Array r_output = Array(), bool p_read_stderr = false);
int create_process(const String &p_path, const Vector<String> &p_arguments);
+ int create_instance(const Vector<String> &p_arguments);
Error kill(int p_pid);
Error shell_open(String p_uri);
diff --git a/core/core_builders.py b/core/core_builders.py
index 004475faa7..b07daa80ae 100644
--- a/core/core_builders.py
+++ b/core/core_builders.py
@@ -35,7 +35,9 @@ def make_certs_header(target, source, env):
decomp_size = len(buf)
import zlib
- buf = zlib.compress(buf)
+ # Use maximum zlib compression level to further reduce file size
+ # (at the cost of initial build times).
+ buf = zlib.compress(buf, zlib.Z_BEST_COMPRESSION)
g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
g.write("#ifndef CERTS_COMPRESSED_GEN_H\n")
diff --git a/core/core_constants.cpp b/core/core_constants.cpp
index b2d5a8fdf1..c04d6ea56e 100644
--- a/core/core_constants.cpp
+++ b/core/core_constants.cpp
@@ -598,7 +598,7 @@ void register_global_constants() {
BIND_CORE_ENUM_CONSTANT(PROPERTY_USAGE_DEFAULT);
BIND_CORE_ENUM_CONSTANT(PROPERTY_USAGE_DEFAULT_INTL);
- BIND_CORE_ENUM_CONSTANT(PROPERTY_USAGE_NOEDITOR);
+ BIND_CORE_ENUM_CONSTANT(PROPERTY_USAGE_NO_EDITOR);
BIND_CORE_ENUM_CONSTANT(METHOD_FLAG_NORMAL);
BIND_CORE_ENUM_CONSTANT(METHOD_FLAG_EDITOR);
diff --git a/core/input/gamecontrollerdb.txt b/core/input/gamecontrollerdb.txt
index f136d83496..0da8f8dfdb 100644
--- a/core/input/gamecontrollerdb.txt
+++ b/core/input/gamecontrollerdb.txt
@@ -1,11 +1,15 @@
-# Game Controller DB for SDL in 2.0.9 format
+# Game Controller DB for SDL in 2.0.16 format
# Source: https://github.com/gabomdq/SDL_GameControllerDB
# Windows
03000000fa2d00000100000000000000,3DRUDDER,leftx:a0,lefty:a1,rightx:a5,righty:a2,platform:Windows,
-03000000c82d00002038000000000000,8bitdo,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
+03000000d0160000600a000000000000,4Play,a:b1,b:b3,back:b4,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b6,leftstick:b14,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b15,righttrigger:b9,rightx:a3,righty:a4,start:b5,x:b0,y:b2,platform:Windows,
+03000000d0160000040d000000000000,4Play,a:b1,b:b3,back:b4,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b6,leftstick:b14,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b15,righttrigger:b9,rightx:a3,righty:a4,start:b5,x:b0,y:b2,platform:Windows,
+03000000d0160000050d000000000000,4Play,a:b1,b:b3,back:b4,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b6,leftstick:b14,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b15,righttrigger:b9,rightx:a3,righty:a4,start:b5,x:b0,y:b2,platform:Windows,
+03000000d0160000060d000000000000,4Play,a:b1,b:b3,back:b4,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b6,leftstick:b14,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b15,righttrigger:b9,rightx:a3,righty:a4,start:b5,x:b0,y:b2,platform:Windows,
+03000000d0160000070d000000000000,4Play,a:b1,b:b3,back:b4,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b6,leftstick:b14,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b15,righttrigger:b9,rightx:a3,righty:a4,start:b5,x:b0,y:b2,platform:Windows,
03000000c82d00000951000000000000,8BitDo Dogbone Modkit,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b11,platform:Windows,
-03000000c82d000011ab000000000000,8BitDo F30,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
+03000000c82d000011ab000000000000,8BitDo F30 Arcade Joystick,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00001038000000000000,8BitDo F30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000090000000000000,8BitDo FC30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000650000000000000,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:a4,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,start:b11,x:b3,y:b4,platform:Windows,
@@ -14,12 +18,16 @@
03000000c82d00000310000000000000,8BitDo N30,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00002028000000000000,8BitDo N30,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00008010000000000000,8BitDo N30,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Windows,
+03000000c82d0000e002000000000000,8BitDo N30,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftx:a0,lefty:a1,start:b6,platform:Windows,
03000000c82d00000451000000000000,8BitDo N30 Modkit,a:b1,b:b0,back:b10,dpdown:+a2,dpleft:-a0,dpright:+a0,dpup:-a2,start:b11,platform:Windows,
03000000c82d00000190000000000000,8BitDo N30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00001590000000000000,8BitDo N30 Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00006528000000000000,8BitDo N30 Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
+03000000c82d000012ab000000000000,8BitDo NES30,a:b1,b:b0,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Windows,
+03000000c82d00002038000000000000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
03000000022000000090000000000000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
03000000203800000900000000000000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
+03000000c82d00000751000000000000,8BitDo P30,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00000360000000000000,8BitDo Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00002867000000000000,8BitDo S30 Modkit,a:b0,b:b1,dpdown:+a2,dpleft:-a0,dpright:+a0,dpup:-a2,leftshoulder:b8,lefttrigger:b9,rightshoulder:b6,righttrigger:b7,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00000130000000000000,8BitDo SF30,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b3,platform:Windows,
@@ -36,6 +44,7 @@
03000000c82d00000351000000000000,8BitDo SN30 Modkit,a:b1,b:b0,back:b10,dpdown:+a2,dpleft:-a0,dpright:+a0,dpup:-a2,leftshoulder:b6,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000160000000000000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000161000000000000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
+03000000c82d00000021000000000000,8BitDo SN30 Pro,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00000121000000000000,8BitDo SN30 Pro for Android,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000c82d00000260000000000000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00000261000000000000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
@@ -43,12 +52,19 @@
03000000c82d00001890000000000000,8BitDo Zero 2,a:b1,b:b0,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Windows,
03000000c82d00003032000000000000,8BitDo Zero 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Windows,
03000000a00500003232000000000000,8Bitdo Zero GamePad,a:b0,b:b1,back:b10,dpdown:+a2,dpleft:-a0,dpright:+a0,dpup:-a2,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Windows,
-03000000a30c00002700000000000000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a3,lefty:a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
-03000000a30c00002800000000000000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a3,lefty:a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
-030000008f0e00001200000000000000,Acme GA-02,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
-03000000c01100000355000011010000,ACRUX USB GAME PAD,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000fa190000f0ff000000000000,Acteck AGJ-3200,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+03000000d81d00000e00000000000000,AC02,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b11,righttrigger:b3,rightx:a2,righty:a5,start:b8,x:b4,y:b5,platform:Windows,
+030000008f0e00001200000000000000,Acme GA02,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
+03000000c01100000355000000000000,Acrux,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000fa190000f0ff000000000000,Acteck AGJ 3200,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+030000006d0400000bc2000000000000,Action Pad,a:b0,b:b1,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b8,lefttrigger:a5~,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b5,righttrigger:a2~,start:b8,x:b3,y:b4,platform:Windows,
+03000000d1180000402c000000000000,ADT1,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a3,rightx:a2,righty:a5,x:b3,y:b4,platform:Windows,
030000006f0e00001413000000000000,Afterglow,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000006f0e00001301000000000000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e00003901000000000000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e00001302000000000000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ab1200000103000000000000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e00001304000000000000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000000f9000000000000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000341a00003608000000000000,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00000263000000000000,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00001101000000000000,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
@@ -56,68 +72,147 @@
030000006f0e00001402000000000000,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00001901000000000000,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00001a01000000000000,Afterglow PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000d62000001d57000000000000,Airflo PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c00000288000000000000,Nyko Air Flo Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+03000000d62000001d57000000000000,Nyko Airflo PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000491900001904000000000000,Amazon Luna Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Windows,
03000000710100001904000000000000,Amazon Luna Controller,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b11,leftshoulder:b5,leftstick:b8,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b4,rightstick:b7,rightx:a3,righty:a4,start:b6,x:b3,y:b2,platform:Windows,
+03000000830500000160000000000000,Arcade,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b3,x:b4,y:b4,platform:Windows,
+03000000120c0000100e000000000000,Armor 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000869800002500000000000000,Astro C40 TR PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000a30c00002700000000000000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a3,lefty:a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
+03000000a30c00002800000000000000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a3,lefty:a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
03000000ef0500000300000000000000,AxisPad,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,start:b11,x:b0,y:b1,platform:Windows,
+03000000fd0500000230000000000000,AxisPad,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a5,start:b11,x:b0,y:b1,platform:Windows,
03000000d6200000e557000000000000,Batarang,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000e4150000103f000000000000,Batarang,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000c01100001352000000000000,Battalife Joystick,a:b6,b:b7,back:b2,leftshoulder:b0,leftx:a0,lefty:a1,rightshoulder:b1,start:b3,x:b4,y:b5,platform:Windows,
030000006f0e00003201000000000000,Battlefield 4 PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000ad1b000001f9000000000000,BB 070,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000d62000002a79000000000000,BDA PS4 Fightpad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0500000208000000000000,Belkin Nostromo N40,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
03000000bc2000006012000000000000,Betop 2126F,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000bc2000000055000000000000,Betop BFM Gamepad,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000bc2000006312000000000000,Betop Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
-03000000bc2000006321000000000000,BETOP CONTROLLER,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+03000000bc2000006321000000000000,Betop Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000bc2000006412000000000000,Betop Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000c01100000555000000000000,Betop Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000c01100000655000000000000,Betop Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000790000000700000000000000,Betop Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
03000000808300000300000000000000,Betop Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
+030000006f0e00006401000000000000,BF One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Windows,
+03000000300f00000202000000000000,Bigben,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a5,righty:a2,start:b7,x:b2,y:b3,platform:Windows,
+030000006b1400000209000000000000,Bigben,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006b1400000055000000000000,Bigben PS3 Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
030000006b1400000103000000000000,Bigben PS3 Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Windows,
-03000000120c0000210e000000000000,Brook Mars,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008232000000000000,Brawlpad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000210e000000000000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000200e000000000000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
0300000066f700000500000000000000,BrutalLegendTest,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b3,platform:Windows,
-03000000d81d00000b00000000000000,BUFFALO BSGP1601 Series ,a:b5,b:b3,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b13,x:b4,y:b2,platform:Windows,
+03000000d81d00000b00000000000000,BUFFALO BSGP1601 Series,a:b5,b:b3,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b13,x:b4,y:b2,platform:Windows,
+030000006d04000042c2000000000000,ChillStream,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000e82000006058000000000000,Cideko AK08b,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000457500000401000000000000,Cobra,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000005e0400008e02000000000000,Controller (XBOX 360 For Windows),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
-030000005e040000a102000000000000,Controller (Xbox 360 Wireless Receiver for Windows),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
-030000005e040000ff02000000000000,Controller (Xbox One For Windows) - Wired,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
-030000005e040000ea02000000000000,Controller (Xbox One For Windows) - Wireless,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000b0400003365000000000000,Competition Pro,a:b0,b:b1,back:b2,leftx:a0,lefty:a1,start:b3,platform:Windows,
+030000005e0400008e02000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000a102000000000000,Xbox 360 Wireless Receiver,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000ff02000000000000,Wired Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000ea02000000000000,Wireless Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000004c050000c505000000000000,CronusMax Adapter,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000d8140000cefa000000000000,Cthulhu,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000d814000007cd000000000000,Cthulhu,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700006352000000000000,Mad Catz CTRLR,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000260900008888000000000000,Cyber Gadget GameCube Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:a4,rightx:a2,righty:a3~,start:b7,x:b2,y:b3,platform:Windows,
+030000003807000002cb000000000000,Cyborg,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000a306000022f6000000000000,Cyborg V.3 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:+a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:-a3,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
+03000000f806000000a3000000000000,DA Leader,a:b7,b:b6,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b0,leftstick:b8,lefttrigger:b1,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:b3,rightx:a2,righty:a3,start:b12,x:b4,y:b5,platform:Windows,
+030000001a1c00000001000000000000,Datel,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000451300000830000000000000,Defender Game Racer X7,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
030000007d0400000840000000000000,Destroyer Tiltpad,+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b1,b:b2,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,x:b0,y:b3,platform:Windows,
+03000000c0160000e105000000000000,Dual,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000791d00000103000000000000,Dual Box WII,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+030000007c1800000006000000000000,Dual Compat,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b3,platform:Windows,
+030000004f040000070f000000000000,Dual Power,a:b8,b:b9,back:b4,dpdown:b1,dpleft:b2,dpright:b3,dpup:b0,leftshoulder:b13,leftstick:b6,lefttrigger:b14,leftx:a0,lefty:a1,rightshoulder:b12,rightstick:b7,righttrigger:b15,start:b5,x:b10,y:b11,platform:Windows,
+030000004f04000012b3000000000000,Dual Power 3,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Windows,
+030000004f04000020b3000000000000,Dual Trigger,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Windows,
03000000bd12000002e0000000000000,Dual USB Vibration Joystick,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a3,righty:a2,start:b11,x:b3,y:b0,platform:Windows,
+03000000ff1100003133000000000000,DualForce,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b0,y:b1,platform:Windows,
030000008f0e00000910000000000000,DualShock 2,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a3,righty:a2,start:b11,x:b3,y:b0,platform:Windows,
-030000006f0e00003001000000000000,EA SPORTS PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000317300000100000000000000,DualShock 3,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+030000006f0e00003001000000000000,EA Sports PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000fc0400000250000000000000,Easy Grip,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
+030000006e0500000a20000000000000,Elecom DUX60 MMO Gamepad,a:b2,b:b3,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b14,lefttrigger:b12,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b15,righttrigger:b13,rightx:a3,righty:a4,start:b20,x:b0,y:b1,platform:Windows,
03000000b80500000410000000000000,Elecom Gamepad,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b1,platform:Windows,
03000000b80500000610000000000000,Elecom Gamepad,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b1,platform:Windows,
+030000006e0500000520000000000000,Elecom P301U,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
+03000000411200004450000000000000,Elecom U1012,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
+030000006e0500000320000000000000,Elecom U3613M (DInput),a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
+030000006e0500000e20000000000000,Elecom U3912T,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
+030000006e0500000f20000000000000,Elecom U4013S,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
+030000006e0500001320000000000000,Elecom U4113,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000006e0500001020000000000000,Elecom U4113S,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,start:b11,x:b0,y:b1,platform:Windows,
+030000006e0500000720000000000000,Elecom W01U,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b1,platform:Windows,
03000000120c0000f61c000000000000,Elite,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000242f000000b7000000000000,ESM 9110,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Windows,
+03000000101c0000181c000000000000,Essential,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b4,leftx:a1,lefty:a0,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
030000008f0e00000f31000000000000,EXEQ,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Windows,
03000000341a00000108000000000000,EXEQ RF USB Gamepad 8206,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-030000006f0e00008401000000000000,Faceoff Deluxe+ Audio Wired Controller for Nintendo Switch,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000801000000900000000000000,8BitDo F30 Arcade Stick,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+03000000008000000210000000000000,8BitDo F30,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+03000000c82d00001028000000000000,8BitDo F30 Arcade Joystick,a:b0,b:b1,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Windows,
+030000003512000011ab000000000000,8BitDo F30 Arcade Joystick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000790000003018000000000000,F300,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+03000000242f00003900000000000000,F300 Elite,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000006d0400001dc2000000000000,Logitech F310,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006d0400001ec2000000000000,Logitech F510,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006d0400001fc2000000000000,Logitech F710,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e00008401000000000000,Faceoff Deluxe Audio Wired Controller for Nintendo Switch,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00008001000000000000,Faceoff Wired Pro Controller for Nintendo Switch,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000852100000201000000000000,FF-GP1,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000021000000090000000000000,FC30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b13,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b14,righttrigger:b7,rightx:a3,righty:a4,start:b11,x:b4,y:b3,platform:Windows,
+0300000011040000c600000000000000,FC801,a:b0,b:b1,back:b6,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Windows,
+030000004f04000008d0000000000000,Ferrari 150,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000852100000201000000000000,FF GP1,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00008500000000000000,Fighting Commander 2016 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00008400000000000000,Fighting Commander 5,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00008700000000000000,Fighting Stick mini 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00008800000000000000,Fighting Stick mini 4,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b8,x:b0,y:b3,platform:Windows,
030000000d0f00002700000000000000,FIGHTING STICK V3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+03000000ad1b000028f0000000000000,Fightpad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b00002ef0000000000000,Fightpad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700002847000000000000,FightPad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000038f0000000000000,Fightpad TE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b8,rightshoulder:b5,righttrigger:b9,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700008031000000000000,FightStick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008731000000000000,FightStick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700001847000000000000,FightStick,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b8,rightshoulder:b5,righttrigger:b9,start:b7,x:b2,y:b3,platform:Windows,
+030000003807000038b7000000000000,FightStick TE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b8,rightshoulder:b5,righttrigger:b9,start:b7,x:b2,y:b3,platform:Windows,
78696e70757403000000000000000000,Fightstick TES,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,lefttrigger:a2,rightshoulder:b5,righttrigger:a5,start:b7,x:b2,y:b3,platform:Windows,
+03000000f806000001a3000000000000,Firestorm,a:b9,b:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b0,leftstick:b10,lefttrigger:b1,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b11,righttrigger:b3,start:b12,x:b8,y:b4,platform:Windows,
+03000000b50700000399000000000000,Firestorm 2,a:b2,b:b4,back:b10,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b8,righttrigger:b9,start:b11,x:b3,y:b5,platform:Windows,
+03000000b50700001302000000000000,Firestorm D3,a:b0,b:b2,leftshoulder:b4,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,x:b1,y:b3,platform:Windows,
+03000000b40400001024000000000000,Flydigi Apex,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+03000000151900004000000000000000,Flydigi Vader 2,a:b11,b:b10,back:b3,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b7,leftstick:b1,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b0,righttrigger:b4,rightx:a3,righty:a4,start:b2,x:b9,y:b8,platform:Windows,
+03000000b40400001124000000000000,Flydigi Vader 2,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b12,lefttrigger:b8,leftx:a0,lefty:a1,paddle1:b4,paddle2:b5,paddle4:b17,rightshoulder:b7,rightstick:b13,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b2,y:b3,platform:Windows,
+030000008305000000a0000000000000,G08XU,a:b0,b:b1,back:b4,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b5,x:b2,y:b3,platform:Windows,
+03000000ac0500002d02000000000000,G2U,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
03000000790000002201000000000000,Game Controller for PC,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
0300000066f700000100000000000000,Game VIB Joystick,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,start:b11,x:b0,y:b1,platform:Windows,
+03000000430b00000500000000000000,GameCube,a:b0,b:b2,dpdown:b10,dpleft:b8,dpright:b9,dpup:b11,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:a3,rightx:a5,righty:a2,start:b7,x:b1,y:b3,platform:Windows,
+03000000341a000005f7000000000000,GameCube,a:b2,b:b3,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b1,y:b0,platform:Windows,
+03000000790000004718000000000000,GameCube,a:b1,b:b0,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
03000000260900002625000000000000,Gamecube Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b6,lefttrigger:a4,leftx:a0,lefty:a1,righttrigger:a5,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Windows,
-03000000790000004618000000000000,GameCube Controller Adapter,a:b1,b:b2,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,rightx:a5,righty:a2,start:b9,x:b0,y:b3,platform:Windows,
-030000008f0e00000d31000000000000,GAMEPAD 3 TURBO,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000790000004618000000000000,GameCube Controller Adapter,a:b1,b:b0,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
+030000008f0e00000d31000000000000,Gamepad 3 Turbo,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000280400000140000000000000,GamePad Pro USB,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
03000000ac0500003d03000000000000,GameSir,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000ac0500004d04000000000000,GameSir,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+030000004c0e00001035000000000000,Gamester,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+030000000d0f00001110000000000000,GameStick Bluetooth Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+0300000047530000616d000000000000,GameStop,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
03000000ffff00000000000000000000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
03000000c01100000140000000000000,GameStop PS4 Fun Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000009b2800003200000000000000,GC/N64 to USB v3.4,a:b0,b:b7,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,lefttrigger:+a5,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:+a2,rightx:a3,righty:a4,start:b3,x:b1,y:b8,platform:Windows,
-030000009b2800006000000000000000,GC/N64 to USB v3.6,a:b0,b:b7,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,lefttrigger:+a5,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:+a2,rightx:a3,righty:a4,start:b3,x:b1,y:b8,platform:Windows,
+03000000b62500000100000000000000,Gametel GT004 01,a:b3,b:b0,dpdown:b10,dpleft:b9,dpright:b8,dpup:b11,leftshoulder:b4,rightshoulder:b5,start:b7,x:b1,y:b2,platform:Windows,
+030000008f0e00001411000000000000,Gamo2 Divaller PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000a857000000000000,Gator Claw,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000c9110000f055000000000000,GC100XF,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
030000008305000009a0000000000000,Genius,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
030000008305000031b0000000000000,Genius Maxfire Blaze 3,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
03000000451300000010000000000000,Genius Maxfire Grandias 12,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
@@ -127,50 +222,96 @@
03000000f025000021c1000000000000,Gioteck PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000f0250000c383000000000000,Gioteck VX2 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000f0250000c483000000000000,Gioteck VX2 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+030000004f04000026b3000000000000,GP XID,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+0300000079000000d418000000000000,GPD Win,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000c6240000025b000000000000,GPX,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
030000007d0400000540000000000000,Gravis Eliminator GamePad Pro,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+030000007d0400000340000000000000,Gravis G44011 Xterminator,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,rightx:a2,start:b9,x:b3,y:b4,platform:Windows,
+030000008f0e00000610000000000000,GreenAsia,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a5,righty:a2,start:b11,x:b3,y:b0,platform:Windows,
+03000000ac0500006b05000000000000,GT2a,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
03000000341a00000302000000000000,Hama Scorpad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000fd0500003902000000000000,Hammerhead,a:b3,b:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b2,lefttrigger:b8,rightshoulder:b7,rightstick:b5,righttrigger:b9,start:b10,x:b0,y:b1,platform:Windows,
+03000000fd0500002a26000000000000,Hammerhead FX,a:b3,b:b4,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b0,y:b1,platform:Windows,
+03000000fd0500002f26000000000000,Hammerhead FX,a:b4,b:b5,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b1,y:b2,platform:Windows,
030000000d0f00004900000000000000,Hatsune Miku Sho Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000001008000001e1000000000000,Havit HV-G60,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b3,y:b0,platform:Windows,
-03000000d81400000862000000000000,HitBox Edition Cthulhu+,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,lefttrigger:b4,rightshoulder:b7,righttrigger:b6,start:b9,x:b0,y:b3,platform:Windows,
-03000000632500002605000000000000,HJD-X,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+030000001008000001e1000000000000,Havit HV G60,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b3,y:b0,platform:Windows,
+030000000d0f00000c00000000000000,HEXT,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f00000d00000000000000,Hori Fighting Stick EX2,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+030000000d0f00003701000000000000,Hori Fighting Stick Mini,a:b1,b:b0,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b3,y:b2,platform:Windows,
+030000000d0f00002100000000000000,Hori Fighting Stick V3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00001000000000000000,Hori Fighting Stick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000f0d00000010000000000000,Hori Fighting Stick 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+03000000d81400000862000000000000,HitBox Edition Cthulhu,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,lefttrigger:b4,rightshoulder:b7,righttrigger:b6,start:b9,x:b0,y:b3,platform:Windows,
+03000000632500002605000000000000,HJD X,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+030000000d0f00000a00000000000000,Hori DOA,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f00008600000000000000,Hori Fighting Commander,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f0000ba00000000000000,Hori Fighting Commander,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
030000000d0f00002d00000000000000,Hori Fighting Commander 3 Pro,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00005f00000000000000,Hori Fighting Commander 4 (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00005e00000000000000,Hori Fighting Commander 4 (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00005f00000000000000,Hori Fighting Commander 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00005e00000000000000,Hori Fighting Commander 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00005100000000000000,Hori Fighting Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00003200000000000000,Hori Fighting Stick 3W,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f0000c000000000000000,Hori Fighting Stick 4,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
030000000d0f00004000000000000000,Hori Fighting Stick Mini 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,lefttrigger:b4,rightshoulder:b7,righttrigger:b6,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f0000a000000000000000,Hori Grip TAC4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b13,x:b0,y:b3,platform:Windows,
+030000000d0f00000101000000000000,Hori Mini Hatsune Miku FT,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00005400000000000000,Hori Pad 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00000900000000000000,Hori Pad 3 Turbo,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00004d00000000000000,Hori Pad A,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00003801000000000000,Hori PC Engine Mini Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b9,platform:Windows,
030000000d0f00009200000000000000,Hori Pokken Tournament DX Pro Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00001600000000007803,HORI Real Arcade Pro EX-SE (Xbox 360),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,lefttrigger:a2,rightshoulder:b5,righttrigger:a5,start:b7,x:b2,y:b3,platform:Windows,
030000000d0f00009c00000000000000,Hori TAC Pro,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f0000c900000000000000,Hori Taiko Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00002301000000000000,Hori Wired PS4 Controller Light,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
030000000d0f0000c100000000000000,Horipad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00006e00000000000000,HORIPAD 4 (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00006600000000000000,HORIPAD 4 (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00006400000000000000,Horipad 3TP,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00001300000000000000,Horipad 3W,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00006e00000000000000,Horipad 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00006600000000000000,Horipad 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000000d0f00005500000000000000,Horipad 4 FPS,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f0000ee00000000000000,HORIPAD mini4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-03000000250900000017000000000000,HRAP2 on PS/SS/N64 Joypad to USB BOX,a:b2,b:b1,back:b9,leftshoulder:b5,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b6,start:b8,x:b3,y:b0,platform:Windows,
+030000000d0f00004200000000000000,Horipad A,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000005b1c00002400000000000000,Horipad Mini,a:b3,b:b4,back:b7,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b6,x:b0,y:b1,platform:Windows,
+030000000d0f0000ee00000000000000,Horipad Mini 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00006700000000000000,Horipad One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f0000dc00000000000000,Horipad Switch,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000001f5000000000000,Horipad EXT2,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f00002600000000000000,Hori Real Arcade Pro 3P,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00004b00000000000000,Hori Real Arcade Pro 3W,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00003d00000000000000,Hori Real Arcade Pro N3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b10,leftstick:b4,lefttrigger:b11,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b6,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f0000ae00000000000000,Hori Real Arcade Pro N4,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f0000d800000000000000,Hori Real Arcade Pro S,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Windows,
+030000000d0f0000aa00000000000000,Hori Real Arcade Pro S,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f0000af00000000000000,Hori Real Arcade Pro VHS,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00001b00000000000000,Hori Real Arcade Pro VX,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000002f5000000000000,Hori Real Arcade Pro VX,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b07,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b08,righttrigger:b11,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Windows,
+03000000250900000017000000000000,Joypad to USB Adapter,a:b2,b:b1,back:b9,leftshoulder:b5,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b6,start:b8,x:b3,y:b0,platform:Windows,
+030000000d0f00008c00000000000000,Hori Real Arcade Pro P4,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000000d0f00006f00000000000000,Hori Real Arcade Pro 4 VLX,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000008f0e00001330000000000000,HuiJia SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b9,x:b3,y:b0,platform:Windows,
03000000d81d00000f00000000000000,iBUFFALO BSGP1204 Series,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000d81d00001000000000000000,iBUFFALO BSGP1204P Series,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
-03000000830500006020000000000000,iBuffalo SNES Controller,a:b1,b:b0,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b7,x:b3,y:b2,platform:Windows,
+030000005c0a00000285000000000000,iDroidCon,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b6,platform:Windows,
+03000000696400006964000000000000,iDroidCon Bluetooth Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000b50700001403000000000000,Impact Black,a:b2,b:b3,back:b8,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Windows,
-030000006f0e00002401000000000000,INJUSTICE FightStick PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
-03000000ac0500002c02000000000000,IPEGA,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b13,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b14,righttrigger:b7,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000491900000204000000000000,Ipega PG-9023,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000491900000304000000000000,Ipega PG-9087 - Bluetooth Gamepad,+righty:+a5,-righty:-a4,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,start:b11,x:b3,y:b4,platform:Windows,
-030000006e0500000a20000000000000,JC-DUX60 ELECOM MMO Gamepad,a:b2,b:b3,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b14,lefttrigger:b12,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b15,righttrigger:b13,rightx:a3,righty:a4,start:b20,x:b0,y:b1,platform:Windows,
-030000006e0500000520000000000000,JC-P301U,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
-030000006e0500000320000000000000,JC-U3613M (DInput),a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Windows,
-030000006e0500000720000000000000,JC-W01U,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b1,platform:Windows,
+030000006f0e00002401000000000000,Injustice FightStick PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+03000000830500005130000000000000,InterAct ActionPad,a:b0,b:b1,back:b8,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
+03000000fd0500005302000000000000,InterAct ProPad,a:b3,b:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b5,x:b0,y:b1,platform:Windows,
+03000000ac0500002c02000000000000,Ipega Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,leftstick:b13,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b14,righttrigger:b7,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000491900000204000000000000,Ipega PG9023,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000491900000304000000000000,Ipega PG9087 - Bluetooth Gamepad,+righty:+a5,-righty:-a4,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,start:b11,x:b3,y:b4,platform:Windows,
030000007e0500000620000000000000,Joy-Con (L),+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b0,b:b1,back:b13,leftshoulder:b4,leftstick:b10,rightshoulder:b5,start:b8,x:b2,y:b3,platform:Windows,
-030000007e0500000620000001000000,Joy-Con (L),+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b0,b:b1,back:b13,leftshoulder:b4,leftstick:b10,rightshoulder:b5,start:b8,x:b2,y:b3,platform:Windows,
030000007e0500000720000000000000,Joy-Con (R),+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b0,b:b1,back:b12,leftshoulder:b4,leftstick:b11,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Windows,
-030000007e0500000720000001000000,Joy-Con (R),+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b0,b:b1,back:b12,leftshoulder:b4,leftstick:b11,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Windows,
-03000000bd12000003c0000010010000,Joypad Alpha Shock,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000bd12000003c0000000000000,JY-P70UR,a:b1,b:b0,back:b5,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b8,rightstick:b11,righttrigger:b9,rightx:a3,righty:a2,start:b4,x:b3,y:b2,platform:Windows,
+03000000bd12000003c0000000000000,Joypad Alpha Shock,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000ff1100004033000000000000,JPD FFB,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a2,start:b15,x:b3,y:b0,platform:Windows,
03000000242f00002d00000000000000,JYS Wireless Adapter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000242f00008a00000000000000,JYS Wireless Adapter,a:b1,b:b4,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b0,y:b3,platform:Windows,
+03000000c4100000c082000000000000,KADE,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000828200000180000000000000,Keio,a:b4,b:b5,back:b8,leftshoulder:b2,lefttrigger:b3,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,start:b9,x:b0,y:b1,platform:Windows,
03000000790000000200000000000000,King PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
+03000000bd12000001e0000000000000,Leadership,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
+030000008f0e00001300000000000000,Logic3,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+030000006f0e00000103000000000000,Logic3,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e00000104000000000000,Logic3,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
030000006d040000d1ca000000000000,Logitech ChillStream,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006d040000d2ca000000000000,Logitech Cordless Precision,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006d04000011c2000000000000,Logitech Cordless Wingman,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b5,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b2,righttrigger:b7,rightx:a3,righty:a4,x:b4,platform:Windows,
@@ -178,21 +319,24 @@
030000006d04000018c2000000000000,Logitech F510 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006d04000019c2000000000000,Logitech F710 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006d0400001ac2000000000000,Logitech Precision Gamepad,a:b1,b:b2,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+030000006d04000009c2000000000000,Logitech WingMan,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b8,x:b3,y:b4,platform:Windows,
030000006d0400000ac2000000000000,Logitech WingMan RumblePad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,rightx:a3,righty:a4,x:b3,y:b4,platform:Windows,
-03000000380700006652000000000000,Mad Catz C.T.R.L.R,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700005032000000000000,Mad Catz FightPad PRO (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700005082000000000000,Mad Catz FightPad PRO (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700008433000000000000,Mad Catz FightStick TE S+ (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700008483000000000000,Mad Catz FightStick TE S+ (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700008134000000000000,Mad Catz FightStick TE2+ PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b7,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b4,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700008184000000000000,Mad Catz FightStick TE2+ PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,leftstick:b10,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700006252000000000000,Mad Catz Micro C.T.R.L.R,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700005645000000000000,Lynx,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000222200006000000000000000,Macally,a:b1,b:b2,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b33,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700006652000000000000,Mad Catz CTRLR,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700005032000000000000,Mad Catz FightPad Pro PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700005082000000000000,Mad Catz FightPad PRO PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008433000000000000,Mad Catz FightStick TE S PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008483000000000000,Mad Catz FightStick TE S PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008134000000000000,Mad Catz FightStick TE2 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b7,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b4,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008184000000000000,Mad Catz FightStick TE2 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,leftstick:b10,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700006252000000000000,Mad Catz Micro CTRLR,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000380700008034000000000000,Mad Catz TE2 PS3 Fightstick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000380700008084000000000000,Mad Catz TE2 PS4 Fightstick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700008532000000000000,Madcatz Arcade Fightstick TE S PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700003888000000000000,Madcatz Arcade Fightstick TE S+ PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000380700001888000000000000,MadCatz SFIV FightStick PS3,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b4,righttrigger:b6,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-03000000380700008081000000000000,MADCATZ SFV Arcade FightStick Alpha PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700008532000000000000,Mad Catz Arcade Fightstick TE S PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700003888000000000000,Mad Catz Arcade Fightstick TE S Plus PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000380700001888000000000000,Mad Catz SFIV FightStick PS3,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b5,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b4,righttrigger:b6,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+03000000380700008081000000000000,Mad Catz SFV Arcade FightStick Alpha PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000002a0600001024000000000000,Matricom,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b2,y:b3,platform:Windows,
030000009f000000adbb000000000000,MaxJoypad Virtual Controller,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
03000000250900000128000000000000,Mayflash Arcade Stick,a:b1,b:b2,back:b8,leftshoulder:b0,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b3,righttrigger:b7,start:b9,x:b5,y:b6,platform:Windows,
@@ -205,36 +349,69 @@
0300000025090000e803000000000000,Mayflash Wii Classic Controller,a:b1,b:b0,back:b8,dpdown:b13,dpleft:b12,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Windows,
03000000790000000018000000000000,Mayflash WiiU Pro Game Controller Adapter (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000790000002418000000000000,Mega Drive,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,rightshoulder:b2,start:b9,x:b3,y:b4,platform:Windows,
+0300000079000000ae18000000000000,Mega Drive,a:b0,b:b1,back:b7,dpdown:b14,dpleft:b15,dpright:b13,dpup:b2,rightshoulder:b6,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
+03000000c0160000990a000000000000,Mega Drive,a:b0,b:b1,leftx:a0,lefty:a1,righttrigger:b2,start:b3,platform:Windows,
+030000005e0400000300000000000000,Microsoft SideWinder,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b8,x:b3,y:b4,platform:Windows,
+030000005e0400000700000000000000,Microsoft SideWinder,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
+030000005e0400002700000000000000,Microsoft SideWinder,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftx:a0,lefty:a1,rightshoulder:b4,righttrigger:b5,x:b2,y:b3,platform:Windows,
+030000005e0400000e00000000000000,Microsoft SideWinder Freestyle Pro,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b5,start:b8,x:b3,y:b4,platform:Windows,
+03000000280d00000202000000000000,Miller Lite Cantroller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftx:a0,lefty:a1,start:b5,x:b2,y:b3,platform:Windows,
+030000005b1c00002500000000000000,Mini,a:b3,b:b4,back:b7,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b6,x:b0,y:b1,platform:Windows,
+03000000ad1b000023f0000000000000,MLG,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a6,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+03000000ad1b00003ef0000000000000,MLG FightStick TE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b8,rightshoulder:b5,righttrigger:b9,start:b7,x:b2,y:b3,platform:Windows,
03000000380700006382000000000000,MLG GamePad PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000c62400002a89000000000000,MOGA XP5-A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b15,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000c62400002b89000000000000,MOGA XP5-A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000c62400001a89000000000000,MOGA XP5-X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000c62400001b89000000000000,MOGA XP5-X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000d6200000e589000000000000,Moga 2,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Windows,
+03000000d62000007162000000000000,Moga Pro,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Windows,
+03000000d6200000ad0d000000000000,Moga Pro,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000c62400002a89000000000000,Moga XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b15,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000c62400002b89000000000000,Moga XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000c62400001a89000000000000,Moga XP5X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000c62400001b89000000000000,Moga XP5X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000efbe0000edfe000000000000,Monect Virtual Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
03000000250900006688000000000000,MP-8866 Super Dual Box,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
-030000006b140000010c000000000000,NACON GC-400ES,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-03000000921200004b46000000000000,NES 2-port Adapter,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b11,platform:Windows,
-03000000790000004518000000000000,NEXILUX GAMECUBE Controller Adapter,platform:Windows,a:b1,b:b0,x:b2,y:b3,start:b9,rightshoulder:b7,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a5,righty:a2,lefttrigger:a3,righttrigger:a4,
+03000000f70600000100000000000000,N64 Controller,a:b1,b:b2,back:b3,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b6,lefttrigger:b0,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,start:b8,x:b4,y:b5,platform:Windows,
+030000006b140000010c000000000000,Nacon GC 400ES,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+030000006b1400001106000000000000,Nacon Revolution 3 PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000006b140000100d000000000000,Nacon Revolution Infinity PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000006b140000080d000000000000,Nacon Revolution Unlimited Pro Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000bd12000001c0000000000000,Nebular,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a5,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
+03000000eb0300000000000000000000,NeGcon USB Adapter,a:a2,b:b13,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,lefttrigger:a4,leftx:a1,righttrigger:b11,start:b3,x:a3,y:b12,platform:Windows,
+0300000038070000efbe000000000000,NEO SE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000000f00000100000000000000,NES Controller,a:b1,b:b0,back:b2,leftx:a0,lefty:a1,start:b3,platform:Windows,
+03000000571d00002100000000000000,NES Controller,a:b0,b:b1,back:b2,leftx:a0,lefty:a1,start:b3,platform:Windows,
+03000000921200004346000000000000,NES Controller,a:b0,b:b1,back:b2,leftx:a0,lefty:a1,start:b3,platform:Windows,
+03000000921200004b46000000000000,NES 2 port Adapter,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b11,platform:Windows,
+03000000790000004518000000000000,NEXILUX GameCube Controller Adapter,a:b1,b:b0,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
030000001008000001e5000000000000,NEXT SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,righttrigger:b6,start:b9,x:b3,y:b0,platform:Windows,
+03000000050b00000045000000000000,Nexus,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b10,x:b2,y:b3,platform:Windows,
03000000152000000182000000000000,NGDS,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
-03000000bd12000015d0000000000000,Nintendo Retrolink USB Super SNES Classic Controller,a:b2,b:b1,back:b8,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Windows,
030000007e0500000920000000000000,Nintendo Switch Pro Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
030000000d0500000308000000000000,Nostromo N45,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b9,leftshoulder:b4,leftstick:b12,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b10,x:b2,y:b3,platform:Windows,
+03000000d620000013a7000000000000,NSW wired controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000550900001472000000000000,NVIDIA Controller v01.04,a:b11,b:b10,back:b13,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b7,leftstick:b5,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b4,righttrigger:a5,rightx:a3,righty:a6,start:b3,x:b9,y:b8,platform:Windows,
-030000004b120000014d000000000000,NYKO AIRFLO,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:a3,leftstick:a0,lefttrigger:b6,rightshoulder:b5,rightstick:a2,righttrigger:b7,start:b9,x:b2,y:b3,platform:Windows,
+03000000550900001072000000000000,NVIDIA Shield,a:b9,b:b8,back:b11,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b3,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b2,righttrigger:a4,rightx:a2,righty:a5,start:b0,x:b7,y:b6,platform:Windows,
+030000005509000000b4000000000000,NVIDIA Virtual Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000004b120000014d000000000000,Nyko Airflo,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:a3,leftstick:a0,lefttrigger:b6,rightshoulder:b5,rightstick:a2,righttrigger:b7,start:b9,x:b2,y:b3,platform:Windows,
03000000782300000a10000000000000,Onlive Wireless Controller,a:b15,b:b14,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b11,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b13,y:b12,platform:Windows,
+030000000d0f00000401000000000000,Onyx,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000008916000001fd000000000000,Onza CE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a3,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000008916000000fd000000000000,Onza TE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000d62000006d57000000000000,OPP PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006b14000001a1000000000000,Orange Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Windows,
03000000362800000100000000000000,OUYA Game Controller,a:b0,b:b3,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,guide:b14,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:b13,rightx:a3,righty:a4,x:b1,y:b2,platform:Windows,
03000000120c0000f60e000000000000,P4 Wired Gamepad,a:b1,b:b2,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b5,lefttrigger:b7,rightshoulder:b4,righttrigger:b6,start:b9,x:b0,y:b3,platform:Windows,
+030000006f0e00008501000000000000,PDP Fightpad Pro,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b0,platform:Windows,
030000006f0e00000901000000000000,PDP Versus Fighting Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
-030000008f0e00000300000000000000,Piranha xtreme,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
030000004c050000da0c000000000000,PlayStation Classic Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,lefttrigger:b4,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
+03000000d9040000160f000000000000,Playstation Controller Adapter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
030000004c0500003713000000000000,PlayStation Vita,a:b1,b:b2,back:b8,dpdown:b13,dpleft:b15,dpright:b14,dpup:b12,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000d62000006dca000000000000,PowerA Pro Ex,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000006d04000084ca000000000000,Precision,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
03000000d62000009557000000000000,Pro Elite PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000c62400001a53000000000000,Pro Ex Mini,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000d62000009f31000000000000,Pro Ex mini PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000d6200000c757000000000000,Pro Ex mini PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000110e000000000000,Pro5,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000632500002306000000000000,PS Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Windows,
03000000e30500009605000000000000,PS to USB convert cable,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
03000000100800000100000000000000,PS1 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
@@ -244,122 +421,281 @@
03000000666600006706000000000000,PS2 Controller,a:b2,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a2,righty:a3,start:b11,x:b3,y:b0,platform:Windows,
030000006b1400000303000000000000,PS2 Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
030000009d0d00001330000000000000,PS2 Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+03000000250900000088000000000000,PS2 Controllera:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
+03000000250900006888000000000000,PS2 Controllera:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b6,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
+03000000ba2200000701000000000000,Technology Innovation PS2 Adapter,a:b0,b:b1,x:b3,y:b2,back:b8,start:b9,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a3,righty:a2,lefttrigger:b6,righttrigger:b7,platform:Windows,
+03000000430b00000300000000000000,EMS Production PS2 Adapter,a:b2,b:b1,x:b3,y:b0,back:b8,start:b9,leftstick:b10,rightstick:b11,leftshoulder:b6,rightshoulder:b7,dpup:b12,dpdown:b14,dpleft:b15,dpright:b13,leftx:a0,lefty:a1,rightx:a3,righty:a2,lefttrigger:b4,righttrigger:b5,platform:Windows,
03000000250900000500000000000000,PS3 Controller,a:b2,b:b1,back:b9,dpdown:h0.8,dpleft:h0.4,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b0,y:b3,platform:Windows,
030000004c0500006802000000000000,PS3 Controller,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b10,lefttrigger:a3~,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:a4~,rightx:a2,righty:a5,start:b8,x:b3,y:b0,platform:Windows,
03000000632500007505000000000000,PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000888800000803000000000000,PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.8,dpleft:h0.4,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b9,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:b7,rightx:a3,righty:a4,start:b11,x:b0,y:b3,platform:Windows,
030000008f0e00001431000000000000,PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000120a00000100000000000000,PS3 Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+030000008f0e00000300000000000000,PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b3,y:b0,platform:Windows,
+030000004f1f00000800000000000000,PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+03000000ba2200002010000000000000,PS3 Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a5,righty:a2,start:b9,x:b3,y:b2,platform:Windows,
+03000000120c00001cf1000000000000,PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000888800000804000000000000,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,leftshoulder:b10,leftstick:b1,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,rightx:a2,righty:a3,start:b3,x:b15,y:b12,platform:Windows,
+03000000120c00001307000000000000,PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000250900000118000000000000,PS3 Controller,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
+03000000250900000218000000000000,PS3 Controller,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
+03000000120c0000f90e000000000000,PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000003807000056a8000000000000,PS3 RF pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000100000008200000000000000,PS360+ v1.66,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:h0.4,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+03000000100000008200000000000000,PS360 v1.66,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:h0.4,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
030000004c050000a00b000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000004c050000c405000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000004c050000cc09000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c00000807000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000a957000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000aa57000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120e0000120c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000160e0000120c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000001a1e0000120c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000f21c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000f31c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000f41c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000f51c000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000f10e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000130e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000150e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000f70e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000180e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c00001e0e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000111e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000121e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000181e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000120c0000191e000000000000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000004c050000e60c000000000000,PS5 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b13,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000ff000000cb01000000000000,PSP,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Windows,
-03000000300f00000011000000000000,QanBa Arcade JoyStick 1008,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b10,x:b0,y:b3,platform:Windows,
-03000000300f00001611000000000000,QanBa Arcade JoyStick 4018,a:b1,b:b2,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b9,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b8,x:b0,y:b3,platform:Windows,
-03000000222c00000020000000000000,QANBA DRONE ARCADE JOYSTICK,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,rightshoulder:b5,righttrigger:a4,start:b9,x:b0,y:b3,platform:Windows,
-03000000300f00001210000000000000,QanBa Joystick Plus,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Windows,
-03000000341a00000104000000000000,QanBa Joystick Q4RAF,a:b5,b:b6,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b0,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b3,righttrigger:b7,start:b9,x:b1,y:b2,platform:Windows,
-03000000222c00000223000000000000,Qanba Obsidian Arcade Joystick PS3 Mode,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000222c00000023000000000000,Qanba Obsidian Arcade Joystick PS4 Mode,a:b1,b:b2,back:b13,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000830500005020000000000000,PSX,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b2,y:b3,platform:Windows,
+03000000300f00000111000000000000,Qanba 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000300f00000211000000000000,Qanba 2P,a:b1,b:b0,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+03000000300f00000011000000000000,Qanba Arcade Stick 1008,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b10,x:b0,y:b3,platform:Windows,
+03000000300f00001611000000000000,Qanba Arcade Stick 4018,a:b1,b:b2,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b9,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b8,x:b0,y:b3,platform:Windows,
+03000000222c00000020000000000000,Qanba Drone Arcade Stick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,rightshoulder:b5,righttrigger:a4,start:b9,x:b0,y:b3,platform:Windows,
+03000000300f00001210000000000000,Qanba Joystick Plus,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Windows,
+03000000341a00000104000000000000,Qanba Joystick Q4RAF,a:b5,b:b6,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b0,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b3,righttrigger:b7,start:b9,x:b1,y:b2,platform:Windows,
+03000000300f00001211000000000000,Qanba Joystick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000222c00000223000000000000,Qanba Obsidian Arcade Stick PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000222c00000023000000000000,Qanba Obsidian Arcade Stick PS4,a:b1,b:b2,back:b13,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000008a2400006682000000000000,R1 Mobile Controller,a:b3,b:b1,back:b7,leftx:a0,lefty:a1,start:b6,x:b4,y:b0,platform:Windows,
+03000000086700006626000000000000,RadioShack,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b3,y:b0,platform:Windows,
+030000009b2800002300000000000000,Raphnet Technologies 3DO USB Adapter,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b2,start:b3,platform:Windows,
+030000009b2800006900000000000000,Raphnet Technologies 3DO USB Adapter,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b2,start:b3,platform:Windows,
+030000009b2800000800000000000000,Raphnet Technologies Dreamcast USB Adapter,a:b2,b:b1,dpdown:b5,dpleft:b6,dpright:b7,dpup:b4,lefttrigger:a2,leftx:a0,righttrigger:a3,righty:a1,start:b3,x:b10,y:b9,platform:Windows,
+030000009b2800003200000000000000,Raphnet Technologies GC/N64 to USB v3.4,a:b0,b:b7,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,lefttrigger:+a5,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:+a2,rightx:a3,righty:a4,start:b3,x:b1,y:b8,platform:Windows,
+030000009b2800006000000000000000,Raphnet Technologies GC/N64 to USB v3.6,a:b0,b:b7,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,lefttrigger:+a5,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:+a2,rightx:a3,righty:a4,start:b3,x:b1,y:b8,platform:Windows,
+030000009b2800001800000000000000,Raphnet Technologies Jaguar USB Adapter,a:b2,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b0,righttrigger:b10,start:b3,x:b11,y:b12,platform:Windows,
+030000009b2800000200000000000000,Raphnet Technologies NES USB Adapter,a:b7,b:b6,back:b5,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftx:a0,lefty:a1,start:b4,platform:Windows,
+030000009b2800004300000000000000,Raphnet Technologies Saturn,a:b0,b:b1,dpdown:b13,dpleft:b14,dpright:b15,dpup:b12,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b8,x:b3,y:b4,platform:Windows,
+030000009b2800000500000000000000,Raphnet Technologies Saturn Adapter 2.0,a:b1,b:b2,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b0,y:b3,platform:Windows,
+030000009b2800000300000000000000,Raphnet Technologies SNES USB Adapter,a:b0,b:b4,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b1,y:b5,platform:Windows,
+030000009b2800005600000000000000,Raphnet Technologies SNES USB Adapter,a:b1,b:b4,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b0,y:b5,platform:Windows,
+030000009b2800005700000000000000,Raphnet Technologies SNES USB Adapter,a:b1,b:b4,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b0,y:b5,platform:Windows,
+030000009b2800001e00000000000000,Raphnet Technologies Vectrex USB Adapter,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftx:a1,lefty:a2,x:b2,y:b3,platform:Windows,
+030000009b2800002b00000000000000,Raphnet Technologies Wii Classic USB Adapter,a:b1,b:b4,back:b2,dpdown:b13,dpleft:b14,dpright:b15,dpup:b12,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a3,righty:a4,start:b3,x:b0,y:b5,platform:Windows,
+030000009b2800002c00000000000000,Raphnet Technologies Wii Classic USB Adapter,a:b1,b:b4,back:b2,dpdown:b13,dpleft:b14,dpright:b15,dpup:b12,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a3,righty:a4,start:b3,x:b0,y:b5,platform:Windows,
03000000321500000003000000000000,Razer Hydra,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
-03000000321500000204000000000000,Razer Panthera (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000321500000104000000000000,Razer Panthera (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000321500000204000000000000,Razer Panthera PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000321500000104000000000000,Razer Panthera PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000321500000010000000000000,Razer Raiju,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000321500000507000000000000,Razer Raiju Mobile,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000321500000707000000000000,Razer Raiju Mobile,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000321500000710000000000000,Razer Raiju TE,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000321500000a10000000000000,Razer Raiju TE,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000321500000410000000000000,Razer Raiju UE,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000321500000910000000000000,Razer Raiju UE,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000321500000011000000000000,Razer Raion Fightpad for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000321500000009000000000000,Razer Serval,+lefty:+a2,-lefty:-a1,a:b0,b:b1,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,leftx:a0,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
-030000000d0f00001100000000000000,REAL ARCADE PRO.3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00006a00000000000000,Real Arcade Pro.4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00006b00000000000000,Real Arcade Pro.4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00008a00000000000000,Real Arcade Pro.4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00008b00000000000000,Real Arcade Pro.4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00007000000000000000,REAL ARCADE PRO.4 VLX,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00002200000000000000,REAL ARCADE Pro.V3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00005b00000000000000,Real Arcade Pro.V4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000000d0f00005c00000000000000,Real Arcade Pro.V4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000790000001100000000000000,Retrolink SNES Controller,a:b2,b:b1,back:b8,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,leftshoulder:b4,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Windows,
-03000000bd12000013d0000000000000,Retrolink USB SEGA Saturn Classic,a:b0,b:b1,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b5,lefttrigger:b6,rightshoulder:b2,righttrigger:b7,start:b8,x:b3,y:b4,platform:Windows,
+030000000d0f00001100000000000000,Hori Real Arcade Pro 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00006a00000000000000,Hori Real Arcade Pro 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00006b00000000000000,Hori Real Arcade Pro 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00008a00000000000000,Hori Real Arcade Pro 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00008b00000000000000,Hori Real Arcade Pro 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00007000000000000000,Hori Real Arcade Pro 4 VLX,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00002200000000000000,Hori Real Arcade Pro V3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00005b00000000000000,Hori Real Arcade Pro V4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000000d0f00005c00000000000000,Hori Real Arcade Pro V4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000830500006020000000000000,Retro Controller,a:b0,b:b1,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b5,rightshoulder:b8,righttrigger:b9,start:b7,x:b2,y:b3,platform:Windows,
+03000000790000001100000000000000,Retro Controller,a:b1,b:b2,back:b8,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,leftshoulder:b6,lefttrigger:b7,rightshoulder:b4,righttrigger:b5,start:b9,x:b0,y:b3,platform:Windows,
+03000000c82d00000290000000000000,Retrobit 64,a:b3,b:b9,back:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b0,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b10,start:b11,x:b4,y:b8,platform:Windows,
+03000000c82d00003038000000000000,Retrobit 64,a:b3,b:b9,back:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b0,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b10,start:b11,x:b4,y:b8,platform:Windows,
+03000000bd12000013d0000000000000,Retrolink USB Sega Saturn Classic,a:b0,b:b1,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b5,lefttrigger:b6,rightshoulder:b2,righttrigger:b7,start:b8,x:b3,y:b4,platform:Windows,
+03000000bd12000015d0000000000000,Retrolink USB Super SNES Classic Controller,a:b2,b:b1,back:b8,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Windows,
0300000000f000000300000000000000,RetroUSB.com RetroPad,a:b1,b:b5,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b0,y:b4,platform:Windows,
0300000000f00000f100000000000000,RetroUSB.com Super RetroPort,a:b1,b:b5,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b0,y:b4,platform:Windows,
+03000000830500000960000000000000,Revenger,a:b0,b:b1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b3,x:b4,y:b5,platform:Windows,
030000006b140000010d000000000000,Revolution Pro Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
-030000006b140000020d000000000000,Revolution Pro Controller 2(1/2),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000006b140000020d000000000000,Revolution Pro Controller 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000006b140000130d000000000000,Revolution Pro Controller 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000006f0e00004601000000000000,Rock Candy,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e00001f01000000000000,Rock Candy,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
030000006f0e00001e01000000000000,Rock Candy PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00002801000000000000,Rock Candy PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00002f01000000000000,Rock Candy PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000004f04000003d0000000000000,run'n'drive,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b7,leftshoulder:a3,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:a4,rightstick:b11,righttrigger:b5,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000c6240000fefa000000000000,Rock Candy Controller,a:b0,b:b1,x:b2,y:b3,back:b6,guide:b8,start:b7,leftstick:b9,rightstick:b10,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:a2,righttrigger:a5,platform:Windows,
+030000004f04000001d0000000000000,Rumble Force,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Windows,
+030000004f04000009d0000000000000,Run N Drive,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000004f04000003d0000000000000,Run N Drive,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b7,leftshoulder:a3,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:a4,rightstick:b11,righttrigger:b5,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000c6240000045d000000000000,Sabertooth,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000008916000000fe000000000000,Sabertooth,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000a30600001af5000000000000,Saitek Cyborg,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000a306000023f6000000000000,Saitek Cyborg V.1 Game pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000300f00001201000000000000,Saitek Dual Analog Pad,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Windows,
03000000a30600000701000000000000,Saitek P220,a:b2,b:b3,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,lefttrigger:b7,rightshoulder:b4,righttrigger:b5,x:b0,y:b1,platform:Windows,
03000000a30600000cff000000000000,Saitek P2500 Force Rumble Pad,a:b2,b:b3,back:b11,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b10,x:b0,y:b1,platform:Windows,
+03000000a30600000d5f000000000000,Saitek P2600,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a3,righty:a2,start:b8,x:b0,y:b3,platform:Windows,
+03000000a30600000dff000000000000,Saitek P2600,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a5,righty:a2,start:b8,x:b0,y:b3,platform:Windows,
03000000a30600000c04000000000000,Saitek P2900,a:b1,b:b2,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b3,platform:Windows,
+03000000a306000018f5000000000000,Saitek P3200,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000300f00001001000000000000,Saitek P480 Rumble Pad,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Windows,
+03000000a30600000901000000000000,Saitek P880,a:b2,b:b3,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b8,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b5,rightx:a3,righty:a2,x:b0,y:b1,platform:Windows,
03000000a30600000b04000000000000,Saitek P990,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b3,platform:Windows,
-03000000a30600000b04000000010000,Saitek P990 Dual Analog Pad,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b8,x:b0,y:b3,platform:Windows,
+03000000a30600000b04000000000000,Saitek P990 Dual Analog Pad,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b8,x:b0,y:b3,platform:Windows,
03000000a30600002106000000000000,Saitek PS1000,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000a306000020f6000000000000,Saitek PS2700,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Windows,
03000000300f00001101000000000000,Saitek Rumble Pad,a:b2,b:b3,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Windows,
+03000000e804000000a0000000000000,Samsung EIGP20,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000c01100000252000000000000,Sanwa Easy Grip,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
+03000000bd12000003c0000000000000,Sanwa JYP70UR,a:b1,b:b0,back:b5,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b8,rightstick:b11,righttrigger:b9,rightx:a3,righty:a2,start:b4,x:b3,y:b2,platform:Windows,
+03000000c01100004350000000000000,Sanwa Micro Grip P3,a:b1,b:b0,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,x:b3,y:b2,platform:Windows,
+03000000c01100004150000000000000,Sanwa Micro Grip Pro,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Windows,
+03000000411200004550000000000000,Sanwa Micro Grip Pro,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a1,righty:a2,start:b9,x:b1,y:b3,platform:Windows,
+03000000c01100004450000000000000,Sanwa Online Grip,a:b0,b:b1,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b8,rightstick:b11,righttrigger:b9,rightx:a3,righty:a2,start:b14,x:b3,y:b4,platform:Windows,
03000000730700000401000000000000,Sanwa PlayOnline Mobile,a:b0,b:b1,back:b2,leftx:a0,lefty:a1,start:b3,platform:Windows,
-0300000000050000289b000000000000,Saturn_Adapter_2.0,a:b1,b:b2,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b0,y:b3,platform:Windows,
-030000009b2800000500000000000000,Saturn_Adapter_2.0,a:b1,b:b2,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b0,y:b3,platform:Windows,
-03000000a30c00002500000000000000,Sega Genesis Mini 3B controller,a:b2,b:b1,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,righttrigger:b5,start:b9,platform:Windows,
-03000000a30c00002400000000000000,Sega Mega Drive Mini 6B controller,a:b2,b:b1,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
-03000000341a00000208000000000000,SL-6555-SBK,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:-a4,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a4,rightx:a3,righty:a2,start:b7,x:b2,y:b3,platform:Windows,
-03000000341a00000908000000000000,SL-6566,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-030000008f0e00000800000000000000,SpeedLink Strike FX,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+03000000830500006120000000000000,Sanwa Smart Grip II,a:b0,b:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,x:b1,y:b3,platform:Windows,
+03000000c01100000051000000000000,Satechi Bluetooth Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
+03000000730700000601000000000000,Sega Saturn Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Windows,
+03000000b40400000a01000000000000,Sega Saturn Controller,a:b0,b:b1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b8,x:b3,y:b4,platform:Windows,
+0300000000f000000800000000000000,Sega Saturn Controller,a:b1,b:b2,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b3,start:b0,x:b5,y:b6,platform:Windows,
+0300000000050000289b000000000000,Sega Saturn Adapter 2,a:b1,b:b2,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b0,y:b3,platform:Windows,
+030000004f04000028b3000000000000,Score A,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000952e00002577000000000000,Scuf PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000a30c00002500000000000000,Sega Genesis Mini 3B Controller,a:b2,b:b1,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,righttrigger:b5,start:b9,platform:Windows,
+03000000a30c00002400000000000000,Sega Mega Drive Mini 6B Controller,a:b2,b:b1,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Windows,
+030000003b07000004a1000000000000,SFX,a:b0,b:b2,back:b7,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b9,righttrigger:b5,start:b8,x:b1,y:b3,platform:Windows,
+03000000120c00001c1e000000000000,SnakeByte GamePad 4S PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000571d00002000000000000000,SNES Controller,a:b0,b:b1,back:b6,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Windows,
+030000008b2800000300000000000000,SNES Controller,a:b0,b:b4,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b1,y:b5,platform:Windows,
+03000000921200004653000000000000,SNES Controller,a:b0,b:b4,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b1,y:b5,platform:Windows,
+0300000003040000c197000000000000,SNES Controller,a:b0,b:b4,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b1,y:b5,platform:Windows,
+0300000081170000960a000000000000,SNES Controller,a:b4,b:b0,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b5,y:b1,platform:Windows,
+03000000811700009d0a000000000000,SNES Controller,a:b0,b:b4,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b1,y:b5,platform:Windows,
+03000000341a00000208000000000000,Speedlink 6555,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:-a4,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a4,rightx:a3,righty:a2,start:b7,x:b2,y:b3,platform:Windows,
+03000000341a00000908000000000000,Speedlink 6566,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+030000008f0e00000800000000000000,Speedlink Strike FX,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000c01100000591000000000000,Speedlink Torid,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000d11800000094000000000000,Stadia Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:b12,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:b11,rightx:a3,righty:a4,start:b9,x:b2,y:b3,platform:Windows,
+03000000de280000fc11000000000000,Steam Virtual Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000de280000ff11000000000000,Steam Virtual Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000120c0000160e000000000000,Steel Play Metaltech PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
03000000110100001914000000000000,SteelSeries,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftstick:b13,lefttrigger:b6,leftx:a0,lefty:a1,rightstick:b14,righttrigger:b7,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000381000001214000000000000,SteelSeries Free,a:b0,b:b1,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Windows,
03000000110100003114000000000000,SteelSeries Stratus Duo,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
03000000381000001814000000000000,SteelSeries Stratus XL,a:b0,b:b1,back:b18,dpdown:b13,dpleft:b14,dpright:b15,dpup:b12,guide:b19,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b2,y:b3,platform:Windows,
-03000000790000001c18000000000000,STK-7024X,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000ff1100003133000000000000,SVEN X-PAD,a:b2,b:b3,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b9,rightx:a2,righty:a4,start:b5,x:b0,y:b1,platform:Windows,
+03000000790000001c18000000000000,STK 7024X,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000381000003014000000000000,Stratus Duo,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000381000003114000000000000,Stratus Duo,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700003847000000000000,Street Fighter Fighting Stick TE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b11,start:b7,x:b2,y:b3,platform:Windows,
+030000001f08000001e4000000000000,Super Famicom Controller,a:b2,b:b1,back:b8,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Windows,
+03000000790000000418000000000000,Super Famicom Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b33,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Windows,
03000000d620000011a7000000000000,Switch,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000457500002211000000000000,SZMY-POWER PC Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000004f04000007d0000000000000,T Mini Wireless,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-030000004f0400000ab1000000000000,T.16000M,a:b0,b:b1,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b11,leftshoulder:b4,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,start:b10,x:b2,y:b3,platform:Windows,
+030000000d0f0000f600000000000000,Switch Hori Pad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+03000000457500002211000000000000,Szmy Power PC Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000004f04000007d0000000000000,TMini Wireless,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+030000004f0400000ab1000000000000,T16000M,a:b0,b:b1,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b11,leftshoulder:b4,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,start:b10,x:b2,y:b3,platform:Windows,
+030000000d0f00007b00000000000000,TAC GEAR,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000d814000001a0000000000000,TE Kitty,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000fa1900000706000000000000,Team 5,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000b50700001203000000000000,Techmobility X6-38V,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Windows,
+03000000790000002601000000000000,TGZ,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b3,y:b0,platform:Windows,
030000004f04000015b3000000000000,Thrustmaster Dual Analog 4,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Windows,
-030000004f04000023b3000000000000,Thrustmaster Dual Trigger 3-in-1,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000004f04000023b3000000000000,Thrustmaster Dual Trigger 3 in 1,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000004f0400000ed0000000000000,ThrustMaster eSwap PRO Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
030000004f04000000b3000000000000,Thrustmaster Firestorm Dual Power,a:b0,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b11,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b12,righttrigger:b7,rightx:a2,righty:a3,start:b10,x:b1,y:b3,platform:Windows,
030000004f04000004b3000000000000,Thrustmaster Firestorm Dual Power 3,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Windows,
+030000006d04000088ca000000000000,Thunderpad,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
03000000666600000488000000000000,TigerGame PS/PS2 Game Controller Adapter,a:b2,b:b1,back:b9,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
03000000d62000006000000000000000,Tournament PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000c01100000055000000000000,Tronsmart,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
030000005f140000c501000000000000,Trust Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000b80500000210000000000000,Trust Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
030000004f04000087b6000000000000,TWCS Throttle,dpdown:b8,dpleft:b9,dpright:b7,dpup:b6,leftstick:b5,lefttrigger:-a5,leftx:a0,lefty:a1,righttrigger:+a5,platform:Windows,
+03000000411200000450000000000000,Twin Shock,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a3,righty:a4,start:b11,x:b3,y:b0,platform:Windows,
03000000d90400000200000000000000,TwinShock PS2,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
-030000006e0500001320000000000000,U4113,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000101c0000171c000000000000,uRage Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
-03000000300f00000701000000000000,USB 4-Axis 12-Button Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
-03000000341a00002308000000000000,USB gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-030000005509000000b4000000000000,USB gamepad,a:b10,b:b11,back:b5,dpdown:b1,dpleft:b2,dpright:b3,dpup:b0,guide:b14,leftshoulder:b8,leftstick:b6,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b9,rightstick:b7,righttrigger:a5,rightx:a2,righty:a3,start:b4,x:b12,y:b13,platform:Windows,
-030000006b1400000203000000000000,USB gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-03000000790000000a00000000000000,USB gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
-03000000f0250000c183000000000000,USB gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
-03000000ff1100004133000000000000,USB gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a4,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
-03000000632500002305000000000000,USB Vibration Joystick (BM),a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+03000000242f00006e00000000000000,USB Game Controller,a:b1,b:b4,back:b10,leftshoulder:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b9,righttrigger:b7,rightx:a2,righty:a5,start:b11,x:b0,y:b3,platform:Windows,
+03000000b50700001503000000000000,USB Game Controller,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a5,righty:a2,start:b9,x:b0,y:b1,platform:Windows,
+03000000b404000081c6000000000000,USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b3,y:b0,platform:Windows,
+03000000666600000188000000000000,USB Game Controller,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
+03000000666600000288000000000000,USB Game Controller,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Windows,
+03000000300f00000701000000000000,USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
+03000000bd12000012d0000000000000,USB Game Controller,a:b0,b:b1,back:b6,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Windows,
+030000000b0400003065000000000000,USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b3,y:b0,platform:Windows,
+03000000341a00002308000000000000,USB Game Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+030000006b1400000203000000000000,USB Game Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+03000000790000000a00000000000000,USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b3,y:b0,platform:Windows,
+03000000f0250000c183000000000000,USB Game Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
+03000000ff1100004133000000000000,USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a4,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
+03000000632500002305000000000000,USB Vibration Joystick,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000790000001a18000000000000,Venom,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Windows,
03000000790000001b18000000000000,Venom Arcade Joystick,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00000302000000000000,Victrix Pro Fight Stick for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
030000006f0e00000702000000000000,Victrix Pro Fight Stick for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Windows,
0300000034120000adbe000000000000,vJoy Device,a:b0,b:b1,back:b15,dpdown:b6,dpleft:b7,dpright:b8,dpup:b5,guide:b16,leftshoulder:b9,leftstick:b13,lefttrigger:b11,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b14,righttrigger:b12,rightx:a3,righty:a4,start:b4,x:b2,y:b3,platform:Windows,
+03000000120c0000ab57000000000000,Warrior Joypad JS083,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000007e0500003003000000000000,WiiU Pro,a:b0,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b16,dpup:b13,leftshoulder:b6,leftstick:b11,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b12,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Windows,
+0300000032150000030a000000000000,Wildcat,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+0300000032150000140a000000000000,Wolverine,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000016f0000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e0400009102000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b00008e02000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000c62400000053000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700002644000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a2,righty:a5,start:b8,x:b2,y:b3,platform:Windows,
+03000000380700002045000000000000,Xbox 360 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000005e0400001907000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700001647000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700002647000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700003647000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a7,righty:a5,start:b7,x:b2,y:b3,platform:Windows,
+030000003807000026b7000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000c6240000fdfa000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000000fd000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000ad1b000001fd000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000002e160000efbe000000000000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b10,rightshoulder:b5,righttrigger:b11,start:b7,x:b2,y:b3,platform:Windows,
030000005e0400000a0b000000000000,Xbox Adaptive Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:+a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:-a2,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000002a0600002000000000000000,Xbox Controller,a:b0,b:b1,back:b13,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,leftshoulder:b5,leftstick:b14,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b15,righttrigger:b7,rightx:a2,righty:a5,start:b12,x:b2,y:b3,platform:Windows,
+030000005e0400000202000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+030000005e0400008502000000000000,Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e0400008702000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b7,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+030000005e0400008902000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b10,leftstick:b8,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b9,righttrigger:b4,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+03000000380700001645000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+03000000380700002645000000000000,Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000380700003645000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+03000000380700008645000000000000,Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000120c00001088000000000000,Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2~,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5~,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000300f00008888000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:b13,dpleft:b10,dpright:b11,dpup:b12,leftshoulder:b5,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b9,righttrigger:b11,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+03000000120c00000a88000000000000,Xbox Controller,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b11,rightx:a2,righty:a4,start:b6,x:b2,y:b3,platform:Windows,
+030000000d0f00006300000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b9,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000e002000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000d102000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000e302000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e0000a802000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000006f0e0000c802000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000dd02000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e040000fd02000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+03000000c62400003a54000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
+030000005e0400000c0b000000000000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
030000005e040000130b000000000000,Xbox Series Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
03000000341a00000608000000000000,Xeox,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-03000000450c00002043000000000000,XEOX Gamepad SL-6556-BK,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
-03000000ac0500005b05000000000000,Xiaoji Gamesir-G3w,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
+03000000450c00002043000000000000,Xeox Gamepad SL6556BK,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Windows,
+030000006f0e00000300000000000000,XGear,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a5,righty:a2,start:b9,x:b3,y:b0,platform:Windows,
+03000000ac0500005b05000000000000,Xiaoji Gamesir G3w,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Windows,
03000000172700004431000000000000,XiaoMi Game Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b20,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a7,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Windows,
03000000786901006e70000000000000,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Windows,
-03000000790000004f18000000000000,ZD-T Android,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
-03000000120c0000101e000000000000,ZEROPLUS P4 Wired Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+03000000790000004f18000000000000,ZDT Android Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b3,y:b4,platform:Windows,
+03000000120c0000101e000000000000,Zeroplus P4 Wired Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Windows,
+030000007e0500001720000000000000,Nintendo Switch SNES Controller,a:b0,b:b1,x:b2,y:b3,back:b8,start:b9,-leftx:h0.8,+leftx:h0.2,-lefty:h0.1,+lefty:h0.4,leftshoulder:b4,rightshoulder:b5,lefttrigger:b6,righttrigger:b7,platform:Windows,
# Mac OS X
030000008f0e00000300000009010000,2In1 USB Joystick,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Mac OS X,
@@ -369,13 +705,15 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000c82d00005106000000010000,8BitDo M30 Gamepad,a:b1,b:b0,back:b10,guide:b2,leftshoulder:b6,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00001590000001000000,8BitDo N30 Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00006528000000010000,8BitDo N30 Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
+03000000c82d000012ab000001000000,8BitDo NES30,a:b0,b:b1,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Mac OS X,
+03000000c82d00002028000000010000,8BitDo NES30,a:b0,b:b1,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Mac OS X,
030000003512000012ab000001000000,8BitDo NES30 Gamepad,a:b1,b:b0,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000022000000090000001000000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000203800000900000000010000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000190000001000000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000102800000900000000000000,8Bitdo SFC30 GamePad Joystick,a:b1,b:b0,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00001290000001000000,8BitDo SN30 Gamepad,a:b1,b:b0,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Mac OS X,
-03000000c82d00004028000000010000,8Bitdo SN30 GamePad,a:b1,b:b0,x:b4,y:b3,back:b10,start:b11,leftshoulder:b6,rightshoulder:b7,dpup:-a1,dpdown:+a1,dpleft:-a0,dpright:+a0,platform:Mac OS X,
+03000000c82d00004028000000010000,8Bitdo SN30 GamePad,a:b1,b:b0,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000160000001000000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000161000000010000,8BitDo SN30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a5,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000c82d00000260000001000000,8BitDo SN30 Pro+,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Mac OS X,
@@ -385,42 +723,45 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000c82d00003032000000010000,8BitDo Zero 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,rightx:a2,righty:a31,start:b11,x:b4,y:b3,platform:Mac OS X,
03000000a00500003232000008010000,8Bitdo Zero GamePad,a:b0,b:b1,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Mac OS X,
03000000a00500003232000009010000,8Bitdo Zero GamePad,a:b0,b:b1,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Mac OS X,
+03000000491900001904000001010000,Amazon Luna Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Mac OS X,
+03000000710100001904000000010000,Amazon Luna Controller,a:b0,b:b1,back:b11,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Mac OS X,
03000000a30c00002700000003030000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a3,lefty:a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Mac OS X,
03000000a30c00002800000003030000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a3,lefty:a4,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Mac OS X,
03000000050b00000045000031000000,ASUS Gamepad,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Mac OS X,
03000000ef0500000300000000020000,AxisPad,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,start:b11,x:b0,y:b1,platform:Mac OS X,
-03000000491900001904000001010000,Amazon Luna Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Mac OS X,
-03000000710100001904000000010000,Amazon Luna Controller,a:b0,b:b1,back:b11,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Mac OS X,
03000000c62400001a89000000010000,BDA MOGA XP5-X Plus,a:b0,b:b1,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b14,leftshoulder:b6,leftstick:b15,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b16,righttrigger:a4,rightx:a2,righty:a3,start:b13,x:b3,y:b4,platform:Mac OS X,
03000000c62400001b89000000010000,BDA MOGA XP5-X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
03000000d62000002a79000000010000,BDA PS4 Fightpad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-03000000120c0000200e000000010000,Brook Mars,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-03000000120c0000210e000000010000,Brook Mars,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000120c0000200e000000010000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000120c0000210e000000010000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000008305000031b0000000000000,Cideko AK08b,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000260900008888000088020000,Cyber Gadget GameCube Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:a5,rightx:a2,righty:a3~,start:b7,x:b2,y:b3,platform:Mac OS X,
03000000a306000022f6000001030000,Cyborg V.3 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:+a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:-a3,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00008400000000010000,Fighting Commander,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00008500000000010000,Fighting Commander,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000151900004000000001000000,Flydigi Vader 2,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Mac OS X,
+03000000b40400001124000000000000,Flydigi Vader 2,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b12,lefttrigger:b8,leftx:a0,lefty:a1,paddle1:b4,paddle2:b5,paddle3:b17,rightshoulder:b7,rightstick:b13,righttrigger:b9,rightx:a3,righty:a4,start:b11,x:b2,y:b3,platform:Mac OS X,
03000000790000004618000000010000,GameCube Controller Adapter,a:b4,b:b0,dpdown:b56,dpleft:b60,dpright:b52,dpup:b48,lefttrigger:a12,leftx:a0,lefty:a4,rightshoulder:b28,righttrigger:a16,rightx:a20,righty:a8,start:b36,x:b8,y:b12,platform:Mac OS X,
-03000000ad1b000001f9000000000000,Gamestop BB-070 X360 Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
+03000000ad1b000001f9000000000000,Gamestop BB070 X360 Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
0500000047532047616d657061640000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Mac OS X,
03000000c01100000140000000010000,GameStop PS4 Fun Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
030000006f0e00000102000000000000,GameStop Xbox 360 Wired Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000007d0400000540000001010000,Gravis Eliminator GamePad Pro,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000280400000140000000020000,Gravis Gamepad Pro,a:b1,b:b2,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000008f0e00000300000007010000,GreenAsia Inc. USB Joystick,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Mac OS X,
+030000008f0e00000300000007010000,GreenAsia USB Joystick,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Mac OS X,
030000000d0f00002d00000000100000,Hori Fighting Commander 3 Pro,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00005f00000000010000,Hori Fighting Commander 4 (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00005e00000000010000,Hori Fighting Commander 4 (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00005f00000000000000,HORI Fighting Commander 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00005e00000000000000,HORI Fighting Commander 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00004d00000000000000,HORI Gem Pad 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00005f00000000010000,Hori Fighting Commander 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00005e00000000010000,Hori Fighting Commander 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00005f00000000000000,Hori Fighting Commander 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00005e00000000000000,Hori Fighting Commander 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00004d00000000000000,Hori Gem Pad 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000000d0f00009200000000010000,Hori Pokken Tournament DX Pro Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00006e00000000010000,HORIPAD 4 (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00006600000000010000,HORIPAD 4 (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f00006600000000000000,HORIPAD FPS PLUS 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000000d0f0000ee00000000010000,HORIPAD mini4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00006e00000000010000,Horipad 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00006600000000010000,Horipad 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f00006600000000000000,Horipad FPS Plus 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000000d0f0000ee00000000010000,Horipad Mini 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
030000008f0e00001330000011010000,HuiJia SNES Controller,a:b4,b:b2,back:b16,dpdown:+a2,dpleft:-a0,dpright:+a0,dpup:-a2,leftshoulder:b12,rightshoulder:b14,start:b18,x:b6,y:b0,platform:Mac OS X,
-03000000830500006020000000010000,iBuffalo SNES Controller,a:b1,b:b0,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b7,x:b3,y:b2,platform:Mac OS X,
-03000000830500006020000000000000,iBuffalo USB 2-axis 8-button Gamepad,a:b1,b:b0,back:b6,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b3,y:b2,platform:Mac OS X,
+03000000830500006020000000000000,iBuffalo Gamepad,a:b1,b:b0,back:b6,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b3,y:b2,platform:Mac OS X,
030000007e0500000620000001000000,Joy-Con (L),+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b0,b:b1,back:b13,leftshoulder:b4,leftstick:b10,rightshoulder:b5,start:b8,x:b2,y:b3,platform:Mac OS X,
030000007e0500000720000001000000,Joy-Con (R),+leftx:h0.2,+lefty:h0.4,-leftx:h0.8,-lefty:h0.1,a:b0,b:b1,back:b12,leftshoulder:b4,leftstick:b11,rightshoulder:b5,start:b9,x:b2,y:b3,platform:Mac OS X,
03000000242f00002d00000007010000,JYS Wireless Adapter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Mac OS X,
@@ -429,7 +770,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000006d04000016c2000014040000,Logitech Dual Action,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000006d04000016c2000000000000,Logitech F310 Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000006d04000018c2000000000000,Logitech F510 Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000006d04000019c2000005030000,Logitech F710,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000006d04000019c2000005030000,Logitech F710 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000006d0400001fc2000000000000,Logitech F710 Gamepad (XInput),a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000006d04000018c2000000010000,Logitech RumblePad 2 USB,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3~,start:b9,x:b0,y:b3,platform:Mac OS X,
030000006d04000019c2000000000000,Logitech Wireless Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
@@ -437,7 +778,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000380700005082000000010000,Mad Catz FightPad PRO (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000380700008433000000010000,Mad Catz FightStick TE S+ (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000380700008483000000010000,Mad Catz FightStick TE S+ (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-03000000790000000600000007010000,Marvo GT-004,a:b2,b:b1,x:b3,y:b0,back:b8,start:b9,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7,platform:Mac OS X,
+03000000790000000600000007010000,Marvo GT-004,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Mac OS X,
03000000790000004418000000010000,Mayflash GameCube Controller,a:b1,b:b2,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000242f00007300000000020000,Mayflash Magic NS,a:b1,b:b4,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b0,y:b3,platform:Mac OS X,
0300000079000000d218000026010000,Mayflash Magic NS,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Mac OS X,
@@ -445,21 +786,21 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
0300000025090000e803000000000000,Mayflash Wii Classic Controller,a:b1,b:b0,back:b8,dpdown:b13,dpleft:b12,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Mac OS X,
03000000790000000018000000010000,Mayflash Wii U Pro Controller Adapter,a:b4,b:b8,back:b32,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b16,leftstick:b40,lefttrigger:b24,leftx:a0,lefty:a4,rightshoulder:b20,rightstick:b44,righttrigger:b28,rightx:a8,righty:a12,start:b36,x:b0,y:b12,platform:Mac OS X,
03000000790000000018000000000000,Mayflash WiiU Pro Game Controller Adapter (DInput),a:b4,b:b8,back:b32,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b16,leftstick:b40,lefttrigger:b24,leftx:a0,lefty:a4,rightshoulder:b20,rightstick:b44,righttrigger:b28,rightx:a8,righty:a12,start:b36,x:b0,y:b12,platform:Mac OS X,
-03000000d8140000cecf000000000000,MC Cthulhu,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000005e0400002700000001010000,Microsoft SideWinder Plug & Play Game Pad,a:b0,b:b1,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,lefttrigger:b4,leftx:a0,lefty:a1,righttrigger:b5,x:b2,y:b3,platform:Mac OS X,
+03000000d8140000cecf000000000000,Cthulhu,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
+030000005e0400002700000001010000,Microsoft SideWinder Game Pad,a:b0,b:b1,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,lefttrigger:b4,leftx:a0,lefty:a1,righttrigger:b5,x:b2,y:b3,platform:Mac OS X,
03000000d62000007162000001000000,Moga Pro 2 HID,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Mac OS X,
-03000000c62400002a89000000010000,MOGA XP5-A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b21,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
-03000000c62400002b89000000010000,MOGA XP5-A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
+03000000c62400002a89000000010000,MOGA XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b21,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
+03000000c62400002b89000000010000,MOGA XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
03000000632500007505000000020000,NEOGEO mini PAD Controller,a:b1,b:b0,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b9,x:b2,y:b3,platform:Mac OS X,
03000000921200004b46000003020000,NES 2-port Adapter,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b11,platform:Mac OS X,
030000001008000001e5000006010000,NEXT SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,righttrigger:b6,start:b9,x:b3,y:b0,platform:Mac OS X,
-03000000d620000011a7000000020000,Nintendo Switch Core (Plus) Wired Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000d620000011a7000000020000,Nintendo Switch Core Plus Wired Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000d620000011a7000010050000,Nintendo Switch PowerA Wired Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000007e0500000920000000000000,Nintendo Switch Pro Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Mac OS X,
030000007e0500000920000001000000,Nintendo Switch Pro Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Mac OS X,
03000000550900001472000025050000,NVIDIA Controller v01.04,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b15,leftshoulder:b4,leftstick:b7,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Mac OS X,
030000006f0e00000901000002010000,PDP Versus Fighting Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Mac OS X,
-030000008f0e00000300000000000000,Piranha xtreme,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Mac OS X,
+030000008f0e00000300000000000000,Piranha Xtreme PS3 Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Mac OS X,
030000004c050000da0c000000010000,Playstation Classic Controller,a:b2,b:b1,back:b8,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Mac OS X,
030000004c0500003713000000010000,PlayStation Vita,a:b1,b:b2,back:b8,dpdown:b13,dpleft:b15,dpright:b14,dpup:b12,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000d62000006dca000000010000,PowerA Pro Ex,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
@@ -472,15 +813,17 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000004c050000cc09000000010000,PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
050000004c050000e60c000000010000,PS5 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b13,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
030000008916000000fd000000000000,Razer Onza TE,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
-03000000321500000204000000010000,Razer Panthera (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
-03000000321500000104000000010000,Razer Panthera (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-03000000321500000010000000010000,Razer RAIJU,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000321500000204000000010000,Razer Panthera PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000321500000104000000010000,Razer Panthera PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000321500000010000000010000,Razer Raiju,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000321500000507000001010000,Razer Raiju Mobile,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b21,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
03000000321500000011000000010000,Razer Raion Fightpad for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000321500000009000000020000,Razer Serval,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Mac OS X,
030000003215000000090000163a0000,Razer Serval,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Mac OS X,
0300000032150000030a000000000000,Razer Wildcat,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
-03000000790000001100000000000000,Retrolink Classic Controller,a:b2,b:b1,back:b8,leftshoulder:b4,leftx:a3,lefty:a4,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Mac OS X,
+03000000830500006020000000010000,Retro Controller,a:b0,b:b1,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,lefttrigger:b5,rightshoulder:b8,righttrigger:b9,start:b7,x:b2,y:b3,platform:Mac OS X,
+03000000790000001100000000000000,Retro Controller,a:b1,b:b2,back:b8,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,leftshoulder:b6,lefttrigger:b7,rightshoulder:b4,righttrigger:b5,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000790000001100000005010000,Retro Controller,a:b1,b:b2,back:b8,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,leftshoulder:b6,lefttrigger:b7,rightshoulder:b5,righttrigger:b4,start:b9,x:b0,y:b3,platform:Mac OS X,
03000000790000001100000006010000,Retrolink SNES Controller,a:b2,b:b1,back:b8,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,leftshoulder:b4,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Mac OS X,
030000006b140000010d000000010000,Revolution Pro Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
030000006b140000130d000000010000,Revolution Pro Controller 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
@@ -498,10 +841,12 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000110100002014000000000000,SteelSeries Nimbus,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b12,x:b2,y:b3,platform:Mac OS X,
03000000110100002014000001000000,SteelSeries Nimbus,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3~,x:b2,y:b3,platform:Mac OS X,
03000000381000002014000001000000,SteelSeries Nimbus,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3~,x:b2,y:b3,platform:Mac OS X,
+05000000484944204465766963650000,SteelSeries Nimbus Plus,a:b0,b:b1,back:b15,dpdown:b11,dpleft:b13,dpright:b12,dpup:b10,guide:b16,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3~,start:b14,x:b2,y:b3,platform:Mac OS X,
+05000000556e6b6e6f776e2048494400,SteelSeries Nimbus Plus,a:b0,b:b1,back:b15,dpdown:b11,dpleft:b13,dpright:b12,dpup:b10,guide:b16,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3~,start:b14,x:b2,y:b3,platform:Mac OS X,
050000004e696d6275732b0000000000,SteelSeries Nimbus Plus,a:b0,b:b1,back:b15,dpdown:b11,dpleft:b13,dpright:b12,dpup:b10,guide:b16,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3~,start:b14,x:b2,y:b3,platform:Mac OS X,
03000000110100001714000000000000,SteelSeries Stratus XL,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3~,start:b12,x:b2,y:b3,platform:Mac OS X,
03000000110100001714000020010000,SteelSeries Stratus XL,a:b0,b:b1,dpdown:b9,dpleft:b11,dpright:b10,dpup:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1~,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3~,start:b12,x:b2,y:b3,platform:Mac OS X,
-03000000457500002211000000010000,SZMY-POWER PC Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000457500002211000000010000,SZMY Power PC Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Mac OS X,
030000004f04000015b3000000000000,Thrustmaster Dual Analog 3.2,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Mac OS X,
030000004f0400000ed0000000020000,ThrustMaster eSwap PRO Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
030000004f04000000b3000000000000,Thrustmaster Firestorm Dual Power,a:b0,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b11,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,rightx:a2,righty:a3,start:b10,x:b1,y:b3,platform:Mac OS X,
@@ -513,7 +858,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000791d00000103000009010000,Wii Classic Controller,a:b2,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,guide:b10,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Mac OS X,
050000005769696d6f74652028303000,Wii Remote,a:b4,b:b5,back:b7,dpdown:b3,dpleft:b0,dpright:b1,dpup:b2,guide:b8,leftshoulder:b11,lefttrigger:b12,leftx:a0,lefty:a1,start:b6,x:b10,y:b9,platform:Mac OS X,
050000005769696d6f74652028313800,Wii U Pro Controller,a:b16,b:b15,back:b7,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b8,leftshoulder:b19,leftstick:b23,lefttrigger:b21,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b24,righttrigger:b22,rightx:a2,righty:a3,start:b6,x:b18,y:b17,platform:Mac OS X,
-030000005e0400008e02000000000000,X360 Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
+030000005e0400008e02000000000000,Xbox 360 Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000006f0e00000104000000000000,Xbox 360 Wired Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
03000000c6240000045d000000000000,Xbox 360 Wired Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000005e0400000a0b000000000000,Xbox Adaptive Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
@@ -524,28 +869,33 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000005e040000e302000000000000,Xbox One Wired Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000005e040000130b000001050000,Xbox Series Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
030000005e040000130b000005050000,Xbox Series Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
+030000005e040000130b000009050000,Xbox Series Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
+030000005e040000200b000011050000,Xbox Wireless Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
030000005e040000e002000000000000,Xbox Wireless Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Mac OS X,
030000005e040000e002000003090000,Xbox Wireless Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Mac OS X,
030000005e040000ea02000000000000,Xbox Wireless Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b8,x:b2,y:b3,platform:Mac OS X,
030000005e040000fd02000003090000,Xbox Wireless Controller,a:b0,b:b1,back:b16,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b15,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Mac OS X,
03000000172700004431000029010000,XiaoMi Game Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b15,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a6,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Mac OS X,
-03000000120c0000100e000000010000,ZEROPLUS P4 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
-03000000120c0000101e000000010000,ZEROPLUS P4 Wired Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000120c0000100e000000010000,Zeroplus P4 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
+03000000120c0000101e000000010000,Zeroplus P4 Wired Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Mac OS X,
# Linux
+03000000021000000090000011010000,8BitDo FC30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
03000000c82d00000090000011010000,8BitDo FC30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00001038000000010000,8Bitdo FC30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00005106000000010000,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b8,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:b7,start:b11,x:b3,y:b4,platform:Linux,
03000000c82d00001590000011010000,8BitDo N30 Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00006528000000010000,8BitDo N30 Pro 2,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
+03000000008000000210000011010000,8BitDo NES30,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
03000000c82d00000310000011010000,8BitDo NES30,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b7,lefttrigger:b6,rightshoulder:b9,righttrigger:b8,start:b11,x:b3,y:b4,platform:Linux,
05000000c82d00008010000000010000,8BitDo NES30,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b7,lefttrigger:b6,rightshoulder:b9,righttrigger:b8,start:b11,x:b3,y:b4,platform:Linux,
03000000022000000090000011010000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000203800000900000000010000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00002038000000010000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
-03000000c82d00000190000011010000,8Bitdo NES30 Pro 8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
+03000000c82d00000190000011010000,8Bitdo NES30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00000060000000010000,8BitDo SF30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
05000000c82d00000061000000010000,8Bitdo SF30 Pro,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b2,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b4,y:b3,platform:Linux,
+030000003512000021ab000010010000,8BitDo SFC30,a:b1,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Linux,
03000000c82d000021ab000010010000,8BitDo SFC30,a:b1,b:b0,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Linux,
030000003512000012ab000010010000,8Bitdo SFC30 GamePad,a:b2,b:b1,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b7,x:b3,y:b0,platform:Linux,
05000000102800000900000000010000,8Bitdo SFC30 GamePad,a:b1,b:b0,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b4,y:b3,platform:Linux,
@@ -566,12 +916,12 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
050000005e040000e002000030110000,8BitDo Zero 2 (XInput),a:b0,b:b1,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Linux,
05000000a00500003232000001000000,8Bitdo Zero GamePad,a:b0,b:b1,back:b10,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Linux,
05000000a00500003232000008010000,8Bitdo Zero GamePad,a:b0,b:b1,back:b10,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b11,x:b3,y:b4,platform:Linux,
-03000000c01100000355000011010000,ACRUX USB GAME PAD,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000c01100000355000011010000,Acrux Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006f0e00001302000000010000,Afterglow,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006f0e00003901000020060000,Afterglow Controller for Xbox One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006f0e00003901000000430000,Afterglow Prismatic Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006f0e00003901000013020000,Afterglow Prismatic Wired Controller 048-007-NA,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000100000008200000011010000,Akishop Customs PS360+ v1.66,a:b1,b:b2,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
+03000000100000008200000011010000,Akishop Customs PS360 v1.66,a:b1,b:b2,back:b12,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
030000007c1800000006000010010000,Alienware Dual Compatible Game Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b3,platform:Linux,
05000000491900000204000021000000,Amazon Fire Game Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b17,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,misc1:b12,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
03000000491900001904000011010000,Amazon Luna Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b9,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b7,x:b2,y:b3,platform:Linux,
@@ -579,80 +929,86 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000790000003018000011010000,Arcade Fightstick F300,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
03000000a30c00002700000011010000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a0,lefty:a1,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Linux,
03000000a30c00002800000011010000,Astro City Mini,a:b2,b:b1,back:b8,leftx:a0,lefty:a1,rightshoulder:b4,righttrigger:b5,start:b9,x:b3,y:b0,platform:Linux,
-05000000050b00000045000031000000,ASUS Gamepad,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b6,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b10,x:b2,y:b3,platform:Linux,
-05000000050b00000045000040000000,ASUS Gamepad,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b6,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b10,x:b2,y:b3,platform:Linux,
+05000000050b00000045000031000000,Asus Gamepad,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b6,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b10,x:b2,y:b3,platform:Linux,
+05000000050b00000045000040000000,Asus Gamepad,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b6,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b10,x:b2,y:b3,platform:Linux,
03000000503200000110000000000000,Atari Classic Controller,a:b0,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b4,start:b3,x:b1,platform:Linux,
05000000503200000110000000000000,Atari Classic Controller,a:b0,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b4,start:b3,x:b1,platform:Linux,
-03000000503200000210000000000000,Atari Game Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b2,platform:Linux,
+03000000503200000210000000000000,Atari Game Controller,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b6,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a4,rightx:a2,righty:a3,start:b8,x:b2,y:b3,platform:Linux,
05000000503200000210000000000000,Atari Game Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b2,platform:Linux,
03000000120c00000500000010010000,AxisPad,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,start:b11,x:b0,y:b1,platform:Linux,
03000000ef0500000300000000010000,AxisPad,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,start:b11,x:b0,y:b1,platform:Linux,
-03000000c62400001b89000011010000,BDA MOGA XP5-X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+03000000c62400001b89000011010000,BDA MOGA XP5X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
03000000d62000002a79000011010000,BDA PS4 Fightpad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-03000000c21100000791000011010000,Be1 GC101 Controller 1.03 mode,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-03000000c31100000791000011010000,Be1 GC101 GAMEPAD 1.03 mode,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-030000005e0400008e02000003030000,Be1 GC101 Xbox 360 Controller mode,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000666600006706000000010000,boom PSX to PC Converter,a:b2,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a2,righty:a3,start:b11,x:b3,y:b0,platform:Linux,
-03000000120c0000200e000011010000,Brook Mars,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-03000000120c0000210e000011010000,Brook Mars,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000c21100000791000011010000,Be1 GC101 Controller 1.03,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+03000000c31100000791000011010000,Be1 GC101 GAMEPAD 1.03,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+030000005e0400008e02000003030000,Be1 GC101 Xbox 360,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+05000000bc2000000055000001000000,BETOP AX1 BFM,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+030000006b1400000209000011010000,Bigben,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000666600006706000000010000,Boom PSX to PC Converter,a:b2,b:b1,back:b8,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a2,righty:a3,start:b11,x:b3,y:b0,platform:Linux,
+03000000120c0000200e000011010000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000120c0000210e000011010000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
03000000120c0000f70e000011010000,Brook Universal Fighting Board,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-03000000ffff0000ffff000000010000,Chinese-made Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
+03000000ffff0000ffff000000010000,Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
03000000e82000006058000001010000,Cideko AK08b,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
030000000b0400003365000000010000,Competition Pro,a:b0,b:b1,back:b2,leftx:a0,lefty:a1,start:b3,platform:Linux,
03000000260900008888000000010000,Cyber Gadget GameCube Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b6,righttrigger:a5,rightx:a2,righty:a3~,start:b7,x:b2,y:b3,platform:Linux,
-03000000a306000022f6000011010000,Cyborg V.3 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:+a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:-a3,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Linux,
-03000000b40400000a01000000010000,CYPRESS USB Gamepad,a:b0,b:b1,back:b5,guide:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b8,x:b3,y:b4,platform:Linux,
-03000000790000000600000010010000,DragonRise Inc. Generic USB Joystick,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b3,y:b0,platform:Linux,
+03000000a306000022f6000011010000,Cyborg V3 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:+a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:-a3,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Linux,
030000004f04000004b3000010010000,Dual Power 2,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Linux,
030000006f0e00003001000001010000,EA Sports PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000341a000005f7000010010000,GameCube {HuiJia USB box},a:b1,b:b2,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b0,y:b3,platform:Linux,
+03000000c11100000191000011010000,EasySMX,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+030000006e0500000320000010010000,Elecom U3613M,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Linux,
+03000000b40400001124000011010000,Flydigi Vader 2,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b12,lefttrigger:a5,leftx:a0,lefty:a1,paddle1:b2,paddle2:b5,paddle4:b17,rightshoulder:b7,rightstick:b13,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000151900004000000001000000,Flydigi Vader 2,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
+03000000341a000005f7000010010000,HuiJia GameCube Controller Adpater,a:b1,b:b2,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b0,y:b3,platform:Linux,
03000000bc2000000055000011010000,GameSir G3w,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000ac0500002d0200001b010000,Gamesir G4s,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b33,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
0500000047532047616d657061640000,GameStop Gamepad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
030000006f0e00000104000000010000,Gamestop Logic3 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000008f0e00000800000010010000,Gasia Co. Ltd PS(R) Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-030000006f0e00001304000000010000,Generic X-Box pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000008f0e00000800000010010000,Gasia PlayStation Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+030000006f0e00001304000000010000,Xbox Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000451300000010000010010000,Genius Maxfire Grandias 12,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
-03000000f0250000c183000010010000,Goodbetterbest Ltd USB Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000f0250000c183000010010000,Goodbetterbest Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
0300000079000000d418000000010000,GPD Win 2 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000007d0400000540000000010000,Gravis Eliminator GamePad Pro,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-03000000280400000140000000010000,Gravis GamePad Pro USB ,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-030000008f0e00000610000000010000,GreenAsia Electronics 4Axes 12Keys GamePad ,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a3,righty:a2,start:b11,x:b3,y:b0,platform:Linux,
-030000008f0e00001200000010010000,GreenAsia Inc. USB Joystick,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
+03000000280400000140000000010000,Gravis GamePad Pro USB,a:b1,b:b2,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
+030000008f0e00000610000000010000,GreenAsia Electronics Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b9,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b10,righttrigger:b5,rightx:a3,righty:a2,start:b11,x:b3,y:b0,platform:Linux,
+030000008f0e00001200000010010000,GreenAsia USB Joystick,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
0500000047532067616d657061640000,GS gamepad,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
03000000f0250000c383000010010000,GT VX2,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
06000000adde0000efbe000002010000,Hidromancer Game Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000d81400000862000011010000,HitBox (PS3/PC) Analog Mode,a:b1,b:b2,back:b8,guide:b9,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b12,x:b0,y:b3,platform:Linux,
-03000000c9110000f055000011010000,HJC Game GAMEPAD,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
-03000000632500002605000010010000,HJD-X,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-030000000d0f00000d00000000010000,hori,a:b0,b:b6,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b3,leftx:b4,lefty:b5,rightshoulder:b7,start:b9,x:b1,y:b2,platform:Linux,
-030000000d0f00001000000011010000,HORI CO. LTD. FIGHTING STICK 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f0000c100000011010000,HORI CO. LTD. HORIPAD S,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b13,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00006a00000011010000,HORI CO. LTD. Real Arcade Pro.4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00006b00000011010000,HORI CO. LTD. Real Arcade Pro.4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00002200000011010000,HORI CO. LTD. REAL ARCADE Pro.V3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00008500000010010000,HORI Fighting Commander,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000d81400000862000011010000,HitBox PS3 PC Analog Mode,a:b1,b:b2,back:b8,guide:b9,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b12,x:b0,y:b3,platform:Linux,
+03000000c9110000f055000011010000,HJC Game Gamepqd,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
+03000000300f00001210000010010000,Qanba Joystick Plus,a:b0,b:b1,back:b8,leftshoulder:b5,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b4,righttrigger:b6,start:b9,x:b2,y:b3,platform:Linux,
+03000000632500002605000010010000,HJDX,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+030000000d0f00000d00000000010000,Hori,a:b0,b:b6,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b3,rightshoulder:b7,start:b9,x:b1,y:b2,platform:Linux,
+030000000d0f00001000000011010000,Hori Fighting Stick 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f0000c100000011010000,Horipad S,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b13,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00006a00000011010000,Hori Real Arcade Pro 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00006b00000011010000,Hori Real Arcade Pro 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00002200000011010000,Hori Real Arcade Pro 3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00008500000010010000,Hori Fighting Commander,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000000d0f00008600000002010000,Hori Fighting Commander,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b11,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
-030000000d0f00005f00000011010000,Hori Fighting Commander 4 (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00005e00000011010000,Hori Fighting Commander 4 (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00005f00000011010000,Hori Fighting Commander 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00005e00000011010000,Hori Fighting Commander 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00005001000009040000,Hori Fighting Commander OCTA,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000ad1b000001f5000033050000,Hori Pad EX Turbo 2,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000000d0f00003801000011010000,Hori PC Engine Mini Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b9,platform:Linux,
030000000d0f00009200000011010000,Hori Pokken Tournament DX Pro Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f0000aa00000011010000,HORI Real Arcade Pro,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-030000000d0f0000d800000072056800,HORI Real Arcade Pro S,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
-030000000d0f00001600000000010000,Hori Real Arcade Pro.EX-SE (Xbox 360),a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b2,y:b3,platform:Linux,
-030000000d0f00006e00000011010000,HORIPAD 4 (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00006600000011010000,HORIPAD 4 (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f0000ee00000011010000,HORIPAD mini4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-030000000d0f00006700000001010000,HORIPAD ONE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000000d0f0000aa00000011010000,Hori Real Arcade Pro,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+030000000d0f0000d800000072056800,Hori Real Arcade Pro S,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
+030000000d0f00001600000000010000,Hori Real Arcade Pro EXSE,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b2,y:b3,platform:Linux,
+030000000d0f00006e00000011010000,Horipad 4 PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00006600000011010000,Horipad 4 PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f0000ee00000011010000,Horipad Mini 4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000000d0f00006700000001010000,Horipad One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000008f0e00001330000010010000,HuiJia SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,rightshoulder:b7,start:b9,x:b3,y:b0,platform:Linux,
03000000242e00008816000001010000,Hyperkin X91,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000830500006020000010010000,iBuffalo SNES Controller,a:b1,b:b0,back:b6,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b7,x:b3,y:b2,platform:Linux,
-050000006964726f69643a636f6e0000,idroid:con,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000b50700001503000010010000,impact,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Linux,
-03000000d80400008200000003000000,IMS PCU#0 Gamepad Interface,a:b1,b:b0,back:b4,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,start:b5,x:b3,y:b2,platform:Linux,
-03000000fd0500000030000000010000,InterAct GoPad I-73000 (Fighting Game Layout),a:b3,b:b4,back:b6,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b5,start:b7,x:b0,y:b1,platform:Linux,
-0500000049190000020400001b010000,Ipega PG-9069 - Bluetooth Gamepad,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b161,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-03000000632500007505000011010000,Ipega PG-9099 - Bluetooth Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-030000006e0500000320000010010000,JC-U3613M - DirectInput Mode,a:b2,b:b3,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b0,y:b1,platform:Linux,
+050000006964726f69643a636f6e0000,idroidcon Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000b50700001503000010010000,Impact,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Linux,
+03000000d80400008200000003000000,IMS PCU0 Gamepad,a:b1,b:b0,back:b4,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,start:b5,x:b3,y:b2,platform:Linux,
+03000000fd0500000030000000010000,InterAct GoPad I73000,a:b3,b:b4,back:b6,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b5,start:b7,x:b0,y:b1,platform:Linux,
+0500000049190000020400001b010000,Ipega PG 9069 Bluetooth Gamepad,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b161,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+03000000632500007505000011010000,Ipega PG 9099 Bluetooth Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
03000000300f00001001000010010000,Jess Tech Dual Analog Rumble Pad,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Linux,
03000000300f00000b01000010010000,Jess Tech GGE909 PC Recoil Pad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Linux,
03000000ba2200002010000001010000,Jess Technology USB Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Linux,
@@ -664,7 +1020,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000242f00002d00000011010000,JYS Wireless Adapter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
03000000242f00008a00000011010000,JYS Wireless Adapter,a:b1,b:b4,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b0,y:b3,platform:Linux,
030000006f0e00000103000000020000,Logic3 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000006d040000d1ca000000000000,Logitech ChillStream,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000006d040000d1ca000000000000,Logitech Chillstream,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d04000019c2000010010000,Logitech Cordless RumblePad 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d04000016c2000010010000,Logitech Dual Action,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d04000016c2000011010000,Logitech Dual Action,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
@@ -673,24 +1029,25 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000006d0400001ec2000020200000,Logitech F510 Gamepad (XInput),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006d04000019c2000011010000,Logitech F710 Gamepad (DInput),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d0400001fc2000005030000,Logitech F710 Gamepad (XInput),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000006d0400000ac2000010010000,Logitech Inc. WingMan RumblePad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,rightx:a3,righty:a4,x:b3,y:b4,platform:Linux,
+030000006d0400000ac2000010010000,Logitech WingMan RumblePad,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,rightx:a3,righty:a4,x:b3,y:b4,platform:Linux,
030000006d04000018c2000010010000,Logitech RumblePad 2,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006d04000011c2000010010000,Logitech WingMan Cordless RumblePad,a:b0,b:b1,back:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b6,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b10,rightx:a3,righty:a4,start:b8,x:b3,y:b4,platform:Linux,
-050000004d4f435554452d3035305800,M54-PC,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-05000000380700006652000025010000,Mad Catz C.T.R.L.R ,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000380700005032000011010000,Mad Catz FightPad PRO (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000380700005082000011010000,Mad Catz FightPad PRO (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+050000004d4f435554452d3035335800,Mocute 053X,a:b0,b:b1,x:b2,y:b3,back:b8,start:b9,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7,platform:Linux
+050000004d4f435554452d3035305800,Mocute 054X,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000380700006652000025010000,Mad Catz CTRLR,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000380700005032000011010000,Mad Catz FightPad PRO PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000380700005082000011010000,Mad Catz FightPad PRO PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000ad1b00002ef0000090040000,Mad Catz Fightpad SFxT,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,lefttrigger:a2,rightshoulder:b5,righttrigger:a5,start:b7,x:b2,y:b3,platform:Linux,
-03000000380700008034000011010000,Mad Catz fightstick (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000380700008084000011010000,Mad Catz fightstick (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-03000000380700008433000011010000,Mad Catz FightStick TE S+ (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000380700008483000011010000,Mad Catz FightStick TE S+ (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000380700008034000011010000,Mad Catz fightstick PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000380700008084000011010000,Mad Catz fightstick PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000380700008433000011010000,Mad Catz FightStick TE S PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000380700008483000011010000,Mad Catz FightStick TE S PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000380700001647000010040000,Mad Catz Wired Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000380700003847000090040000,Mad Catz Wired Xbox 360 Controller (SFIV),a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
+03000000380700003847000090040000,Mad Catz Wired Xbox 360 Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
03000000ad1b000016f0000090040000,Mad Catz Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000380700001888000010010000,MadCatz PC USB Wired Stick 8818,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
03000000380700003888000010010000,MadCatz PC USB Wired Stick 8838,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:a0,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000242f0000f700000001010000,Magic-S Pro,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+03000000242f0000f700000001010000,Mayflash Magic S Pro,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000120c00000500000000010000,Manta Dualshock 2,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
03000000790000004418000010010000,Mayflash GameCube Controller,a:b1,b:b0,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
03000000790000004318000010010000,Mayflash GameCube Controller Adapter,a:b1,b:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b0,y:b3,platform:Linux,
@@ -700,29 +1057,31 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
0300000025090000e803000001010000,Mayflash Wii Classic Controller,a:b1,b:b0,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:a4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:a5,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Linux,
03000000780000000600000010010000,Microntek USB Joystick,a:b2,b:b1,back:b8,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Linux,
030000005e0400000e00000000010000,Microsoft SideWinder,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,rightshoulder:b7,start:b8,x:b3,y:b4,platform:Linux,
-030000005e0400008e02000004010000,Microsoft X-Box 360 pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400008e02000062230000,Microsoft X-Box 360 pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-050000005e040000050b000003090000,Microsoft X-Box One Elite 2 pad,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a6,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-030000005e040000e302000003020000,Microsoft X-Box One Elite pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e040000d102000001010000,Microsoft X-Box One pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e040000dd02000003020000,Microsoft X-Box One pad (Firmware 2015),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e040000d102000003020000,Microsoft X-Box One pad v2,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400008502000000010000,Microsoft X-Box pad (Japan),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
-030000005e0400008902000021010000,Microsoft X-Box pad v2 (US),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
-030000005e040000000b000008040000,Microsoft Xbox One Elite 2 pad - Wired,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e040000ea02000008040000,Microsoft Xbox One S pad - Wired,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000c62400001a53000000010000,Mini PE,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400000700000000010000,Microsoft SideWinder Game Pad USB,a:b0,b:b1,back:b8,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b9,x:b3,y:b4,platform:Linux,
+030000005e0400008e02000004010000,Microsoft Xbox 360 pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008e02000062230000,Microsoft Xbox 360 pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+050000005e040000050b000003090000,Microsoft Xbox One Elite 2 pad,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a6,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+030000005e040000e302000003020000,Microsoft Xbox One Elite pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000d102000001010000,Microsoft Xbox One pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000dd02000003020000,Microsoft Xbox One pad 2015,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000d102000003020000,Microsoft Xbox One pad v2,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008502000000010000,Microsoft Xbox pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
+030000005e0400008902000021010000,Microsoft Xbox pad v2,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
+030000005e040000000b000008040000,Microsoft Xbox One Elite 2 pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000ea02000008040000,Microsoft Xbox One S pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+03000000c62400001a53000000010000,PowerA Mini Pro Ex,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000030000000300000002000000,Miroof,a:b1,b:b0,back:b6,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b3,y:b2,platform:Linux,
05000000d6200000e589000001000000,Moga 2 HID,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
05000000d6200000ad0d000001000000,Moga Pro,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
05000000d62000007162000001000000,Moga Pro 2 HID,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Linux,
-03000000c62400002b89000011010000,MOGA XP5-A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-05000000c62400002a89000000010000,MOGA XP5-A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b22,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-05000000c62400001a89000000010000,MOGA XP5-X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-03000000250900006688000000010000,MP-8866 Super Dual Box,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Linux,
-030000006b140000010c000010010000,NACON GC-400ES,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
+03000000c62400002b89000011010000,MOGA XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000c62400002a89000000010000,MOGA XP5A Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b22,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000c62400001a89000000010000,MOGA XP5X Plus,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+03000000250900006688000000010000,MP8866 Super Dual Box,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Linux,
+030000006b140000010c000010010000,Nacon GC 400ES,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
030000000d0f00000900000010010000,Natec Genesis P44,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000790000004518000010010000,NEXILUX GAMECUBE Controller Adapter,a:b1,b:b0,x:b2,y:b3,start:b9,rightshoulder:b7,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a5,righty:a2,lefttrigger:a3,righttrigger:a4,platform:Linux,
+030000004f1f00000800000011010000,Neogeo PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
+03000000790000004518000010010000,Nexilux GameCube Controller Adapter,a:b1,b:b0,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:a4,rightx:a5,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
030000001008000001e5000010010000,NEXT SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,righttrigger:b6,start:b9,x:b3,y:b0,platform:Linux,
060000007e0500003713000000000000,Nintendo 3DS,a:b0,b:b1,back:b8,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Linux,
060000007e0500000820000000000000,Nintendo Combined Joy-Cons (joycond),a:b0,b:b1,back:b9,dpdown:b15,dpleft:b16,dpright:b17,dpup:b14,guide:b11,leftshoulder:b5,leftstick:b12,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b13,righttrigger:b8,rightx:a2,righty:a3,start:b10,x:b3,y:b2,platform:Linux,
@@ -741,36 +1100,42 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000550900001472000011010000,NVIDIA Controller v01.04,a:b0,b:b1,back:b14,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b16,leftshoulder:b4,leftstick:b7,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Linux,
05000000550900001472000001000000,NVIDIA Controller v01.04,a:b0,b:b1,back:b14,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b16,leftshoulder:b4,leftstick:b7,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b8,righttrigger:a4,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Linux,
03000000451300000830000010010000,NYKO CORE,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-19000000010000000100000001010000,odroidgo2_joypad,a:b1,b:b0,dpdown:b7,dpleft:b8,dpright:b9,dpup:b6,guide:b10,leftshoulder:b4,leftstick:b12,lefttrigger:b11,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b13,righttrigger:b14,start:b15,x:b2,y:b3,platform:Linux,
-19000000010000000200000011000000,odroidgo2_joypad_v11,a:b1,b:b0,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,guide:b12,leftshoulder:b4,leftstick:b14,lefttrigger:b13,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b15,righttrigger:b16,start:b17,x:b2,y:b3,platform:Linux,
-030000005e0400000202000000010000,Old Xbox pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
+19000000010000000100000001010000,odroidgo2 joypad,a:b1,b:b0,dpdown:b7,dpleft:b8,dpright:b9,dpup:b6,guide:b10,leftshoulder:b4,leftstick:b12,lefttrigger:b11,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b13,righttrigger:b14,start:b15,x:b2,y:b3,platform:Linux,
+19000000010000000200000011000000,odroidgo2 joypad v11,a:b1,b:b0,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,guide:b12,leftshoulder:b4,leftstick:b14,lefttrigger:b13,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b15,righttrigger:b16,start:b17,x:b2,y:b3,platform:Linux,
+030000005e0400000202000000010000,Xbox pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b5,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b3,y:b4,platform:Linux,
03000000c0160000dc27000001010000,OnyxSoft Dual JoyDivision,a:b0,b:b1,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b6,x:b2,y:b3,platform:Linux,
05000000362800000100000002010000,OUYA Game Controller,a:b0,b:b3,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,guide:b14,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,x:b1,y:b2,platform:Linux,
05000000362800000100000003010000,OUYA Game Controller,a:b0,b:b3,dpdown:b9,dpleft:b10,dpright:b11,dpup:b8,guide:b14,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,x:b1,y:b2,platform:Linux,
03000000830500005020000010010000,Padix Co. Ltd. Rockfire PSX/USB Bridge,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a2,righty:a3,start:b11,x:b2,y:b3,platform:Linux,
03000000790000001c18000011010000,PC Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
03000000ff1100003133000010010000,PC Game Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-030000006f0e0000b802000001010000,PDP AFTERGLOW Wired Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000006f0e0000b802000013020000,PDP AFTERGLOW Wired Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000006f0e0000b802000001010000,PDP Afterglow Wired Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000006f0e0000b802000013020000,PDP Afterglow Wired Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006f0e00006401000001010000,PDP Battlefield One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000006f0e00008001000011010000,PDP CO. LTD. Faceoff Wired Pro Controller for Nintendo Switch,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000006f0e00008001000011010000,PDP Faceoff Wired Pro Controller for Nintendo Switch,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000006f0e00003101000000010000,PDP EA Sports Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006f0e0000c802000012010000,PDP Kingdom Hearts Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000006f0e00008701000011010000,PDP Rock Candy Wired Controller for Nintendo Switch,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b13,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+03000000c6240000fefa000000010000,Rock Candy Xbox 360 Controller, a:b0,b:b1,x:b2,y:b3,back:b6,guide:b8,start:b7,leftstick:b9,rightstick:b10,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,leftx:a0,lefty:a1,rightx:a3,righty:a4,lefttrigger:a2,righttrigger:a5,platform:Linux,
030000006f0e00000901000011010000,PDP Versus Fighting Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
030000006f0e0000a802000023020000,PDP Wired Controller for Xbox One,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b11,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
030000006f0e00008501000011010000,PDP Wired Fight Pad Pro for Nintendo Switch,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-0500000049190000030400001b010000,PG-9099,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-05000000491900000204000000000000,PG-9118,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+0500000049190000030400001b010000,Ipega PG9099,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000491900000204000000000000,Ipega PG9118,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
030000004c050000da0c000011010000,Playstation Controller,a:b2,b:b1,back:b8,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Linux,
+03000000d9040000160f000000010000,Playstation Controller Adapter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Linux,
030000004c0500003713000011010000,PlayStation Vita,a:b1,b:b2,back:b8,dpdown:b13,dpleft:b15,dpright:b14,dpup:b12,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Linux,
03000000c62400000053000000010000,PowerA,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000c62400003a54000001010000,PowerA 1428124-01,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000d62000006dca000011010000,PowerA Pro Ex,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
03000000d62000000228000001010000,PowerA Wired Controller for Xbox One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000c62400001a58000001010000,PowerA Xbox One Cabled,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+03000000d62000000220000001010000,PowerA Wired Controller for Xbox One and Xbox Series S and X,a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Linux,
+03000000c62400001a58000001010000,PowerA Xbox One,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000c62400001a54000001010000,PowerA Xbox One Mini Wired Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+03000000d620000013a7000011010000,Nintendo Switch PowerA Wired Controller,a:b1,b:b2,x:b0,y:b3,back:b8,guide:b12,start:b9,leftshoulder:b4,rightshoulder:b5,leftstick:b10,rightstick:b11,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7,platform:Linux,
030000006d040000d2ca000011010000,Precision Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000ba2200000701000001010000,Technology Innovation PS2 Adapter,b:b1,a:b0,x:b3,y:b2,start:b9,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:h0.1,dpleft:h0.8,dpdown:h0.4,dpright:h0.2,leftx:a0,lefty:a1,rightx:a5,righty:a2,lefttrigger:b6,righttrigger:b7,platform:Linux,
+03000000430b00000300000000010000,EMS Production PS2 Adapter,b:b1,a:b2,x:b3,y:b0,start:b9,back:b8,leftstick:b10,rightstick:b11,leftshoulder:b6,rightshoulder:b7,dpup:b12,dpleft:b15,dpdown:b14,dpright:b13,leftx:a0,lefty:a1,rightx:a5,righty:a2,lefttrigger:b4,righttrigger:b5,platform:Linux,
03000000ff1100004133000010010000,PS2 Controller,a:b2,b:b1,back:b8,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,start:b9,x:b3,y:b0,platform:Linux,
03000000341a00003608000011010000,PS3 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000004c0500006802000010010000,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,guide:b16,leftshoulder:b10,leftstick:b1,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,righttrigger:b9,rightx:a2,righty:a3,start:b3,x:b15,y:b12,platform:Linux,
@@ -802,18 +1167,20 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000004c050000e60c000011010000,PS5 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b13,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
050000004c050000e60c000000010000,PS5 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,misc1:b13,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000ff000000cb01000010010000,PSP,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b2,y:b3,platform:Linux,
-03000000300f00001211000011010000,QanBa Arcade JoyStick,a:b2,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b5,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b6,start:b9,x:b1,y:b3,platform:Linux,
+03000000300f00001211000011010000,Qanba Arcade Joystick,a:b2,b:b0,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b5,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b6,start:b9,x:b1,y:b3,platform:Linux,
030000009b2800004200000001010000,Raphnet Technologies Dual NES to USB v2.0,a:b0,b:b1,back:b2,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,start:b3,platform:Linux,
030000009b2800003200000001010000,Raphnet Technologies GC/N64 to USB v3.4,a:b0,b:b7,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b5,rightx:a3,righty:a4,start:b3,x:b1,y:b8,platform:Linux,
030000009b2800006000000001010000,Raphnet Technologies GC/N64 to USB v3.6,a:b0,b:b7,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b2,righttrigger:b5,rightx:a3,righty:a4,start:b3,x:b1,y:b8,platform:Linux,
030000009b2800000300000001010000,raphnet.net 4nes4snes v1.5,a:b0,b:b4,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b1,y:b5,platform:Linux,
030000008916000001fd000024010000,Razer Onza Classic Edition,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000008916000000fd000024010000,Razer Onza Tournament Edition,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000321500000204000011010000,Razer Panthera (PS3),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-03000000321500000104000011010000,Razer Panthera (PS4),a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000321500000204000011010000,Razer Panthera PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000321500000104000011010000,Razer Panthera PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000321500000810000011010000,Razer Panthera Evo Arcade Stick for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b13,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-03000000321500000010000011010000,Razer RAIJU,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000321500000010000011010000,Razer Rainu,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000321500000507000000010000,Razer Raiju Mobile,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b21,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+05000000321500000a10000001000000,Razer Raiju Tournament Edition,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b13,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000321500000710000000010000,Razer Raiju Tournament Edition Wired,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b13,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000321500000011000011010000,Razer Raion Fightpad for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
030000008916000000fe000024010000,Razer Sabertooth,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000c6240000045d000024010000,Razer Sabertooth,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
@@ -821,7 +1188,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000321500000009000011010000,Razer Serval,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Linux,
050000003215000000090000163a0000,Razer Serval,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Linux,
0300000032150000030a000001010000,Razer Wildcat,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000790000001100000010010000,Retrolink SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Linux,
+03000000790000001100000010010000,Retro Controller,a:b1,b:b2,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,lefttrigger:b7,rightshoulder:b4,righttrigger:b5,start:b9,x:b0,y:b3,platform:Linux,
0300000081170000990a000001010000,Retronic Adapter,a:b0,leftx:a0,lefty:a1,platform:Linux,
0300000000f000000300000000010000,RetroPad,a:b1,b:b5,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b0,y:b4,platform:Linux,
030000006b140000010d000011010000,Revolution Pro Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
@@ -837,20 +1204,22 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
03000000300f00001201000010010000,Saitek P380,a:b2,b:b3,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b9,x:b0,y:b1,platform:Linux,
03000000a30600000901000000010000,Saitek P880,a:b2,b:b3,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b8,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:b7,rightx:a3,righty:a2,x:b0,y:b1,platform:Linux,
03000000a30600000b04000000010000,Saitek P990 Dual Analog Pad,a:b1,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a2,start:b8,x:b0,y:b3,platform:Linux,
-03000000a306000018f5000010010000,Saitek PLC Saitek P3200 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Linux,
+03000000a306000018f5000010010000,Saitek P3200 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b0,y:b3,platform:Linux,
03000000a306000020f6000011010000,Saitek PS2700 Rumble Pad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a4,start:b9,x:b0,y:b3,platform:Linux,
03000000d81d00000e00000010010000,Savior,a:b0,b:b1,back:b8,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b2,rightstick:b11,righttrigger:b3,start:b9,x:b4,y:b5,platform:Linux,
-03000000f025000021c1000010010000,ShanWan Gioteck PS3 Wired Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-03000000632500007505000010010000,SHANWAN PS3/PC Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-03000000bc2000000055000010010000,ShanWan PS3/PC Wired GamePad,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-030000005f140000c501000010010000,SHANWAN Trust Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+03000000a30c00002500000011010000,Sega Genesis Mini 3B controller,a:b2,b:b1,dpdown:+a4,dpleft:-a3,dpright:+a3,dpup:-a4,righttrigger:b5,start:b9,platform:Linux,
+030000001f08000001e4000010010000,SFC Controller,a:b2,b:b1,back:b8,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Linux,
+03000000f025000021c1000010010000,Shanwan Gioteck PS3 Wired Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+03000000632500007505000010010000,Shanwan PS3 PC Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+03000000bc2000000055000010010000,Shanwan PS3 PC Wired GamePad,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
+030000005f140000c501000010010000,Shanwan Trust Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
03000000632500002305000010010000,ShanWan USB Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-03000000341a00000908000010010000,SL-6566,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
+03000000341a00000908000010010000,SL6566,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
030000004c050000e60c000011810000,Sony DualSense,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b11,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b3,y:b2,platform:Linux,
-050000004c050000e60c000000810000,Sony DualSense ,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b11,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b3,y:b2,platform:Linux,
+050000004c050000e60c000000810000,Sony DualSense,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b11,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b3,y:b2,platform:Linux,
03000000250900000500000000010000,Sony PS2 pad with SmartJoy adapter,a:b2,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Linux,
-030000005e0400008e02000073050000,Speedlink TORID Wireless Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400008e02000020200000,SpeedLink XEOX Pro Analog Gamepad pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008e02000073050000,Speedlink Torid Wireless Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008e02000020200000,SpeedLink Xeox Pro Analog Gamepad pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000d11800000094000011010000,Stadia Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Linux,
03000000de2800000112000001000000,Steam Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,paddle1:b11,paddle2:b10,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,platform:Linux,
03000000de2800000211000001000000,Steam Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,paddle1:b11,paddle2:b10,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,platform:Linux,
@@ -870,13 +1239,13 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000003b07000004a1000000010000,Suncom SFX Plus for USB,a:b0,b:b2,back:b7,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b9,righttrigger:b5,start:b8,x:b1,y:b3,platform:Linux,
03000000666600000488000000010000,Super Joy Box 5 Pro,a:b2,b:b1,back:b9,dpdown:b14,dpleft:b15,dpright:b13,dpup:b12,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a2,righty:a3,start:b8,x:b3,y:b0,platform:Linux,
0300000000f00000f100000000010000,Super RetroPort,a:b1,b:b5,back:b2,leftshoulder:b6,leftx:a0,lefty:a1,rightshoulder:b7,start:b3,x:b0,y:b4,platform:Linux,
-03000000457500002211000010010000,SZMY-POWER CO. LTD. GAMEPAD,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
-030000008f0e00000d31000010010000,SZMY-POWER CO. LTD. GAMEPAD 3 TURBO,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
-030000008f0e00001431000010010000,SZMY-POWER CO. LTD. PS3 gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+03000000457500002211000010010000,SZMY Power Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+030000008f0e00000d31000010010000,SZMY Power 3 Turbo,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
+030000008f0e00001431000010010000,SZMY Power PS3 gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000004f04000020b3000010010000,Thrustmaster 2 in 1 DT,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Linux,
030000004f04000015b3000010010000,Thrustmaster Dual Analog 4,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Linux,
-030000004f04000023b3000000010000,Thrustmaster Dual Trigger 3-in-1,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-030000004f0400000ed0000011010000,ThrustMaster eSwap PRO Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000004f04000023b3000000010000,Thrustmaster Dual Trigger 3 in 1,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+030000004f0400000ed0000011010000,Thrustmaster eSwap PRO Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
03000000b50700000399000000010000,Thrustmaster Firestorm Digital 2,a:b2,b:b4,back:b11,leftshoulder:b6,leftstick:b10,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b8,rightstick:b0,righttrigger:b9,start:b1,x:b3,y:b5,platform:Linux,
030000004f04000003b3000010010000,Thrustmaster Firestorm Dual Analog 2,a:b0,b:b2,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b9,rightx:a2,righty:a3,x:b1,y:b3,platform:Linux,
030000004f04000000b3000010010000,Thrustmaster Firestorm Dual Power,a:b0,b:b2,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b11,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b12,righttrigger:b7,rightx:a2,righty:a3,start:b10,x:b1,y:b3,platform:Linux,
@@ -887,49 +1256,62 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
030000004f04000007d0000000010000,Thrustmaster T Mini Wireless,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
030000004f04000012b3000010010000,Thrustmaster vibrating gamepad,a:b0,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b5,leftx:a0,lefty:a1,rightshoulder:b6,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b1,y:b3,platform:Linux,
03000000bd12000015d0000010010000,Tomee SNES USB Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,start:b9,x:b3,y:b0,platform:Linux,
-03000000d814000007cd000011010000,Toodles 2008 Chimp PC/PS3,a:b0,b:b1,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b3,y:b2,platform:Linux,
+03000000d814000007cd000011010000,Toodles 2008 Chimp PC PS3,a:b0,b:b1,back:b8,leftshoulder:b4,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b7,start:b9,x:b3,y:b2,platform:Linux,
030000005e0400008e02000070050000,Torid,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
03000000c01100000591000011010000,Torid,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
03000000100800000100000010010000,Twin USB PS2 Adapter,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Linux,
03000000100800000300000010010000,USB Gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b3,y:b0,platform:Linux,
03000000790000000600000007010000,USB gamepad,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a3,righty:a4,start:b9,x:b3,y:b0,platform:Linux,
03000000790000001100000000010000,USB Gamepad1,a:b2,b:b1,back:b8,dpdown:a0,dpleft:a1,dpright:a2,dpup:a4,start:b9,platform:Linux,
+03000000790000001100000011010000,USB Saturn Controller,a:b1,b:b2,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b6,lefttrigger:b7,rightshoulder:b5,righttrigger:b4,start:b9,x:b0,y:b3,platform:Linux,
+03000000790000002201000011010000,USB Saturn Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,lefttrigger:b5,rightshoulder:b6,righttrigger:b7,start:b9,x:b2,y:b3,platform:Linux,
+03000000b40400000a01000000010000,USB Saturn Pad,a:b0,b:b1,leftshoulder:b6,lefttrigger:b7,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:b2,start:b8,x:b3,y:b4,platform:Linux,
030000006f0e00000302000011010000,Victrix Pro Fight Stick for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
030000006f0e00000702000011010000,Victrix Pro Fight Stick for PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,
-05000000ac0500003232000001000000,VR-BOX,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
+05000000ac0500003232000001000000,VR Box Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b10,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b11,righttrigger:b5,rightx:a3,righty:a2,start:b9,x:b2,y:b3,platform:Linux,
03000000791d00000103000010010000,Wii Classic Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b6,lefttrigger:b4,leftx:a0,lefty:a1,rightshoulder:b7,righttrigger:b5,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
050000000d0f0000f600000001000000,Wireless HORIPAD Switch Pro Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
-030000005e0400008e02000010010000,X360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400008e02000014010000,X360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400001907000000010000,X360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400009102000007010000,X360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e040000a102000000010000,X360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e040000a102000007010000,X360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008e02000010010000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008e02000014010000,Xbox 360 Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400001907000000010000,Xbox 360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400009102000007010000,Xbox 360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000a102000000010000,Xbox 360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000a102000007010000,Xbox 360 Wireless Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
0000000058626f782033363020576900,Xbox 360 Wireless Controller,a:b0,b:b1,back:b14,dpdown:b11,dpleft:b12,dpright:b13,dpup:b10,guide:b7,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Linux,
-030000005e040000a102000014010000,Xbox 360 Wireless Receiver (XBOX),a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-0000000058626f782047616d65706100,Xbox Gamepad (userspace driver),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Linux,
+030000005e040000a102000014010000,Xbox 360 Wireless Receiver,a:b0,b:b1,back:b6,dpdown:b14,dpleft:b11,dpright:b12,dpup:b13,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+0000000058626f782047616d65706100,Xbox Gamepad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a4,rightx:a2,righty:a3,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400000a0b000005040000,Xbox One Controller,a:b1,b:b0,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b11,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b12,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b2,platform:Linux,
030000005e040000d102000002010000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
050000005e040000fd02000030110000,Xbox One Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+050000005e040000e302000002090000,Xbox One Elite,a:b0,b:b1,back:b136,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a6,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
050000005e040000050b000002090000,Xbox One Elite Series 2,a:b0,b:b1,back:b136,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b6,leftstick:b13,lefttrigger:a6,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a5,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
030000005e040000ea02000000000000,Xbox One Wireless Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
050000005e040000e002000003090000,Xbox One Wireless Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b4,leftstick:b8,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b9,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
050000005e040000fd02000003090000,Xbox One Wireless Controller,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b16,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
030000005e040000ea02000001030000,Xbox One Wireless Controller (Model 1708),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+060000005e040000120b000007050000,Xbox One Wireless Controller (Model 1914),a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000005e040000120b000001050000,Xbox Series Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
030000005e040000130b000005050000,Xbox Series Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
050000005e040000130b000001050000,Xbox Series Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
050000005e040000130b000005050000,Xbox Series Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a4,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
-030000005e040000120b000005050000,XBox Series pad,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-030000005e0400008e02000000010000,xbox360 Wireless EasySMX,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000450c00002043000010010000,XEOX Gamepad SL-6556-BK,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
-03000000ac0500005b05000010010000,Xiaoji Gamesir-G3w,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
+030000005e040000120b000005050000,Xbox Series Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+030000005e0400008e02000000010000,Xbox 360 Wireless EasySMX,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
+03000000450c00002043000010010000,XEOX Gamepad SL6556 BK,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b2,y:b3,platform:Linux,
+03000000ac0500005b05000010010000,Xiaoji Gamesir G3w,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
05000000172700004431000029010000,XiaoMi Game Controller,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b20,leftshoulder:b6,leftstick:b13,lefttrigger:a7,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:a6,rightx:a2,righty:a5,start:b11,x:b3,y:b4,platform:Linux,
-03000000c0160000e105000001010000,Xin-Mo Xin-Mo Dual Arcade,a:b4,b:b3,back:b6,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b9,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b1,y:b0,platform:Linux,
+03000000c0160000e105000001010000,XinMo Dual Arcade,a:b4,b:b3,back:b6,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b9,leftshoulder:b2,leftx:a0,lefty:a1,rightshoulder:b5,start:b7,x:b1,y:b0,platform:Linux,
xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b10,righttrigger:a5,rightx:a3,righty:a4,start:b7,x:b2,y:b3,platform:Linux,
-03000000120c0000100e000011010000,ZEROPLUS P4 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
-03000000120c0000101e000011010000,ZEROPLUS P4 Wired Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000120c0000100e000011010000,Zeroplus P4 Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
+03000000120c0000101e000011010000,Zeroplus P4 Wired Gamepad,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,x:b0,y:b3,platform:Linux,
# Android
+38653964633230666463343334313533,8BitDo Adapter,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+34343439373236623466343934376233,8BitDo FC30 Pro,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b28,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b4,rightstick:b29,righttrigger:b7,start:b5,x:b30,y:b2,platform:Android,
+33656266353630643966653238646264,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b20,righttrigger:a5,start:b10,x:b19,y:b2,platform:Android,
+39366630663062373237616566353437,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:b18,start:b6,x:b2,y:b3,platform:Android,
+64653533313537373934323436343563,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:a4,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b9,righttrigger:b10,start:b6,x:b2,y:b3,platform:Android,
+66356438346136366337386437653934,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,righttrigger:b10,start:b18,x:b19,y:b2,platform:Android,
+66393064393162303732356665666366,8BitDo M30,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:a5,start:b6,x:b2,y:b3,platform:Android,
05000000c82d000006500000ffff3f00,8BitDo M30 Gamepad,a:b1,b:b0,back:b4,guide:b17,leftshoulder:b9,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:a4,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000051060000ffff3f00,8BitDo M30 Gamepad,a:b1,b:b0,back:b4,guide:b17,leftshoulder:b9,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:a5,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000015900000ffff3f00,8BitDo N30 Pro 2,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
@@ -938,60 +1320,152 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
050000002038000009000000ffff3f00,8BitDo NES30 Pro,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000000600000ffff3f00,8BitDo SF30 Pro,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:b15,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b16,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000000610000ffff3f00,8BitDo SF30 Pro,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
+38426974646f20534633302050726f00,8BitDo SF30 Pro,a:b1,b:b0,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b16,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b2,y:b17,platform:Android,
+61623334636338643233383735326439,8BitDo SFC30,a:b0,b:b1,back:b4,leftshoulder:b3,leftx:a0,lefty:a1,rightshoulder:b31,start:b5,x:b30,y:b2,platform:Android,
05000000c82d000012900000ffff3f00,8BitDo SN30 Gamepad,a:b1,b:b0,back:b4,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000062280000ffff3f00,8BitDo SN30 Gamepad,a:b1,b:b0,back:b4,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b3,y:b2,platform:Android,
+35383531346263653330306238353131,8BitDo SN30 PP,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
05000000c82d000001600000ffff3f00,8BitDo SN30 Pro,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
+36653638656632326235346264663661,8BitDo SN30 Pro Plus,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b19,y:b2,platform:Android,
+38303232393133383836366330346462,8BitDo SN30 Pro Plus,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b17,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b18,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b19,y:b2,platform:Android,
+38346630346135363335366265656666,8BitDo SN30 Pro Plus,a:b1,b:b0,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
+66306331643531333230306437353936,8BitDo SN30 Pro Plus,a:b1,b:b0,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000002600000ffff0f00,8BitDo SN30 Pro+,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b17,leftshoulder:b9,leftstick:b7,lefttrigger:b15,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b16,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
050000002028000009000000ffff3f00,8BitDo SNES30 Gamepad,a:b1,b:b0,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
050000003512000020ab000000780f00,8BitDo SNES30 Gamepad,a:b21,b:b20,back:b30,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b26,rightshoulder:b27,start:b31,x:b24,y:b23,platform:Android,
+33666663316164653937326237613331,8BitDo Zero,a:b0,b:b1,back:b15,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b2,y:b3,platform:Android,
05000000c82d000018900000ffff0f00,8BitDo Zero 2,a:b1,b:b0,back:b4,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b3,y:b2,platform:Android,
05000000c82d000030320000ffff0f00,8BitDo Zero 2,a:b1,b:b0,back:b4,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b3,y:b2,platform:Android,
-38383337343564366131323064613561,Brook Mars,a:b1,b:b19,back:b17,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+33663434393362303033616630346337,8BitDo Zero 2,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftx:a0,lefty:a1,rightshoulder:b20,start:b18,x:b19,y:b2,platform:Android,
+34656330626361666438323266633963,8BitDo Zero 2,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftx:a0,lefty:a1,rightshoulder:b20,start:b10,x:b19,y:b2,platform:Android,
+63396666386564393334393236386630,8BitDo Zero 2,a:b1,b:b0,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b3,y:b2,platform:Android,
+63633435623263373466343461646430,8BitDo Zero 2,a:b1,b:b0,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftx:a0,lefty:a1,rightshoulder:b10,start:b6,x:b2,y:b3,platform:Android,
+32333634613735616163326165323731,Amazon Luna Game Controller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,x:b2,y:b3,platform:Android,
+38383337343564366131323064613561,Brook Mars PS4 Controller,a:b1,b:b19,back:b17,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+33323763323132376537376266393366,Dual Strike,a:b24,b:b23,back:b25,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b27,lefttrigger:b29,rightshoulder:b78,rightx:a0,righty:a1~,start:b26,x:b22,y:b21,platform:Android,
+30363230653635633863366338623265,Evo VR,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftx:a0,lefty:a1,x:b2,y:b3,platform:Android,
+05000000b404000011240000dfff3f00,Flydigi Vader 2,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,paddle1:b17,paddle2:b18,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
05000000bc20000000550000ffff3f00,GameSir G3w,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+34323662653333636330306631326233,Google Nexus,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+35383633353935396534393230616564,Google Stadia Controller,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
05000000d6020000e5890000dfff3f00,GPD XD Plus,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Android,
0500000031366332860c44aadfff0f00,GS Gamepad,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:b15,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b16,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
-0500000083050000602000000ffe0000,iBuffalo SNES Controller,a:b1,b:b0,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b15,rightshoulder:b16,start:b10,x:b3,y:b2,platform:Android,
+66633030656131663837396562323935,Hori Battle,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Android,
+35623466343433653739346434636330,Hori Fighting Commander 3 Pro,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+65656436646661313232656661616130,Hori PC Engine Mini Controller,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b18,platform:Android,
+31303433326562636431653534636633,Hori Real Arcade Pro 3,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+0500000083050000602000000ffe0000,iBuffalo SNES Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b15,rightshoulder:b16,start:b10,x:b2,y:b3,platform:Android,
+64306137363261396266353433303531,InterAct GoPad,a:b24,b:b25,leftshoulder:b23,lefttrigger:b27,leftx:a0,lefty:a1,rightshoulder:b26,righttrigger:b28,x:b21,y:b22,platform:Android,
+65346535636333663931613264643164,Joy Con,a:b21,b:b22,back:b29,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b25,lefttrigger:b27,leftx:a0,lefty:a1,rightshoulder:b26,righttrigger:b28,rightx:a2,righty:a3,start:b30,x:b23,y:b24,platform:Android,
+33346566643039343630376565326335,Joy Con (L),a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,rightshoulder:b20,start:b17,x:b19,y:b2,platform:Android,
+35313531613435623366313835326238,Joy Con (L),a:b0,b:b1,back:b7,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,rightshoulder:b20,start:b17,x:b19,y:b2,platform:Android,
+39363561613936303237333537383931,Joy Con (R),a:b0,b:b1,back:b5,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,rightshoulder:b20,start:b18,x:b19,y:b2,platform:Android,
+38383665633039363066383334653465,Joy Con (R),a:b0,b:b1,back:b5,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,rightshoulder:b20,start:b18,x:b19,y:b2,platform:Android,
+39656136363638323036303865326464,JYS Aapter,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+63316564383539663166353034616434,JYS Adapter,a:b1,b:b3,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b0,y:b2,platform:Android,
+64623163333561643339623235373232,Logitech F310,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+35623364393661626231343866613337,Logitech F710,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+64396331333230326333313330336533,Logitech F710,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+30363066623539323534363639323363,Magic NS,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+31353762393935386662336365626334,Magic NS,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+39623565346366623931666633323530,Magic NS,a:b1,b:b3,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b0,y:b2,platform:Android,
+32303165626138343962363666346165,Mars,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+31323564663862633234646330373138,Mega Drive,a:b23,b:b22,leftx:a0,lefty:a1,rightshoulder:b25,righttrigger:b26,start:b30,x:b24,y:b21,platform:Android,
+37333564393261653735306132613061,Mega Drive,a:b21,b:b22,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b26,lefttrigger:b28,rightshoulder:b27,righttrigger:b23,start:b30,x:b24,y:b25,platform:Android,
+64363363336633363736393038313464,Mega Drive,a:b1,b:b0,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b9,x:b2,y:b3,platform:Android,
64633436313965656664373634323364,Microsoft X-Box 360 pad,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,x:b2,y:b3,platform:Android,
+32386235353630393033393135613831,Microsoft Xbox Series Controller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+33343361376163623438613466616531,Mocute M053,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+39306635663061636563316166303966,Mocute M053,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
7573622067616d657061642020202020,NEXT SNES Controller,a:b2,b:b1,back:b8,dpdown:+a1,dpleft:-a0,dpright:+a0,dpup:-a1,leftshoulder:b4,rightshoulder:b5,righttrigger:b6,start:b9,x:b3,y:b0,platform:Android,
050000007e05000009200000ffff0f00,Nintendo Switch Pro Controller,a:b0,b:b1,back:b15,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b3,leftstick:b4,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b16,x:b17,y:b2,platform:Android,
+34323437396534643531326161633738,Nintendo Switch Pro Controller,a:b0,b:b1,back:b15,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,misc1:b5,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
37336435666338653565313731303834,NVIDIA Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
4e564944494120436f72706f72617469,NVIDIA Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
61363931656135336130663561616264,NVIDIA Controller,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005509000003720000cf7f3f00,NVIDIA Controller v01.01,a:b0,b:b1,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005509000010720000ffff3f00,NVIDIA Controller v01.03,a:b0,b:b1,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005509000014720000df7f3f00,NVIDIA Controller v01.04,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Android,
+61653962353232366130326530363061,Pokken,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,lefttrigger:b9,rightshoulder:b20,righttrigger:b10,start:b18,x:b0,y:b2,platform:Android,
+32666633663735353234363064386132,PS2,a:b23,b:b22,back:b29,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b27,lefttrigger:b25,leftx:a0,lefty:a1,rightshoulder:b28,righttrigger:b26,rightx:a3,righty:a2,start:b30,x:b24,y:b21,platform:Android,
+61363034663839376638653463633865,PS3,a:b0,b:b1,back:b15,dpdown:a14,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+66366539656564653432353139356536,PS3,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+66383132326164626636313737373037,PS3,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000004c05000068020000dfff3f00,PS3 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+30303839663330346632363232623138,PS4,a:b1,b:b17,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b6,righttrigger:a4,rightx:a2,righty:a5,start:b16,x:b0,y:b2,platform:Android,
+31326235383662333266633463653332,PS4,a:b1,b:b16,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b6,righttrigger:a4,rightx:a2,righty:a5,start:b17,x:b0,y:b2,platform:Android,
+31663838336334393132303338353963,PS4,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+34613139376634626133336530386430,PS4,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+37626233336235343937333961353732,PS4,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+38393161636261653636653532386639,PS4,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+63313733393535663339656564343962,PS4,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+63393662363836383439353064663939,PS4,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+65366465656364636137653363376531,PS4,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b0,y:b2,platform:Android,
+66613532303965383534396638613230,PS4,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a5,start:b18,x:b0,y:b2,platform:Android,
030000004c050000cc09000000006800,PS4 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000004c050000c405000000783f00,PS4 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000004c050000c4050000fffe3f00,PS4 Controller,a:b1,b:b17,back:b15,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b3,leftstick:b4,lefttrigger:+a3,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b6,righttrigger:+a4,rightx:a2,righty:a5,start:b16,x:b0,y:b2,platform:Android,
050000004c050000c4050000ffff3f00,PS4 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000004c050000cc090000fffe3f00,PS4 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000004c050000cc090000ffff3f00,PS4 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+31373231336561636235613666323035,PS4 Controller,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
35643031303033326130316330353564,PS4 Controller,a:b1,b:b17,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b3,leftstick:b4,lefttrigger:+a3,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b6,righttrigger:+a4,rightx:a2,righty:a5,start:b16,x:b0,y:b2,platform:Android,
050000004c050000e60c0000fffe3f00,PS5 Controller,a:b1,b:b17,back:b15,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b3,leftstick:b4,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b6,righttrigger:a4,rightx:a2,righty:a5,start:b16,x:b0,y:b2,platform:Android,
+62653335326261303663356263626339,PSX,a:b19,b:b1,back:b17,leftshoulder:b9,lefttrigger:b3,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:b20,start:b18,x:b2,y:b0,platform:Android,
+64336263393933626535303339616332,Qanba 4RAF,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b20,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b3,righttrigger:b9,rightx:a2,righty:a3,start:b18,x:b19,y:b2,platform:Android,
+36626666353861663864336130363137,Razer Junglecat,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
62653861643333663663383332396665,Razer Kishi,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000003215000005070000ffff3f00,Razer Raiju Mobile,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000003215000007070000ffff3f00,Razer Raiju Mobile,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000003215000000090000bf7f3f00,Razer Serval,a:b0,b:b1,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,x:b2,y:b3,platform:Android,
+61343739353764363165343237303336,Retro Controller,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b17,lefttrigger:b18,leftx:a0,lefty:a1,start:b10,x:b2,y:b3,platform:Android,
+38653130373365613538333235303036,Retroid Pocket 2,a:b0,b:b1,back:b15,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+64363363336633363736393038313463,Retrolink,a:b1,b:b0,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,start:b6,platform:Android,
+33373336396634316434323337666361,RumblePad 2,a:b22,b:b23,back:b29,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b25,lefttrigger:b27,leftx:a0,lefty:a1,rightshoulder:b26,righttrigger:b28,rightx:a2,righty:a3,start:b30,x:b21,y:b24,platform:Android,
+66386565396238363534313863353065,Sanwa Mobile,a:b21,b:b22,leftshoulder:b23,leftx:a0,lefty:a1,rightshoulder:b24,platform:Android,
+32383165316333383766336338373261,Saturn,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:a4,righttrigger:a5,x:b2,y:b3,platform:Android,
+37316565396364386635383230353365,Saturn,a:b21,b:b22,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b26,lefttrigger:b28,rightshoulder:b27,righttrigger:b23,start:b30,x:b24,y:b25,platform:Android,
+38613865396530353338373763623431,Saturn,a:b0,b:b1,leftshoulder:b9,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:b20,righttrigger:b19,start:b17,x:b2,y:b3,platform:Android,
+61316232336262373631343137633631,Saturn,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,lefttrigger:b10,leftx:a0,lefty:a1,rightshoulder:a4,righttrigger:a5,x:b2,y:b3,platform:Android,
+30353835333338613130373363646337,SG H510,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b17,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b18,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b19,y:b2,platform:Android,
+66386262366536653765333235343634,SG H510,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,x:b2,y:b3,platform:Android,
+66633132393363353531373465633064,SG H510,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b17,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b18,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b19,y:b2,platform:Android,
+30306461613834333439303734316539,Microsoft SideWinder Pro,a:b0,b:b1,leftshoulder:b20,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b19,righttrigger:b10,start:b17,x:b2,y:b3,platform:Android,
+62653761636366393366613135366338,SN30 PP,a:b1,b:b0,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:b17,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:b18,rightx:a2,righty:a3,start:b6,x:b3,y:b2,platform:Android,
+38376662666661636265313264613039,SNES,a:b0,b:b1,back:b9,leftshoulder:b3,leftx:a0,lefty:a1,rightshoulder:b20,start:b10,x:b19,y:b2,platform:Android,
32633532643734376632656664383733,Sony DualSense,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a5,start:b18,x:b0,y:b2,platform:Android,
61303162353165316365336436343139,Sony DualSense,a:b1,b:b19,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a5,start:b18,x:b0,y:b2,platform:Android,
+63303964303462366136616266653561,Sony PSP,a:b21,b:b22,back:b27,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b25,leftx:a0,lefty:a1,rightshoulder:b26,start:b28,x:b23,y:b24,platform:Android,
+63376637643462343766333462383235,Sony Vita,a:b1,b:b19,back:b17,leftshoulder:b3,leftx:a0,lefty:a1,rightshoulder:b20,rightx:a3,righty:a4,start:b18,x:b0,y:b2,platform:Android,
05000000de2800000511000001000000,Steam Controller,a:b0,b:b1,back:b6,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,platform:Android,
05000000de2800000611000001000000,Steam Controller,a:b0,b:b1,back:b6,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,platform:Android,
+0500000011010000201400000f7e0f00,SteelSeries Nimbus,a:b0,b:b1,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b3,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,righttrigger:b10,rightx:a2,righty:a3,x:b19,y:b2,platform:Android,
050000004f0400000ed00000fffe3f00,ThrustMaster eSwap PRO Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
5477696e20555342204a6f7973746963,Twin USB Joystick,a:b22,b:b21,back:b28,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b26,leftstick:b30,lefttrigger:b24,leftx:a0,lefty:a1,rightshoulder:b27,rightstick:b31,righttrigger:b25,rightx:a3,righty:a2,start:b29,x:b23,y:b20,platform:Android,
+30623739343039643830333266346439,Valve Steam Controller,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,leftx:a0,lefty:a1,paddle1:b23,paddle2:b24,rightshoulder:b10,rightstick:b8,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+31643365666432386133346639383937,Valve Steam Controller,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,leftx:a0,lefty:a1,paddle1:b23,paddle2:b24,rightshoulder:b10,rightstick:b8,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+30386438313564306161393537333663,Wii Classic,a:b23,b:b22,back:b29,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b27,lefttrigger:b25,leftx:a0,lefty:a1,rightshoulder:b28,righttrigger:b26,rightx:a2,righty:a3,start:b30,x:b24,y:b21,platform:Android,
+33333034646336346339646538643633,Wii Classic,a:b23,b:b22,back:b29,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b27,lefttrigger:b25,leftx:a0,lefty:a1,rightshoulder:b28,righttrigger:b26,rightx:a2,righty:a3,start:b30,x:b24,y:b21,platform:Android,
30306539356238653637313730656134,Wireless HORIPAD Switch Pro Controller,a:b0,b:b1,back:b17,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b3,leftstick:b15,lefttrigger:b9,leftx:a0,lefty:a1,rightshoulder:b20,rightstick:b6,righttrigger:b10,rightx:a2,righty:a3,start:b18,x:b19,y:b2,platform:Android,
+30396232393162346330326334636566,Xbox 360,a:b0,b:b1,back:b4,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+38313038323730383864666463383533,Xbox 360,a:b0,b:b1,back:b4,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+65353331386662343338643939643636,Xbox 360,a:b0,b:b1,back:b4,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+65613532386633373963616462363038,Xbox 360,a:b0,b:b1,back:b4,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e0400008e02000000783f00,Xbox 360 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+33356661323266333733373865656366,Xbox One Controller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+35623965373264386238353433656138,Xbox One Controller,a:b0,b:b1,back:b4,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e040000000b000000783f00,Xbox One Elite 2 Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Android,
050000005e040000e002000000783f00,Xbox One S Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e040000ea02000000783f00,Xbox One S Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e040000fd020000ff7f3f00,Xbox One S Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e040000e00200000ffe3f00,Xbox One Wireless Controller,a:b0,b:b1,back:b9,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b3,leftstick:b15,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b16,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b17,y:b2,platform:Android,
-050000005e040000fd020000ffff3f00,Xbox One Wireless Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a5,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a4,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
+050000005e040000fd020000ffff3f00,Xbox One Wireless Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e040000120b000000783f00,Xbox Series Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Android,
050000005e040000130b0000ffff3f00,Xbox Series Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
65633038363832353634653836396239,Xbox Series Controller,a:b0,b:b1,back:b15,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000005e04000091020000ff073f00,Xbox Wireless Controller,a:b0,b:b1,back:b4,guide:b5,leftshoulder:b9,leftstick:b7,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a3,righty:a4,start:b6,x:b2,y:b3,platform:Android,
34356136633366613530316338376136,Xbox Wireless Controller,a:b0,b:b1,back:b9,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b10,leftshoulder:b3,leftstick:b15,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b18,rightstick:b16,righttrigger:a5,rightx:a3,righty:a4,x:b17,y:b2,platform:Android,
+36616131643361333337396261666433,Xbox Wireless Controller,a:b0,b:b1,back:b15,leftshoulder:b9,leftstick:b7,lefttrigger:a4,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a5,rightx:a2,righty:a3,start:b6,x:b2,y:b3,platform:Android,
050000001727000044310000ffff3f00,XiaoMi Game Controller,a:b0,b:b1,back:b4,dpdown:b12,dpleft:b13,dpright:b14,dpup:b11,leftshoulder:b9,leftstick:b7,lefttrigger:a7,leftx:a0,lefty:a1,rightshoulder:b10,rightstick:b8,righttrigger:a6,rightx:a2,righty:a5,start:b6,x:b2,y:b3,platform:Android,
# iOS
@@ -1017,5 +1491,7 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
05000000de2800000611000001000000,Steam Controller,a:b0,b:b1,back:b6,guide:b8,leftshoulder:b4,leftstick:b9,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,righttrigger:a3,start:b7,x:b2,y:b3,platform:iOS,
050000005e040000050b0000df070001,Xbox Elite Wireless Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,paddle1:b10,paddle2:b12,paddle3:b11,paddle4:b13,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b2,y:b3,platform:iOS,
050000005e040000050b0000ff070001,Xbox Elite Wireless Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b9,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,paddle1:b11,paddle2:b13,paddle3:b12,paddle4:b14,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b2,y:b3,platform:iOS,
+050000005e040000130b0000df870001,Xbox Series X Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,misc1:b10,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b2,y:b3,platform:iOS,
+050000005e040000130b0000ff870001,Xbox Series X Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b9,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,misc1:b11,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b2,y:b3,platform:iOS,
050000005e040000e0020000df070000,Xbox Wireless Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b9,x:b2,y:b3,platform:iOS,
050000005e040000e0020000ff070000,Xbox Wireless Controller,a:b0,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b9,leftshoulder:b4,leftstick:b6,lefttrigger:a2,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b7,righttrigger:a5,rightx:a3,righty:a4,start:b10,x:b2,y:b3,platform:iOS,
diff --git a/core/input/input.cpp b/core/input/input.cpp
index 12028efc56..35ca8aefe6 100644
--- a/core/input/input.cpp
+++ b/core/input/input.cpp
@@ -1239,7 +1239,7 @@ void Input::parse_mapping(String p_mapping) {
String output = entry[idx].get_slice(":", 0).replace(" ", "");
String input = entry[idx].get_slice(":", 1).replace(" ", "");
ERR_CONTINUE_MSG(output.length() < 1 || input.length() < 2,
- String(entry[idx] + "\nInvalid device mapping entry: " + entry[idx]));
+ vformat("Invalid device mapping entry \"%s\" in mapping:\n%s", entry[idx], p_mapping));
if (output == "platform" || output == "hint") {
continue;
@@ -1247,7 +1247,8 @@ void Input::parse_mapping(String p_mapping) {
JoyAxisRange output_range = FULL_AXIS;
if (output[0] == '+' || output[0] == '-') {
- ERR_CONTINUE_MSG(output.length() < 2, String(entry[idx] + "\nInvalid output: " + entry[idx]));
+ ERR_CONTINUE_MSG(output.length() < 2,
+ vformat("Invalid output entry \"%s\" in mapping:\n%s", entry[idx], p_mapping));
if (output[0] == '+') {
output_range = POSITIVE_HALF_AXIS;
} else if (output[0] == '-') {
@@ -1273,9 +1274,9 @@ void Input::parse_mapping(String p_mapping) {
JoyButton output_button = _get_output_button(output);
JoyAxis output_axis = _get_output_axis(output);
ERR_CONTINUE_MSG(output_button == JOY_BUTTON_INVALID && output_axis == JOY_AXIS_INVALID,
- String(entry[idx] + "\nUnrecognised output string: " + output));
+ vformat("Unrecognised output string \"%s\" in mapping:\n%s", output, p_mapping));
ERR_CONTINUE_MSG(output_button != JOY_BUTTON_INVALID && output_axis != JOY_AXIS_INVALID,
- String("BUG: Output string matched both button and axis: " + output));
+ vformat("Output string \"%s\" matched both button and axis in mapping:\n%s", output, p_mapping));
JoyBinding binding;
if (output_button != JOY_BUTTON_INVALID) {
@@ -1300,13 +1301,13 @@ void Input::parse_mapping(String p_mapping) {
break;
case 'h':
ERR_CONTINUE_MSG(input.length() != 4 || input[2] != '.',
- String(entry[idx] + "\nInvalid hat input: " + input));
+ vformat("Invalid had input \"%s\" in mapping:\n%s", input, p_mapping));
binding.inputType = TYPE_HAT;
binding.input.hat.hat = (HatDir)input.substr(1, 1).to_int();
binding.input.hat.hat_mask = static_cast<HatMask>(input.substr(3).to_int());
break;
default:
- ERR_CONTINUE_MSG(true, String(entry[idx] + "\nUnrecognised input string: " + input));
+ ERR_CONTINUE_MSG(true, vformat("Unrecognized input string \"%s\" in mapping:\n%s", input, p_mapping));
}
mapping.bindings.push_back(binding);
diff --git a/core/io/resource.h b/core/io/resource.h
index 9ccc247887..109c0f6611 100644
--- a/core/io/resource.h
+++ b/core/io/resource.h
@@ -103,6 +103,7 @@ public:
virtual void set_path(const String &p_path, bool p_take_over = false);
String get_path() const;
+ _FORCE_INLINE_ bool is_built_in() const { return path_cache.is_empty() || path_cache.find("::") != -1 || path_cache.begins_with("local://"); }
static String generate_scene_unique_id();
void set_scene_unique_id(const String &p_id);
diff --git a/core/io/resource_format_binary.cpp b/core/io/resource_format_binary.cpp
index cbb033f6c6..a5a195f859 100644
--- a/core/io/resource_format_binary.cpp
+++ b/core/io/resource_format_binary.cpp
@@ -1572,7 +1572,7 @@ void ResourceFormatSaverBinaryInstance::write_variant(FileAccess *f, const Varia
return; // don't save it
}
- if (res->get_path().length() && res->get_path().find("::") == -1) {
+ if (!res->is_built_in()) {
f->store_32(OBJECT_EXTERNAL_RESOURCE_INDEX);
f->store_32(external_resources[res]);
} else {
@@ -1743,7 +1743,7 @@ void ResourceFormatSaverBinaryInstance::_find_resources(const Variant &p_variant
return;
}
- if (!p_main && (!bundle_resources) && res->get_path().length() && res->get_path().find("::") == -1) {
+ if (!p_main && (!bundle_resources) && !res->is_built_in()) {
if (res->get_path() == path) {
ERR_PRINT("Circular reference to resource being saved found: '" + local_path + "' will be null next time it's loaded.");
return;
@@ -1978,7 +1978,7 @@ Error ResourceFormatSaverBinaryInstance::save(const String &p_path, const RES &p
Set<String> used_unique_ids;
for (RES &r : saved_resources) {
- if (r->get_path() == "" || r->get_path().find("::") != -1) {
+ if (r->is_built_in()) {
if (r->get_scene_unique_id() != "") {
if (used_unique_ids.has(r->get_scene_unique_id())) {
r->set_scene_unique_id("");
@@ -1992,7 +1992,7 @@ Error ResourceFormatSaverBinaryInstance::save(const String &p_path, const RES &p
Map<RES, int> resource_map;
int res_index = 0;
for (RES &r : saved_resources) {
- if (r->get_path() == "" || r->get_path().find("::") != -1) {
+ if (r->is_built_in()) {
if (r->get_scene_unique_id() == "") {
String new_id;
diff --git a/core/math/aabb.cpp b/core/math/aabb.cpp
index 51a1309f0e..f3e78c0080 100644
--- a/core/math/aabb.cpp
+++ b/core/math/aabb.cpp
@@ -33,7 +33,7 @@
#include "core/string/print_string.h"
#include "core/variant/variant.h"
-real_t AABB::get_area() const {
+real_t AABB::get_volume() const {
return size.x * size.y * size.z;
}
diff --git a/core/math/aabb.h b/core/math/aabb.h
index c458e61475..02ce2501a0 100644
--- a/core/math/aabb.h
+++ b/core/math/aabb.h
@@ -46,8 +46,8 @@ public:
Vector3 position;
Vector3 size;
- real_t get_area() const; /// get area
- _FORCE_INLINE_ bool has_no_area() const {
+ real_t get_volume() const;
+ _FORCE_INLINE_ bool has_no_volume() const {
return (size.x <= 0 || size.y <= 0 || size.z <= 0);
}
diff --git a/core/math/quaternion.h b/core/math/quaternion.h
index e20ea74eb4..d8d0c06672 100644
--- a/core/math/quaternion.h
+++ b/core/math/quaternion.h
@@ -86,13 +86,6 @@ public:
void operator*=(const Quaternion &p_q);
Quaternion operator*(const Quaternion &p_q) const;
- Quaternion operator*(const Vector3 &v) const {
- return Quaternion(w * v.x + y * v.z - z * v.y,
- w * v.y + z * v.x - x * v.z,
- w * v.z + x * v.y - y * v.x,
- -x * v.x - y * v.y - z * v.z);
- }
-
_FORCE_INLINE_ Vector3 xform(const Vector3 &v) const {
#ifdef MATH_CHECKS
ERR_FAIL_COND_V_MSG(!is_normalized(), v, "The quaternion must be normalized.");
diff --git a/core/object/object.cpp b/core/object/object.cpp
index e7d8b0e543..498f116997 100644
--- a/core/object/object.cpp
+++ b/core/object/object.cpp
@@ -645,7 +645,7 @@ void Object::get_property_list(List<PropertyInfo> *p_list, bool p_reversed) cons
p_list->push_back(PropertyInfo(Variant::OBJECT, "script", PROPERTY_HINT_RESOURCE_TYPE, "Script", PROPERTY_USAGE_DEFAULT));
}
if (!metadata.is_empty()) {
- p_list->push_back(PropertyInfo(Variant::DICTIONARY, "__meta__", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::DICTIONARY, "__meta__", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
if (script_instance && !p_reversed) {
p_list->push_back(PropertyInfo(Variant::NIL, "Script Variables", PROPERTY_HINT_NONE, String(), PROPERTY_USAGE_CATEGORY));
@@ -1475,7 +1475,7 @@ void Object::_clear_internal_resource_paths(const Variant &p_var) {
return;
}
- if (!r->get_path().begins_with("res://") || r->get_path().find("::") == -1) {
+ if (!r->is_built_in()) {
return; //not an internal resource
}
diff --git a/core/object/object.h b/core/object/object.h
index 759e2ccdee..218bc26dec 100644
--- a/core/object/object.h
+++ b/core/object/object.h
@@ -137,7 +137,7 @@ enum PropertyUsageFlags {
PROPERTY_USAGE_DEFAULT = PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_NETWORK,
PROPERTY_USAGE_DEFAULT_INTL = PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_NETWORK | PROPERTY_USAGE_INTERNATIONALIZED,
- PROPERTY_USAGE_NOEDITOR = PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK,
+ PROPERTY_USAGE_NO_EDITOR = PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK,
};
#define ADD_SIGNAL(m_signal) ::ClassDB::add_signal(get_class_static(), m_signal)
diff --git a/core/object/script_language.cpp b/core/object/script_language.cpp
index b0ce46ca2b..c2449e3ddc 100644
--- a/core/object/script_language.cpp
+++ b/core/object/script_language.cpp
@@ -549,7 +549,7 @@ void PlaceHolderScriptInstance::property_set_fallback(const StringName &p_name,
}
}
if (!found) {
- properties.push_back(PropertyInfo(p_value.get_type(), p_name, PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_SCRIPT_VARIABLE));
+ properties.push_back(PropertyInfo(p_value.get_type(), p_name, PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_SCRIPT_VARIABLE));
}
}
diff --git a/core/os/os.cpp b/core/os/os.cpp
index 5892f91ff3..03e251880f 100644
--- a/core/os/os.cpp
+++ b/core/os/os.cpp
@@ -440,6 +440,15 @@ bool OS::has_feature(const String &p_feature) {
if (p_feature == "riscv") {
return true;
}
+#elif defined(__powerpc__)
+#if defined(__powerpc64__)
+ if (p_feature == "ppc64") {
+ return true;
+ }
+#endif
+ if (p_feature == "ppc") {
+ return true;
+ }
#endif
if (_check_internal_feature_support(p_feature)) {
diff --git a/core/os/os.h b/core/os/os.h
index f02f600c58..52bf731501 100644
--- a/core/os/os.h
+++ b/core/os/os.h
@@ -151,6 +151,7 @@ public:
virtual String get_executable_path() const;
virtual Error execute(const String &p_path, const List<String> &p_arguments, String *r_pipe = nullptr, int *r_exitcode = nullptr, bool read_stderr = false, Mutex *p_pipe_mutex = nullptr) = 0;
virtual Error create_process(const String &p_path, const List<String> &p_arguments, ProcessID *r_child_id = nullptr) = 0;
+ virtual Error create_instance(const List<String> &p_arguments, ProcessID *r_child_id = nullptr) { return create_process(get_executable_path(), p_arguments, r_child_id); };
virtual Error kill(const ProcessID &p_pid) = 0;
virtual int get_process_id() const;
virtual void vibrate_handheld(int p_duration_ms = 500);
diff --git a/core/string/translation.cpp b/core/string/translation.cpp
index 6ff31a4a02..b98aad9b58 100644
--- a/core/string/translation.cpp
+++ b/core/string/translation.cpp
@@ -938,7 +938,7 @@ void Translation::_bind_methods() {
GDVIRTUAL_BIND(_get_plural_message, "src_message", "src_plural_message", "n", "context");
GDVIRTUAL_BIND(_get_message, "src_message", "context");
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "messages", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_messages", "_get_messages");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "messages", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_messages", "_get_messages");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "locale"), "set_locale", "get_locale");
}
diff --git a/core/templates/ordered_hash_map.h b/core/templates/ordered_hash_map.h
index 7a17eeb644..4996b88190 100644
--- a/core/templates/ordered_hash_map.h
+++ b/core/templates/ordered_hash_map.h
@@ -207,8 +207,12 @@ public:
(*list_element)->get().second = p_value;
return Element(*list_element);
}
- typename InternalList::Element *new_element = list.push_back(Pair<const K *, V>(nullptr, p_value));
+ // Incorrectly set the first value of the pair with a value that will
+ // be invalid as soon as we leave this function...
+ typename InternalList::Element *new_element = list.push_back(Pair<const K *, V>(&p_key, p_value));
+ // ...this is needed here in case the hashmap recursively reference itself...
typename InternalMap::Element *e = map.set(p_key, new_element);
+ // ...now we can set the right value !
new_element->get().first = &e->key();
return Element(new_element);
diff --git a/core/templates/thread_work_pool.h b/core/templates/thread_work_pool.h
index b242648bc8..19096c496a 100644
--- a/core/templates/thread_work_pool.h
+++ b/core/templates/thread_work_pool.h
@@ -73,6 +73,7 @@ class ThreadWorkPool {
ThreadData *threads = nullptr;
uint32_t thread_count = 0;
+ uint32_t threads_working = 0;
BaseWork *current_work = nullptr;
static void _thread_function(void *p_user);
@@ -94,7 +95,9 @@ public:
current_work = w;
- for (uint32_t i = 0; i < thread_count; i++) {
+ threads_working = MIN(p_elements, thread_count);
+
+ for (uint32_t i = 0; i < threads_working; i++) {
threads[i].work = w;
threads[i].start.post();
}
@@ -117,19 +120,32 @@ public:
void end_work() {
ERR_FAIL_COND(current_work == nullptr);
- for (uint32_t i = 0; i < thread_count; i++) {
+ for (uint32_t i = 0; i < threads_working; i++) {
threads[i].completed.wait();
threads[i].work = nullptr;
}
+ threads_working = 0;
memdelete(current_work);
current_work = nullptr;
}
template <class C, class M, class U>
void do_work(uint32_t p_elements, C *p_instance, M p_method, U p_userdata) {
- begin_work(p_elements, p_instance, p_method, p_userdata);
- end_work();
+ switch (p_elements) {
+ case 0:
+ // Nothing to do, so do nothing.
+ break;
+ case 1:
+ // No value in pushing the work to another thread if it's a single job
+ // and we're going to wait for it to finish. Just run it right here.
+ (p_instance->*p_method)(0, p_userdata);
+ break;
+ default:
+ // Multiple jobs to do; commence threaded business.
+ begin_work(p_elements, p_instance, p_method, p_userdata);
+ end_work();
+ }
}
_FORCE_INLINE_ int get_thread_count() const { return thread_count; }
diff --git a/core/typedefs.h b/core/typedefs.h
index 8ca3d13e63..9ab874b2f0 100644
--- a/core/typedefs.h
+++ b/core/typedefs.h
@@ -277,6 +277,9 @@ struct BuildIndexSequence : BuildIndexSequence<N - 1, N - 1, Is...> {};
template <size_t... Is>
struct BuildIndexSequence<0, Is...> : IndexSequence<Is...> {};
+// Limit the depth of recursive algorithms when dealing with Array/Dictionary
+#define MAX_RECURSION 100
+
#ifdef DEBUG_ENABLED
#define DEBUG_METHODS_ENABLED
#endif
diff --git a/core/variant/array.cpp b/core/variant/array.cpp
index b4d6dffc6f..69a0fff1a1 100644
--- a/core/variant/array.cpp
+++ b/core/variant/array.cpp
@@ -97,11 +97,38 @@ void Array::clear() {
}
bool Array::operator==(const Array &p_array) const {
- return _p == p_array._p;
+ return recursive_equal(p_array, 0);
}
bool Array::operator!=(const Array &p_array) const {
- return !operator==(p_array);
+ return !recursive_equal(p_array, 0);
+}
+
+bool Array::recursive_equal(const Array &p_array, int recursion_count) const {
+ // Cheap checks
+ if (_p == p_array._p) {
+ return true;
+ }
+ const Vector<Variant> &a1 = _p->array;
+ const Vector<Variant> &a2 = p_array._p->array;
+ const int size = a1.size();
+ if (size != a2.size()) {
+ return false;
+ }
+
+ // Heavy O(n) check
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ return true;
+ }
+ recursion_count++;
+ for (int i = 0; i < size; i++) {
+ if (!a1[i].hash_compare(a2[i], recursion_count)) {
+ return false;
+ }
+ }
+
+ return true;
}
bool Array::operator<(const Array &p_array) const {
@@ -132,10 +159,20 @@ bool Array::operator>=(const Array &p_array) const {
}
uint32_t Array::hash() const {
- uint32_t h = hash_djb2_one_32(0);
+ return recursive_hash(0);
+}
+uint32_t Array::recursive_hash(int recursion_count) const {
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ return 0;
+ }
+
+ uint32_t h = hash_djb2_one_32(Variant::ARRAY);
+
+ recursion_count++;
for (int i = 0; i < _p->array.size(); i++) {
- h = hash_djb2_one_32(_p->array[i].hash(), h);
+ h = hash_djb2_one_32(_p->array[i].recursive_hash(recursion_count), h);
}
return h;
}
@@ -300,12 +337,29 @@ const Variant &Array::get(int p_idx) const {
}
Array Array::duplicate(bool p_deep) const {
+ return recursive_duplicate(p_deep, 0);
+}
+
+Array Array::recursive_duplicate(bool p_deep, int recursion_count) const {
Array new_arr;
+
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ return new_arr;
+ }
+
int element_count = size();
new_arr.resize(element_count);
new_arr._p->typed = _p->typed;
- for (int i = 0; i < element_count; i++) {
- new_arr[i] = p_deep ? get(i).duplicate(p_deep) : get(i);
+ if (p_deep) {
+ recursion_count++;
+ for (int i = 0; i < element_count; i++) {
+ new_arr[i] = get(i).recursive_duplicate(true, recursion_count);
+ }
+ } else {
+ for (int i = 0; i < element_count; i++) {
+ new_arr[i] = get(i);
+ }
}
return new_arr;
diff --git a/core/variant/array.h b/core/variant/array.h
index 4a1b25c4a9..bd39b8e0b1 100644
--- a/core/variant/array.h
+++ b/core/variant/array.h
@@ -63,8 +63,10 @@ public:
bool operator==(const Array &p_array) const;
bool operator!=(const Array &p_array) const;
+ bool recursive_equal(const Array &p_array, int recursion_count) const;
uint32_t hash() const;
+ uint32_t recursive_hash(int recursion_count) const;
void operator=(const Array &p_array);
void push_back(const Variant &p_value);
@@ -100,6 +102,7 @@ public:
Variant pop_at(int p_pos);
Array duplicate(bool p_deep = false) const;
+ Array recursive_duplicate(bool p_deep, int recursion_count) const;
Array slice(int p_begin, int p_end, int p_step = 1, bool p_deep = false) const;
Array filter(const Callable &p_callable) const;
diff --git a/core/variant/dictionary.cpp b/core/variant/dictionary.cpp
index 07b3a9a675..24d21386a7 100644
--- a/core/variant/dictionary.cpp
+++ b/core/variant/dictionary.cpp
@@ -188,11 +188,35 @@ bool Dictionary::erase(const Variant &p_key) {
}
bool Dictionary::operator==(const Dictionary &p_dictionary) const {
- return _p == p_dictionary._p;
+ return recursive_equal(p_dictionary, 0);
}
bool Dictionary::operator!=(const Dictionary &p_dictionary) const {
- return _p != p_dictionary._p;
+ return !recursive_equal(p_dictionary, 0);
+}
+
+bool Dictionary::recursive_equal(const Dictionary &p_dictionary, int recursion_count) const {
+ // Cheap checks
+ if (_p == p_dictionary._p) {
+ return true;
+ }
+ if (_p->variant_map.size() != p_dictionary._p->variant_map.size()) {
+ return false;
+ }
+
+ // Heavy O(n) check
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ return true;
+ }
+ recursion_count++;
+ for (OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::ConstElement this_E = ((const OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator> *)&_p->variant_map)->front(); this_E; this_E = this_E.next()) {
+ OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::ConstElement other_E = ((const OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator> *)&p_dictionary._p->variant_map)->find(this_E.key());
+ if (!other_E || !this_E.value().hash_compare(other_E.value(), recursion_count)) {
+ return false;
+ }
+ }
+ return true;
}
void Dictionary::_ref(const Dictionary &p_from) const {
@@ -225,11 +249,21 @@ void Dictionary::_unref() const {
}
uint32_t Dictionary::hash() const {
+ return recursive_hash(0);
+}
+
+uint32_t Dictionary::recursive_hash(int recursion_count) const {
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ return 0;
+ }
+
uint32_t h = hash_djb2_one_32(Variant::DICTIONARY);
+ recursion_count++;
for (OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::Element E = _p->variant_map.front(); E; E = E.next()) {
- h = hash_djb2_one_32(E.key().hash(), h);
- h = hash_djb2_one_32(E.value().hash(), h);
+ h = hash_djb2_one_32(E.key().recursive_hash(recursion_count), h);
+ h = hash_djb2_one_32(E.value().recursive_hash(recursion_count), h);
}
return h;
@@ -286,10 +320,26 @@ const Variant *Dictionary::next(const Variant *p_key) const {
}
Dictionary Dictionary::duplicate(bool p_deep) const {
+ return recursive_duplicate(p_deep, 0);
+}
+
+Dictionary Dictionary::recursive_duplicate(bool p_deep, int recursion_count) const {
Dictionary n;
- for (OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::Element E = _p->variant_map.front(); E; E = E.next()) {
- n[E.key()] = p_deep ? E.value().duplicate(true) : E.value();
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ return n;
+ }
+
+ if (p_deep) {
+ recursion_count++;
+ for (OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::Element E = _p->variant_map.front(); E; E = E.next()) {
+ n[E.key().recursive_duplicate(true, recursion_count)] = E.value().recursive_duplicate(true, recursion_count);
+ }
+ } else {
+ for (OrderedHashMap<Variant, Variant, VariantHasher, VariantComparator>::Element E = _p->variant_map.front(); E; E = E.next()) {
+ n[E.key()] = E.value();
+ }
}
return n;
diff --git a/core/variant/dictionary.h b/core/variant/dictionary.h
index 4067ff9fd9..f8a2a7573f 100644
--- a/core/variant/dictionary.h
+++ b/core/variant/dictionary.h
@@ -70,8 +70,10 @@ public:
bool operator==(const Dictionary &p_dictionary) const;
bool operator!=(const Dictionary &p_dictionary) const;
+ bool recursive_equal(const Dictionary &p_dictionary, int recursion_count) const;
uint32_t hash() const;
+ uint32_t recursive_hash(int recursion_count) const;
void operator=(const Dictionary &p_dictionary);
const Variant *next(const Variant *p_key = nullptr) const;
@@ -80,6 +82,7 @@ public:
Array values() const;
Dictionary duplicate(bool p_deep = false) const;
+ Dictionary recursive_duplicate(bool p_deep, int recursion_count) const;
const void *id() const;
diff --git a/core/variant/variant.cpp b/core/variant/variant.cpp
index 1d70d4c506..c43ff8626e 100644
--- a/core/variant/variant.cpp
+++ b/core/variant/variant.cpp
@@ -784,16 +784,11 @@ bool Variant::can_convert_strict(Variant::Type p_type_from, Variant::Type p_type
}
bool Variant::operator==(const Variant &p_variant) const {
- if (type != p_variant.type) { //evaluation of operator== needs to be more strict
- return false;
- }
- bool v;
- Variant r;
- evaluate(OP_EQUAL, *this, p_variant, r, v);
- return r;
+ return hash_compare(p_variant);
}
bool Variant::operator!=(const Variant &p_variant) const {
+ // Don't use `!hash_compare(p_variant)` given it makes use of OP_EQUAL
if (type != p_variant.type) { //evaluation of operator== needs to be more strict
return true;
}
@@ -1617,25 +1612,23 @@ struct _VariantStrPair {
};
Variant::operator String() const {
- List<const void *> stack;
-
- return stringify(stack);
+ return stringify(0);
}
template <class T>
-String stringify_vector(const T &vec, List<const void *> &stack) {
+String stringify_vector(const T &vec, int recursion_count) {
String str("[");
for (int i = 0; i < vec.size(); i++) {
if (i > 0) {
str += ", ";
}
- str = str + Variant(vec[i]).stringify(stack);
+ str = str + Variant(vec[i]).stringify(recursion_count);
}
str += "]";
return str;
}
-String Variant::stringify(List<const void *> &stack) const {
+String Variant::stringify(int recursion_count) const {
switch (type) {
case NIL:
return "null";
@@ -1679,23 +1672,22 @@ String Variant::stringify(List<const void *> &stack) const {
return operator Color();
case DICTIONARY: {
const Dictionary &d = *reinterpret_cast<const Dictionary *>(_data._mem);
- if (stack.find(d.id())) {
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
return "{...}";
}
- stack.push_back(d.id());
-
- //const String *K=nullptr;
String str("{");
List<Variant> keys;
d.get_key_list(&keys);
Vector<_VariantStrPair> pairs;
- for (const Variant &E : keys) {
+ recursion_count++;
+ for (List<Variant>::Element *E = keys.front(); E; E = E->next()) {
_VariantStrPair sp;
- sp.key = E.stringify(stack);
- sp.value = d[E].stringify(stack);
+ sp.key = E->get().stringify(recursion_count);
+ sp.value = d[E->get()].stringify(recursion_count);
pairs.push_back(sp);
}
@@ -1710,46 +1702,43 @@ String Variant::stringify(List<const void *> &stack) const {
}
str += "}";
- stack.erase(d.id());
return str;
} break;
case PACKED_VECTOR2_ARRAY: {
- return stringify_vector(operator Vector<Vector2>(), stack);
+ return stringify_vector(operator Vector<Vector2>(), recursion_count);
} break;
case PACKED_VECTOR3_ARRAY: {
- return stringify_vector(operator Vector<Vector3>(), stack);
+ return stringify_vector(operator Vector<Vector3>(), recursion_count);
} break;
case PACKED_COLOR_ARRAY: {
- return stringify_vector(operator Vector<Color>(), stack);
+ return stringify_vector(operator Vector<Color>(), recursion_count);
} break;
case PACKED_STRING_ARRAY: {
- return stringify_vector(operator Vector<String>(), stack);
+ return stringify_vector(operator Vector<String>(), recursion_count);
} break;
case PACKED_BYTE_ARRAY: {
- return stringify_vector(operator Vector<uint8_t>(), stack);
+ return stringify_vector(operator Vector<uint8_t>(), recursion_count);
} break;
case PACKED_INT32_ARRAY: {
- return stringify_vector(operator Vector<int32_t>(), stack);
+ return stringify_vector(operator Vector<int32_t>(), recursion_count);
} break;
case PACKED_INT64_ARRAY: {
- return stringify_vector(operator Vector<int64_t>(), stack);
+ return stringify_vector(operator Vector<int64_t>(), recursion_count);
} break;
case PACKED_FLOAT32_ARRAY: {
- return stringify_vector(operator Vector<float>(), stack);
+ return stringify_vector(operator Vector<float>(), recursion_count);
} break;
case PACKED_FLOAT64_ARRAY: {
- return stringify_vector(operator Vector<double>(), stack);
+ return stringify_vector(operator Vector<double>(), recursion_count);
} break;
case ARRAY: {
Array arr = operator Array();
- if (stack.find(arr.id())) {
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
return "[...]";
}
- stack.push_back(arr.id());
- String str = stringify_vector(arr, stack);
-
- stack.erase(arr.id());
+ String str = stringify_vector(arr, recursion_count);
return str;
} break;
@@ -2768,6 +2757,10 @@ Variant::Variant(const Variant &p_variant) {
}
uint32_t Variant::hash() const {
+ return recursive_hash(0);
+}
+
+uint32_t Variant::recursive_hash(int recursion_count) const {
switch (type) {
case NIL: {
return 0;
@@ -2895,7 +2888,7 @@ uint32_t Variant::hash() const {
return reinterpret_cast<const NodePath *>(_data._mem)->hash();
} break;
case DICTIONARY: {
- return reinterpret_cast<const Dictionary *>(_data._mem)->hash();
+ return reinterpret_cast<const Dictionary *>(_data._mem)->recursive_hash(recursion_count);
} break;
case CALLABLE: {
@@ -2909,7 +2902,7 @@ uint32_t Variant::hash() const {
} break;
case ARRAY: {
const Array &arr = *reinterpret_cast<const Array *>(_data._mem);
- return arr.hash();
+ return arr.recursive_hash(recursion_count);
} break;
case PACKED_BYTE_ARRAY: {
@@ -3083,7 +3076,7 @@ uint32_t Variant::hash() const {
\
return true
-bool Variant::hash_compare(const Variant &p_variant) const {
+bool Variant::hash_compare(const Variant &p_variant, int recursion_count) const {
if (type != p_variant.type) {
return false;
}
@@ -3214,14 +3207,19 @@ bool Variant::hash_compare(const Variant &p_variant) const {
const Array &l = *(reinterpret_cast<const Array *>(_data._mem));
const Array &r = *(reinterpret_cast<const Array *>(p_variant._data._mem));
- if (l.size() != r.size()) {
+ if (!l.recursive_equal(r, recursion_count + 1)) {
return false;
}
- for (int i = 0; i < l.size(); ++i) {
- if (!l[i].hash_compare(r[i])) {
- return false;
- }
+ return true;
+ } break;
+
+ case DICTIONARY: {
+ const Dictionary &l = *(reinterpret_cast<const Dictionary *>(_data._mem));
+ const Dictionary &r = *(reinterpret_cast<const Dictionary *>(p_variant._data._mem));
+
+ if (!l.recursive_equal(r, recursion_count + 1)) {
+ return false;
}
return true;
diff --git a/core/variant/variant.h b/core/variant/variant.h
index d3f694e7ca..8ce5e7dcd2 100644
--- a/core/variant/variant.h
+++ b/core/variant/variant.h
@@ -481,7 +481,8 @@ public:
static PTROperatorEvaluator get_ptr_operator_evaluator(Operator p_operator, Type p_type_a, Type p_type_b);
void zero();
- Variant duplicate(bool deep = false) const;
+ Variant duplicate(bool p_deep = false) const;
+ Variant recursive_duplicate(bool p_deep, int recursion_count) const;
static void blend(const Variant &a, const Variant &b, float c, Variant &r_dst);
static void interpolate(const Variant &a, const Variant &b, float c, Variant &r_dst);
@@ -659,10 +660,11 @@ public:
bool operator!=(const Variant &p_variant) const;
bool operator<(const Variant &p_variant) const;
uint32_t hash() const;
+ uint32_t recursive_hash(int recursion_count) const;
- bool hash_compare(const Variant &p_variant) const;
+ bool hash_compare(const Variant &p_variant, int recursion_count = 0) const;
bool booleanize() const;
- String stringify(List<const void *> &stack) const;
+ String stringify(int recursion_count = 0) const;
String to_json_string() const;
void static_assign(const Variant &p_variant);
diff --git a/core/variant/variant_call.cpp b/core/variant/variant_call.cpp
index ec3a6a5ca8..c3fe443456 100644
--- a/core/variant/variant_call.cpp
+++ b/core/variant/variant_call.cpp
@@ -752,8 +752,9 @@ struct _VariantCall {
static PackedInt32Array func_PackedByteArray_decode_s32_array(PackedByteArray *p_instance) {
uint64_t size = p_instance->size();
- const uint8_t *r = p_instance->ptr();
PackedInt32Array dest;
+ ERR_FAIL_COND_V_MSG(size < sizeof(int32_t), dest, "Size didn't match array of size int32_t, maybe you are trying to convert to the wrong type?");
+ const uint8_t *r = p_instance->ptr();
dest.resize(size / sizeof(int32_t));
memcpy(dest.ptrw(), r, size);
return dest;
@@ -761,8 +762,9 @@ struct _VariantCall {
static PackedInt64Array func_PackedByteArray_decode_s64_array(PackedByteArray *p_instance) {
uint64_t size = p_instance->size();
- const uint8_t *r = p_instance->ptr();
PackedInt64Array dest;
+ ERR_FAIL_COND_V_MSG(size < sizeof(int64_t), dest, "Size didn't match array of size int64_t, maybe you are trying to convert to the wrong type?");
+ const uint8_t *r = p_instance->ptr();
dest.resize(size / sizeof(int64_t));
memcpy(dest.ptrw(), r, size);
return dest;
@@ -770,8 +772,9 @@ struct _VariantCall {
static PackedFloat32Array func_PackedByteArray_decode_float_array(PackedByteArray *p_instance) {
uint64_t size = p_instance->size();
- const uint8_t *r = p_instance->ptr();
PackedFloat32Array dest;
+ ERR_FAIL_COND_V_MSG(size < sizeof(float), dest, "Size didn't match array of size float, maybe you are trying to convert to the wrong type?");
+ const uint8_t *r = p_instance->ptr();
dest.resize(size / sizeof(float));
memcpy(dest.ptrw(), r, size);
return dest;
@@ -779,8 +782,9 @@ struct _VariantCall {
static PackedFloat64Array func_PackedByteArray_decode_double_array(PackedByteArray *p_instance) {
uint64_t size = p_instance->size();
- const uint8_t *r = p_instance->ptr();
PackedFloat64Array dest;
+ ERR_FAIL_COND_V_MSG(size < sizeof(double), dest, "Size didn't match array of size double, maybe you are trying to convert to the wrong type?");
+ const uint8_t *r = p_instance->ptr();
dest.resize(size / sizeof(double));
memcpy(dest.ptrw(), r, size);
return dest;
@@ -1366,6 +1370,7 @@ static void _register_variant_builtin_methods() {
bind_method(String, naturalnocasecmp_to, sarray("to"), varray());
bind_method(String, length, sarray(), varray());
bind_method(String, substr, sarray("from", "len"), varray(-1));
+ bind_method(String, get_slice, sarray("delimiter", "slice"), varray());
bind_methodv(String, find, static_cast<int (String::*)(const String &, int) const>(&String::find), sarray("what", "from"), varray(0));
bind_method(String, count, sarray("what", "from", "to"), varray(0, 0));
bind_method(String, countn, sarray("what", "from", "to"), varray(0, 0));
@@ -1747,8 +1752,8 @@ static void _register_variant_builtin_methods() {
bind_method(AABB, abs, sarray(), varray());
bind_method(AABB, get_center, sarray(), varray());
- bind_method(AABB, get_area, sarray(), varray());
- bind_method(AABB, has_no_area, sarray(), varray());
+ bind_method(AABB, get_volume, sarray(), varray());
+ bind_method(AABB, has_no_volume, sarray(), varray());
bind_method(AABB, has_no_surface, sarray(), varray());
bind_method(AABB, has_point, sarray("point"), varray());
bind_method(AABB, is_equal_approx, sarray("aabb"), varray());
diff --git a/core/variant/variant_parser.cpp b/core/variant/variant_parser.cpp
index 221a8c4f98..3c19c2c706 100644
--- a/core/variant/variant_parser.cpp
+++ b/core/variant/variant_parser.cpp
@@ -1443,7 +1443,7 @@ static String rtos_fix(double p_value) {
}
}
-Error VariantWriter::write(const Variant &p_variant, StoreStringFunc p_store_string_func, void *p_store_string_ud, EncodeResourceFunc p_encode_res_func, void *p_encode_res_ud) {
+Error VariantWriter::write(const Variant &p_variant, StoreStringFunc p_store_string_func, void *p_store_string_ud, EncodeResourceFunc p_encode_res_func, void *p_encode_res_ud, int recursion_count) {
switch (p_variant.get_type()) {
case Variant::NIL: {
p_store_string_func(p_store_string_ud, "null");
@@ -1639,41 +1639,56 @@ Error VariantWriter::write(const Variant &p_variant, StoreStringFunc p_store_str
case Variant::DICTIONARY: {
Dictionary dict = p_variant;
-
- List<Variant> keys;
- dict.get_key_list(&keys);
- keys.sort();
-
- p_store_string_func(p_store_string_ud, "{\n");
- for (List<Variant>::Element *E = keys.front(); E; E = E->next()) {
- /*
- if (!_check_type(dict[E]))
- continue;
- */
- write(E->get(), p_store_string_func, p_store_string_ud, p_encode_res_func, p_encode_res_ud);
- p_store_string_func(p_store_string_ud, ": ");
- write(dict[E->get()], p_store_string_func, p_store_string_ud, p_encode_res_func, p_encode_res_ud);
- if (E->next()) {
- p_store_string_func(p_store_string_ud, ",\n");
- } else {
- p_store_string_func(p_store_string_ud, "\n");
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ p_store_string_func(p_store_string_ud, "{}");
+ } else {
+ recursion_count++;
+
+ List<Variant> keys;
+ dict.get_key_list(&keys);
+ keys.sort();
+
+ p_store_string_func(p_store_string_ud, "{\n");
+ for (List<Variant>::Element *E = keys.front(); E; E = E->next()) {
+ /*
+ if (!_check_type(dict[E->get()]))
+ continue;
+ */
+ write(E->get(), p_store_string_func, p_store_string_ud, p_encode_res_func, p_encode_res_ud, recursion_count);
+ p_store_string_func(p_store_string_ud, ": ");
+ write(dict[E->get()], p_store_string_func, p_store_string_ud, p_encode_res_func, p_encode_res_ud, recursion_count);
+ if (E->next()) {
+ p_store_string_func(p_store_string_ud, ",\n");
+ } else {
+ p_store_string_func(p_store_string_ud, "\n");
+ }
}
- }
- p_store_string_func(p_store_string_ud, "}");
+ p_store_string_func(p_store_string_ud, "}");
+ }
} break;
+
case Variant::ARRAY: {
- p_store_string_func(p_store_string_ud, "[");
- Array array = p_variant;
- int len = array.size();
- for (int i = 0; i < len; i++) {
- if (i > 0) {
- p_store_string_func(p_store_string_ud, ", ");
+ if (recursion_count > MAX_RECURSION) {
+ ERR_PRINT("Max recursion reached");
+ p_store_string_func(p_store_string_ud, "[]");
+ } else {
+ recursion_count++;
+
+ p_store_string_func(p_store_string_ud, "[");
+ Array array = p_variant;
+ int len = array.size();
+ for (int i = 0; i < len; i++) {
+ if (i > 0) {
+ p_store_string_func(p_store_string_ud, ", ");
+ }
+ write(array[i], p_store_string_func, p_store_string_ud, p_encode_res_func, p_encode_res_ud, recursion_count);
}
- write(array[i], p_store_string_func, p_store_string_ud, p_encode_res_func, p_encode_res_ud);
+
+ p_store_string_func(p_store_string_ud, "]");
}
- p_store_string_func(p_store_string_ud, "]");
} break;
diff --git a/core/variant/variant_parser.h b/core/variant/variant_parser.h
index 1ba26db6ed..2e4baa6fff 100644
--- a/core/variant/variant_parser.h
+++ b/core/variant/variant_parser.h
@@ -140,7 +140,7 @@ public:
typedef Error (*StoreStringFunc)(void *ud, const String &p_string);
typedef String (*EncodeResourceFunc)(void *ud, const RES &p_resource);
- static Error write(const Variant &p_variant, StoreStringFunc p_store_string_func, void *p_store_string_ud, EncodeResourceFunc p_encode_res_func, void *p_encode_res_ud);
+ static Error write(const Variant &p_variant, StoreStringFunc p_store_string_func, void *p_store_string_ud, EncodeResourceFunc p_encode_res_func, void *p_encode_res_ud, int recursion_count = 0);
static Error write_to_string(const Variant &p_variant, String &r_string, EncodeResourceFunc p_encode_res_func = nullptr, void *p_encode_res_ud = nullptr);
};
diff --git a/core/variant/variant_setget.cpp b/core/variant/variant_setget.cpp
index 4abb51ca7c..2530d77c62 100644
--- a/core/variant/variant_setget.cpp
+++ b/core/variant/variant_setget.cpp
@@ -1824,11 +1824,15 @@ Variant Variant::iter_get(const Variant &r_iter, bool &r_valid) const {
return Variant();
}
-Variant Variant::duplicate(bool deep) const {
+Variant Variant::duplicate(bool p_deep) const {
+ return recursive_duplicate(p_deep, 0);
+}
+
+Variant Variant::recursive_duplicate(bool p_deep, int recursion_count) const {
switch (type) {
case OBJECT: {
/* breaks stuff :(
- if (deep && !_get_obj().ref.is_null()) {
+ if (p_deep && !_get_obj().ref.is_null()) {
Ref<Resource> resource = _get_obj().ref;
if (resource.is_valid()) {
return resource->duplicate(true);
@@ -1838,9 +1842,9 @@ Variant Variant::duplicate(bool deep) const {
return *this;
} break;
case DICTIONARY:
- return operator Dictionary().duplicate(deep);
+ return operator Dictionary().recursive_duplicate(p_deep, recursion_count);
case ARRAY:
- return operator Array().duplicate(deep);
+ return operator Array().recursive_duplicate(p_deep, recursion_count);
case PACKED_BYTE_ARRAY:
return operator Vector<uint8_t>().duplicate();
case PACKED_INT32_ARRAY:
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml
index 4b710d5f12..ea49b6b634 100644
--- a/doc/classes/@GlobalScope.xml
+++ b/doc/classes/@GlobalScope.xml
@@ -14,6 +14,26 @@
<return type="Variant" />
<argument index="0" name="x" type="Variant" />
<description>
+ Returns the absolute value of a [Variant] parameter [code]x[/code] (i.e. non-negative value). Variant types [int], [float] (real), [Vector2], [Vector2i], [Vector3] and [Vector3i] are supported.
+ [codeblock]
+ var a = abs(-1)
+ # a is 1
+
+ var b = abs(-1.2)
+ # b is 1.2
+
+ var c = abs(Vector2(-3.5, -4))
+ # c is (3.5, 4)
+
+ var d = abs(Vector2i(-5, -6))
+ # d is (5, 6)
+
+ var e = abs(Vector3(-7, 8.5, -3.8))
+ # e is (7, 8.5, 3.8)
+
+ var f = abs(Vector3i(-7, -8, -9))
+ # f is (7, 8, 9)
+ [/codeblock]
</description>
</method>
<method name="absf">
@@ -118,6 +138,26 @@
<argument index="1" name="min" type="Variant" />
<argument index="2" name="max" type="Variant" />
<description>
+ Clamps the [Variant] [code]value[/code] and returns a value not less than [code]min[/code] and not more than [code]max[/code]. Variant types [int], [float] (real), [Vector2], [Vector2i], [Vector3] and [Vector3i] are supported.
+ [codeblock]
+ var a = clamp(-10, -1, 5)
+ # a is -1
+
+ var b = clamp(8.1, 0.9, 5.5)
+ # b is 5.5
+
+ var c = clamp(Vector2(-3.5, -4), Vector2(-3.2, -2), Vector2(2, 6.5))
+ # c is (-3.2, -2)
+
+ var d = clamp(Vector2i(7, 8), Vector2i(-3, -2), Vector2i(2, 6))
+ # d is (2, 6)
+
+ var e = clamp(Vector3(-7, 8.5, -3.8), Vector3(-3, -2, 5.4), Vector3(-2, 6, -4.1))
+ # e is (-3, -2, 5.4)
+
+ var f = clamp(Vector3i(-7, -8, -9), Vector3i(-1, 2, 3), Vector3i(-4, -5, -6))
+ # f is (-4, -5, -6)
+ [/codeblock]
</description>
</method>
<method name="clampf">
@@ -347,6 +387,7 @@
<return type="bool" />
<argument index="0" name="id" type="int" />
<description>
+ Returns [code]true[/code] if the Object that corresponds to [code]instance_id[/code] is a valid object (e.g. has not been deleted from memory). All Objects have a unique instance ID.
</description>
</method>
<method name="is_instance_valid">
@@ -750,6 +791,14 @@
<return type="Variant" />
<argument index="0" name="x" type="Variant" />
<description>
+ Returns the sign of [code]x[/code] as same type of [Variant] as [code]x[/code] with each component being -1, 0 and 1 for each negative, zero and positive values respectivelu. Variant types [int], [float] (real), [Vector2], [Vector2i], [Vector3] and [Vector3i] are supported.
+ [codeblock]
+ sign(-6.0) # Returns -1
+ sign(0.0) # Returns 0
+ sign(6.0) # Returns 1
+
+ sign(Vector3(-6.0, 0.0, 6.0) # Returns (-1, 0, 1)
+ [/codeblock]
</description>
</method>
<method name="signf">
@@ -2453,7 +2502,7 @@
<constant name="PROPERTY_USAGE_DEFAULT_INTL" value="71" enum="PropertyUsageFlags">
Default usage for translatable strings (storage, editor, network and internationalized).
</constant>
- <constant name="PROPERTY_USAGE_NOEDITOR" value="5" enum="PropertyUsageFlags">
+ <constant name="PROPERTY_USAGE_NO_EDITOR" value="5" enum="PropertyUsageFlags">
Default usage but without showing the property in the editor (storage, network).
</constant>
<constant name="METHOD_FLAG_NORMAL" value="1" enum="MethodFlags">
diff --git a/doc/classes/AABB.xml b/doc/classes/AABB.xml
index d7b7a309ad..f353cd19b8 100644
--- a/doc/classes/AABB.xml
+++ b/doc/classes/AABB.xml
@@ -57,12 +57,6 @@
Returns this [AABB] expanded to include a given point.
</description>
</method>
- <method name="get_area" qualifiers="const">
- <return type="float" />
- <description>
- Returns the volume of the [AABB].
- </description>
- </method>
<method name="get_center" qualifiers="const">
<return type="Vector3" />
<description>
@@ -119,6 +113,12 @@
Returns the support point in a given direction. This is useful for collision detection algorithms.
</description>
</method>
+ <method name="get_volume" qualifiers="const">
+ <return type="float" />
+ <description>
+ Returns the volume of the [AABB].
+ </description>
+ </method>
<method name="grow" qualifiers="const">
<return type="AABB" />
<argument index="0" name="by" type="float" />
@@ -126,16 +126,16 @@
Returns a copy of the [AABB] grown a given amount of units towards all the sides.
</description>
</method>
- <method name="has_no_area" qualifiers="const">
+ <method name="has_no_surface" qualifiers="const">
<return type="bool" />
<description>
- Returns [code]true[/code] if the [AABB] is flat or empty.
+ Returns [code]true[/code] if the [AABB] is empty.
</description>
</method>
- <method name="has_no_surface" qualifiers="const">
+ <method name="has_no_volume" qualifiers="const">
<return type="bool" />
<description>
- Returns [code]true[/code] if the [AABB] is empty.
+ Returns [code]true[/code] if the [AABB] is flat or empty.
</description>
</method>
<method name="has_point" qualifiers="const">
diff --git a/doc/classes/Area3D.xml b/doc/classes/Area3D.xml
index 14225c52a4..571fd8cad3 100644
--- a/doc/classes/Area3D.xml
+++ b/doc/classes/Area3D.xml
@@ -138,7 +138,7 @@
<argument index="2" name="area_shape_index" type="int" />
<argument index="3" name="local_shape_index" type="int" />
<description>
- Emitted when one of another Area3D's [Shape3D]s enters one of this Area3D's [Shape3D]s. Requires [member monitoring] to be set to [code]true[/code].
+ Emitted when one of another Area3D's [Shape3D]s exits one of this Area3D's [Shape3D]s. Requires [member monitoring] to be set to [code]true[/code].
[code]area_rid[/code] the [RID] of the other Area3D's [CollisionObject3D] used by the [PhysicsServer3D].
[code]area[/code] the other Area3D.
[code]area_shape_index[/code] the index of the [Shape3D] of the other Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]area.shape_owner_get_owner(area_shape_index)[/code].
diff --git a/doc/classes/BitMap.xml b/doc/classes/BitMap.xml
index 0997896260..dc655ee3b0 100644
--- a/doc/classes/BitMap.xml
+++ b/doc/classes/BitMap.xml
@@ -48,7 +48,7 @@
<argument index="0" name="pixels" type="int" />
<argument index="1" name="rect" type="Rect2" />
<description>
- Applies morphological dilation to the bitmap. The first argument is the dilation amount, Rect2 is the area where the dilation will be applied.
+ Applies morphological dilation or erosion to the bitmap. If [code]pixels[/code] is positive, dilation is applied to the bitmap. If [code]pixels[/code] is negative, erosion is applied to the bitmap. [code]rect[/code] defines the area where the morphological operation is applied. Pixels located outside the [code]rect[/code] are unaffected by [method grow_mask].
</description>
</method>
<method name="opaque_to_polygons" qualifiers="const">
diff --git a/doc/classes/CPUParticles3D.xml b/doc/classes/CPUParticles3D.xml
index fe8c354427..ad491465f2 100644
--- a/doc/classes/CPUParticles3D.xml
+++ b/doc/classes/CPUParticles3D.xml
@@ -126,7 +126,7 @@
Each particle's initial color. To have particle display color in a [BaseMaterial3D] make sure to set [member BaseMaterial3D.vertex_color_use_as_albedo] to [code]true[/code].
</member>
<member name="color_ramp" type="Gradient" setter="set_color_ramp" getter="get_color_ramp">
- Each particle's color will vary along this [GradientTexture] over its lifetime (multiplied with [member color]).
+ Each particle's color will vary along this [GradientTexture1D] over its lifetime (multiplied with [member color]).
</member>
<member name="damping_curve" type="Curve" setter="set_param_curve" getter="get_param_curve">
Damping will vary along this [Curve].
diff --git a/doc/classes/CodeEdit.xml b/doc/classes/CodeEdit.xml
index bd1f3af436..bb1a4a79f0 100644
--- a/doc/classes/CodeEdit.xml
+++ b/doc/classes/CodeEdit.xml
@@ -494,7 +494,6 @@
<member name="line_length_guidelines" type="int[]" setter="set_line_length_guidelines" getter="get_line_length_guidelines" default="[]">
Draws vertical lines at the provided columns. The first entry is considered a main hard guideline and is draw more prominently
</member>
- <member name="structured_text_bidi_override_options" type="Array" setter="set_structured_text_bidi_override_options" getter="get_structured_text_bidi_override_options" override="true" default="[]" />
<member name="symbol_lookup_on_click" type="bool" setter="set_symbol_lookup_on_click_enabled" getter="is_symbol_lookup_on_click_enabled" default="false">
Set when a validated word from [signal symbol_validate] is clicked, the [signal symbol_lookup] should be emitted.
</member>
diff --git a/doc/classes/EditorProperty.xml b/doc/classes/EditorProperty.xml
index 5f342e6dc2..5ae034c3ba 100644
--- a/doc/classes/EditorProperty.xml
+++ b/doc/classes/EditorProperty.xml
@@ -110,7 +110,7 @@
</signal>
<signal name="property_checked">
<argument index="0" name="property" type="StringName" />
- <argument index="1" name="bool" type="String" />
+ <argument index="1" name="checked" type="bool" />
<description>
Emitted when a property was checked. Used internally.
</description>
@@ -134,6 +134,14 @@
Emit it if you want to key a property with a single value.
</description>
</signal>
+ <signal name="property_pinned">
+ <argument index="0" name="property" type="StringName" />
+ <argument index="1" name="pinned" type="bool" />
+ <description>
+ Emit it if you want to mark (or unmark) the value of a property for being saved regardless of being equal to the default value.
+ The default value is the one the property will get when the node is just instantiated and can come from an ancestor scene in the inheritance/instancing chain, a script or a builtin class.
+ </description>
+ </signal>
<signal name="resource_selected">
<argument index="0" name="path" type="String" />
<argument index="1" name="resource" type="Resource" />
diff --git a/doc/classes/EditorResourcePicker.xml b/doc/classes/EditorResourcePicker.xml
index 9c490cbb3e..b26b6f9527 100644
--- a/doc/classes/EditorResourcePicker.xml
+++ b/doc/classes/EditorResourcePicker.xml
@@ -62,8 +62,9 @@
</signal>
<signal name="resource_selected">
<argument index="0" name="resource" type="Resource" />
+ <argument index="1" name="edit" type="bool" />
<description>
- Emitted when the resource value was set and user clicked to edit it.
+ Emitted when the resource value was set and user clicked to edit it. When [code]edit[/code] is [code]true[/code], the signal was caused by the context menu "Edit" option.
</description>
</signal>
</signals>
diff --git a/doc/classes/Environment.xml b/doc/classes/Environment.xml
index 88c4689b5f..4ea7f67eed 100644
--- a/doc/classes/Environment.xml
+++ b/doc/classes/Environment.xml
@@ -39,7 +39,7 @@
The global brightness value of the rendered scene. Effective only if [code]adjustment_enabled[/code] is [code]true[/code].
</member>
<member name="adjustment_color_correction" type="Texture" setter="set_adjustment_color_correction" getter="get_adjustment_color_correction">
- The [Texture2D] or [Texture3D] lookup table (LUT) to use for the built-in post-process color grading. Can use a [GradientTexture] for a 1-dimensional LUT, or a [Texture3D] for a more complex LUT. Effective only if [code]adjustment_enabled[/code] is [code]true[/code].
+ The [Texture2D] or [Texture3D] lookup table (LUT) to use for the built-in post-process color grading. Can use a [GradientTexture1D] for a 1-dimensional LUT, or a [Texture3D] for a more complex LUT. Effective only if [code]adjustment_enabled[/code] is [code]true[/code].
</member>
<member name="adjustment_contrast" type="float" setter="set_adjustment_contrast" getter="get_adjustment_contrast" default="1.0">
The global contrast value of the rendered scene (default value is 1). Effective only if [code]adjustment_enabled[/code] is [code]true[/code].
diff --git a/doc/classes/GradientTexture.xml b/doc/classes/GradientTexture1D.xml
index 0f0f0b1a37..223439956c 100644
--- a/doc/classes/GradientTexture.xml
+++ b/doc/classes/GradientTexture1D.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<class name="GradientTexture" inherits="Texture2D" version="4.0">
+<class name="GradientTexture1D" inherits="Texture2D" version="4.0">
<brief_description>
Gradient-filled texture.
</brief_description>
<description>
- 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]).
+ GradientTexture1D 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]).
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/InputEventScreenDrag.xml b/doc/classes/InputEventScreenDrag.xml
index 373936225b..f86b5f3b4d 100644
--- a/doc/classes/InputEventScreenDrag.xml
+++ b/doc/classes/InputEventScreenDrag.xml
@@ -17,7 +17,7 @@
The drag position.
</member>
<member name="relative" type="Vector2" setter="set_relative" getter="get_relative" default="Vector2(0, 0)">
- The drag position relative to its start position.
+ The drag position relative to the previous position (position at the last frame).
</member>
<member name="speed" type="Vector2" setter="set_speed" getter="get_speed" default="Vector2(0, 0)">
The drag speed.
diff --git a/doc/classes/MenuButton.xml b/doc/classes/MenuButton.xml
index 41ba1fcd0f..7f9d3d96dc 100644
--- a/doc/classes/MenuButton.xml
+++ b/doc/classes/MenuButton.xml
@@ -30,6 +30,9 @@
<member name="action_mode" type="int" setter="set_action_mode" getter="get_action_mode" override="true" enum="BaseButton.ActionMode" default="0" />
<member name="flat" type="bool" setter="set_flat" getter="is_flat" override="true" default="true" />
<member name="focus_mode" type="int" setter="set_focus_mode" getter="get_focus_mode" override="true" enum="Control.FocusMode" default="0" />
+ <member name="items_count" type="int" setter="set_item_count" getter="get_item_count" default="0">
+ The number of items currently in the list.
+ </member>
<member name="switch_on_hover" type="bool" setter="set_switch_on_hover" getter="is_switch_on_hover" default="false">
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.
</member>
diff --git a/doc/classes/NavigationObstacle2D.xml b/doc/classes/NavigationObstacle2D.xml
index 462532d49a..b73d7f2bec 100644
--- a/doc/classes/NavigationObstacle2D.xml
+++ b/doc/classes/NavigationObstacle2D.xml
@@ -8,4 +8,12 @@
</description>
<tutorials>
</tutorials>
+ <members>
+ <member name="estimate_radius" type="bool" setter="set_estimate_radius" getter="is_radius_estimated" default="true">
+ Enables radius estimation algorithm which uses parent's collision shapes to determine the obstacle radius.
+ </member>
+ <member name="radius" type="float" setter="set_radius" getter="get_radius" default="1.0">
+ The radius of the agent. Used only if [member estimate_radius] is set to false.
+ </member>
+ </members>
</class>
diff --git a/doc/classes/NavigationObstacle3D.xml b/doc/classes/NavigationObstacle3D.xml
index c0cb7befef..c126c0430f 100644
--- a/doc/classes/NavigationObstacle3D.xml
+++ b/doc/classes/NavigationObstacle3D.xml
@@ -8,4 +8,12 @@
</description>
<tutorials>
</tutorials>
+ <members>
+ <member name="estimate_radius" type="bool" setter="set_estimate_radius" getter="is_radius_estimated" default="true">
+ Enables radius estimation algorithm which uses parent's collision shapes to determine the obstacle radius.
+ </member>
+ <member name="radius" type="float" setter="set_radius" getter="get_radius" default="1.0">
+ The radius of the agent. Used only if [member estimate_radius] is set to false.
+ </member>
+ </members>
</class>
diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml
index 03a3ac053d..f4d48f5db2 100644
--- a/doc/classes/OS.xml
+++ b/doc/classes/OS.xml
@@ -31,12 +31,21 @@
[b]Note:[/b] This method is implemented on Linux, macOS and Windows.
</description>
</method>
+ <method name="create_instance">
+ <return type="int" />
+ <argument index="0" name="arguments" type="PackedStringArray" />
+ <description>
+ Creates a new instance of Godot that runs independently. The [code]arguments[/code] are used in the given order and separated by a space.
+ If the process creation succeeds, the method will return the new process ID, which you can use to monitor the process (and potentially terminate it with [method kill]). If the process creation fails, the method will return [code]-1[/code].
+ [b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows.
+ </description>
+ </method>
<method name="create_process">
<return type="int" />
<argument index="0" name="path" type="String" />
<argument index="1" name="arguments" type="PackedStringArray" />
<description>
- Creates a new process that runs independently of Godot. It will not terminate if Godot terminates. The file specified in [code]path[/code] must exist and be executable. Platform path resolution will be used. The [code]arguments[/code] are used in the given order and separated by a space.
+ Creates a new process that runs independently of Godot. It will not terminate if Godot terminates. The path specified in [code]path[/code] must exist and be executable file or macOS .app bundle. Platform path resolution will be used. The [code]arguments[/code] are used in the given order and separated by a space.
If the process creation succeeds, the method will return the new process ID, which you can use to monitor the process (and potentially terminate it with [method kill]). If the process creation fails, the method will return [code]-1[/code].
For example, running another instance of the project:
[codeblocks]
@@ -49,7 +58,7 @@
[/codeblocks]
See [method execute] if you wish to run an external command and retrieve the results.
[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows.
- [b]Note:[/b] On macOS, sandboxed applications are limited to run only embedded helper executables, specified during export.
+ [b]Note:[/b] On macOS, sandboxed applications are limited to run only embedded helper executables, specified during export or system .app bundle, system .app bundles will ignore arguments.
</description>
</method>
<method name="delay_msec" qualifiers="const">
@@ -201,6 +210,7 @@
<return type="String" />
<description>
Returns the path to the current engine executable.
+ [b]Note:[/b] On macOS, always use [method create_instance] instead of relying on executable path.
</description>
</method>
<method name="get_granted_permissions" qualifiers="const">
diff --git a/doc/classes/PackedScene.xml b/doc/classes/PackedScene.xml
index 618123855f..d0579c6f6f 100644
--- a/doc/classes/PackedScene.xml
+++ b/doc/classes/PackedScene.xml
@@ -121,5 +121,9 @@
If passed to [method instantiate], provides local scene resources to the local scene. Only the main scene should receive the main edit state.
[b]Note:[/b] Only available in editor builds.
</constant>
+ <constant name="GEN_EDIT_STATE_MAIN_INHERITED" value="3" enum="GenEditState">
+ It's similar to [constant GEN_EDIT_STATE_MAIN], but for the case where the scene is being instantiated to be the base of another one.
+ [b]Note:[/b] Only available in editor builds.
+ </constant>
</constants>
</class>
diff --git a/doc/classes/ParticlesMaterial.xml b/doc/classes/ParticlesMaterial.xml
index 3b583f5c89..2cc0d8f2b0 100644
--- a/doc/classes/ParticlesMaterial.xml
+++ b/doc/classes/ParticlesMaterial.xml
@@ -128,7 +128,7 @@
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].
</member>
<member name="color_ramp" type="Texture2D" setter="set_color_ramp" getter="get_color_ramp">
- Each particle's color will vary along this [GradientTexture] over its lifetime (multiplied with [member color]).
+ Each particle's color will vary along this [GradientTexture1D] over its lifetime (multiplied with [member color]).
</member>
<member name="damping_curve" type="Texture2D" setter="set_param_texture" getter="get_param_texture">
Damping will vary along this [CurveTexture].
diff --git a/doc/classes/PhysicalBone3D.xml b/doc/classes/PhysicalBone3D.xml
index 710e96239b..a9963d59e8 100644
--- a/doc/classes/PhysicalBone3D.xml
+++ b/doc/classes/PhysicalBone3D.xml
@@ -37,8 +37,12 @@
</method>
</methods>
<members>
- <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="-1.0">
- Damps the body's rotation if greater than [code]0[/code].
+ <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="0.0">
+ Damps the body's rotation. By default, the body will use the [b]Default Angular Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] or any value override set by an [Area3D] the body is in. Depending on [member angular_damp_mode], you can set [member angular_damp] to be added to or to replace the body's damping value.
+ See [member ProjectSettings.physics/3d/default_angular_damp] for more details about damping.
+ </member>
+ <member name="angular_damp_mode" type="int" setter="set_angular_damp_mode" getter="get_angular_damp_mode" enum="PhysicalBone3D.DampMode" default="0">
+ Defines how [member angular_damp] is applied. See [enum DampMode] for possible values.
</member>
<member name="body_offset" type="Transform3D" setter="set_body_offset" getter="get_body_offset" default="Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)">
Sets the body's transform.
@@ -64,14 +68,24 @@
<member name="joint_type" type="int" setter="set_joint_type" getter="get_joint_type" enum="PhysicalBone3D.JointType" default="0">
Sets the joint type. See [enum JointType] for possible values.
</member>
- <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="-1.0">
- Damps the body's movement if greater than [code]0[/code].
+ <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="0.0">
+ Damps the body's movement. By default, the body will use the [b]Default Linear Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] or any value override set by an [Area3D] the body is in. Depending on [member linear_damp_mode], you can set [member linear_damp] to be added to or to replace the body's damping value.
+ See [member ProjectSettings.physics/3d/default_linear_damp] for more details about damping.
+ </member>
+ <member name="linear_damp_mode" type="int" setter="set_linear_damp_mode" getter="get_linear_damp_mode" enum="PhysicalBone3D.DampMode" default="0">
+ Defines how [member linear_damp] is applied. See [enum DampMode] for possible values.
</member>
<member name="mass" type="float" setter="set_mass" getter="get_mass" default="1.0">
The body's mass.
</member>
</members>
<constants>
+ <constant name="DAMP_MODE_COMBINE" value="0" enum="DampMode">
+ In this mode, the body's damping value is added to any value set in areas or the default value.
+ </constant>
+ <constant name="DAMP_MODE_REPLACE" value="1" enum="DampMode">
+ In this mode, the body's damping value replaces any value set in areas or the default value.
+ </constant>
<constant name="JOINT_TYPE_NONE" value="0" enum="JointType">
</constant>
<constant name="JOINT_TYPE_PIN" value="1" enum="JointType">
diff --git a/doc/classes/PhysicsDirectSpaceState2D.xml b/doc/classes/PhysicsDirectSpaceState2D.xml
index 887b382267..5892ef266f 100644
--- a/doc/classes/PhysicsDirectSpaceState2D.xml
+++ b/doc/classes/PhysicsDirectSpaceState2D.xml
@@ -13,7 +13,7 @@
<methods>
<method name="cast_motion">
<return type="Array" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters2D" />
<description>
Checks how far a [Shape2D] can move without colliding. All the parameters for the query, including the shape and the motion, are supplied through a [PhysicsShapeQueryParameters2D] object.
Returns an array with the safe and unsafe proportions (between 0 and 1) of the motion. The safe proportion is the maximum fraction of the motion that can be made without a collision. The unsafe proportion is the minimum fraction of the distance that must be moved for a collision. If no collision is detected a result of [code][1.0, 1.0][/code] will be returned.
@@ -22,7 +22,7 @@
</method>
<method name="collide_shape">
<return type="Array" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters2D" />
<argument index="1" name="max_results" type="int" default="32" />
<description>
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.
@@ -31,7 +31,7 @@
</method>
<method name="get_rest_info">
<return type="Dictionary" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters2D" />
<description>
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.
[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:
@@ -45,51 +45,23 @@
</method>
<method name="intersect_point">
<return type="Array" />
- <argument index="0" name="point" type="Vector2" />
+ <argument index="0" name="parameters" type="PhysicsPointQueryParameters2D" />
<argument index="1" name="max_results" type="int" default="32" />
- <argument index="2" name="exclude" type="Array" default="[]" />
- <argument index="3" name="collision_mask" type="int" default="4294967295" />
- <argument index="4" name="collide_with_bodies" type="bool" default="true" />
- <argument index="5" name="collide_with_areas" type="bool" default="false" />
<description>
- Checks whether a point is inside any solid shape. The shapes the point is inside of are returned in an array containing dictionaries with the following fields:
+ Checks whether a point is inside any solid shape. Position and other parameters are defined through [PhysicsPointQueryParameters2D]. The shapes the point is inside of are returned in an array containing dictionaries with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
- 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 detect (all layers by default), or booleans to determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, respectively.
- [b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in [code]Segments[/code] build mode are not solid shapes. Therefore, they will not be detected.
- </description>
- </method>
- <method name="intersect_point_on_canvas">
- <return type="Array" />
- <argument index="0" name="point" type="Vector2" />
- <argument index="1" name="canvas_instance_id" type="int" />
- <argument index="2" name="max_results" type="int" default="32" />
- <argument index="3" name="exclude" type="Array" default="[]" />
- <argument index="4" name="collision_mask" type="int" default="4294967295" />
- <argument index="5" name="collide_with_bodies" type="bool" default="true" />
- <argument index="6" name="collide_with_areas" type="bool" default="false" />
- <description>
- Checks whether a point is inside any solid shape, in a specific canvas layer given by [code]canvas_instance_id[/code]. The shapes the point is inside of are returned in an array containing dictionaries with the following fields:
- [code]collider[/code]: The colliding object.
- [code]collider_id[/code]: The colliding object's ID.
- [code]rid[/code]: The intersecting object's [RID].
- [code]shape[/code]: The shape index of the colliding shape.
- 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 detect (all layers by default), or booleans to determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, respectively.
+ The number of intersections can be limited with the [code]max_results[/code] parameter, to reduce the processing time.
[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in [code]Segments[/code] build mode are not solid shapes. Therefore, they will not be detected.
</description>
</method>
<method name="intersect_ray">
<return type="Dictionary" />
- <argument index="0" name="from" type="Vector2" />
- <argument index="1" name="to" type="Vector2" />
- <argument index="2" name="exclude" type="Array" default="[]" />
- <argument index="3" name="collision_mask" type="int" default="4294967295" />
- <argument index="4" name="collide_with_bodies" type="bool" default="true" />
- <argument index="5" name="collide_with_areas" type="bool" default="false" />
+ <argument index="0" name="parameters" type="PhysicsRayQueryParameters2D" />
<description>
- Intersects a ray in a given space. The returned object is a dictionary with the following fields:
+ Intersects a ray in a given space. Ray position and other parameters are defined through [PhysicsRayQueryParameters2D]. The returned object is a dictionary with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
[code]normal[/code]: The object's surface normal at the intersection point.
@@ -97,16 +69,14 @@
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
If the ray did not intersect anything, then an empty dictionary is returned instead.
- 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 detect (all layers by default), or booleans to determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, respectively.
</description>
</method>
<method name="intersect_shape">
<return type="Array" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters2D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters2D" />
<argument index="1" name="max_results" type="int" default="32" />
<description>
- Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters2D] object, against the space.
- [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:
+ Checks the intersections of a shape, given through a [PhysicsShapeQueryParameters2D] object, against the space. The intersected shapes are returned in an array containing dictionaries with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
[code]rid[/code]: The intersecting object's [RID].
diff --git a/doc/classes/PhysicsDirectSpaceState3D.xml b/doc/classes/PhysicsDirectSpaceState3D.xml
index 8c37072f29..6a7fe46518 100644
--- a/doc/classes/PhysicsDirectSpaceState3D.xml
+++ b/doc/classes/PhysicsDirectSpaceState3D.xml
@@ -13,8 +13,7 @@
<methods>
<method name="cast_motion">
<return type="Array" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D" />
- <argument index="1" name="motion" type="Vector3" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters3D" />
<description>
Checks how far a [Shape3D] can move without colliding. All the parameters for the query, including the shape, are supplied through a [PhysicsShapeQueryParameters3D] object.
Returns an array with the safe and unsafe proportions (between 0 and 1) of the motion. The safe proportion is the maximum fraction of the motion that can be made without a collision. The unsafe proportion is the minimum fraction of the distance that must be moved for a collision. If no collision is detected a result of [code][1.0, 1.0][/code] will be returned.
@@ -23,16 +22,17 @@
</method>
<method name="collide_shape">
<return type="Array" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters3D" />
<argument index="1" name="max_results" type="int" default="32" />
<description>
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.
Returned points are a list of pairs of contact points. For each pair the first one is in the shape passed in [PhysicsShapeQueryParameters3D] object, second one is in the collided shape from the physics space.
+ [b]Note:[/b] This method does not take into account the [code]motion[/code] property of the object.
</description>
</method>
<method name="get_rest_info">
<return type="Dictionary" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters3D" />
<description>
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:
[code]collider_id[/code]: The colliding object's ID.
@@ -42,18 +42,27 @@
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
If the shape did not intersect anything, then an empty dictionary is returned instead.
+ [b]Note:[/b] This method does not take into account the [code]motion[/code] property of the object.
+ </description>
+ </method>
+ <method name="intersect_point">
+ <return type="Array" />
+ <argument index="0" name="parameters" type="PhysicsPointQueryParameters3D" />
+ <argument index="1" name="max_results" type="int" default="32" />
+ <description>
+ Checks whether a point is inside any solid shape. Position and other parameters are defined through [PhysicsPointQueryParameters3D]. The shapes the point is inside of are returned in an array containing dictionaries with the following fields:
+ [code]collider[/code]: The colliding object.
+ [code]collider_id[/code]: The colliding object's ID.
+ [code]rid[/code]: The intersecting object's [RID].
+ [code]shape[/code]: The shape index of the colliding shape.
+ The number of intersections can be limited with the [code]max_results[/code] parameter, to reduce the processing time.
</description>
</method>
<method name="intersect_ray">
<return type="Dictionary" />
- <argument index="0" name="from" type="Vector3" />
- <argument index="1" name="to" type="Vector3" />
- <argument index="2" name="exclude" type="Array" default="[]" />
- <argument index="3" name="collision_mask" type="int" default="4294967295" />
- <argument index="4" name="collide_with_bodies" type="bool" default="true" />
- <argument index="5" name="collide_with_areas" type="bool" default="false" />
+ <argument index="0" name="parameters" type="PhysicsRayQueryParameters3D" />
<description>
- Intersects a ray in a given space. The returned object is a dictionary with the following fields:
+ Intersects a ray in a given space. Ray position and other parameters are defined through [PhysicsRayQueryParameters3D]. The returned object is a dictionary with the following fields:
[code]collider[/code]: The colliding object.
[code]collider_id[/code]: The colliding object's ID.
[code]normal[/code]: The object's surface normal at the intersection point.
@@ -61,12 +70,11 @@
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
If the ray did not intersect anything, then an empty dictionary is returned instead.
- 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 detect (all layers by default), or booleans to determine if the ray should collide with [PhysicsBody3D]s or [Area3D]s, respectively.
</description>
</method>
<method name="intersect_shape">
<return type="Array" />
- <argument index="0" name="shape" type="PhysicsShapeQueryParameters3D" />
+ <argument index="0" name="parameters" type="PhysicsShapeQueryParameters3D" />
<argument index="1" name="max_results" type="int" default="32" />
<description>
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:
@@ -75,6 +83,7 @@
[code]rid[/code]: The intersecting object's [RID].
[code]shape[/code]: The shape index of the colliding shape.
The number of intersections can be limited with the [code]max_results[/code] parameter, to reduce the processing time.
+ [b]Note:[/b] This method does not take into account the [code]motion[/code] property of the object.
</description>
</method>
</methods>
diff --git a/doc/classes/PhysicsPointQueryParameters2D.xml b/doc/classes/PhysicsPointQueryParameters2D.xml
new file mode 100644
index 0000000000..6acd83b101
--- /dev/null
+++ b/doc/classes/PhysicsPointQueryParameters2D.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicsPointQueryParameters2D" inherits="RefCounted" version="4.0">
+ <brief_description>
+ Parameters to be sent to a 2D point physics query.
+ </brief_description>
+ <description>
+ This class contains the position and other parameters to be used for [method PhysicsDirectSpaceState2D.intersect_point].
+ </description>
+ <tutorials>
+ </tutorials>
+ <members>
+ <member name="canvas_instance_id" type="int" setter="set_canvas_instance_id" getter="get_canvas_instance_id" default="0">
+ If different from [code]0[/code], restricts the query to a specific canvas layer specified by its instance id. See [method Object.get_instance_id].
+ </member>
+ <member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false">
+ If [code]true[/code], the query will take [Area2D]s into account.
+ </member>
+ <member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true">
+ If [code]true[/code], the query will take [PhysicsBody2D]s into account.
+ </member>
+ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295">
+ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information.
+ </member>
+ <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]">
+ The list of objects or object [RID]s that will be excluded from collisions.
+ </member>
+ <member name="position" type="Vector2" setter="set_position" getter="get_position" default="Vector2(0, 0)">
+ The position being queried for, in global coordinates.
+ </member>
+ </members>
+</class>
diff --git a/doc/classes/PhysicsPointQueryParameters3D.xml b/doc/classes/PhysicsPointQueryParameters3D.xml
new file mode 100644
index 0000000000..488f56872d
--- /dev/null
+++ b/doc/classes/PhysicsPointQueryParameters3D.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicsPointQueryParameters3D" inherits="RefCounted" version="4.0">
+ <brief_description>
+ Parameters to be sent to a 3D point physics query.
+ </brief_description>
+ <description>
+ This class contains the position and other parameters to be used for [method PhysicsDirectSpaceState3D.intersect_point].
+ </description>
+ <tutorials>
+ </tutorials>
+ <members>
+ <member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false">
+ If [code]true[/code], the query will take [Area3D]s into account.
+ </member>
+ <member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true">
+ If [code]true[/code], the query will take [PhysicsBody3D]s into account.
+ </member>
+ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295">
+ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information.
+ </member>
+ <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]">
+ The list of objects or object [RID]s that will be excluded from collisions.
+ </member>
+ <member name="position" type="Vector3" setter="set_position" getter="get_position" default="Vector3(0, 0, 0)">
+ The position being queried for, in global coordinates.
+ </member>
+ </members>
+</class>
diff --git a/doc/classes/PhysicsRayQueryParameters2D.xml b/doc/classes/PhysicsRayQueryParameters2D.xml
new file mode 100644
index 0000000000..0e99e47286
--- /dev/null
+++ b/doc/classes/PhysicsRayQueryParameters2D.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicsRayQueryParameters2D" inherits="RefCounted" version="4.0">
+ <brief_description>
+ Parameters to be sent to a 2D ray physics query.
+ </brief_description>
+ <description>
+ This class contains the ray position and other parameters to be used for [method PhysicsDirectSpaceState2D.intersect_ray].
+ </description>
+ <tutorials>
+ </tutorials>
+ <members>
+ <member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false">
+ If [code]true[/code], the query will take [Area2D]s into account.
+ </member>
+ <member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true">
+ If [code]true[/code], the query will take [PhysicsBody2D]s into account.
+ </member>
+ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295">
+ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information.
+ </member>
+ <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]">
+ The list of objects or object [RID]s that will be excluded from collisions.
+ </member>
+ <member name="from" type="Vector2" setter="set_from" getter="get_from" default="Vector2(0, 0)">
+ The starting point of the ray being queried for, in global coordinates.
+ </member>
+ <member name="to" type="Vector2" setter="set_to" getter="get_to" default="Vector2(0, 0)">
+ The ending point of the ray being queried for, in global coordinates.
+ </member>
+ </members>
+</class>
diff --git a/doc/classes/PhysicsRayQueryParameters3D.xml b/doc/classes/PhysicsRayQueryParameters3D.xml
new file mode 100644
index 0000000000..dbd09e5128
--- /dev/null
+++ b/doc/classes/PhysicsRayQueryParameters3D.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PhysicsRayQueryParameters3D" inherits="RefCounted" version="4.0">
+ <brief_description>
+ Parameters to be sent to a 3D ray physics query.
+ </brief_description>
+ <description>
+ This class contains the ray position and other parameters to be used for [method PhysicsDirectSpaceState3D.intersect_ray].
+ </description>
+ <tutorials>
+ </tutorials>
+ <members>
+ <member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false">
+ If [code]true[/code], the query will take [Area3D]s into account.
+ </member>
+ <member name="collide_with_bodies" type="bool" setter="set_collide_with_bodies" getter="is_collide_with_bodies_enabled" default="true">
+ If [code]true[/code], the query will take [PhysicsBody3D]s into account.
+ </member>
+ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295">
+ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=https://docs.godotengine.org/en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information.
+ </member>
+ <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]">
+ The list of objects or object [RID]s that will be excluded from collisions.
+ </member>
+ <member name="from" type="Vector3" setter="set_from" getter="get_from" default="Vector3(0, 0, 0)">
+ The starting point of the ray being queried for, in global coordinates.
+ </member>
+ <member name="to" type="Vector3" setter="set_to" getter="get_to" default="Vector3(0, 0, 0)">
+ The ending point of the ray being queried for, in global coordinates.
+ </member>
+ </members>
+</class>
diff --git a/doc/classes/PhysicsServer2D.xml b/doc/classes/PhysicsServer2D.xml
index d55feff829..e44bf71e8d 100644
--- a/doc/classes/PhysicsServer2D.xml
+++ b/doc/classes/PhysicsServer2D.xml
@@ -123,8 +123,7 @@
<method name="area_set_area_monitor_callback">
<return type="void" />
<argument index="0" name="area" type="RID" />
- <argument index="1" name="receiver" type="Object" />
- <argument index="2" name="method" type="StringName" />
+ <argument index="1" name="callback" type="Callable" />
<description>
</description>
</method>
@@ -147,8 +146,7 @@
<method name="area_set_monitor_callback">
<return type="void" />
<argument index="0" name="area" type="RID" />
- <argument index="1" name="receiver" type="Object" />
- <argument index="2" name="method" type="StringName" />
+ <argument index="1" name="callback" type="Callable" />
<description>
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:
1: [constant AREA_BODY_ADDED] or [constant AREA_BODY_REMOVED], depending on whether the object entered or exited the area.
@@ -926,15 +924,27 @@
<constant name="BODY_PARAM_GRAVITY_SCALE" value="5" enum="BodyParameter">
Constant to set/get a body's gravity multiplier.
</constant>
- <constant name="BODY_PARAM_LINEAR_DAMP" value="6" enum="BodyParameter">
+ <constant name="BODY_PARAM_LINEAR_DAMP_MODE" value="6" enum="BodyParameter">
+ Constant to set/get a body's linear dampening mode. See [enum BodyDampMode] for possible values.
+ </constant>
+ <constant name="BODY_PARAM_ANGULAR_DAMP_MODE" value="7" enum="BodyParameter">
+ Constant to set/get a body's angular dampening mode. See [enum BodyDampMode] for possible values.
+ </constant>
+ <constant name="BODY_PARAM_LINEAR_DAMP" value="8" enum="BodyParameter">
Constant to set/get a body's linear dampening factor.
</constant>
- <constant name="BODY_PARAM_ANGULAR_DAMP" value="7" enum="BodyParameter">
+ <constant name="BODY_PARAM_ANGULAR_DAMP" value="9" enum="BodyParameter">
Constant to set/get a body's angular dampening factor.
</constant>
- <constant name="BODY_PARAM_MAX" value="8" enum="BodyParameter">
+ <constant name="BODY_PARAM_MAX" value="10" enum="BodyParameter">
Represents the size of the [enum BodyParameter] enum.
</constant>
+ <constant name="BODY_DAMP_MODE_COMBINE" value="0" enum="BodyDampMode">
+ The body's damping value is added to any value set in areas or the default value.
+ </constant>
+ <constant name="BODY_DAMP_MODE_REPLACE" value="1" enum="BodyDampMode">
+ The body's damping value replaces any value set in areas or the default value.
+ </constant>
<constant name="BODY_STATE_TRANSFORM" value="0" enum="BodyState">
Constant to set/get the current transform matrix of the body.
</constant>
diff --git a/doc/classes/PhysicsServer3D.xml b/doc/classes/PhysicsServer3D.xml
index 0e32d1defa..0c34cf8092 100644
--- a/doc/classes/PhysicsServer3D.xml
+++ b/doc/classes/PhysicsServer3D.xml
@@ -110,8 +110,7 @@
<method name="area_set_area_monitor_callback">
<return type="void" />
<argument index="0" name="area" type="RID" />
- <argument index="1" name="receiver" type="Object" />
- <argument index="2" name="method" type="StringName" />
+ <argument index="1" name="callback" type="Callable" />
<description>
</description>
</method>
@@ -134,8 +133,7 @@
<method name="area_set_monitor_callback">
<return type="void" />
<argument index="0" name="area" type="RID" />
- <argument index="1" name="receiver" type="Object" />
- <argument index="2" name="method" type="StringName" />
+ <argument index="1" name="callback" type="Callable" />
<description>
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:
1: [constant AREA_BODY_ADDED] or [constant AREA_BODY_REMOVED], depending on whether the object entered or exited the area.
@@ -1294,15 +1292,27 @@
<constant name="BODY_PARAM_GRAVITY_SCALE" value="5" enum="BodyParameter">
Constant to set/get a body's gravity multiplier.
</constant>
- <constant name="BODY_PARAM_LINEAR_DAMP" value="6" enum="BodyParameter">
+ <constant name="BODY_PARAM_LINEAR_DAMP_MODE" value="6" enum="BodyParameter">
+ Constant to set/get a body's linear dampening mode. See [enum BodyDampMode] for possible values.
+ </constant>
+ <constant name="BODY_PARAM_ANGULAR_DAMP_MODE" value="7" enum="BodyParameter">
+ Constant to set/get a body's angular dampening mode. See [enum BodyDampMode] for possible values.
+ </constant>
+ <constant name="BODY_PARAM_LINEAR_DAMP" value="8" enum="BodyParameter">
Constant to set/get a body's linear dampening factor.
</constant>
- <constant name="BODY_PARAM_ANGULAR_DAMP" value="7" enum="BodyParameter">
+ <constant name="BODY_PARAM_ANGULAR_DAMP" value="9" enum="BodyParameter">
Constant to set/get a body's angular dampening factor.
</constant>
- <constant name="BODY_PARAM_MAX" value="8" enum="BodyParameter">
+ <constant name="BODY_PARAM_MAX" value="10" enum="BodyParameter">
Represents the size of the [enum BodyParameter] enum.
</constant>
+ <constant name="BODY_DAMP_MODE_COMBINE" value="0" enum="BodyDampMode">
+ The body's damping value is added to any value set in areas or the default value.
+ </constant>
+ <constant name="BODY_DAMP_MODE_REPLACE" value="1" enum="BodyDampMode">
+ The body's damping value replaces any value set in areas or the default value.
+ </constant>
<constant name="BODY_STATE_TRANSFORM" value="0" enum="BodyState">
Constant to set/get the current transform matrix of the body.
</constant>
diff --git a/doc/classes/PhysicsShapeQueryParameters2D.xml b/doc/classes/PhysicsShapeQueryParameters2D.xml
index 6035b662ea..abd19f1326 100644
--- a/doc/classes/PhysicsShapeQueryParameters2D.xml
+++ b/doc/classes/PhysicsShapeQueryParameters2D.xml
@@ -4,7 +4,7 @@
Parameters to be sent to a 2D shape physics query.
</brief_description>
<description>
- This class contains the shape and other parameters for 2D intersection/collision queries.
+ This class contains the shape and other parameters for [PhysicsDirectSpaceState2D] intersection/collision queries.
</description>
<tutorials>
</tutorials>
diff --git a/doc/classes/PhysicsShapeQueryParameters3D.xml b/doc/classes/PhysicsShapeQueryParameters3D.xml
index 1a289ff9d0..2dffd5347a 100644
--- a/doc/classes/PhysicsShapeQueryParameters3D.xml
+++ b/doc/classes/PhysicsShapeQueryParameters3D.xml
@@ -4,7 +4,7 @@
Parameters to be sent to a 3D shape physics query.
</brief_description>
<description>
- This class contains the shape and other parameters for 3D intersection/collision queries.
+ This class contains the shape and other parameters for [PhysicsDirectSpaceState3D] intersection/collision queries.
</description>
<tutorials>
</tutorials>
@@ -24,6 +24,9 @@
<member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0">
The collision margin for the shape.
</member>
+ <member name="motion" type="Vector3" setter="set_motion" getter="get_motion" default="Vector3(0, 0, 0)">
+ The motion of the shape being queried for.
+ </member>
<member name="shape" type="Resource" setter="set_shape" getter="get_shape">
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].
</member>
diff --git a/doc/classes/PopupMenu.xml b/doc/classes/PopupMenu.xml
index 2208c12e56..044325afbe 100644
--- a/doc/classes/PopupMenu.xml
+++ b/doc/classes/PopupMenu.xml
@@ -199,12 +199,6 @@
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.
</description>
</method>
- <method name="get_item_count" qualifiers="const">
- <return type="int" />
- <description>
- Returns the number of items in the [PopupMenu].
- </description>
- </method>
<method name="get_item_icon" qualifiers="const">
<return type="Texture2D" />
<argument index="0" name="idx" type="int" />
@@ -511,6 +505,9 @@
<member name="hide_on_state_item_selection" type="bool" setter="set_hide_on_state_item_selection" getter="is_hide_on_state_item_selection" default="false">
If [code]true[/code], hides the [PopupMenu] when a state item is selected.
</member>
+ <member name="items_count" type="int" setter="set_item_count" getter="get_item_count" default="0">
+ The number of items currently in the list.
+ </member>
<member name="submenu_popup_delay" type="float" setter="set_submenu_popup_delay" getter="get_submenu_popup_delay" default="0.3">
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.
</member>
diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml
index 5563695811..30409814d2 100644
--- a/doc/classes/ProjectSettings.xml
+++ b/doc/classes/ProjectSettings.xml
@@ -1557,8 +1557,9 @@
<member name="rendering/driver/depth_prepass/enable" type="bool" setter="" getter="" default="true">
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.
</member>
- <member name="rendering/driver/driver_name" type="String" setter="" getter="" default="&quot;Vulkan&quot;">
- The video driver to use (currently only "Vulkan" is implemented).
+ <member name="rendering/driver/driver_name" type="String" setter="" getter="" default="&quot;vulkan&quot;">
+ The video driver to use.
+ [b]Note:[/b] OpenGL support is currently incomplete. Only basic 2D rendering is supported, and single-window mode is required for correct operation.
[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--rendering-driver[/code] command line argument.
[b]FIXME:[/b] No longer valid after DisplayServer split:
In such cases, this property is not updated, so use [code]OS.get_current_video_driver[/code] to query it at run-time.
diff --git a/doc/classes/RenderingServer.xml b/doc/classes/RenderingServer.xml
index 86e66a5738..68b79ff749 100644
--- a/doc/classes/RenderingServer.xml
+++ b/doc/classes/RenderingServer.xml
@@ -2575,12 +2575,9 @@
</method>
<method name="request_frame_drawn_callback">
<return type="void" />
- <argument index="0" name="where" type="Object" />
- <argument index="1" name="method" type="StringName" />
- <argument index="2" name="userdata" type="Variant" />
+ <argument index="0" name="callable" type="Callable" />
<description>
- Schedules a callback to the corresponding named [code]method[/code] on [code]where[/code] after a frame has been drawn.
- The callback method must use only 1 argument which will be called with [code]userdata[/code].
+ Schedules a callback to the given callable after a frame has been drawn.
</description>
</method>
<method name="scenario_create">
diff --git a/doc/classes/RigidDynamicBody2D.xml b/doc/classes/RigidDynamicBody2D.xml
index f503884192..b8680b99b3 100644
--- a/doc/classes/RigidDynamicBody2D.xml
+++ b/doc/classes/RigidDynamicBody2D.xml
@@ -82,10 +82,13 @@
</method>
</methods>
<members>
- <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="-1.0">
- 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 &gt; Project Settings &gt; Physics &gt; 2d[/b].
+ <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="0.0">
+ Damps the body's rotation. By default, the body will use the [b]Default Angular Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 2d[/b] or any value override set by an [Area2D] the body is in. Depending on [member angular_damp_mode], you can set [member angular_damp] to be added to or to replace the body's damping value.
See [member ProjectSettings.physics/2d/default_angular_damp] for more details about damping.
</member>
+ <member name="angular_damp_mode" type="int" setter="set_angular_damp_mode" getter="get_angular_damp_mode" enum="RigidDynamicBody2D.DampMode" default="0">
+ Defines how [member angular_damp] is applied. See [enum DampMode] for possible values.
+ </member>
<member name="angular_velocity" type="float" setter="set_angular_velocity" getter="get_angular_velocity" default="0.0">
The body's rotational velocity.
</member>
@@ -135,10 +138,13 @@
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 property allows you to set a custom value.
If set to [code]0[/code], inertia is automatically computed (default value).
</member>
- <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="-1.0">
- Damps the body's [member linear_velocity]. If [code]-1[/code], the body will use the [b]Default Linear Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 2d[/b].
+ <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="0.0">
+ Damps the body's movement. By default, the body will use the [b]Default Linear Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 2d[/b] or any value override set by an [Area2D] the body is in. Depending on [member linear_damp_mode], you can set [member linear_damp] to be added to or to replace the body's damping value.
See [member ProjectSettings.physics/2d/default_linear_damp] for more details about damping.
</member>
+ <member name="linear_damp_mode" type="int" setter="set_linear_damp_mode" getter="get_linear_damp_mode" enum="RigidDynamicBody2D.DampMode" default="0">
+ Defines how [member linear_damp] is applied. See [enum DampMode] for possible values.
+ </member>
<member name="linear_velocity" type="Vector2" setter="set_linear_velocity" getter="get_linear_velocity" default="Vector2(0, 0)">
The body's linear velocity.
</member>
@@ -217,6 +223,12 @@
<constant name="CENTER_OF_MASS_MODE_CUSTOM" value="1" enum="CenterOfMassMode">
In this mode, the body's center of mass is set through [member center_of_mass]. Defaults to the body's origin position.
</constant>
+ <constant name="DAMP_MODE_COMBINE" value="0" enum="DampMode">
+ In this mode, the body's damping value is added to any value set in areas or the default value.
+ </constant>
+ <constant name="DAMP_MODE_REPLACE" value="1" enum="DampMode">
+ In this mode, the body's damping value replaces any value set in areas or the default value.
+ </constant>
<constant name="CCD_MODE_DISABLED" value="0" enum="CCDMode">
Continuous collision detection disabled. This is the fastest way to detect body collisions, but can miss small, fast-moving objects.
</constant>
diff --git a/doc/classes/RigidDynamicBody3D.xml b/doc/classes/RigidDynamicBody3D.xml
index 6c8d190704..ba9acdf4bf 100644
--- a/doc/classes/RigidDynamicBody3D.xml
+++ b/doc/classes/RigidDynamicBody3D.xml
@@ -91,10 +91,13 @@
</method>
</methods>
<members>
- <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="-1.0">
- Damps RigidDynamicBody3D's rotational forces.
+ <member name="angular_damp" type="float" setter="set_angular_damp" getter="get_angular_damp" default="0.0">
+ Damps the body's rotation. By default, the body will use the [b]Default Angular Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] or any value override set by an [Area3D] the body is in. Depending on [member angular_damp_mode], you can set [member angular_damp] to be added to or to replace the body's damping value.
See [member ProjectSettings.physics/3d/default_angular_damp] for more details about damping.
</member>
+ <member name="angular_damp_mode" type="int" setter="set_angular_damp_mode" getter="get_angular_damp_mode" enum="RigidDynamicBody3D.DampMode" default="0">
+ Defines how [member angular_damp] is applied. See [enum DampMode] for possible values.
+ </member>
<member name="angular_velocity" type="Vector3" setter="set_angular_velocity" getter="get_angular_velocity" default="Vector3(0, 0, 0)">
RigidDynamicBody3D's rotational velocity.
</member>
@@ -138,10 +141,13 @@
The body's moment of inertia. This is like mass, but for rotation: it determines how much torque it takes to rotate the body on each axis. The moment of inertia is usually computed automatically from the mass and the shapes, but this property allows you to set a custom value.
If set to [code]Vector3.ZERO[/code], inertia is automatically computed (default value).
</member>
- <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="-1.0">
- 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.
+ <member name="linear_damp" type="float" setter="set_linear_damp" getter="get_linear_damp" default="0.0">
+ Damps the body's movement. By default, the body will use the [b]Default Linear Damp[/b] in [b]Project &gt; Project Settings &gt; Physics &gt; 3d[/b] or any value override set by an [Area3D] the body is in. Depending on [member linear_damp_mode], you can set [member linear_damp] to be added to or to replace the body's damping value.
See [member ProjectSettings.physics/3d/default_linear_damp] for more details about damping.
</member>
+ <member name="linear_damp_mode" type="int" setter="set_linear_damp_mode" getter="get_linear_damp_mode" enum="RigidDynamicBody3D.DampMode" default="0">
+ Defines how [member linear_damp] is applied. See [enum DampMode] for possible values.
+ </member>
<member name="linear_velocity" type="Vector3" setter="set_linear_velocity" getter="get_linear_velocity" default="Vector3(0, 0, 0)">
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.
</member>
@@ -222,5 +228,11 @@
<constant name="CENTER_OF_MASS_MODE_CUSTOM" value="1" enum="CenterOfMassMode">
In this mode, the body's center of mass is set through [member center_of_mass]. Defaults to the body's origin position.
</constant>
+ <constant name="DAMP_MODE_COMBINE" value="0" enum="DampMode">
+ In this mode, the body's damping value is added to any value set in areas or the default value.
+ </constant>
+ <constant name="DAMP_MODE_REPLACE" value="1" enum="DampMode">
+ In this mode, the body's damping value replaces any value set in areas or the default value.
+ </constant>
</constants>
</class>
diff --git a/doc/classes/SceneState.xml b/doc/classes/SceneState.xml
index 1c3bac9270..9a22b24825 100644
--- a/doc/classes/SceneState.xml
+++ b/doc/classes/SceneState.xml
@@ -168,5 +168,9 @@
If passed to [method PackedScene.instantiate], provides local scene resources to the local scene. Only the main scene should receive the main edit state.
[b]Note:[/b] Only available in editor builds.
</constant>
+ <constant name="GEN_EDIT_STATE_MAIN_INHERITED" value="3" enum="GenEditState">
+ If passed to [method PackedScene.instantiate], it's similar to [constant GEN_EDIT_STATE_MAIN], but for the case where the scene is being instantiated to be the base of another one.
+ [b]Note:[/b] Only available in editor builds.
+ </constant>
</constants>
</class>
diff --git a/doc/classes/String.xml b/doc/classes/String.xml
index 1190d90190..a58bfd5c15 100644
--- a/doc/classes/String.xml
+++ b/doc/classes/String.xml
@@ -202,6 +202,19 @@
If the string is a valid file path, returns the filename.
</description>
</method>
+ <method name="get_slice" qualifiers="const">
+ <return type="String" />
+ <argument index="0" name="delimiter" type="String" />
+ <argument index="1" name="slice" type="int" />
+ <description>
+ Splits a string using a [code]delimiter[/code] and returns a substring at index [code]slice[/code]. Returns an empty string if the index doesn't exist.
+ This is a more performant alternative to [method split] for cases when you need only one element from the array at a fixed index.
+ Example:
+ [codeblock]
+ print("i/am/example/string".get_slice("/", 2)) # Prints 'example'.
+ [/codeblock]
+ </description>
+ </method>
<method name="hash" qualifiers="const">
<return type="int" />
<description>
@@ -602,6 +615,7 @@
<description>
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.
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.
+ If you need only one element from the array at a specific index, [method get_slice] is a more performant option.
Example:
[codeblocks]
[gdscript]
diff --git a/doc/classes/TileMapPattern.xml b/doc/classes/TileMapPattern.xml
index 4c46625423..ab7c95bb7b 100644
--- a/doc/classes/TileMapPattern.xml
+++ b/doc/classes/TileMapPattern.xml
@@ -59,7 +59,7 @@
<method name="remove_cell">
<return type="void" />
<argument index="0" name="coords" type="Vector2i" />
- <argument index="1" name="arg1" type="bool" />
+ <argument index="1" name="update_size" type="bool" />
<description>
Remove the cell at the given coordinates.
</description>
diff --git a/doc/classes/Tween.xml b/doc/classes/Tween.xml
index 488a5aa340..05c83f0423 100644
--- a/doc/classes/Tween.xml
+++ b/doc/classes/Tween.xml
@@ -74,17 +74,17 @@
</method>
<method name="interpolate_value">
<return type="Variant" />
- <argument index="0" name="trans_type" type="Variant" />
- <argument index="1" name="ease_type" type="Variant" />
+ <argument index="0" name="initial_value" type="Variant" />
+ <argument index="1" name="delta_value" type="Variant" />
<argument index="2" name="elapsed_time" type="float" />
- <argument index="3" name="initial_value" type="float" />
- <argument index="4" name="delta_value" type="int" enum="Tween.TransitionType" />
- <argument index="5" name="duration" type="int" enum="Tween.EaseType" />
+ <argument index="3" name="duration" type="float" />
+ <argument index="4" name="trans_type" type="int" enum="Tween.TransitionType" />
+ <argument index="5" name="ease_type" type="int" enum="Tween.EaseType" />
<description>
This method can be used for manual interpolation of a value, when you don't want [Tween] to do animating for you. It's similar to [method @GlobalScope.lerp], but with support for custom transition and easing.
- [code]elapsed_time[/code] is the time in seconds that passed after the interping started and it's used to control the position of the interpolation. E.g. when it's equal to half of the [code]duration[/code], the interpolated value will be halfway between initial and final values. This value can also be greater than [code]duration[/code] or lower than 0, which will extrapolate the value.
[code]initial_value[/code] is the starting value of the interpolation.
[code]delta_value[/code] is the change of the value in the interpolation, i.e. it's equal to [code]final_value - initial_value[/code].
+ [code]elapsed_time[/code] is the time in seconds that passed after the interpolation started and it's used to control the position of the interpolation. E.g. when it's equal to half of the [code]duration[/code], the interpolated value will be halfway between initial and final values. This value can also be greater than [code]duration[/code] or lower than 0, which will extrapolate the value.
[code]duration[/code] is the total time of the interpolation.
[b]Note:[/b] If [code]duration[/code] is equal to [code]0[/code], the method will always return the final value, regardless of [code]elapsed_time[/code] provided.
</description>
diff --git a/doc/classes/VisualShaderNodeParticleEmitter.xml b/doc/classes/VisualShaderNodeParticleEmitter.xml
index 03ceb3adea..fa46b25fa9 100644
--- a/doc/classes/VisualShaderNodeParticleEmitter.xml
+++ b/doc/classes/VisualShaderNodeParticleEmitter.xml
@@ -1,9 +1,15 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisualShaderNodeParticleEmitter" inherits="VisualShaderNode" version="4.0">
<brief_description>
+ A base class for particle emitters.
</brief_description>
<description>
</description>
<tutorials>
</tutorials>
+ <members>
+ <member name="mode_2d" type="bool" setter="set_mode_2d" getter="is_mode_2d" default="false">
+ If [code]true[/code], the result of this emitter is projected to 2D space. By default it is [code]false[/code] and meant for use in 3D space.
+ </member>
+ </members>
</class>
diff --git a/doc/tools/make_rst.py b/doc/tools/make_rst.py
index ad9e5f4897..fe8083f218 100755
--- a/doc/tools/make_rst.py
+++ b/doc/tools/make_rst.py
@@ -108,7 +108,9 @@ class ClassDef:
self.constants = OrderedDict() # type: OrderedDict[str, ConstantDef]
self.enums = OrderedDict() # type: OrderedDict[str, EnumDef]
self.properties = OrderedDict() # type: OrderedDict[str, PropertyDef]
+ self.constructors = OrderedDict() # type: OrderedDict[str, List[MethodDef]]
self.methods = OrderedDict() # type: OrderedDict[str, List[MethodDef]]
+ self.operators = OrderedDict() # type: OrderedDict[str, List[MethodDef]]
self.signals = OrderedDict() # type: OrderedDict[str, SignalDef]
self.theme_items = OrderedDict() # type: OrderedDict[str, ThemeItemDef]
self.inherits = None # type: Optional[str]
@@ -169,6 +171,34 @@ class State:
)
class_def.properties[property_name] = property_def
+ constructors = class_root.find("constructors")
+ if constructors is not None:
+ for constructor in constructors:
+ assert constructor.tag == "constructor"
+
+ method_name = constructor.attrib["name"]
+ qualifiers = constructor.get("qualifiers")
+
+ return_element = constructor.find("return")
+ if return_element is not None:
+ return_type = TypeName.from_element(return_element)
+
+ else:
+ return_type = TypeName("void")
+
+ params = parse_arguments(constructor)
+
+ desc_element = constructor.find("description")
+ method_desc = None
+ if desc_element is not None:
+ method_desc = desc_element.text
+
+ method_def = MethodDef(method_name, return_type, params, method_desc, qualifiers)
+ if method_name not in class_def.constructors:
+ class_def.constructors[method_name] = []
+
+ class_def.constructors[method_name].append(method_def)
+
methods = class_root.find("methods")
if methods is not None:
for method in methods:
@@ -197,6 +227,34 @@ class State:
class_def.methods[method_name].append(method_def)
+ operators = class_root.find("operators")
+ if operators is not None:
+ for operator in operators:
+ assert operator.tag == "operator"
+
+ method_name = operator.attrib["name"]
+ qualifiers = operator.get("qualifiers")
+
+ return_element = operator.find("return")
+ if return_element is not None:
+ return_type = TypeName.from_element(return_element)
+
+ else:
+ return_type = TypeName("void")
+
+ params = parse_arguments(operator)
+
+ desc_element = operator.find("description")
+ method_desc = None
+ if desc_element is not None:
+ method_desc = desc_element.text
+
+ method_def = MethodDef(method_name, return_type, params, method_desc, qualifiers)
+ if method_name not in class_def.operators:
+ class_def.operators[method_name] = []
+
+ class_def.operators[method_name].append(method_def)
+
constants = class_root.find("constants")
if constants is not None:
for constant in constants:
@@ -471,13 +529,29 @@ def make_rst_class(class_def, state, dry_run, output_dir): # type: (ClassDef, S
ml.append((type_rst, ref, default))
format_table(f, ml, True)
- # Methods overview
+ # Constructors, Methods, Operators overview
+ if len(class_def.constructors) > 0:
+ f.write(make_heading("Constructors", "-"))
+ ml = []
+ for method_list in class_def.constructors.values():
+ for m in method_list:
+ ml.append(make_method_signature(class_def, m, "constructor", state))
+ format_table(f, ml)
+
if len(class_def.methods) > 0:
f.write(make_heading("Methods", "-"))
ml = []
for method_list in class_def.methods.values():
for m in method_list:
- ml.append(make_method_signature(class_def, m, True, state))
+ ml.append(make_method_signature(class_def, m, "method", state))
+ format_table(f, ml)
+
+ if len(class_def.operators) > 0:
+ f.write(make_heading("Operators", "-"))
+ ml = []
+ for method_list in class_def.operators.values():
+ for m in method_list:
+ ml.append(make_method_signature(class_def, m, "operator", state))
format_table(f, ml)
# Theme properties
@@ -501,7 +575,7 @@ def make_rst_class(class_def, state, dry_run, output_dir): # type: (ClassDef, S
f.write("----\n\n")
f.write(".. _class_{}_signal_{}:\n\n".format(class_name, signal.name))
- _, signature = make_method_signature(class_def, signal, False, state)
+ _, signature = make_method_signature(class_def, signal, "", state)
f.write("- {}\n\n".format(signature))
if signal.description is not None and signal.description.strip() != "":
@@ -582,7 +656,27 @@ def make_rst_class(class_def, state, dry_run, output_dir): # type: (ClassDef, S
index += 1
- # Method descriptions
+ # Constructor, Method, Operator descriptions
+ if len(class_def.constructors) > 0:
+ f.write(make_heading("Constructor Descriptions", "-"))
+ index = 0
+
+ for method_list in class_def.constructors.values():
+ for i, m in enumerate(method_list):
+ if index != 0:
+ f.write("----\n\n")
+
+ if i == 0:
+ f.write(".. _class_{}_constructor_{}:\n\n".format(class_name, m.name))
+
+ ret_type, signature = make_method_signature(class_def, m, "", state)
+ f.write("- {} {}\n\n".format(ret_type, signature))
+
+ if m.description is not None and m.description.strip() != "":
+ f.write(rstize_text(m.description.strip(), state) + "\n\n")
+
+ index += 1
+
if len(class_def.methods) > 0:
f.write(make_heading("Method Descriptions", "-"))
index = 0
@@ -595,7 +689,31 @@ def make_rst_class(class_def, state, dry_run, output_dir): # type: (ClassDef, S
if i == 0:
f.write(".. _class_{}_method_{}:\n\n".format(class_name, m.name))
- ret_type, signature = make_method_signature(class_def, m, False, state)
+ ret_type, signature = make_method_signature(class_def, m, "", state)
+ f.write("- {} {}\n\n".format(ret_type, signature))
+
+ if m.description is not None and m.description.strip() != "":
+ f.write(rstize_text(m.description.strip(), state) + "\n\n")
+
+ index += 1
+
+ if len(class_def.operators) > 0:
+ f.write(make_heading("Operator Descriptions", "-"))
+ index = 0
+
+ for method_list in class_def.operators.values():
+ for i, m in enumerate(method_list):
+ if index != 0:
+ f.write("----\n\n")
+
+ if i == 0:
+ f.write(
+ ".. _class_{}_operator_{}_{}:\n\n".format(
+ class_name, sanitize_operator_name(m.name, state), m.return_type.type_name
+ )
+ )
+
+ ret_type, signature = make_method_signature(class_def, m, "", state)
f.write("- {} {}\n\n".format(ret_type, signature))
if m.description is not None and m.description.strip() != "":
@@ -810,10 +928,20 @@ def rstize_text(text, state): # type: (str, State) -> str
ref_type = ""
if class_param in state.classes:
class_def = state.classes[class_param]
+ if cmd.startswith("constructor"):
+ if method_param not in class_def.constructors:
+ print_error(
+ "Unresolved constructor '{}', file: {}".format(param, state.current_class), state
+ )
+ ref_type = "_constructor"
if cmd.startswith("method"):
if method_param not in class_def.methods:
print_error("Unresolved method '{}', file: {}".format(param, state.current_class), state)
ref_type = "_method"
+ if cmd.startswith("operator"):
+ if method_param not in class_def.operators:
+ print_error("Unresolved operator '{}', file: {}".format(param, state.current_class), state)
+ ref_type = "_operator"
elif cmd.startswith("member"):
if method_param not in class_def.properties:
@@ -1046,24 +1174,26 @@ def make_enum(t, state): # type: (str, State) -> str
def make_method_signature(
- class_def, method_def, make_ref, state
-): # type: (ClassDef, Union[MethodDef, SignalDef], bool, State) -> Tuple[str, str]
+ class_def, method_def, ref_type, state
+): # type: (ClassDef, Union[MethodDef, SignalDef], str, State) -> Tuple[str, str]
ret_type = " "
- ref_type = "signal"
if isinstance(method_def, MethodDef):
ret_type = method_def.return_type.to_rst(state)
- ref_type = "method"
-
- # FIXME: Need to add proper support for operator methods, but generating a unique
- # and valid ref for them is not trivial.
- if method_def.name.startswith("operator "):
- make_ref = False
out = ""
- if make_ref:
- out += ":ref:`{0}<class_{1}_{2}_{0}>` ".format(method_def.name, class_def.name, ref_type)
+ if ref_type != "":
+ if ref_type == "operator":
+ out += ":ref:`{0}<class_{1}_{2}_{3}_{4}>` ".format(
+ method_def.name,
+ class_def.name,
+ ref_type,
+ sanitize_operator_name(method_def.name, state),
+ method_def.return_type.type_name,
+ )
+ else:
+ out += ":ref:`{0}<class_{1}_{2}_{0}>` ".format(method_def.name, class_def.name, ref_type)
else:
out += "**{}** ".format(method_def.name)
@@ -1139,5 +1269,61 @@ def make_link(url, title): # type: (str, str) -> str
return "`" + url + " <" + url + ">`__"
+def sanitize_operator_name(dirty_name, state): # type: (str, State) -> str
+ clear_name = dirty_name.replace("operator ", "")
+
+ if clear_name == "!=":
+ clear_name = "neq"
+ elif clear_name == "==":
+ clear_name = "eq"
+
+ elif clear_name == "<":
+ clear_name = "lt"
+ elif clear_name == "<=":
+ clear_name = "lte"
+ elif clear_name == ">":
+ clear_name = "gt"
+ elif clear_name == ">=":
+ clear_name = "gte"
+
+ elif clear_name == "+":
+ clear_name = "sum"
+ elif clear_name == "-":
+ clear_name = "dif"
+ elif clear_name == "*":
+ clear_name = "mul"
+ elif clear_name == "/":
+ clear_name = "div"
+ elif clear_name == "%":
+ clear_name = "mod"
+
+ elif clear_name == "unary+":
+ clear_name = "unplus"
+ elif clear_name == "unary-":
+ clear_name = "unminus"
+
+ elif clear_name == "<<":
+ clear_name = "bwsl"
+ elif clear_name == ">>":
+ clear_name = "bwsr"
+ elif clear_name == "&":
+ clear_name = "bwand"
+ elif clear_name == "|":
+ clear_name = "bwor"
+ elif clear_name == "^":
+ clear_name = "bwxor"
+ elif clear_name == "~":
+ clear_name = "bwnot"
+
+ elif clear_name == "[]":
+ clear_name = "idx"
+
+ else:
+ clear_name = "xxx"
+ print_error("Unsupported operator type '{}', please add the missing rule.".format(dirty_name), state)
+
+ return clear_name
+
+
if __name__ == "__main__":
main()
diff --git a/doc/translations/ar.po b/doc/translations/ar.po
index fdf08d3d61..851d1f9b1a 100644
--- a/doc/translations/ar.po
+++ b/doc/translations/ar.po
@@ -11,12 +11,14 @@
# Kareem Abduljaleel <karemjaleel34@gmail.com>, 2021.
# Deleted User <noreply+32227@weblate.org>, 2021.
# xX-Void-Xx <arandomdude75@gmail.com>, 2021.
+# Alaa alden Aldroubi <alaa.aldroubi@gmail.com>, 2021.
+# يزن حمزه <yznhamzeh@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-07-22 15:34+0000\n"
-"Last-Translator: xX-Void-Xx <arandomdude75@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: يزن حمزه <yznhamzeh@gmail.com>\n"
"Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ar/>\n"
"Language: ar\n"
@@ -25,45 +27,45 @@ msgstr ""
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
-"X-Generator: Weblate 4.7.2-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "الوصÙ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "دورات تعليمية"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "خاصيات"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "الطÙرق"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "خصائص الثÙمة"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "الإشارات"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "التعدادات"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "الثوابت"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "أوصا٠المÙلكية"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "أوصا٠الدوال"
@@ -117,11 +119,10 @@ msgstr ""
"Ùˆ1.\n"
"[codeblock]\n"
"(red = ColorN(\"red\", 1\n"
-"[/codeblock]\n"
+"[codeblock/]\n"
"أسماء الألوان المدعومة هي Ù†Ùس الثوابت المعرّÙØ© ÙÙŠ [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -6293,21 +6294,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6315,7 +6320,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6326,7 +6331,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6334,41 +6339,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6376,61 +6381,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6445,7 +6450,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6454,7 +6459,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6463,7 +6468,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6480,29 +6485,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6541,21 +6546,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6563,7 +6572,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6574,7 +6583,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6582,14 +6591,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6597,21 +6606,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6626,7 +6635,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6641,7 +6650,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6650,7 +6659,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6659,7 +6668,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6678,7 +6687,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10263,7 +10272,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10462,19 +10472,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11319,26 +11341,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12811,80 +12840,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12928,49 +12973,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14745,26 +14797,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19998,7 +20057,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20125,7 +20185,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21160,8 +21220,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27774,16 +27837,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27791,7 +27856,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27799,73 +27864,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27875,7 +27940,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27885,7 +27950,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27896,7 +27961,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27904,7 +27969,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27912,7 +27977,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27921,21 +27986,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27944,25 +28009,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27970,7 +28035,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27978,7 +28043,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27986,7 +28051,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27994,7 +28059,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28002,7 +28067,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28012,7 +28077,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28022,7 +28087,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28033,31 +28098,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28072,55 +28137,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28345,6 +28410,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28356,7 +28432,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28366,7 +28442,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28378,7 +28454,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28386,17 +28462,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28406,7 +28482,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28415,53 +28491,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28469,7 +28545,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28478,17 +28554,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28501,7 +28577,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28513,7 +28589,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28523,7 +28599,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28534,13 +28610,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28548,19 +28624,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28569,7 +28645,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28582,12 +28658,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28602,7 +28687,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28612,11 +28697,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28630,7 +28742,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28643,34 +28755,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28678,83 +28790,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28762,23 +28874,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32037,14 +32149,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32537,26 +32656,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37174,26 +37300,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42290,27 +42423,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42342,6 +42475,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42378,11 +42519,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42414,7 +42555,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43681,18 +43822,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43700,7 +43829,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43710,13 +43839,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43730,14 +43874,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43746,7 +43890,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43754,7 +43898,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43770,20 +43914,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43791,75 +43935,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43869,7 +44013,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43879,27 +44023,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43907,81 +44051,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43989,109 +44133,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44102,91 +44246,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44195,13 +44339,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44211,7 +44355,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44219,19 +44363,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44245,45 +44389,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44292,7 +44436,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44303,7 +44447,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44319,14 +44463,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44334,49 +44478,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44385,7 +44529,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44393,7 +44537,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44401,7 +44545,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44411,7 +44555,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44420,7 +44564,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44429,7 +44573,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44439,7 +44583,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44447,7 +44591,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44457,7 +44601,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44467,7 +44611,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44475,7 +44619,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44484,7 +44628,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44492,7 +44636,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44504,477 +44648,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44982,92 +45126,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45077,33 +45221,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45116,7 +45260,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45128,7 +45272,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45140,7 +45284,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45153,7 +45297,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45161,28 +45305,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45192,25 +45336,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45223,7 +45367,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45235,7 +45379,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45247,7 +45391,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45260,13 +45404,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45274,11 +45418,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45292,7 +45436,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45301,7 +45445,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45317,7 +45461,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45327,7 +45471,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45337,7 +45481,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45348,7 +45492,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45358,7 +45502,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45366,7 +45510,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45377,7 +45521,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45392,7 +45536,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45401,13 +45545,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45416,7 +45560,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45426,7 +45570,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45438,7 +45582,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45448,24 +45592,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45474,7 +45618,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45482,7 +45626,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45491,7 +45635,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45501,7 +45645,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45509,31 +45653,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45541,7 +45685,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45551,46 +45695,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45598,7 +45749,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45608,7 +45759,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45617,7 +45768,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45626,20 +45777,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45648,7 +45799,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45656,7 +45807,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45665,7 +45816,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45675,20 +45826,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45697,13 +45848,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45713,46 +45864,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45762,7 +45913,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45774,7 +45925,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45782,7 +45933,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45790,7 +45941,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45799,7 +45950,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45813,7 +45964,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45823,7 +45974,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45832,7 +45983,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45842,54 +45993,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45900,61 +46051,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45965,7 +46116,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45974,26 +46125,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46004,20 +46155,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46029,52 +46180,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46082,7 +46233,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46092,10 +46243,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46104,10 +46255,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46116,10 +46267,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46128,10 +46279,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46140,10 +46291,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57512,26 +57663,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/ca.po b/doc/translations/ca.po
index 3c108f984b..b8cdfc18a0 100644
--- a/doc/translations/ca.po
+++ b/doc/translations/ca.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-10-10 14:03+0000\n"
+"PO-Revision-Date: 2021-10-21 10:30+0000\n"
"Last-Translator: Xavier Gomez <hiulit@gmail.com>\n"
"Language-Team: Catalan <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ca/>\n"
@@ -21,44 +21,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Descripció"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Tutorials"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Propietats"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Mètodes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Propietats del tema"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Senyals"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumeracions"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constants"
-#: doc/tools/makerst.py
-#, fuzzy
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Descripcions de la Propietat"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descripcions dels Mètodes"
@@ -92,10 +91,10 @@ msgstr ""
"Retorna un color construït a partir dels nombres enters dels canals "
"vermells, verds, blaus i alfa. Cada canal ha de tenir 8 bits d'informació "
"que van del 0 al 255.\n"
-"[code] la xarxa R8 [/code]\n"
-"[code] G8 [/code] canal verd\n"
-"[code] B8 [/code] canal blau\n"
-"[code] A8 [/code] canal alfa\n"
+"[code]r8[/code] canal vermell\n"
+"[code]g8[/code] canal verd\n"
+"[code]b8[/code] canal blau\n"
+"[code]a8[/code] canal alfa\n"
"[codeblock]\n"
"vermell = Color8(255, 0, 0)\n"
"[/codeblock]"
@@ -164,12 +163,12 @@ msgid ""
msgstr ""
"Retorna l'arc de sinus de [code]s[/code] en radians. S'utilitza per a "
"obtenir l'angle de sinus [code]s[/code]. [code]s[/code] ha d'estar entre "
-"[code]-1.0[/ code] i [code]1.0[/code] (inclòs), en cas contrari, [method "
+"[code]-1.0[/code] i [code]1.0[/code] (inclòs), en cas contrari, [method "
"asin] retornarà [constant NAN].\n"
"[codeblock]\n"
"# s és 0.523599 o 30 graus si es converteix amb rad2deg(s)\n"
"s = asin(0.5)\n"
-"[/ codeblock]"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:78
msgid ""
@@ -3671,22 +3670,20 @@ msgstr ""
#: doc/classes/Rect2.xml:12 doc/classes/Transform.xml:11
#: doc/classes/Transform2D.xml:11 doc/classes/Vector2.xml:11
#: doc/classes/Vector3.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/math/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/math/index.html"
#: doc/classes/AABB.xml:13 doc/classes/Rect2.xml:13 doc/classes/Vector2.xml:12
#: doc/classes/Vector3.xml:12
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html"
#: doc/classes/AABB.xml:14 doc/classes/Rect2.xml:14 doc/classes/Vector2.xml:13
#: doc/classes/Vector3.xml:13
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
+msgstr ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html"
#: doc/classes/AABB.xml:22
msgid "Constructs an [AABB] from a position and size."
@@ -4013,10 +4010,10 @@ msgstr ""
#: doc/classes/AnimatedSprite.xml:11 doc/classes/AnimatedSprite3D.xml:10
#: doc/classes/AnimationPlayer.xml:13
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
+msgstr ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
#: doc/classes/AnimatedSprite.xml:12 doc/classes/Area2D.xml:11
#: doc/classes/AudioStreamPlayer.xml:12 doc/classes/Button.xml:24
@@ -4025,9 +4022,9 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
#: doc/classes/InputEvent.xml:12 doc/classes/InputEventAction.xml:11
#: doc/classes/Label.xml:12 doc/classes/Particles2D.xml:15
#: doc/classes/Timer.xml:11 doc/classes/VisibilityNotifier2D.xml:12
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/515"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
#: doc/classes/AnimatedSprite.xml:18 doc/classes/AnimatedSprite3D.xml:16
msgid "Returns [code]true[/code] if an animation is currently being played."
@@ -4241,9 +4238,9 @@ msgid ""
msgstr ""
#: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:12
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/animation/index.html"
+msgstr ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
#: doc/classes/Animation.xml:28
msgid "Adds a track to the Animation."
@@ -4690,12 +4687,10 @@ msgstr ""
#: doc/classes/AnimationNodeTimeSeek.xml:21
#: doc/classes/AnimationNodeTransition.xml:10 doc/classes/AnimationTree.xml:11
#: doc/classes/AnimationTreePlayer.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
-"html"
+"https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html"
#: doc/classes/AnimationNode.xml:18
msgid ""
@@ -4894,9 +4889,8 @@ msgstr ""
#: doc/classes/Quat.xml:13 doc/classes/Skeleton.xml:13
#: doc/classes/SpotLight.xml:12 doc/classes/StaticBody.xml:12
#: doc/classes/WorldEnvironment.xml:15
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/678"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/678"
#: doc/classes/AnimationNodeAnimation.xml:4
msgid "Input animation to use in an [AnimationNodeBlendTree]."
@@ -4919,9 +4913,8 @@ msgstr ""
#: doc/classes/KinematicBody.xml:14 doc/classes/Mesh.xml:12
#: doc/classes/MeshInstance.xml:12 doc/classes/MeshLibrary.xml:11
#: doc/classes/ProjectSettings.xml:14 doc/classes/Transform.xml:15
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/125"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/125"
#: doc/classes/AnimationNodeAnimation.xml:18
msgid ""
@@ -6317,27 +6310,30 @@ msgstr ""
#: doc/classes/Area.xml:11 doc/classes/QuadMesh.xml:10
#: doc/classes/Viewport.xml:17 doc/classes/ViewportTexture.xml:11
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/127"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/127"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6345,7 +6341,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6356,7 +6352,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6364,41 +6360,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6406,61 +6402,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6475,7 +6471,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6484,7 +6480,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6493,7 +6489,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6510,29 +6506,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6550,42 +6546,43 @@ msgid ""
msgstr ""
#: doc/classes/Area2D.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/physics/using_area_2d.html"
+"https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html"
#: doc/classes/Area2D.xml:12 doc/classes/CollisionShape2D.xml:12
#: doc/classes/RectangleShape2D.xml:10
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/121"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/121"
#: doc/classes/Area2D.xml:13 doc/classes/Camera2D.xml:12
#: doc/classes/KinematicBody2D.xml:15 doc/classes/TileMap.xml:12
#: doc/classes/TileSet.xml:12
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/120"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/120"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6593,7 +6590,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6604,7 +6601,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6612,14 +6609,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6627,21 +6624,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6656,7 +6653,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6671,7 +6668,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6680,7 +6677,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6689,7 +6686,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6708,7 +6705,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7145,12 +7142,11 @@ msgid ""
msgstr ""
#: doc/classes/ArrayMesh.xml:29
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/content/procedural_geometry/"
"arraymesh.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/content/procedural_geometry/"
+"https://docs.godotengine.org/en/3.4/tutorials/content/procedural_geometry/"
"arraymesh.html"
#: doc/classes/ArrayMesh.xml:36
@@ -7457,9 +7453,8 @@ msgstr ""
#: doc/classes/ARVRCamera.xml:11 doc/classes/ARVRController.xml:12
#: doc/classes/ARVRInterface.xml:11 doc/classes/ARVROrigin.xml:13
#: doc/classes/ARVRPositionalTracker.xml:12 doc/classes/ARVRServer.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html"
#: doc/classes/ARVRController.xml:4
msgid "A spatial node representing a spatially-tracked controller."
@@ -8582,9 +8577,8 @@ msgstr ""
#: doc/classes/AudioEffect.xml:10 doc/classes/AudioEffectRecord.xml:11
#: doc/classes/AudioServer.xml:12 doc/classes/AudioStream.xml:12
#: doc/classes/AudioStreamPlayer.xml:15
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/527"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/527"
#: doc/classes/AudioEffectAmplify.xml:4
msgid ""
@@ -8885,10 +8879,8 @@ msgstr ""
#: doc/classes/AudioEffectFilter.xml:10
#: doc/classes/AudioEffectHighShelfFilter.xml:9
#: doc/classes/AudioEffectLowShelfFilter.xml:9 doc/classes/AudioServer.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/audio/audio_buses.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html"
#: doc/classes/AudioEffectDistortion.xml:18
msgid "Distortion power. Value can range from 0 to 1."
@@ -9278,12 +9270,11 @@ msgid ""
msgstr ""
#: doc/classes/AudioEffectRecord.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/audio/"
"recording_with_microphone.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/audio/"
+"https://docs.godotengine.org/en/3.4/tutorials/audio/"
"recording_with_microphone.html"
#: doc/classes/AudioEffectRecord.xml:17
@@ -9422,15 +9413,13 @@ msgid ""
msgstr ""
#: doc/classes/AudioServer.xml:11 doc/classes/AudioStreamPlayer.xml:13
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/525"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/525"
#: doc/classes/AudioServer.xml:13 doc/classes/AudioStream.xml:13
#: doc/classes/AudioStreamPlayer.xml:16 doc/classes/CanvasItem.xml:17
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/528"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/528"
#: doc/classes/AudioServer.xml:20
msgid "Adds a bus at [code]at_position[/code]."
@@ -9657,17 +9646,14 @@ msgstr ""
#: doc/classes/AudioStream.xml:10 doc/classes/AudioStreamPlayer.xml:11
#: doc/classes/AudioStreamPlayer2D.xml:12
#: doc/classes/AudioStreamPlayer3D.xml:13
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/audio/audio_streams.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html"
#: doc/classes/AudioStream.xml:11 doc/classes/AudioStreamGenerator.xml:12
#: doc/classes/AudioStreamGeneratorPlayback.xml:10
#: doc/classes/AudioStreamPlayback.xml:10 doc/classes/AudioStreamPlayer.xml:14
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/526"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/526"
#: doc/classes/AudioStream.xml:19
msgid "Returns the length of the audio stream in seconds."
@@ -10283,16 +10269,15 @@ msgid ""
msgstr ""
#: doc/classes/BakedLightmap.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
#: doc/classes/BakedLightmap.xml:19
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10490,19 +10475,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -10707,26 +10704,22 @@ msgstr ""
#: doc/classes/Basis.xml:14 doc/classes/Transform.xml:12
#: doc/classes/Transform2D.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/math/"
-"matrices_and_transforms.html"
+"https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms."
+"html"
#: doc/classes/Basis.xml:15 doc/classes/Transform.xml:13
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html"
#: doc/classes/Basis.xml:16 doc/classes/Line2D.xml:11
#: doc/classes/Transform.xml:14 doc/classes/Transform2D.xml:13
#: doc/classes/Vector2.xml:15 doc/classes/Vector3.xml:15
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/584"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/584"
#: doc/classes/Basis.xml:18 doc/classes/CylinderShape.xml:12
#: doc/classes/Dictionary.xml:88 doc/classes/DynamicFont.xml:18
@@ -10737,15 +10730,13 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/StaticBody.xml:13 doc/classes/SurfaceTool.xml:22
#: doc/classes/TextureButton.xml:12 doc/classes/TextureRect.xml:11
#: doc/classes/Thread.xml:13 doc/classes/VBoxContainer.xml:10
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/676"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/676"
#: doc/classes/Basis.xml:19 doc/classes/Line2D.xml:12
#: doc/classes/Transform.xml:16 doc/classes/Transform2D.xml:14
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/583"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/583"
#: doc/classes/Basis.xml:26
msgid "Constructs a pure rotation basis matrix from the given quaternion."
@@ -11223,17 +11214,15 @@ msgstr ""
#: doc/classes/CylinderShape.xml:11 doc/classes/ProjectSettings.xml:13
#: doc/classes/RigidBody.xml:16 doc/classes/SphereShape.xml:10
#: doc/classes/StaticBody.xml:11
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/675"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/675"
#: doc/classes/BoxShape.xml:11 doc/classes/CollisionShape.xml:11
#: modules/gridmap/doc_classes/GridMap.xml:16 doc/classes/KinematicBody.xml:13
#: doc/classes/Mesh.xml:11 doc/classes/MeshInstance.xml:11
#: doc/classes/MeshLibrary.xml:10
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/126"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/126"
#: doc/classes/BoxShape.xml:18
msgid ""
@@ -11275,9 +11264,8 @@ msgstr ""
#: doc/classes/GridContainer.xml:12 doc/classes/OS.xml:10
#: doc/classes/PoolStringArray.xml:11 doc/classes/ProjectSettings.xml:15
#: doc/classes/ResourceLoader.xml:11 doc/classes/RichTextLabel.xml:17
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/677"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/677"
#: doc/classes/Button.xml:31
msgid ""
@@ -11347,26 +11335,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -11700,15 +11695,13 @@ msgstr ""
#: doc/classes/Camera2D.xml:13 doc/classes/TileMap.xml:13
#: doc/classes/TileSet.xml:13
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/112"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/112"
#: doc/classes/Camera2D.xml:14 doc/classes/Environment.xml:18
#: doc/classes/WorldEnvironment.xml:14
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/110"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/110"
#: doc/classes/Camera2D.xml:20
msgid "Aligns the camera to the tracked node."
@@ -12122,17 +12115,15 @@ msgstr ""
#: doc/classes/CanvasItem.xml:15 doc/classes/CanvasLayer.xml:10
#: doc/classes/InputEvent.xml:11 doc/classes/Viewport.xml:15
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_transforms.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/2d_transforms.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_transforms.html"
#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:18
#: doc/classes/Node2D.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/2d/custom_drawing_in_2d.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/2d/custom_drawing_in_2d.html"
+"https://docs.godotengine.org/en/3.4/tutorials/2d/custom_drawing_in_2d.html"
#: doc/classes/CanvasItem.xml:23
msgid ""
@@ -12606,9 +12597,8 @@ msgid ""
msgstr ""
#: doc/classes/CanvasLayer.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/canvas_layers.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/canvas_layers.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/canvas_layers.html"
#: doc/classes/CanvasLayer.xml:18
msgid "Returns the RID of the canvas used by this layer."
@@ -12739,12 +12729,11 @@ msgstr ""
#: doc/classes/CharFXTransform.xml:10 doc/classes/RichTextEffect.xml:16
#: doc/classes/RichTextLabel.xml:15
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/gui/bbcode_in_richtextlabel."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/gui/bbcode_in_richtextlabel."
+"https://docs.godotengine.org/en/3.4/tutorials/gui/bbcode_in_richtextlabel."
"html"
#: doc/classes/CharFXTransform.xml:11 doc/classes/RichTextEffect.xml:17
@@ -12835,80 +12824,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12952,49 +12957,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -13635,13 +13647,12 @@ msgstr ""
#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsDirectBodyState.xml:10
#: doc/classes/PhysicsDirectSpaceState.xml:10 doc/classes/RigidBody.xml:14
#: doc/classes/Shape.xml:10 doc/classes/Shape2D.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/physics/"
-"physics_introduction.html"
+"https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html"
#: doc/classes/CollisionShape.xml:19
msgid ""
@@ -13680,9 +13691,8 @@ msgstr ""
#: doc/classes/CollisionShape2D.xml:13 doc/classes/KinematicBody2D.xml:14
#: doc/classes/RectangleShape2D.xml:11 doc/classes/TileMap.xml:17
#: doc/classes/TileSet.xml:17
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/113"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/113"
#: doc/classes/CollisionShape2D.xml:19
msgid ""
@@ -13727,19 +13737,16 @@ msgid ""
msgstr ""
#: doc/classes/Color.xml:14 doc/classes/ColorPickerButton.xml:13
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/517"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/517"
#: doc/classes/Color.xml:15 doc/classes/ColorPicker.xml:11
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/146"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/146"
#: doc/classes/Color.xml:16 doc/classes/ColorPickerButton.xml:12
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/133"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/133"
#: doc/classes/Color.xml:23
msgid ""
@@ -14769,26 +14776,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -15186,22 +15200,18 @@ msgid ""
msgstr ""
#: doc/classes/Control.xml:17
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/gui/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html"
#: doc/classes/Control.xml:19
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/gui/index.html"
+msgstr ""
+"https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html"
#: doc/classes/Control.xml:20
-#, fuzzy
msgid "https://github.com/godotengine/godot-demo-projects/tree/master/gui"
-msgstr ""
-"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
-"generator"
+msgstr "https://github.com/godotengine/godot-demo-projects/tree/master/gui"
#: doc/classes/Control.xml:26
msgid ""
@@ -17226,11 +17236,10 @@ msgid ""
msgstr ""
#: doc/classes/CPUParticles2D.xml:12 doc/classes/Particles2D.xml:14
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/2d/particle_systems_2d.html"
+"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html"
#: doc/classes/CPUParticles2D.xml:19
msgid ""
@@ -17941,13 +17950,12 @@ msgid ""
msgstr ""
#: modules/mono/doc_classes/CSharpScript.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/scripting/c_sharp/index."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/scripting/c_sharp/"
-"index.html"
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/c_sharp/index."
+"html"
#: modules/mono/doc_classes/CSharpScript.xml:18
#: modules/gdnative/doc_classes/PluginScript.xml:13
@@ -18827,12 +18835,11 @@ msgid ""
msgstr ""
#: doc/classes/Dictionary.xml:87
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
"gdscript_basics.html#dictionary"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
"gdscript_basics.html#dictionary"
#: doc/classes/Dictionary.xml:94
@@ -18928,11 +18935,10 @@ msgstr ""
#: doc/classes/DirectionalLight.xml:10 doc/classes/Light.xml:10
#: doc/classes/OmniLight.xml:11 doc/classes/SpotLight.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/lights_and_shadows.html"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html"
#: doc/classes/DirectionalLight.xml:16
msgid ""
@@ -19057,13 +19063,12 @@ msgid ""
msgstr ""
#: doc/classes/Directory.xml:28 doc/classes/File.xml:28
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
-"filesystem.html"
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem."
+"html"
#: doc/classes/Directory.xml:35
msgid ""
@@ -20018,7 +20023,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20064,13 +20070,12 @@ msgid ""
msgstr ""
#: doc/classes/EditorImportPlugin.xml:51 doc/classes/ResourceImporter.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
-"import_plugins.html"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins."
+"html"
#: doc/classes/EditorImportPlugin.xml:58
msgid ""
@@ -20145,7 +20150,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -20246,13 +20251,12 @@ msgid ""
msgstr ""
#: doc/classes/EditorInspectorPlugin.xml:16
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
"inspector_plugins.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
-"import_plugins.html"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
+"inspector_plugins.html"
#: doc/classes/EditorInspectorPlugin.xml:23
msgid "Adds a custom control, which is not necessarily a property editor."
@@ -20506,10 +20510,9 @@ msgid ""
msgstr ""
#: doc/classes/EditorPlugin.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/index.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/index.html"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/index.html"
#: doc/classes/EditorPlugin.xml:18
msgid ""
@@ -21180,8 +21183,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -21362,12 +21368,11 @@ msgid ""
msgstr ""
#: doc/classes/EditorScenePostImport.xml:29
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
"importing_scenes.html#custom-script"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/workflow/assets/"
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
"importing_scenes.html#custom-script"
#: doc/classes/EditorScenePostImport.xml:35
@@ -21783,13 +21788,12 @@ msgid ""
msgstr ""
#: doc/classes/EditorSpatialGizmoPlugin.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
-"spatial_gizmos.html"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos."
+"html"
#: doc/classes/EditorSpatialGizmoPlugin.xml:18
msgid ""
@@ -22299,27 +22303,24 @@ msgid ""
msgstr ""
#: doc/classes/Environment.xml:15 doc/classes/WorldEnvironment.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/"
"environment_and_post_processing.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/"
"environment_and_post_processing.html"
#: doc/classes/Environment.xml:16
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/high_dynamic_range.html"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html"
#: doc/classes/Environment.xml:17 doc/classes/Material.xml:10
#: doc/classes/Mesh.xml:10 doc/classes/MeshInstance.xml:10
#: doc/classes/WorldEnvironment.xml:13
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/123"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/123"
#: doc/classes/Environment.xml:26
msgid ""
@@ -23820,22 +23821,20 @@ msgid ""
msgstr ""
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-c-"
"example.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-c-"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-c-"
"example.html"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-"
"example.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/gdnative/gdnative-"
-"cpp-example.html"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-"
+"example.html"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:17
msgid ""
@@ -23907,13 +23906,12 @@ msgid ""
msgstr ""
#: modules/gdscript/doc_classes/GDScript.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/index."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
-"index.html"
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/index."
+"html"
#: modules/gdscript/doc_classes/GDScript.xml:17
msgid "Returns byte code for the script source code."
@@ -24940,9 +24938,8 @@ msgid ""
msgstr ""
#: doc/classes/GIProbe.xml:13
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/3d/gi_probes.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html"
#: doc/classes/GIProbe.xml:22
msgid ""
@@ -25876,10 +25873,8 @@ msgid ""
msgstr ""
#: modules/gridmap/doc_classes/GridMap.xml:14
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html"
#: modules/gridmap/doc_classes/GridMap.xml:22
msgid "Clear all cells."
@@ -26477,22 +26472,20 @@ msgid ""
msgstr ""
#: doc/classes/HTTPClient.xml:16
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/networking/"
-"http_client_class.html"
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class."
+"html"
#: doc/classes/HTTPClient.xml:17 doc/classes/HTTPRequest.xml:71
#: doc/classes/StreamPeerSSL.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates."
+"https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates."
"html"
#: doc/classes/HTTPClient.xml:23
@@ -27272,13 +27265,12 @@ msgid ""
msgstr ""
#: doc/classes/HTTPRequest.xml:70
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/networking/"
-"http_request_class.html"
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class."
+"html"
#: doc/classes/HTTPRequest.xml:77
msgid "Cancels the current request."
@@ -27425,13 +27417,12 @@ msgid ""
msgstr ""
#: doc/classes/Image.xml:12 doc/classes/ImageTexture.xml:31
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
"importing_images.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/workflow/assets/"
-"importing_scenes.html#custom-script"
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
+"importing_images.html"
#: doc/classes/Image.xml:21
msgid ""
@@ -27791,16 +27782,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27808,7 +27801,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27816,73 +27809,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27892,7 +27885,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27902,7 +27895,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27913,7 +27906,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27921,7 +27914,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27929,7 +27922,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27938,21 +27931,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27961,25 +27954,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27987,7 +27980,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27995,7 +27988,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28003,7 +27996,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28011,7 +28004,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28019,7 +28012,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28029,7 +28022,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28039,7 +28032,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28050,31 +28043,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28089,55 +28082,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28334,9 +28327,8 @@ msgid ""
msgstr ""
#: doc/classes/Input.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/inputs/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/inputs/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/inputs/index.html"
#: doc/classes/Input.xml:20
msgid ""
@@ -28361,6 +28353,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28372,7 +28375,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28382,7 +28385,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28394,7 +28397,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28402,17 +28405,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28422,7 +28425,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28431,53 +28434,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28485,7 +28488,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28494,17 +28497,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28517,7 +28520,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28529,7 +28532,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28539,7 +28542,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28550,13 +28553,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28564,19 +28567,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28585,7 +28588,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28598,12 +28601,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28618,7 +28630,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28628,11 +28640,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28646,7 +28685,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28659,34 +28698,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28694,83 +28733,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28778,23 +28817,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -28811,10 +28850,8 @@ msgstr ""
#: doc/classes/InputEventMouse.xml:10 doc/classes/InputEventScreenDrag.xml:10
#: doc/classes/InputEventScreenTouch.xml:11
#: doc/classes/InputEventWithModifiers.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html"
#: doc/classes/InputEvent.xml:20
msgid ""
@@ -28926,12 +28963,10 @@ msgid ""
msgstr ""
#: doc/classes/InputEventAction.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#actions"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
-"html#actions"
+"https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#actions"
#: doc/classes/InputEventAction.xml:18
msgid "The action's name. Actions are accessed via this [String]."
@@ -29116,12 +29151,11 @@ msgstr ""
#: doc/classes/InputEventMouseButton.xml:10
#: doc/classes/InputEventMouseMotion.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/inputs/"
"mouse_and_input_coordinates.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/inputs/"
+"https://docs.godotengine.org/en/3.4/tutorials/inputs/"
"mouse_and_input_coordinates.html"
#: doc/classes/InputEventMouseButton.xml:16
@@ -29287,12 +29321,10 @@ msgid ""
msgstr ""
#: doc/classes/InputMap.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#inputmap"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/inputs/inputevent."
-"html#inputmap"
+"https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#inputmap"
#: doc/classes/InputMap.xml:18
msgid ""
@@ -30048,12 +30080,11 @@ msgid ""
msgstr ""
#: doc/classes/JavaScript.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/workflow/export/"
"exporting_for_web.html#calling-javascript-from-script"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/workflow/export/"
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/export/"
"exporting_for_web.html#calling-javascript-from-script"
#: doc/classes/JavaScript.xml:19
@@ -30164,13 +30195,12 @@ msgid ""
msgstr ""
#: doc/classes/JNISingleton.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
-"import_plugins.html"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin."
+"html"
#: doc/classes/Joint.xml:4
msgid "Base class for all 3D joints."
@@ -30185,9 +30215,8 @@ msgstr ""
#: doc/classes/Joint.xml:10 doc/classes/RigidBody.xml:15
#: doc/classes/VehicleBody.xml:12 doc/classes/VehicleWheel.xml:11
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/524"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/524"
#: doc/classes/Joint.xml:16
msgid ""
@@ -30437,13 +30466,12 @@ msgid ""
msgstr ""
#: doc/classes/KinematicBody.xml:12 doc/classes/KinematicBody2D.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/physics/"
-"kinematic_character_2d.html"
+"https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d."
+"html"
#: doc/classes/KinematicBody.xml:23
msgid ""
@@ -30666,12 +30694,11 @@ msgid ""
msgstr ""
#: doc/classes/KinematicBody2D.xml:13
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/physics/"
"using_kinematic_body_2d.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/physics/"
+"https://docs.godotengine.org/en/3.4/tutorials/physics/"
"using_kinematic_body_2d.html"
#: doc/classes/KinematicBody2D.xml:22
@@ -31305,12 +31332,10 @@ msgid ""
msgstr ""
#: doc/classes/Light2D.xml:11 doc/classes/LightOccluder2D.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_lights_and_shadows.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/2d/2d_lights_and_shadows."
-"html"
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_lights_and_shadows.html"
#: doc/classes/Light2D.xml:17
msgid "The Light2D's [Color]."
@@ -32051,14 +32076,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32551,26 +32583,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -33143,9 +33182,8 @@ msgid ""
msgstr ""
#: doc/classes/MeshInstance2D.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_meshes.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/2d/2d_meshes.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_meshes.html"
#: doc/classes/MeshInstance2D.xml:16
msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
@@ -33379,22 +33417,20 @@ msgid ""
msgstr ""
#: doc/classes/MultiMesh.xml:13 doc/classes/MultiMeshInstance.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
"animating_thousands_of_fish.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
"animating_thousands_of_fish.html"
#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance.xml:13
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/optimization/"
-"using_multimesh.html"
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh."
+"html"
#: doc/classes/MultiMesh.xml:20
msgid ""
@@ -33539,13 +33575,12 @@ msgid ""
msgstr ""
#: doc/classes/MultiMeshInstance.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/"
-"using_multi_mesh_instance.html"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance."
+"html"
#: doc/classes/MultiMeshInstance.xml:19
msgid ""
@@ -33791,13 +33826,12 @@ msgstr ""
#: doc/classes/Mutex.xml:10 doc/classes/Semaphore.xml:10
#: doc/classes/Thread.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/threads/"
-"using_multiple_threads.html"
+"https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads."
+"html"
#: doc/classes/Mutex.xml:16
msgid ""
@@ -33873,9 +33907,8 @@ msgid ""
msgstr ""
#: doc/classes/Navigation.xml:11 doc/classes/NavigationMesh.xml:10
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/124"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/124"
#: doc/classes/Navigation.xml:18 doc/classes/Navigation2D.xml:18
msgid ""
@@ -33955,9 +33988,8 @@ msgid ""
msgstr ""
#: doc/classes/Navigation2D.xml:11 doc/classes/NavigationPolygon.xml:27
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/117"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/117"
#: doc/classes/Navigation2D.xml:25
msgid ""
@@ -34387,12 +34419,11 @@ msgstr ""
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:12
#: doc/classes/NetworkedMultiplayerPeer.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/networking/"
"high_level_multiplayer.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/networking/"
+"https://docs.godotengine.org/en/3.4/tutorials/networking/"
"high_level_multiplayer.html"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:13
@@ -34638,9 +34669,8 @@ msgid ""
msgstr ""
#: doc/classes/NetworkedMultiplayerPeer.xml:12
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/537"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/537"
#: doc/classes/NetworkedMultiplayerPeer.xml:18
msgid ""
@@ -34930,18 +34960,16 @@ msgid ""
msgstr ""
#: doc/classes/Node.xml:20
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/"
"scenes_and_nodes.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/"
"scenes_and_nodes.html"
#: doc/classes/Node.xml:21
-#, fuzzy
msgid "https://github.com/godotengine/godot-demo-projects/"
-msgstr "https://github.com/godotengine/tps-demo"
+msgstr "https://github.com/godotengine/godot-demo-projects/"
#: doc/classes/Node.xml:27
msgid ""
@@ -35911,11 +35939,8 @@ msgid ""
msgstr ""
#: doc/classes/Node2D.xml:11 doc/classes/Vector2.xml:16
-#, fuzzy
msgid "https://github.com/godotengine/godot-demo-projects/tree/master/2d"
-msgstr ""
-"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
-"generator"
+msgstr "https://github.com/godotengine/godot-demo-projects/tree/master/2d"
#: doc/classes/Node2D.xml:18
msgid "Multiplies the current scale by the [code]ratio[/code] vector."
@@ -36082,9 +36107,8 @@ msgstr ""
#: doc/classes/NodePath.xml:26 doc/classes/PackedScene.xml:41
#: doc/classes/Panel.xml:10 doc/classes/PanelContainer.xml:10
#: doc/classes/TileMap.xml:16 doc/classes/TileSet.xml:16
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/520"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/520"
#: doc/classes/NodePath.xml:33
msgid ""
@@ -36297,22 +36321,20 @@ msgstr ""
#: doc/classes/Object.xml:24 doc/classes/Reference.xml:13
#: doc/classes/Resource.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/"
"node_alternatives.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/workflow/"
-"best_practices/node_alternatives.html"
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/"
+"node_alternatives.html"
#: doc/classes/Object.xml:25
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
"gdscript_exports.html#advanced-exports"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
-"gdscript_basics.html#dictionary"
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_exports.html#advanced-exports"
#: doc/classes/Object.xml:32
msgid ""
@@ -37179,26 +37201,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -38877,15 +38906,13 @@ msgid ""
msgstr ""
#: doc/classes/Panel.xml:11
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/516"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/516"
#: doc/classes/Panel.xml:12 doc/classes/Skeleton.xml:12
#: doc/classes/SkeletonIK.xml:29
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/523"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/523"
#: doc/classes/Panel.xml:20
msgid "The style of this [Panel]."
@@ -39032,12 +39059,11 @@ msgid ""
msgstr ""
#: doc/classes/Particles.xml:13
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
"controlling_thousands_of_fish.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/vertex_animation/"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
"controlling_thousands_of_fish.html"
#: doc/classes/Particles.xml:20
@@ -39898,10 +39924,8 @@ msgstr ""
#: doc/classes/PhysicsDirectSpaceState.xml:11 doc/classes/RayCast.xml:14
#: doc/classes/RayCast2D.xml:14 doc/classes/World.xml:10
#: doc/classes/World2D.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/physics/ray-casting.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html"
#: doc/classes/Physics2DDirectBodyState.xml:18 doc/classes/RigidBody2D.xml:30
msgid "Adds a constant directional force without affecting rotation."
@@ -42272,27 +42296,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42324,6 +42348,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42360,11 +42392,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42396,7 +42428,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -42448,9 +42480,8 @@ msgstr ""
#: doc/classes/PoolVector2Array.xml:11 doc/classes/TileMap.xml:15
#: doc/classes/TileSet.xml:15
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/519"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/519"
#: doc/classes/PoolVector2Array.xml:18
msgid ""
@@ -43662,18 +43693,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43681,7 +43700,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43691,13 +43710,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43711,14 +43745,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43727,7 +43761,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43735,7 +43769,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43751,20 +43785,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43772,75 +43806,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43850,7 +43884,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43860,27 +43894,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43888,81 +43922,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43970,109 +44004,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44083,91 +44117,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44176,13 +44210,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44192,7 +44226,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44200,19 +44234,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44226,45 +44260,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44273,7 +44307,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44284,7 +44318,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44300,14 +44334,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44315,49 +44349,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44366,7 +44400,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44374,7 +44408,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44382,7 +44416,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44392,7 +44426,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44401,7 +44435,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44410,7 +44444,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44420,7 +44454,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44428,7 +44462,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44438,7 +44472,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44448,7 +44482,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44456,7 +44490,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44465,7 +44499,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44473,7 +44507,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44485,477 +44519,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44963,92 +44997,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45058,33 +45092,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45097,7 +45131,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45109,7 +45143,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45121,7 +45155,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45134,7 +45168,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45142,28 +45176,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45173,25 +45207,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45204,7 +45238,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45216,7 +45250,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45228,7 +45262,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45241,13 +45275,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45255,11 +45289,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45273,7 +45307,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45282,7 +45316,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45298,7 +45332,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45308,7 +45342,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45318,7 +45352,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45329,7 +45363,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45339,7 +45373,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45347,7 +45381,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45358,7 +45392,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45373,7 +45407,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45382,13 +45416,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45397,7 +45431,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45407,7 +45441,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45419,7 +45453,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45429,24 +45463,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45455,7 +45489,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45463,7 +45497,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45472,7 +45506,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45482,7 +45516,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45490,31 +45524,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45522,7 +45556,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45532,46 +45566,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45579,7 +45620,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45589,7 +45630,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45598,7 +45639,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45607,20 +45648,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45629,7 +45670,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45637,7 +45678,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45646,7 +45687,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45656,20 +45697,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45678,13 +45719,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45694,46 +45735,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45743,7 +45784,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45755,7 +45796,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45763,7 +45804,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45771,7 +45812,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45780,7 +45821,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45794,7 +45835,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45804,7 +45845,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45813,7 +45854,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45823,54 +45864,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45881,61 +45922,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45946,7 +45987,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45955,26 +45996,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45985,20 +46026,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46010,52 +46051,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46063,7 +46104,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46073,10 +46114,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46085,10 +46126,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46097,10 +46138,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46109,10 +46150,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46121,10 +46162,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -46148,9 +46189,8 @@ msgstr ""
#: doc/classes/QuadMesh.xml:11 doc/classes/Viewport.xml:19
#: doc/classes/ViewportTexture.xml:13
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/129"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/129"
#: doc/classes/QuadMesh.xml:17
msgid "Offset of the generated Quad. Useful for particles."
@@ -46177,12 +46217,11 @@ msgid ""
msgstr ""
#: doc/classes/Quat.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms."
"html#interpolating-with-quaternions"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/using_transforms."
+"https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms."
"html#interpolating-with-quaternions"
#: doc/classes/Quat.xml:20
@@ -46350,11 +46389,12 @@ msgid ""
msgstr ""
#: doc/classes/RandomNumberGenerator.xml:19
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation."
"html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/math/index.html"
+msgstr ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation."
+"html"
#: doc/classes/RandomNumberGenerator.xml:25
msgid ""
@@ -46953,10 +46993,9 @@ msgid ""
msgstr ""
#: doc/classes/ReflectionProbe.xml:13
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/reflection_probes.html"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html"
#: doc/classes/ReflectionProbe.xml:19
msgid ""
@@ -47330,13 +47369,12 @@ msgid ""
msgstr ""
#: doc/classes/Resource.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/resources."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
-"resources.html"
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/resources."
+"html"
#: doc/classes/Resource.xml:18
msgid ""
@@ -47872,9 +47910,8 @@ msgid ""
msgstr ""
#: doc/classes/RichTextLabel.xml:16
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/132"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/132"
#: doc/classes/RichTextLabel.xml:26
msgid ""
@@ -48668,14 +48705,12 @@ msgid ""
msgstr ""
#: doc/classes/RigidBody2D.xml:15
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/119"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/119"
#: doc/classes/RigidBody2D.xml:16 doc/classes/Sprite.xml:10
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/148"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/148"
#: doc/classes/RigidBody2D.xml:23
msgid ""
@@ -49249,13 +49284,12 @@ msgid ""
msgstr ""
#: doc/classes/RootMotionView.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
"html#root-motion"
msgstr ""
"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
-"html"
+"html#root-motion"
#: doc/classes/RootMotionView.xml:17
msgid "Path to an [AnimationTree] node to use as a basis for root motion."
@@ -49454,22 +49488,20 @@ msgid ""
msgstr ""
#: doc/classes/SceneTree.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scene_tree."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
-"scene_tree.html"
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scene_tree."
+"html"
#: doc/classes/SceneTree.xml:13
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/viewports/"
-"multiple_resolutions.html"
+"https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions."
+"html"
#: doc/classes/SceneTree.xml:21
msgid ""
@@ -49914,13 +49946,12 @@ msgid ""
msgstr ""
#: doc/classes/Script.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scripting."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/step_by_step/"
-"scripting.html"
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scripting."
+"html"
#: doc/classes/Script.xml:17
msgid "Returns [code]true[/code] if the script can be instanced."
@@ -50219,17 +50250,15 @@ msgid ""
msgstr ""
#: doc/classes/Shader.xml:10 doc/classes/ShaderMaterial.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/shading/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html"
#: doc/classes/Shader.xml:11
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/"
"what_are_shaders.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/shading/your_first_shader/"
+"https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/"
"what_are_shaders.html"
#: doc/classes/Shader.xml:18
@@ -50560,11 +50589,10 @@ msgid ""
msgstr ""
#: doc/classes/Skeleton2D.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/animation/2d_skeletons.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/animation/2d_skeletons.html"
+"https://docs.godotengine.org/en/3.4/tutorials/animation/2d_skeletons.html"
#: doc/classes/Skeleton2D.xml:17
msgid ""
@@ -50870,10 +50898,8 @@ msgid ""
msgstr ""
#: doc/classes/SoftBody.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/physics/soft_body.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html"
#: doc/classes/SoftBody.xml:44
msgid "Returns local translation of a vertex in the surface array."
@@ -50957,18 +50983,14 @@ msgid ""
msgstr ""
#: doc/classes/Spatial.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/introduction_to_3d.html"
+"https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html"
#: doc/classes/Spatial.xml:13 doc/classes/Vector3.xml:16
-#, fuzzy
msgid "https://github.com/godotengine/godot-demo-projects/tree/master/3d"
-msgstr ""
-"https://github.com/godotengine/godot-demo-projects/tree/master/audio/"
-"generator"
+msgstr "https://github.com/godotengine/godot-demo-projects/tree/master/3d"
#: doc/classes/Spatial.xml:25
msgid ""
@@ -51271,10 +51293,8 @@ msgid ""
msgstr ""
#: doc/classes/SpatialMaterial.xml:10
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/3d/spatial_material.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html"
#: doc/classes/SpatialMaterial.xml:17
msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
@@ -53289,12 +53309,11 @@ msgid ""
msgstr ""
#: doc/classes/String.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
"gdscript_format_string.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/scripting/gdscript/"
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
"gdscript_format_string.html"
#: doc/classes/String.xml:17
@@ -56260,9 +56279,8 @@ msgid ""
msgstr ""
#: doc/classes/Theme.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/gui_skinning.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/gui/gui_skinning.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/gui/gui_skinning.html"
#: doc/classes/Theme.xml:17
msgid "Clears all values on the theme."
@@ -56630,12 +56648,10 @@ msgid ""
msgstr ""
#: doc/classes/Thread.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/threads/thread_safe_apis."
-"html"
+"https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html"
#: doc/classes/Thread.xml:19
msgid ""
@@ -56710,15 +56726,12 @@ msgid ""
msgstr ""
#: doc/classes/TileMap.xml:11 doc/classes/TileSet.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/2d/using_tilemaps.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html"
#: doc/classes/TileMap.xml:14 doc/classes/TileSet.xml:14
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/111"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/111"
#: doc/classes/TileMap.xml:23
msgid "Clears all cells."
@@ -57492,26 +57505,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
@@ -57867,18 +57887,16 @@ msgid ""
msgstr ""
#: doc/classes/Translation.xml:10 doc/classes/TranslationServer.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/i18n/internationalizing_games."
"html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/i18n/"
-"internationalizing_games.html"
+"https://docs.godotengine.org/en/3.4/tutorials/i18n/internationalizing_games."
+"html"
#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/i18n/locales.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html"
#: doc/classes/Translation.xml:18
msgid "Virtual method to override [method get_message]."
@@ -59888,10 +59906,8 @@ msgid ""
msgstr ""
#: doc/classes/Variant.xml:53
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/development/cpp/variant_class.html"
-msgstr ""
-"https://docs.godotengine.org/en/latest/development/cpp/variant_class.html"
+msgstr "https://docs.godotengine.org/en/3.4/development/cpp/variant_class.html"
#: doc/classes/VBoxContainer.xml:4
msgid "Vertical box container."
@@ -60791,29 +60807,24 @@ msgid ""
msgstr ""
#: doc/classes/Viewport.xml:16
-#, fuzzy
msgid "https://docs.godotengine.org/en/3.4/tutorials/viewports/index.html"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/viewports/index.html"
+msgstr "https://docs.godotengine.org/en/3.4/tutorials/viewports/index.html"
#: doc/classes/Viewport.xml:18 doc/classes/ViewportTexture.xml:12
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/128"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/128"
#: doc/classes/Viewport.xml:20
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/130"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/130"
#: doc/classes/Viewport.xml:21
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/541"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/541"
#: doc/classes/Viewport.xml:22 doc/classes/ViewportTexture.xml:14
-#, fuzzy
msgid "https://godotengine.org/asset-library/asset/586"
-msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
+msgstr "https://godotengine.org/asset-library/asset/586"
#: doc/classes/Viewport.xml:28
msgid ""
@@ -61634,13 +61645,12 @@ msgid ""
msgstr ""
#: modules/visual_script/doc_classes/VisualScript.xml:12
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/getting_started/scripting/visual_script/"
"index.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/getting_started/scripting/"
-"visual_script/index.html"
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/visual_script/"
+"index.html"
#: modules/visual_script/doc_classes/VisualScript.xml:19
msgid "Add a custom signal with the specified name to the VisualScript."
@@ -63401,12 +63411,10 @@ msgid ""
msgstr ""
#: doc/classes/VisualServer.xml:18
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/optimization/using_servers."
-"html"
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html"
#: doc/classes/VisualServer.xml:28
msgid "Sets images to be rendered in the window margin."
@@ -66508,11 +66516,10 @@ msgid ""
msgstr ""
#: doc/classes/VisualShaderNode.xml:10
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/shading/visual_shaders.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/shading/visual_shaders.html"
+"https://docs.godotengine.org/en/3.4/tutorials/shading/visual_shaders.html"
#: doc/classes/VisualShaderNode.xml:16
msgid ""
@@ -66955,12 +66962,11 @@ msgid ""
msgstr ""
#: doc/classes/VisualShaderNodeCustom.xml:16
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
"visual_shader_plugins.html"
msgstr ""
-"https://docs.godotengine.org/en/latest/tutorials/plugins/editor/"
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
"visual_shader_plugins.html"
#: doc/classes/VisualShaderNodeCustom.xml:22
@@ -67301,12 +67307,11 @@ msgid ""
msgstr ""
#: doc/classes/VisualShaderNodeInput.xml:9
-#, fuzzy
msgid ""
"https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/"
"index.html"
msgstr ""
-"https://docs.godotengine.org/en/stable/tutorials/shading/shading_reference/"
+"https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/"
"index.html"
#: doc/classes/VisualShaderNodeInput.xml:20
@@ -67832,7 +67837,6 @@ msgid "Returns the arc-sine of the parameter."
msgstr ""
#: doc/classes/VisualShaderNodeVectorFunc.xml:50
-#, fuzzy
msgid "Returns the inverse hyperbolic sine of the parameter."
msgstr "Retorna el sinus hiperbòlic invers del paràmetre."
diff --git a/doc/translations/classes.pot b/doc/translations/classes.pot
index bc08fd3f2d..1a3b510515 100644
--- a/doc/translations/classes.pot
+++ b/doc/translations/classes.pot
@@ -14,43 +14,43 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr ""
@@ -6191,21 +6191,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6213,7 +6217,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6224,7 +6228,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6232,41 +6236,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6274,61 +6278,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6343,7 +6347,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6352,7 +6356,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6361,7 +6365,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6378,29 +6382,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6435,21 +6439,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6457,7 +6465,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6468,7 +6476,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6476,14 +6484,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6491,21 +6499,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6520,7 +6528,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6535,7 +6543,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6544,7 +6552,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6553,7 +6561,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6572,7 +6580,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10139,7 +10147,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10337,19 +10346,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11183,26 +11204,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12661,80 +12689,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12778,49 +12822,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14588,26 +14639,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19819,7 +19877,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -19943,7 +20002,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -20973,8 +21032,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27548,16 +27610,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27565,7 +27629,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27573,73 +27637,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27649,7 +27713,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27659,7 +27723,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27670,7 +27734,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27678,7 +27742,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27686,7 +27750,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27695,21 +27759,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27718,25 +27782,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27744,7 +27808,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27752,7 +27816,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27760,7 +27824,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27768,7 +27832,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27776,7 +27840,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27786,7 +27850,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27796,7 +27860,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27807,31 +27871,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27846,55 +27910,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28117,6 +28181,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28128,7 +28203,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28138,7 +28213,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28150,7 +28225,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28158,17 +28233,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28178,7 +28253,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28187,53 +28262,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28241,7 +28316,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28250,17 +28325,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28273,7 +28348,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28285,7 +28360,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28295,7 +28370,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28306,13 +28381,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28320,19 +28395,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28341,7 +28416,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28354,12 +28429,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28374,7 +28458,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28384,11 +28468,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28402,7 +28513,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28415,34 +28526,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28450,83 +28561,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28534,23 +28645,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31780,14 +31891,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32280,26 +32398,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -36875,26 +37000,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -41961,27 +42093,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42013,6 +42145,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42049,11 +42189,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42085,7 +42225,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43350,18 +43490,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43369,7 +43497,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43379,13 +43507,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43399,14 +43542,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43415,7 +43558,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43423,7 +43566,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43439,20 +43582,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43460,75 +43603,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43538,7 +43681,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43548,27 +43691,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43576,81 +43719,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43658,109 +43801,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43771,91 +43914,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -43864,13 +44007,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -43880,7 +44023,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -43888,19 +44031,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -43914,45 +44057,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -43961,7 +44104,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -43972,7 +44115,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -43988,14 +44131,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44003,49 +44146,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44054,7 +44197,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44062,7 +44205,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44070,7 +44213,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44080,7 +44223,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44089,7 +44232,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44098,7 +44241,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44108,7 +44251,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44116,7 +44259,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44126,7 +44269,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44136,7 +44279,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44144,7 +44287,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44153,7 +44296,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44161,7 +44304,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44173,477 +44316,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44651,92 +44794,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44746,33 +44889,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44785,7 +44928,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44797,7 +44940,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44809,7 +44952,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44822,7 +44965,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -44830,28 +44973,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -44861,25 +45004,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44892,7 +45035,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44904,7 +45047,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44916,7 +45059,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44929,13 +45072,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -44943,11 +45086,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -44961,7 +45104,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -44970,7 +45113,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -44986,7 +45129,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -44996,7 +45139,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45006,7 +45149,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45017,7 +45160,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45027,7 +45170,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45035,7 +45178,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45046,7 +45189,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45061,7 +45204,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45070,13 +45213,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45085,7 +45228,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45095,7 +45238,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45107,7 +45250,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45117,24 +45260,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45143,7 +45286,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45151,7 +45294,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45160,7 +45303,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45170,7 +45313,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45178,31 +45321,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45210,7 +45353,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45220,46 +45363,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45267,7 +45417,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45277,7 +45427,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45286,7 +45436,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45295,20 +45445,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45317,7 +45467,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45325,7 +45475,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45334,7 +45484,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45344,20 +45494,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45366,13 +45516,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45382,46 +45532,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45431,7 +45581,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45443,7 +45593,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45451,7 +45601,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45459,7 +45609,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45468,7 +45618,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45482,7 +45632,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45492,7 +45642,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45501,7 +45651,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45511,54 +45661,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45569,61 +45719,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45634,7 +45784,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45643,26 +45793,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45673,20 +45823,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45698,52 +45848,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45751,7 +45901,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45761,10 +45911,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45773,10 +45923,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45785,10 +45935,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45797,10 +45947,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -45809,10 +45959,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57130,26 +57280,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/cs.po b/doc/translations/cs.po
index 4fb544a0d3..b8efd526d8 100644
--- a/doc/translations/cs.po
+++ b/doc/translations/cs.po
@@ -10,12 +10,15 @@
# Pierre Stempin <pierre.stempin@gmail.com>, 2020.
# Václav Blažej <vaclavblazej@seznam.cz>, 2020.
# ProfJack <profjackcz@gmail.com>, 2021.
+# Daniel <dan@ger.cz>, 2021.
+# DomcaSuzi <dominio122@gmail.com>, 2021.
+# Tomas Dostal <tomas.dostal.cz@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-04-05 23:34+0000\n"
-"Last-Translator: ProfJack <profjackcz@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: Tomas Dostal <tomas.dostal.cz@gmail.com>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot-"
"class-reference/cs/>\n"
"Language: cs\n"
@@ -23,51 +26,51 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-"X-Generator: Weblate 4.6-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Popis"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
-msgstr "Tutoriály"
+msgstr "Návody"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Vlastnosti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metody"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Vlastnosti motivu"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Signály"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "VýÄty"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Konstanty"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Popisy vlastnosti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Popisy metod"
#: modules/gdscript/doc_classes/@GDScript.xml:4
msgid "Built-in GDScript functions."
-msgstr "Vestvavěné funkce GDScriptu."
+msgstr "Vestavěné funkce GDScriptu."
#: modules/gdscript/doc_classes/@GDScript.xml:7
msgid ""
@@ -119,7 +122,6 @@ msgstr ""
"Podporované názvy barev jsou stejné jako konstanty definované v [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -129,12 +131,10 @@ msgid ""
msgstr ""
"Vrátí absolutní hodnotu parametru [code]s[/code] (tj. kladná hodnota).\n"
"[codeblock]\n"
-"# a je 1\n"
-"a = abs(-1)\n"
+"a = abs(-1) # a je 1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
-#, fuzzy
msgid ""
"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -146,14 +146,15 @@ msgid ""
"[/codeblock]"
msgstr ""
"Vrátí arcus funkce kosinus hodnoty [code]s[/code] v radiánech. Použijte pro "
-"získání úhlu kosinu [code]s[/code].\n"
+"získání úhlu kosinu [code]s[/code]. [code]s[/code] musí být mezi [code]-1.0[/"
+"code] a [code]1.0[/code] (vÄetnÄ›), jinak [method acos] vrací [constant "
+"NAN].\n"
"[codeblock]\n"
"# c je 0.523599 nebo 30 stupňů pokud je konvertováno pomocí rad2deg(s)\n"
"c = acos(0.866025)\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:66
-#, fuzzy
msgid ""
"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
"sine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -165,14 +166,15 @@ msgid ""
"[/codeblock]"
msgstr ""
"Vrátí arcus funkce sinus hodnoty [code]s[/code] v radiánech. Použijte pro "
-"získání úhlu kosinu [code]s[/code].\n"
+"získání úhlu kosinu [code]s[/code]. [code]s[/code] musí být mezi [code]-1.0[/"
+"code] a [code]1.0[/code] (vÄetnÄ›), jinak [method asin] vrací [constant "
+"NAN].\n"
"[codeblock]\n"
"# s je 0.523599 nebo 30 stupňů pokud je konvertováno pomocí rad2deg(s)\n"
"s = asin(0.5)\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:78
-#, 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. When "
@@ -198,23 +200,27 @@ msgid ""
"a message with clarifying details\n"
"[/codeblock]"
msgstr ""
-"Potvrzuje, že [code]condition[/code] je [code]true[/code]. Pokud "
-"[code]condition[/code] je [code]false[/code] výsledkem bude error a program "
-"se zastaví dokud jej znovu nespustíme. Spustí se pouze v debug buildech, "
-"nebo pokud spouštíme hru v editoru. Používejte tuto funkci pro debugování, "
-"aby jste měli jistotu, že podmínka je [code]true[/code] v průběhu vývoje.\n"
-"Volitelný [code]message[/code] argument, pokud je přidán, je ukázán navíc ke "
-"generické \"Assertion failed\" zprávě. Toto můžete použít k poskytnutí "
-"detailnějších informací ohledně neúspěšného potvrzení.\n"
+"Potvrzuje, že [code]condition[/code] je [code]true[/code]. Pokud je "
+"[code]condition[/code] [code]false[/code], výsledkem bude chyba. Při "
+"spuštění z editoru bude spuštěný projekt rovněž pozastaven, dokud jej "
+"neobnovíte. Může být použito jako důraznější forma [method push_error] pro "
+"nahlášení chyb vývojářům projektu nebo uživatelům rozšíření.\n"
+"[b]Poznámka:[/b] Z výkonnostních důvodů se kód uvnitř [method assert] "
+"provádí pouze v ladících sestaveních nebo při spuštění projektu z editoru. "
+"Do volání [method assert] nezaÅ™azujte kód, který má vedlejší úÄinky. Jinak "
+"se projekt bude při exportu v režimu vydání chovat jinak.\n"
+"Nepovinný argument [code]message[/code], je-li zadán, se zobrazí navíc k "
+"obecné zprávě \"Assertion failed\". Můžete jej použít k uvedení dalších "
+"podrobností o tom, proÄ tvrzení selhalo.\n"
"[codeblock]\n"
-"# Představme si, že vždy chceme, aby rychlost byla mezi 0 a 20\n"
+"# Představme si, že vždy chceme, aby rychlost byla mezi 0 a 20.\n"
"speed = -10\n"
"assert(speed < 20) # True, program bude pokraÄovat\n"
"assert(speed >= 0) # False, program se ukonÄí\n"
"assert(speed >= 0 && speed < 20) # Můžete také skombinovat obě dvě podmínky "
-"do jednoho ověření\n"
+"do jednoho tvrzení\n"
"assert(speed < 20, \"speed = %f, but the speed limit is 20\" % speed) # "
-"Vypiště zprávu, která objasňuje detaily\n"
+"Vypíše zprávu, která objasňuje detaily\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:95
@@ -238,7 +244,6 @@ msgstr ""
"[/ codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:107
-#, 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 "
@@ -248,13 +253,12 @@ msgid ""
"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"
+"Vrací arcus tangens [code]y/x[/code] v radiánech. Slouží k získání úhlu "
+"teÄny [code]y/x[/code]. PÅ™i výpoÄtu hodnoty metoda zohledňuje znaménko obou "
+"argumentů, aby bylo možné urÄit kvadrant.\n"
+"Důležitá poznámka: Souřadnice Y je podle konvence na prvním místě.\n"
"[codeblock]\n"
-"a = atan(0.5) # a is 0.463648\n"
+"a = atan(0, -1) # a je 3.141593\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:119
@@ -283,7 +287,6 @@ msgstr ""
"polární soustavy souÅ™adnic (vzdálenost bodu od poÄátku a úhel)."
#: modules/gdscript/doc_classes/@GDScript.xml:135
-#, fuzzy
msgid ""
"Rounds [code]s[/code] upward (towards positive infinity), returning the "
"smallest whole number that is not less than [code]s[/code].\n"
@@ -293,12 +296,13 @@ msgid ""
"[/codeblock]\n"
"See also [method floor], [method round], [method stepify], and [int]."
msgstr ""
-"Zaokrouhlí [code]s[/code] nahoru a vrátí nejmenší integrální hodnotu, která "
-"není menší než hodnota [code]s[/code].\n"
+"Zaokrouhlí [code]s[/code] nahoru (ke kladnému nekoneÄnu) a vrátí nejmenší "
+"celoÄíselnou hodnotu, která není menší než [code]s[/code].\n"
"[codeblock]\n"
-"i = ceil(1.45) # i je 2\n"
-"i = ceil(1.001) # i je 2\n"
-"[/codeblock]"
+"a = ceil(1.45) # a je 2.0\n"
+"a = ceil(1.001) # a je 2.0\n"
+"[/codeblock]\n"
+"Viz také [method floor], [method round], [method stepify] a [int]."
#: modules/gdscript/doc_classes/@GDScript.xml:147
msgid ""
@@ -330,6 +334,13 @@ msgid ""
"a = clamp(15, 1, 20) # a is 15\n"
"[/codeblock]"
msgstr ""
+"Ořízne [code]value[/code] a vrátí hodnotu, která není menší než [code]min[/"
+"code] a větší než [code]max[/code].\n"
+"[codeblock]\n"
+"a = clamp(1000, 1, 20) # a je 20\n"
+"a = clamp(-10, 1, 20) # a je 1\n"
+"a = clamp(15, 1, 20) # a je 15\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:175
msgid ""
@@ -344,9 +355,18 @@ msgid ""
"print(a.length())\n"
"[/codeblock]"
msgstr ""
+"Převádí z jednoho typu na jiný tím nejlepším možným způsobem. Parametr "
+"[code]type[/code] používá hodnoty [enum Variant.Type].\n"
+"[codeblock]\n"
+"a = Vector2(1, 0)\n"
+"# Vypíše 1\n"
+"print(a.length())\n"
+"a = convert(a, TYPE_STRING)\n"
+"# Vypíše 6, protože \"(1, 0)\" má 6 znaků\n"
+"print(a.length())\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:190
-#, fuzzy
msgid ""
"Returns the cosine of angle [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -356,21 +376,20 @@ msgid ""
msgstr ""
"Vrací sinus úhlu [code]s[/code] v radiánech.\n"
"[codeblock]\n"
-"sin(0.523599) # Vrací 0.5\n"
+"a = cos(TAU) # a je 1.0\n"
+"a = cos(PI) # a je -1.0\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:201
-#, fuzzy
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
"print(cosh(1)) # Prints 1.543081\n"
"[/codeblock]"
msgstr ""
-"Vrátí hyperbolickou kosinusoidu [code]s[/code] v radiánech.\n"
+"Vrací hyperbolický kosinus [code]s[/code] v radiánech.\n"
"[codeblock]\n"
-"# Vypíše 1.543081\n"
-"print(cosh(1))\n"
+"print(cosh(1)) # Vypíše 1.543081\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:211
@@ -379,10 +398,9 @@ msgstr "Převede z decibelů na linearní energii (audio)."
#: modules/gdscript/doc_classes/@GDScript.xml:218
msgid "Deprecated alias for [method step_decimals]."
-msgstr ""
+msgstr "Zastaralý alias pro [method step_decimals]."
#: modules/gdscript/doc_classes/@GDScript.xml:227
-#, fuzzy
msgid ""
"[b]Note:[/b] [code]dectime[/code] has been deprecated and will be removed in "
"Godot 4.0, please use [method move_toward] instead.\n"
@@ -392,35 +410,33 @@ msgid ""
"a = dectime(60, 10, 0.1)) # a is 59.0\n"
"[/codeblock]"
msgstr ""
-"Vrátí výsledek [code]value[/code] snížený o [code]step[/code] * "
+"[b]Poznámka:[/b] [code]dectime[/code] je zastaralý a bude odstraněn v Godot "
+"4.0, místo toho prosím používejte [method move_toward].\n"
+"Vrací 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"
+"a = dectime(60, 10, 0.1)) # a je 59.0\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:238
-#, fuzzy
msgid ""
"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"r = deg2rad(180) # r is 3.141593\n"
"[/codeblock]"
msgstr ""
-"Vrátí stupně převedené na radiány.\n"
+"Převádí úhel vyjádřený ve stupních na radiány.\n"
"[codeblock]\n"
-"# r je 3.141593\n"
-"r = deg2rad(180)\n"
+"r = deg2rad(180) # r je 3.141593\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:248
-#, fuzzy
msgid ""
"Converts a dictionary (previously created with [method inst2dict]) back to "
"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."
+"Převádí slovník (dříve vytvořený pomocí [method inst2dict]) zpět na "
+"instanci. UžiteÄné pÅ™i deserializaci."
#: modules/gdscript/doc_classes/@GDScript.xml:256
msgid ""
@@ -464,7 +480,6 @@ msgstr ""
"[/ codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:286
-#, fuzzy
msgid ""
"Rounds [code]s[/code] downward (towards negative infinity), returning the "
"largest whole number that is not more than [code]s[/code].\n"
@@ -482,15 +497,14 @@ msgstr ""
"nejvÄ›tší celé Äíslo, které není vÄ›tší než [code] s [/code].\n"
"[codeblock]\n"
"# a je 2,0\n"
-"a = podlaha (2,99)\n"
+"a = floor(2,99)\n"
"# a je -3,0\n"
-"a = podlaha (-2,99)\n"
+"a = floor(-2,99)\n"
"[/ codeblock]\n"
"[b] Poznámka: [/b] Tato metoda vrací float. Pokud potÅ™ebujete celé Äíslo, "
"můžete použít přímo [code] int (s) [/code]."
#: modules/gdscript/doc_classes/@GDScript.xml:301
-#, fuzzy
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -502,8 +516,7 @@ 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"
+"var Zbytek = fmod(7, 5.5) # Zbytek je 1.5\n"
"[/codeblock]\n"
"Pro celoÄíselný zbytek (integerový) používejte % operátor."
@@ -712,6 +725,11 @@ msgid ""
"magnitude of the numbers.\n"
"Infinity values of the same sign are considered equal."
msgstr ""
+"Vrací [code]true[/code] pokud [code]a[/code] a [code]b[/code] se přibližně "
+"rovnají.\n"
+"Přibližně se myslí to, že [code]a[/code] a [code]b[/code] jsou v rozsahu "
+"epsilon každého z nich, které se mÄ›ní s rozsahem tÄ›chto Äísel.\n"
+"NekoneÄné hodnoty stejného znaménka jsou považovány za rovny."
#: modules/gdscript/doc_classes/@GDScript.xml:439
msgid ""
@@ -6693,21 +6711,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6715,7 +6737,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6726,7 +6748,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6734,41 +6756,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6776,61 +6798,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6845,7 +6867,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6854,7 +6876,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6863,7 +6885,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6880,29 +6902,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6939,21 +6961,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6961,7 +6987,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6972,7 +6998,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6980,14 +7006,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6995,21 +7021,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7024,7 +7050,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7039,7 +7065,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7048,7 +7074,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7057,7 +7083,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7076,7 +7102,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10664,7 +10690,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10863,19 +10890,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11712,26 +11751,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13200,80 +13246,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13317,49 +13379,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -15132,26 +15201,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20410,7 +20486,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20537,7 +20614,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21573,8 +21650,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28195,16 +28275,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28212,7 +28294,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28220,73 +28302,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28296,7 +28378,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28306,7 +28388,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28317,7 +28399,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28325,7 +28407,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28333,7 +28415,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28342,21 +28424,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28365,25 +28447,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28391,7 +28473,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28399,7 +28481,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28407,7 +28489,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28415,7 +28497,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28423,7 +28505,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28433,7 +28515,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28443,7 +28525,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28454,31 +28536,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28493,55 +28575,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28766,6 +28848,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28777,7 +28870,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28787,7 +28880,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28799,7 +28892,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28807,17 +28900,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28827,7 +28920,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28836,53 +28929,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28890,7 +28983,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28899,17 +28992,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28922,7 +29015,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28934,7 +29027,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28944,7 +29037,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28955,13 +29048,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28969,19 +29062,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28990,7 +29083,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -29003,12 +29096,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -29023,7 +29125,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -29033,11 +29135,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -29051,7 +29180,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -29064,34 +29193,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -29099,83 +29228,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29183,23 +29312,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32458,14 +32587,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32959,26 +33095,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37596,26 +37739,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42719,27 +42869,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42771,6 +42921,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42807,11 +42965,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42843,7 +43001,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -44111,18 +44269,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -44130,7 +44276,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -44140,13 +44286,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -44160,14 +44321,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44176,7 +44337,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44184,7 +44345,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44200,20 +44361,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44221,75 +44382,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44299,7 +44460,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44309,27 +44470,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44337,81 +44498,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44419,109 +44580,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44532,91 +44693,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44625,13 +44786,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44641,7 +44802,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44649,19 +44810,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44675,45 +44836,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44722,7 +44883,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44733,7 +44894,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44749,14 +44910,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44764,49 +44925,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44815,7 +44976,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44823,7 +44984,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44831,7 +44992,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44841,7 +45002,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44850,7 +45011,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44859,7 +45020,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44869,7 +45030,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44877,7 +45038,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44887,7 +45048,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44897,7 +45058,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44905,7 +45066,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44914,7 +45075,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44922,7 +45083,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44934,477 +45095,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45412,92 +45573,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45507,33 +45668,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45546,7 +45707,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45558,7 +45719,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45570,7 +45731,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45583,7 +45744,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45591,28 +45752,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45622,25 +45783,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45653,7 +45814,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45665,7 +45826,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45677,7 +45838,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45690,13 +45851,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45704,11 +45865,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45722,7 +45883,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45731,7 +45892,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45747,7 +45908,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45757,7 +45918,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45767,7 +45928,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45778,7 +45939,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45788,7 +45949,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45796,7 +45957,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45807,7 +45968,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45822,7 +45983,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45831,13 +45992,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45846,7 +46007,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45856,7 +46017,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45868,7 +46029,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45878,24 +46039,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45904,7 +46065,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45912,7 +46073,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45921,7 +46082,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45931,7 +46092,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45939,31 +46100,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45971,7 +46132,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45981,46 +46142,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -46028,7 +46196,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -46038,7 +46206,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -46047,7 +46215,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -46056,20 +46224,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -46078,7 +46246,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -46086,7 +46254,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -46095,7 +46263,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -46105,20 +46273,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -46127,13 +46295,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -46143,46 +46311,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46192,7 +46360,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46204,7 +46372,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46212,7 +46380,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46220,7 +46388,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46229,7 +46397,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46243,7 +46411,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46253,7 +46421,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46262,7 +46430,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46272,54 +46440,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46330,61 +46498,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46395,7 +46563,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46404,26 +46572,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46434,20 +46602,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46459,52 +46627,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46512,7 +46680,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46522,10 +46690,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46534,10 +46702,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46546,10 +46714,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46558,10 +46726,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46570,10 +46738,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57975,26 +58143,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/de.po b/doc/translations/de.po
index 1a050d19c2..a1c3b07d23 100644
--- a/doc/translations/de.po
+++ b/doc/translations/de.po
@@ -32,12 +32,14 @@
# Ron Eric Hackländer <mail@roneric.net>, 2021.
# Stephan Kerbl <stephankerbl@gmail.com>, 2021.
# jmih03 <joerni@mail.de>, 2021.
+# spoadr <spoadr@gmx.ch>, 2021.
+# Tim <tim14speckenwirth@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-06-28 22:34+0000\n"
-"Last-Translator: jmih03 <joerni@mail.de>\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
+"Last-Translator: Tim <tim14speckenwirth@gmail.com>\n"
"Language-Team: German <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/de/>\n"
"Language: de\n"
@@ -45,45 +47,45 @@ 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.7.1-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Beschreibung"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
-msgstr "Anleitungen"
+msgstr "Tutorials"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Eigenschaften"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Methoden"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Theme-Eigenschaften"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Signale"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Aufzählungen"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Konstanten"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Eigenschaften-Beschreibung"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Methoden-Beschreibung"
@@ -144,7 +146,6 @@ msgstr ""
"Konstanten."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -152,11 +153,10 @@ msgid ""
"a = abs(-1) # a is 1\n"
"[/codeblock]"
msgstr ""
-"Gibt den absoluten Wert des Parameters [code]s[/code] zurück (d.h. "
-"vorzeichenloser Wert).\n"
+"Gibt den absoluten Wert des Parameters [code]s[/code] zurück (d.h. positiver "
+"Wert).\n"
"[codeblock]\n"
-"# a ist 1\n"
-"a = abs(-1)\n"
+"a = abs(-1) # a ist 1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
@@ -313,7 +313,6 @@ msgstr ""
"Winkel)."
#: modules/gdscript/doc_classes/@GDScript.xml:135
-#, fuzzy
msgid ""
"Rounds [code]s[/code] upward (towards positive infinity), returning the "
"smallest whole number that is not less than [code]s[/code].\n"
@@ -325,10 +324,11 @@ msgid ""
msgstr ""
"Rundet [code]s[/code] nach oben auf und gibt die kleinste ganze Zahl zurück, "
"die nicht geringer ist als [code]s[/code].\n"
-"[Codeblock]\n"
-"i = ceil(1,45) # i ist 2\n"
-"i = ceil(1.001) # i ist 2\n"
-"[/codeblock]"
+"[codeblock]\n"
+"a = ceil(1.45) # a ist 2.0\n"
+"a = ceil(1.001) # a ist 2.0\n"
+"[/codeblock]\n"
+"Siehe auch [method floor], [method round], [method stepify] und [int]."
#: modules/gdscript/doc_classes/@GDScript.xml:147
msgid ""
@@ -341,13 +341,13 @@ msgid ""
"[/codeblock]\n"
"This is the inverse of [method ord]."
msgstr ""
-"Gibt ein Zeichen als Zeichenfolge des angegebenen Unicode-Codepunkts zurück "
-"(der mit ASCII-Code kompatibel ist).\n"
-"[Codeblock]\n"
-"a = char (65) # a ist \"A\"\n"
-"a = char (65 + 32) # a ist \"a\"\n"
-"a = char (8364) # a ist \"€\"\n"
-"[/ codeblock]\n"
+"Gibt ein Zeichen als Zeichenkette mit dem angegebenen Unicode-Codepunkt (der "
+"mit dem ASCII-Code kompatibel ist) zurück.\n"
+"[codeblock]\n"
+"a = char(65) # a ist \"A\"\n"
+"a = char(65 + 32) # a ist \"a\"\n"
+"a = char(8364) # a ist \"€\"\n"
+"[/codeblock]\n"
"Dies ist die Umkehrung von [method ord]."
#: modules/gdscript/doc_classes/@GDScript.xml:162
@@ -431,7 +431,7 @@ msgstr "Konvertiert von Dezibel in lineare Energie (Audio)."
#: modules/gdscript/doc_classes/@GDScript.xml:218
msgid "Deprecated alias for [method step_decimals]."
-msgstr ""
+msgstr "Veralteter Alias für [method step_decimals]."
#: modules/gdscript/doc_classes/@GDScript.xml:227
#, fuzzy
@@ -1318,7 +1318,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:758
-#, fuzzy
msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS "
"terminal.\n"
@@ -1330,12 +1329,16 @@ msgid ""
"print an error message and pause project execution in debug builds, use "
"[code]assert(false, \"test error\")[/code] instead."
msgstr ""
-"Gibt eine Fehlermeldung in Godot's integriertem Debugger und in der OS "
-"Konsole aus.\n"
+"Gibt eine Fehlermeldung an Godots integrierten Debugger und an das "
+"Betriebssystem-Terminal aus.\n"
"[codeblock]\n"
-"push_error(\"test error\") # Gibt\"test error\" im Debugger und im Terminal "
-"als Fehlermeldung aus\n"
-"[/codeblock]"
+"push_error(\"test error\") # Gibt \"test error\" als Fehleraufruf an "
+"Debugger und Terminal aus\n"
+"[/codeblock]\n"
+"[b]Hinweis:[/b] Fehler, die auf diese Weise ausgegeben werden, halten die "
+"Projektausführung nicht an. Um eine Fehlermeldung auszugeben und die "
+"Projektausführung in Debug-Builds anzuhalten, verwenden Sie stattdessen "
+"[code]assert(false, \"test error\")[/code]."
#: modules/gdscript/doc_classes/@GDScript.xml:769
msgid ""
@@ -1503,7 +1506,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:884
-#, fuzzy
msgid ""
"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
"rounded away from zero.\n"
@@ -1514,11 +1516,14 @@ msgid ""
"[/codeblock]\n"
"See also [method floor], [method ceil], [method stepify], and [int]."
msgstr ""
-"Rundet [code]s[/code] auf die nächste ganze Zahle, wobei Mittelwerte von "
-"Null weg gerundet werden.\n"
+"Rundet [code]s[/code] auf die nächstliegende ganze Zahl, wobei halbe Werte "
+"aufgerundet werden.\n"
"[codeblock]\n"
-"round(2.6) # Liefert 3\n"
-"[/codeblock]"
+"a = round(2.49) # a ist 2.0\n"
+"a = round(2.5) # a ist 3.0\n"
+"a = round(2.51) # a ist 3,0\n"
+"[/codeblock]\n"
+"Siehe auch [method floor], [method ceil], [method stepify], und [int]."
#: modules/gdscript/doc_classes/@GDScript.xml:897
msgid ""
@@ -1666,7 +1671,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:984
-#, fuzzy
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 "
@@ -1681,9 +1685,10 @@ msgstr ""
"code]. Dies kann auch zum Runden einer Gleitkommazahl auf eine willkürliche "
"Anzahl von Dezimalzen genutzt werden.\n"
"[codeblock]\n"
-"stepify(100, 32) # Returns 96\n"
-"stepify(3.14159, 0.01) # Returns 3.14\n"
-"[/codeblock]"
+"stepify(100, 32) # Gibt 96.0 aus\n"
+"stepify(3.14159, 0.01) # Gibt 3.14 aus\n"
+"[/codeblock]\n"
+"Siehe auch [method ceil], [method floor], [method round], und [int]."
#: modules/gdscript/doc_classes/@GDScript.xml:995
#, fuzzy
@@ -3373,7 +3378,7 @@ msgstr "ungültige Zeitdauer."
#: doc/classes/@GlobalScope.xml:941
msgid "Gamepad button 0."
-msgstr ""
+msgstr "Gamepad-Taste 0."
#: doc/classes/@GlobalScope.xml:944
#, fuzzy
@@ -3387,83 +3392,83 @@ msgstr "Extra Maustaste 2 Maske."
#: doc/classes/@GlobalScope.xml:950
msgid "Gamepad button 3."
-msgstr ""
+msgstr "Gamepad-Taste 3."
#: doc/classes/@GlobalScope.xml:953
msgid "Gamepad button 4."
-msgstr ""
+msgstr "Gamepad-Taste 4."
#: doc/classes/@GlobalScope.xml:956
msgid "Gamepad button 5."
-msgstr ""
+msgstr "Gamepad-Taste 5."
#: doc/classes/@GlobalScope.xml:959
msgid "Gamepad button 6."
-msgstr ""
+msgstr "Gamepad-Taste 6."
#: doc/classes/@GlobalScope.xml:962
msgid "Gamepad button 7."
-msgstr ""
+msgstr "Gamepad-Taste 7."
#: doc/classes/@GlobalScope.xml:965
msgid "Gamepad button 8."
-msgstr ""
+msgstr "Gamepad-Taste 8."
#: doc/classes/@GlobalScope.xml:968
msgid "Gamepad button 9."
-msgstr ""
+msgstr "Gamepad-Taste 9."
#: doc/classes/@GlobalScope.xml:971
msgid "Gamepad button 10."
-msgstr ""
+msgstr "Gamepad-Taste 10."
#: doc/classes/@GlobalScope.xml:974
msgid "Gamepad button 11."
-msgstr ""
+msgstr "Gamepad-Taste 11."
#: doc/classes/@GlobalScope.xml:977
msgid "Gamepad button 12."
-msgstr ""
+msgstr "Gamepad-Taste 12."
#: doc/classes/@GlobalScope.xml:980
msgid "Gamepad button 13."
-msgstr ""
+msgstr "Gamepad-Taste 13."
#: doc/classes/@GlobalScope.xml:983
msgid "Gamepad button 14."
-msgstr ""
+msgstr "Gamepad-Taste 14."
#: doc/classes/@GlobalScope.xml:986
msgid "Gamepad button 15."
-msgstr ""
+msgstr "Gamepad-Taste 15."
#: doc/classes/@GlobalScope.xml:989
msgid "Gamepad button 16."
-msgstr ""
+msgstr "Gamepad-Taste 16."
#: doc/classes/@GlobalScope.xml:992
msgid "Gamepad button 17."
-msgstr ""
+msgstr "Gamepad-Taste 17."
#: doc/classes/@GlobalScope.xml:995
msgid "Gamepad button 18."
-msgstr ""
+msgstr "Gamepad-Taste 18."
#: doc/classes/@GlobalScope.xml:998
msgid "Gamepad button 19."
-msgstr ""
+msgstr "Gamepad-Taste 19."
#: doc/classes/@GlobalScope.xml:1001
msgid "Gamepad button 20."
-msgstr ""
+msgstr "Gamepad-Taste 20."
#: doc/classes/@GlobalScope.xml:1004
msgid "Gamepad button 21."
-msgstr ""
+msgstr "Gamepad-Taste 21."
#: doc/classes/@GlobalScope.xml:1007
msgid "Gamepad button 22."
-msgstr ""
+msgstr "Gamepad-Taste 22."
#: doc/classes/@GlobalScope.xml:1010
#, fuzzy
@@ -3472,19 +3477,19 @@ msgstr "Die maximale Anzahl der Tasten des Game Controllers."
#: doc/classes/@GlobalScope.xml:1013
msgid "DualShock circle button."
-msgstr ""
+msgstr "DualShock-Kreis-Taste."
#: doc/classes/@GlobalScope.xml:1016
msgid "DualShock X button."
-msgstr ""
+msgstr "DualShock-X-Taste."
#: doc/classes/@GlobalScope.xml:1019
msgid "DualShock square button."
-msgstr ""
+msgstr "DualShock-Quadrat-Taste."
#: doc/classes/@GlobalScope.xml:1022
msgid "DualShock triangle button."
-msgstr ""
+msgstr "DualShock-Dreieck-Taste."
#: doc/classes/@GlobalScope.xml:1025
#, fuzzy
@@ -3543,44 +3548,49 @@ msgid ""
"A button on the right Oculus Touch controller, X button on the left "
"controller (also when used in OpenVR)."
msgstr ""
+"A-Taste auf dem rechten Oculus Touch Controller, X-Taste auf dem linken "
+"Controller (auch bei Verwendung in OpenVR)."
#: doc/classes/@GlobalScope.xml:1061
msgid ""
"B button on the right Oculus Touch controller, Y button on the left "
"controller (also when used in OpenVR)."
msgstr ""
+"B-Taste auf dem rechten Oculus Touch Controller, Y-Taste auf dem linken "
+"Controller (auch bei Verwendung in OpenVR)."
#: doc/classes/@GlobalScope.xml:1064
msgid "Menu button on either Oculus Touch controller."
-msgstr ""
+msgstr "Menütaste auf einem der beiden Oculus Touch Controller."
#: doc/classes/@GlobalScope.xml:1067
msgid "Menu button in OpenVR (Except when Oculus Touch controllers are used)."
msgstr ""
+"Menütaste in OpenVR (außer wenn Oculus Touch Controller verwendet werden)."
#: doc/classes/@GlobalScope.xml:1070
msgid "Gamepad button Select."
-msgstr ""
+msgstr "Gamepad-Taste Auswählen."
#: doc/classes/@GlobalScope.xml:1073
msgid "Gamepad button Start."
-msgstr ""
+msgstr "Gamepad-Taste Start."
#: doc/classes/@GlobalScope.xml:1076
msgid "Gamepad DPad up."
-msgstr ""
+msgstr "Gamepad DPad oben."
#: doc/classes/@GlobalScope.xml:1079
msgid "Gamepad DPad down."
-msgstr ""
+msgstr "Gamepad DPad unten."
#: doc/classes/@GlobalScope.xml:1082
msgid "Gamepad DPad left."
-msgstr ""
+msgstr "Gamepad DPad links."
#: doc/classes/@GlobalScope.xml:1085
msgid "Gamepad DPad right."
-msgstr ""
+msgstr "Gamepad DPad rechts."
#: doc/classes/@GlobalScope.xml:1088
#, fuzzy
@@ -3690,7 +3700,7 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1157
msgid "Represents the maximum number of joystick axes supported."
-msgstr ""
+msgstr "Stellt die maximale Anzahl der unterstützten Joystick-Achsen dar."
#: doc/classes/@GlobalScope.xml:1172
msgid "Gamepad left analog trigger."
@@ -3715,12 +3725,16 @@ msgid ""
"OpenVR touchpad X axis (Joystick axis on Oculus Touch and Windows MR "
"controllers)."
msgstr ""
+"OpenVR-Touchpad X-Achse (Joystick-Achse bei Oculus Touch und Windows MR-"
+"Controllern)."
#: doc/classes/@GlobalScope.xml:1187
msgid ""
"OpenVR touchpad Y axis (Joystick axis on Oculus Touch and Windows MR "
"controllers)."
msgstr ""
+"OpenVR-Touchpad Y-Achse (Joystick-Achse bei Oculus Touch und Windows MR-"
+"Controllern)."
#: doc/classes/@GlobalScope.xml:1190
msgid "MIDI note OFF message."
@@ -3992,15 +4006,14 @@ msgid ""
"or_greater,or_lesser\"[/code]."
msgstr ""
"Weist darauf hin, dass eine Integer- oder Float-Eigenschaft innerhalb eines "
-"Bereichs liegen sollte, der mit der Hinweiszeichenfolge [code]\"min,max\"[/"
+"Bereichs liegen sollte, der mit der Hinweiszeichenkette [code]\"min,max\"[/"
"code] oder [code]\"min,max,step\"[/code] angegeben wird. Die "
-"Hinweiszeichenfolge kann optional [code]\"oder_größer\"[/code] und/oder "
-"[code]\"oder_kleiner\"[/code] enthalten, um eine manuelle Eingabe oberhalb "
-"der Maximal- bzw. unterhalb der Minimalwerte zu ermöglichen. Beispiel: "
+"Hinweiszeichenkette kann optional [code]\"or_greater\"[/code] und/oder "
+"[code]\"or_lesser\"[/code] enthalten, um eine manuelle Eingabe oberhalb der "
+"Höchst- bzw. unterhalb der Mindestwerte zu ermöglichen. Beispiel: "
"[code]\"-360,360,1,or_greater,or_lesser\"[/code]."
#: doc/classes/@GlobalScope.xml:1373
-#, fuzzy
msgid ""
"Hints that a float property should be within an exponential range specified "
"via the hint string [code]\"min,max\"[/code] or [code]\"min,max,step\"[/"
@@ -4009,12 +4022,12 @@ msgid ""
"above the max or below the min values. Example: [code]\"0.01,100,0.01,"
"or_greater\"[/code]."
msgstr ""
-"Weist darauf hin, dass eine Integer- oder Float-Eigenschaft innerhalb eines "
-"exponentiellen Bereichs liegen sollte, der mit der Hinweiszeichenfolge "
-"[code]\"min,max\"[/code] oder [code]\"min,max,step\"[/code] angegeben wird. "
-"Die Hinweiszeichenfolge kann optional [code]\"oder_größer\"[/code] und/oder "
-"[code]\"oder_kleiner\"[/code] enthalten, um eine manuelle Eingabe oberhalb "
-"der Maximal- bzw. unterhalb der Minimalwerte zu ermöglichen. Beispiel: "
+"Weist darauf hin, dass eine Float-Eigenschaft innerhalb eines exponentiellen "
+"Bereichs liegen sollte, der durch die Hinweiszeichenkette [code]\"min,max\"[/"
+"code] oder [code]\"min,max,step\"[/code] festgelegt wird. Die "
+"Hinweiszeichenkettekann optional [code]\"or_greater\"[/code] und/oder "
+"[code]\"or_lesser\"[/code] enthalten, um eine manuelle Eingabe oberhalb der "
+"Maximal- bzw. unterhalb der Minimalwerte zu ermöglichen. Beispiel: "
"[code]\"0.01,100,0.01,or_greater\"[/code]."
#: doc/classes/@GlobalScope.xml:1376
@@ -4023,9 +4036,10 @@ msgid ""
"pick in a list specified via a hint string such as [code]\"Hello,Something,"
"Else\"[/code]."
msgstr ""
-"Weist darauf hin, dass eine Integer-, Float- oder String-Eigenschaft ein "
-"Aufzählungswert ist, der in einer über eine Hinweiszeichenfolge wie "
-"[code]\"Hello,Something,Else\"[/code] angegebenen Liste auszuwählen ist."
+"Weist darauf hin, dass es sich bei einer Integer-, Float- oder Zeichenketten-"
+"Eigenschaft um einen Aufzählungswert handelt, der in einer über eine "
+"Hinweiszeichenkette wie [code]\"Hello,Something,Else\"[/code] angegebenen "
+"Liste auszuwählen ist."
#: doc/classes/@GlobalScope.xml:1379
msgid ""
@@ -8005,23 +8019,28 @@ msgstr "https://docs.godotengine.org/de/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
#, fuzzy
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
-"Gibt eine Liste der sich schneidenden [Area2D]s zurück. Aus Leistungsgründen "
-"(Kollisionen werden alle gleichzeitig verarbeitet) wird diese Liste einmal "
-"während des Physikschritts geändert, nicht sofort nach dem Verschieben von "
-"Objekten. Erwägen Sie stattdessen die Verwendung von Signalen."
+"Gibt eine Liste der sich schneidenden [PhysicsBody2D]s zurück. Aus "
+"Leistungsgründen (Kollisionen werden alle gleichzeitig verarbeitet) wird "
+"diese Liste einmal während des Physikschritts geändert, nicht sofort nach "
+"dem Verschieben von Objekten. Erwägen Sie stattdessen die Verwendung von "
+"Signalen."
-#: doc/classes/Area.xml:23
+#: doc/classes/Area.xml:24
#, fuzzy
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
"Gibt eine Liste der sich schneidenden [PhysicsBody2D]s zurück. Aus "
"Leistungsgründen (Kollisionen werden alle gleichzeitig verarbeitet) wird "
@@ -8029,7 +8048,7 @@ msgstr ""
"dem Verschieben von Objekten. Erwägen Sie stattdessen die Verwendung von "
"Signalen."
-#: doc/classes/Area.xml:30
+#: doc/classes/Area.xml:32
#, fuzzy
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
@@ -8043,7 +8062,7 @@ msgstr ""
"Ãœberlappungen einmal pro Frame und vor dem Physikschritt aktualisiert. "
"Erwägen Sie stattdessen die Verwendung von Signalen."
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
#, fuzzy
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
@@ -8064,7 +8083,7 @@ msgstr ""
"registrieren sie ihre Kacheln mit Kollisionsformen als virtuellen "
"Physikkörper)."
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
#, fuzzy
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
@@ -8076,18 +8095,18 @@ msgstr ""
"den Winkelgeschwindigkeitsverlust pro Sekunde dar. Die Werte reichen von "
"[code]0[/code] (keine Dämpfung) bis [code]1[/code] (volle Dämpfung)."
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr "Der Name des Audiobusses des Bereichs."
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
"Wenn [code]true[/code], hat der Audiobus des Bereichs Vorrang vor dem "
"Standard-Audiobus."
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
#, fuzzy
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
@@ -8098,7 +8117,7 @@ msgstr ""
"Wert multipliziert den Schwerkraftvektor. Dies ist nützlich, um die "
"Schwerkraft zu ändern, ohne ihre Richtung zu ändern."
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
@@ -8106,7 +8125,7 @@ msgstr ""
"Der Falloff-Faktor für die Punktgravitation. Je größer der Wert, desto "
"schneller nimmt die Schwerkraft mit der Entfernung ab."
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
@@ -8114,7 +8133,7 @@ msgstr ""
"Wenn [code]true[/code], wird die Schwerkraft von einem Punkt aus berechnet "
"(eingestellt über [member gravity_vec]). Siehe auch [member space_override]."
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
msgid ""
"The area's gravity vector (not normalized). If gravity is a point (see "
"[member gravity_point]), this will be the point of attraction."
@@ -8122,7 +8141,7 @@ msgstr ""
"Der Gravitationsvektor der Fläche (nicht normiert). Wenn die Schwerkraft ein "
"Punkt ist (siehe [member gravity_point]), wird dies der Anziehungspunkt sein."
-#: doc/classes/Area.xml:68
+#: doc/classes/Area.xml:70
#, fuzzy
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
@@ -8134,13 +8153,13 @@ msgstr ""
"den linearen Geschwindigkeitsverlust pro Sekunde dar. Die Werte reichen von "
"[code]0[/code] (keine Dämpfung) bis [code]1[/code] (volle Dämpfung)."
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
"Wenn [code]true[/code], können andere Überwachungsbereiche diesen Bereich "
"erkennen."
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
@@ -8148,52 +8167,52 @@ msgstr ""
"If [code]true[/code], erkennt die area ob andere Körper oder area's ihn "
"betreten oder verlassen."
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
"Die Area Priorität. Area's mit höherer Priorität werden zuerst bearbeitet."
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8208,7 +8227,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -8217,7 +8236,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -8226,7 +8245,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -8243,29 +8262,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr "Diese Area hat keinen Einfluss auf die Gravitation oder die Dämpfung."
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -8308,23 +8327,29 @@ msgid "https://godotengine.org/asset-library/asset/120"
msgstr "https://docs.godotengine.org/de/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
+#, fuzzy
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"Gibt eine Liste der sich schneidenden [Area2D]s zurück. Aus Leistungsgründen "
"(Kollisionen werden alle gleichzeitig verarbeitet) wird diese Liste einmal "
"während des Physikschritts geändert, nicht sofort nach dem Verschieben von "
"Objekten. Erwägen Sie stattdessen die Verwendung von Signalen."
-#: doc/classes/Area2D.xml:25
+#: doc/classes/Area2D.xml:26
+#, fuzzy
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"Gibt eine Liste der sich schneidenden [PhysicsBody2D]s zurück. Aus "
"Leistungsgründen (Kollisionen werden alle gleichzeitig verarbeitet) wird "
@@ -8332,7 +8357,7 @@ msgstr ""
"dem Verschieben von Objekten. Erwägen Sie stattdessen die Verwendung von "
"Signalen."
-#: doc/classes/Area2D.xml:32
+#: doc/classes/Area2D.xml:34
#, fuzzy
msgid ""
"If [code]true[/code], the given area overlaps the Area2D.\n"
@@ -8346,7 +8371,7 @@ msgstr ""
"Ãœberlappungen einmal pro Frame und vor dem Physikschritt aktualisiert. "
"Erwägen Sie stattdessen die Verwendung von Signalen."
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
#, fuzzy
msgid ""
"If [code]true[/code], the given physics body overlaps the Area2D.\n"
@@ -8367,7 +8392,7 @@ msgstr ""
"registrieren sie ihre Kacheln mit Kollisionsformen als virtuellen "
"Physikkörper)."
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
#, fuzzy
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
@@ -8379,7 +8404,7 @@ msgstr ""
"den Winkelgeschwindigkeitsverlust pro Sekunde dar. Die Werte reichen von "
"[code]0[/code] (keine Dämpfung) bis [code]1[/code] (volle Dämpfung)."
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
#, fuzzy
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
@@ -8390,7 +8415,7 @@ msgstr ""
"Wert multipliziert den Schwerkraftvektor. Dies ist nützlich, um die "
"Schwerkraft zu ändern, ohne ihre Richtung zu ändern."
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
#, fuzzy
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
@@ -8402,21 +8427,21 @@ msgstr ""
"den linearen Geschwindigkeitsverlust pro Sekunde dar. Die Werte reichen von "
"[code]0[/code] (keine Dämpfung) bis [code]1[/code] (volle Dämpfung)."
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8431,7 +8456,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8446,7 +8471,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8455,7 +8480,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8464,7 +8489,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8483,7 +8508,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -12094,7 +12119,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -12295,19 +12321,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -13156,26 +13194,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -14666,80 +14711,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -14783,49 +14844,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14843,7 +14911,7 @@ msgstr ""
#: doc/classes/CircleShape2D.xml:15
msgid "The circle's radius."
-msgstr "Radius des Kreises"
+msgstr "Der Radius des Kreises."
#: doc/classes/ClassDB.xml:4
msgid "Class information repository."
@@ -15826,6 +15894,8 @@ msgstr ""
msgid ""
"The color's alpha (transparency) component, typically on the range of 0 to 1."
msgstr ""
+"Die Alpha-Komponente (Transparenz) der Farbe, normalerweise im Bereich von 0 "
+"bis 1."
#: doc/classes/Color.xml:245
msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
@@ -15833,7 +15903,7 @@ msgstr ""
#: doc/classes/Color.xml:248
msgid "The color's blue component, typically on the range of 0 to 1."
-msgstr ""
+msgstr "Der Blauanteil der Farbe, normalerweise im Bereich von 0 bis 1."
#: doc/classes/Color.xml:251
msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
@@ -15841,7 +15911,7 @@ msgstr ""
#: doc/classes/Color.xml:254
msgid "The color's green component, typically on the range of 0 to 1."
-msgstr ""
+msgstr "Der Grünanteil der Farbe, normalerweise im Bereich von 0 bis 1."
#: doc/classes/Color.xml:257
msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
@@ -15849,11 +15919,11 @@ msgstr ""
#: doc/classes/Color.xml:260
msgid "The HSV hue of this color, on the range 0 to 1."
-msgstr ""
+msgstr "Der HSV-Farbton dieser Farbe, im Bereich von 0 bis 1."
#: doc/classes/Color.xml:263
msgid "The color's red component, typically on the range of 0 to 1."
-msgstr ""
+msgstr "Der Rotanteil der Farbe, normalerweise im Bereich von 0 bis 1."
#: doc/classes/Color.xml:266
msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
@@ -15861,15 +15931,15 @@ msgstr ""
#: doc/classes/Color.xml:269
msgid "The HSV saturation of this color, on the range 0 to 1."
-msgstr ""
+msgstr "Die HSV-Sättigung dieser Farbe, im Bereich von 0 bis 1."
#: doc/classes/Color.xml:272
msgid "The HSV value (brightness) of this color, on the range 0 to 1."
-msgstr ""
+msgstr "Der HSV-Wert (Helligkeit) dieser Farbe, im Bereich von 0 bis 1."
#: doc/classes/Color.xml:277
msgid "Alice blue color."
-msgstr ""
+msgstr "Aliceblau Farbe."
#: doc/classes/Color.xml:280
msgid "Antique white color."
@@ -15877,7 +15947,7 @@ msgstr ""
#: doc/classes/Color.xml:283
msgid "Aqua color."
-msgstr "Farbe Aqua."
+msgstr "Aqua Farbe."
#: doc/classes/Color.xml:286
msgid "Aquamarine color."
@@ -15897,563 +15967,563 @@ msgstr "Biskuit Farbe."
#: doc/classes/Color.xml:298
msgid "Black color."
-msgstr ""
+msgstr "Schwarze Farbe."
#: doc/classes/Color.xml:301
msgid "Blanche almond color."
-msgstr ""
+msgstr "Blanche Mandel Farbe."
#: doc/classes/Color.xml:304
msgid "Blue color."
-msgstr ""
+msgstr "Blaue Farbe."
#: doc/classes/Color.xml:307
msgid "Blue violet color."
-msgstr ""
+msgstr "Blauviolette Farbe."
#: doc/classes/Color.xml:310
msgid "Brown color."
-msgstr ""
+msgstr "Braune Farbe."
#: doc/classes/Color.xml:313
msgid "Burly wood color."
-msgstr ""
+msgstr "Kräftige Holzfarbe."
#: doc/classes/Color.xml:316
msgid "Cadet blue color."
-msgstr ""
+msgstr "Kadettblaue Farbe."
#: doc/classes/Color.xml:319
msgid "Chartreuse color."
-msgstr ""
+msgstr "Chartreuse Farbe."
#: doc/classes/Color.xml:322
msgid "Chocolate color."
-msgstr ""
+msgstr "Schokolade Farbe."
#: doc/classes/Color.xml:325
msgid "Coral color."
-msgstr ""
+msgstr "Korallenrote Farbe."
#: doc/classes/Color.xml:328
msgid "Cornflower color."
-msgstr ""
+msgstr "Kornblumenblaue Farbe."
#: doc/classes/Color.xml:331
msgid "Corn silk color."
-msgstr ""
+msgstr "Maisseide Farbe."
#: doc/classes/Color.xml:334
msgid "Crimson color."
-msgstr ""
+msgstr "Karminrote Farbe."
#: doc/classes/Color.xml:337
msgid "Cyan color."
-msgstr ""
+msgstr "Cyan Farbe."
#: doc/classes/Color.xml:340
msgid "Dark blue color."
-msgstr "Dunkelblaue Farbe"
+msgstr "Dunkelblaue Farbe."
#: doc/classes/Color.xml:343
msgid "Dark cyan color."
-msgstr ""
+msgstr "Dunkelcyan Farben."
#: doc/classes/Color.xml:346
msgid "Dark goldenrod color."
-msgstr ""
+msgstr "Dunkle goldgelbe Farbe."
#: doc/classes/Color.xml:349
msgid "Dark gray color."
-msgstr "Dunkelgraue Farbe"
+msgstr "Dunkelgraue Farbe."
#: doc/classes/Color.xml:352
msgid "Dark green color."
-msgstr "Dunkelgrüne Farbe"
+msgstr "Dunkelgrüne Farbe."
#: doc/classes/Color.xml:355
msgid "Dark khaki color."
-msgstr ""
+msgstr "Dunkel Khaki Farbe."
#: doc/classes/Color.xml:358
msgid "Dark magenta color."
-msgstr ""
+msgstr "Dunkle Magenta Farbe."
#: doc/classes/Color.xml:361
msgid "Dark olive green color."
-msgstr ""
+msgstr "Dunkle olivgrüne Farbe."
#: doc/classes/Color.xml:364
msgid "Dark orange color."
-msgstr ""
+msgstr "Dunkelorange Farbe."
#: doc/classes/Color.xml:367
msgid "Dark orchid color."
-msgstr ""
+msgstr "Dunkle Orchidee Farbe."
#: doc/classes/Color.xml:370
msgid "Dark red color."
-msgstr ""
+msgstr "Dunkelrote Farbe."
#: doc/classes/Color.xml:373
msgid "Dark salmon color."
-msgstr ""
+msgstr "Dunkle lachsfarbene Farbe."
#: doc/classes/Color.xml:376
msgid "Dark sea green color."
-msgstr ""
+msgstr "Dunkle meergrüne Farbe."
#: doc/classes/Color.xml:379
msgid "Dark slate blue color."
-msgstr ""
+msgstr "Dunkle schieferblaue Farbe."
#: doc/classes/Color.xml:382
msgid "Dark slate gray color."
-msgstr ""
+msgstr "Dunkle schiefergraue Farbe."
#: doc/classes/Color.xml:385
msgid "Dark turquoise color."
-msgstr ""
+msgstr "Dunkeltürkise Farbe."
#: doc/classes/Color.xml:388
msgid "Dark violet color."
-msgstr ""
+msgstr "Dunkelviolette Farbe."
#: doc/classes/Color.xml:391
msgid "Deep pink color."
-msgstr ""
+msgstr "Tiefrosa Farbe."
#: doc/classes/Color.xml:394
msgid "Deep sky blue color."
-msgstr ""
+msgstr "Tiefe himmelblaue Farbe."
#: doc/classes/Color.xml:397
msgid "Dim gray color."
-msgstr ""
+msgstr "Gedämpfte graue Farbe."
#: doc/classes/Color.xml:400
msgid "Dodger blue color."
-msgstr ""
+msgstr "Dodgerblaue Farbe."
#: doc/classes/Color.xml:403
msgid "Firebrick color."
-msgstr ""
+msgstr "Feuerstein Farbe."
#: doc/classes/Color.xml:406
msgid "Floral white color."
-msgstr ""
+msgstr "Florale weiße Farbe."
#: doc/classes/Color.xml:409
msgid "Forest green color."
-msgstr ""
+msgstr "Waldgrüne Farbe."
#: doc/classes/Color.xml:412
msgid "Fuchsia color."
-msgstr ""
+msgstr "Fuchsia Farbe."
#: doc/classes/Color.xml:415
msgid "Gainsboro color."
-msgstr ""
+msgstr "Gainsboro Farbe."
#: doc/classes/Color.xml:418
msgid "Ghost white color."
-msgstr ""
+msgstr "Geisterweiße Farbe."
#: doc/classes/Color.xml:421
msgid "Gold color."
-msgstr ""
+msgstr "Goldene Farbe."
#: doc/classes/Color.xml:424
msgid "Goldenrod color."
-msgstr ""
+msgstr "Goldrute Farbe."
#: doc/classes/Color.xml:427
msgid "Gray color."
-msgstr ""
+msgstr "Graue Farbe."
#: doc/classes/Color.xml:430
msgid "Green color."
-msgstr ""
+msgstr "Grüne Farbe."
#: doc/classes/Color.xml:433
msgid "Green yellow color."
-msgstr ""
+msgstr "Grün-gelbe Farbe."
#: doc/classes/Color.xml:436
msgid "Honeydew color."
-msgstr ""
+msgstr "Honigtau Farbe."
#: doc/classes/Color.xml:439
msgid "Hot pink color."
-msgstr ""
+msgstr "Heiße rosa Farbe."
#: doc/classes/Color.xml:442
msgid "Indian red color."
-msgstr ""
+msgstr "Indisch rote Farbe."
#: doc/classes/Color.xml:445
msgid "Indigo color."
-msgstr ""
+msgstr "Indigo Farbe."
#: doc/classes/Color.xml:448
msgid "Ivory color."
-msgstr ""
+msgstr "Elfenbein Farbe."
#: doc/classes/Color.xml:451
msgid "Khaki color."
-msgstr ""
+msgstr "Khaki Farbe."
#: doc/classes/Color.xml:454
msgid "Lavender color."
-msgstr ""
+msgstr "Lavendel Farbe."
#: doc/classes/Color.xml:457
msgid "Lavender blush color."
-msgstr ""
+msgstr "Lavendelrote Farbe."
#: doc/classes/Color.xml:460
msgid "Lawn green color."
-msgstr ""
+msgstr "Rasengrüne Farbe."
#: doc/classes/Color.xml:463
msgid "Lemon chiffon color."
-msgstr ""
+msgstr "Zitrone Chiffon Farbe."
#: doc/classes/Color.xml:466
msgid "Light blue color."
-msgstr ""
+msgstr "Hellblaue Farbe."
#: doc/classes/Color.xml:469
msgid "Light coral color."
-msgstr ""
+msgstr "Helle korallenrote Farbe."
#: doc/classes/Color.xml:472
msgid "Light cyan color."
-msgstr ""
+msgstr "Helle Cyan Farbe."
#: doc/classes/Color.xml:475
msgid "Light goldenrod color."
-msgstr ""
+msgstr "Helle Goldrute Farbe."
#: doc/classes/Color.xml:478
msgid "Light gray color."
-msgstr ""
+msgstr "Hellgraue Farbe."
#: doc/classes/Color.xml:481
msgid "Light green color."
-msgstr ""
+msgstr "Hellgrüne Farbe."
#: doc/classes/Color.xml:484
msgid "Light pink color."
-msgstr ""
+msgstr "Hellrosa Farbe."
#: doc/classes/Color.xml:487
msgid "Light salmon color."
-msgstr ""
+msgstr "Helle lachsfarbene Farbe."
#: doc/classes/Color.xml:490
msgid "Light sea green color."
-msgstr ""
+msgstr "Helle meergrüne Farbe."
#: doc/classes/Color.xml:493
msgid "Light sky blue color."
-msgstr ""
+msgstr "Helle himmelblaue Farbe."
#: doc/classes/Color.xml:496
msgid "Light slate gray color."
-msgstr ""
+msgstr "Helle schiefergraue Farbe."
#: doc/classes/Color.xml:499
msgid "Light steel blue color."
-msgstr ""
+msgstr "Helle stahlblaue Farbe."
#: doc/classes/Color.xml:502
msgid "Light yellow color."
-msgstr ""
+msgstr "Hellgelbe Farbe."
#: doc/classes/Color.xml:505
msgid "Lime color."
-msgstr ""
+msgstr "Limette Farbe."
#: doc/classes/Color.xml:508
msgid "Lime green color."
-msgstr ""
+msgstr "Limonengrüne Farbe."
#: doc/classes/Color.xml:511
msgid "Linen color."
-msgstr ""
+msgstr "Leinen Farbe."
#: doc/classes/Color.xml:514
msgid "Magenta color."
-msgstr ""
+msgstr "Magenta Farbe."
#: doc/classes/Color.xml:517
msgid "Maroon color."
-msgstr ""
+msgstr "Kastanienbraune Farbe."
#: doc/classes/Color.xml:520
msgid "Medium aquamarine color."
-msgstr ""
+msgstr "Mittlere Aquamarin Farbe."
#: doc/classes/Color.xml:523
msgid "Medium blue color."
-msgstr ""
+msgstr "Mittelblaue Farbe."
#: doc/classes/Color.xml:526
msgid "Medium orchid color."
-msgstr ""
+msgstr "Mittlere Orchideen Farbe."
#: doc/classes/Color.xml:529
msgid "Medium purple color."
-msgstr ""
+msgstr "Mittlere violette Farbe."
#: doc/classes/Color.xml:532
msgid "Medium sea green color."
-msgstr ""
+msgstr "Mittlere meergrüne Farbe."
#: doc/classes/Color.xml:535
msgid "Medium slate blue color."
-msgstr ""
+msgstr "Mittlere schieferblaue Farbe."
#: doc/classes/Color.xml:538
msgid "Medium spring green color."
-msgstr ""
+msgstr "Mittlere frühlingsgrüne Farbe."
#: doc/classes/Color.xml:541
msgid "Medium turquoise color."
-msgstr ""
+msgstr "Mittlere türkise Farbe."
#: doc/classes/Color.xml:544
msgid "Medium violet red color."
-msgstr ""
+msgstr "Mittlere violettrote Farbe."
#: doc/classes/Color.xml:547
msgid "Midnight blue color."
-msgstr ""
+msgstr "Mitternachtsblaue Farbe."
#: doc/classes/Color.xml:550
msgid "Mint cream color."
-msgstr ""
+msgstr "Mint-Creme Farbe."
#: doc/classes/Color.xml:553
msgid "Misty rose color."
-msgstr ""
+msgstr "Neblige rosa Farbe."
#: doc/classes/Color.xml:556
msgid "Moccasin color."
-msgstr ""
+msgstr "Mokassin Farbe."
#: doc/classes/Color.xml:559
msgid "Navajo white color."
-msgstr ""
+msgstr "Navajo weiße Farbe."
#: doc/classes/Color.xml:562
msgid "Navy blue color."
-msgstr ""
+msgstr "Marineblaue Farbe."
#: doc/classes/Color.xml:565
msgid "Old lace color."
-msgstr ""
+msgstr "Alte Spitze Farbe."
#: doc/classes/Color.xml:568
msgid "Olive color."
-msgstr ""
+msgstr "Olive Farbe."
#: doc/classes/Color.xml:571
msgid "Olive drab color."
-msgstr ""
+msgstr "Olivgrüne Farbe."
#: doc/classes/Color.xml:574
msgid "Orange color."
-msgstr ""
+msgstr "Orange Farbe."
#: doc/classes/Color.xml:577
msgid "Orange red color."
-msgstr ""
+msgstr "Orangerote Farbe."
#: doc/classes/Color.xml:580
msgid "Orchid color."
-msgstr ""
+msgstr "Orchidee Farbe."
#: doc/classes/Color.xml:583
msgid "Pale goldenrod color."
-msgstr ""
+msgstr "Blasse Goldrute Farbe."
#: doc/classes/Color.xml:586
msgid "Pale green color."
-msgstr ""
+msgstr "Blassgrüne Farbe."
#: doc/classes/Color.xml:589
msgid "Pale turquoise color."
-msgstr ""
+msgstr "Blasse türkise Farbe."
#: doc/classes/Color.xml:592
msgid "Pale violet red color."
-msgstr ""
+msgstr "Blass violettrote Farbe."
#: doc/classes/Color.xml:595
msgid "Papaya whip color."
-msgstr ""
+msgstr "Papaya-Peitsche Farbe."
#: doc/classes/Color.xml:598
msgid "Peach puff color."
-msgstr ""
+msgstr "Pfirsich Puff Farbe."
#: doc/classes/Color.xml:601
msgid "Peru color."
-msgstr ""
+msgstr "Peru Farbe."
#: doc/classes/Color.xml:604
msgid "Pink color."
-msgstr ""
+msgstr "Rosa Farbe."
#: doc/classes/Color.xml:607
msgid "Plum color."
-msgstr ""
+msgstr "Pflaume Farbe."
#: doc/classes/Color.xml:610
msgid "Powder blue color."
-msgstr ""
+msgstr "Pulverblaue Farbe."
#: doc/classes/Color.xml:613
msgid "Purple color."
-msgstr ""
+msgstr "Violette Farbe."
#: doc/classes/Color.xml:616
msgid "Rebecca purple color."
-msgstr ""
+msgstr "Rebecca violette Farbe."
#: doc/classes/Color.xml:619
msgid "Red color."
-msgstr ""
+msgstr "Rote Farbe."
#: doc/classes/Color.xml:622
msgid "Rosy brown color."
-msgstr ""
+msgstr "Rosigbraune Farbe."
#: doc/classes/Color.xml:625
msgid "Royal blue color."
-msgstr ""
+msgstr "Königsblaue Farbe."
#: doc/classes/Color.xml:628
msgid "Saddle brown color."
-msgstr ""
+msgstr "Sattelbraune Farbe."
#: doc/classes/Color.xml:631
msgid "Salmon color."
-msgstr ""
+msgstr "Lachsfarbige Farbe."
#: doc/classes/Color.xml:634
msgid "Sandy brown color."
-msgstr ""
+msgstr "Sandige braune Farbe."
#: doc/classes/Color.xml:637
msgid "Sea green color."
-msgstr ""
+msgstr "Meeresgrüne Farbe."
#: doc/classes/Color.xml:640
msgid "Seashell color."
-msgstr ""
+msgstr "Muschel Farbe."
#: doc/classes/Color.xml:643
msgid "Sienna color."
-msgstr ""
+msgstr "Siena Farbe."
#: doc/classes/Color.xml:646
msgid "Silver color."
-msgstr ""
+msgstr "Silberne Farbe."
#: doc/classes/Color.xml:649
msgid "Sky blue color."
-msgstr ""
+msgstr "Himmelblaue Farbe."
#: doc/classes/Color.xml:652
msgid "Slate blue color."
-msgstr ""
+msgstr "Schieferblaue Farbe."
#: doc/classes/Color.xml:655
msgid "Slate gray color."
-msgstr ""
+msgstr "Schiefergraue Farbe."
#: doc/classes/Color.xml:658
msgid "Snow color."
-msgstr ""
+msgstr "Schnee Farbe."
#: doc/classes/Color.xml:661
msgid "Spring green color."
-msgstr ""
+msgstr "Frühlingsgrüne Farbe."
#: doc/classes/Color.xml:664
msgid "Steel blue color."
-msgstr ""
+msgstr "Stahlblaue Farbe."
#: doc/classes/Color.xml:667
msgid "Tan color."
-msgstr ""
+msgstr "Hellbraune Farbe."
#: doc/classes/Color.xml:670
msgid "Teal color."
-msgstr ""
+msgstr "Blaugrüne Farbe."
#: doc/classes/Color.xml:673
msgid "Thistle color."
-msgstr ""
+msgstr "Distel Farbe."
#: doc/classes/Color.xml:676
msgid "Tomato color."
-msgstr ""
+msgstr "Tomaten Farbe."
#: doc/classes/Color.xml:679
msgid "Transparent color (white with no alpha)."
-msgstr ""
+msgstr "Transparente Farbe (weiß ohne Alpha)."
#: doc/classes/Color.xml:682
msgid "Turquoise color."
-msgstr ""
+msgstr "Türkise Farbe."
#: doc/classes/Color.xml:685
msgid "Violet color."
-msgstr ""
+msgstr "Violette Farbe."
#: doc/classes/Color.xml:688
msgid "Web gray color."
-msgstr ""
+msgstr "Web graue Farbe."
#: doc/classes/Color.xml:691
msgid "Web green color."
-msgstr ""
+msgstr "Web grüne Farbe."
#: doc/classes/Color.xml:694
msgid "Web maroon color."
-msgstr ""
+msgstr "Web kastanienbraune Farbe."
#: doc/classes/Color.xml:697
msgid "Web purple color."
-msgstr ""
+msgstr "Web violette Farbe."
#: doc/classes/Color.xml:700
msgid "Wheat color."
-msgstr ""
+msgstr "Weizen Farbe."
#: doc/classes/Color.xml:703
msgid "White color."
-msgstr ""
+msgstr "Weiße Farbe."
#: doc/classes/Color.xml:706
msgid "White smoke color."
-msgstr ""
+msgstr "Rauchweiße Farbe."
#: doc/classes/Color.xml:709
msgid "Yellow color."
-msgstr ""
+msgstr "Gelbe Farbe."
#: doc/classes/Color.xml:712
msgid "Yellow green color."
-msgstr ""
+msgstr "Gelbgrüne Farbe."
#: doc/classes/ColorPicker.xml:4
msgid "Color picker control."
-msgstr ""
+msgstr "Farbauswahl-Steuerung."
#: doc/classes/ColorPicker.xml:7
msgid ""
@@ -16463,6 +16533,12 @@ msgid ""
"[ColorPickerButton] instead if you need a button that brings up a "
"[ColorPicker] in a pop-up."
msgstr ""
+"Zeigt ein Element zur Farbauswahl an. Nützlich für die Auswahl einer Farbe "
+"aus einem RGB/RGBA-Farbraum.\n"
+"[b]Hinweis:[/b] Dieses Steuerelement ist das Farbwähler-Element selbst. Sie "
+"können stattdessen einen [ColorPickerButton] verwenden, wenn Sie eine "
+"Schaltfläche benötigen, die einen [ColorPicker] in einem Popup-Fenster "
+"aufruft."
#: doc/classes/ColorPicker.xml:18
msgid ""
@@ -16470,19 +16546,25 @@ 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 ""
+"Fügt die angegebene Farbe zu einer Liste von Farbvorlagen hinzu. Die "
+"Vorlagen werden in der Farbauswahl angezeigt und der Benutzer kann sie "
+"auswählen.\n"
+"[b]Hinweis:[/b] Die Liste der Vorlagen gilt nur für [i]diesen[/i] Farbwähler."
#: doc/classes/ColorPicker.xml:26
msgid ""
"Removes the given color from the list of color presets of this color picker."
msgstr ""
+"Entfernt die angegebene Farbe aus der Liste der Farbvorlagen für diesen "
+"Farbwähler."
#: doc/classes/ColorPicker.xml:32
msgid "Returns the list of colors in the presets of the color picker."
-msgstr ""
+msgstr "Gibt die Liste der Farben in den Vorlagen des Farbwählers zurück."
#: doc/classes/ColorPicker.xml:38 doc/classes/ColorPickerButton.xml:33
msgid "The currently selected color."
-msgstr ""
+msgstr "Die aktuell ausgewählte Farbe."
#: doc/classes/ColorPicker.xml:41
msgid ""
@@ -16490,10 +16572,15 @@ msgid ""
"mouse button, otherwise it will apply immediately even in mouse motion event "
"(which can cause performance issues)."
msgstr ""
+"Wenn [code]true[/code], wird die Farbe erst angewendet, wenn der Benutzer "
+"die Maustaste loslässt, andernfalls wird sie auch bei Mausbewegungen sofort "
+"angewendet (was zu Leistungsproblemen führen kann)."
#: doc/classes/ColorPicker.xml:44
msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
msgstr ""
+"Wenn [code]true[/code], wird ein Alphakanal-Schieberegler (Transparenz) "
+"angezeigt."
#: doc/classes/ColorPicker.xml:47
msgid ""
@@ -16501,14 +16588,20 @@ msgid ""
"sliders.\n"
"[b]Note:[/b] Cannot be enabled if raw mode is on."
msgstr ""
+"Wenn [code]true[/code], kann die Farbe mit den Schiebereglern Farbton/"
+"Sättigung/Wert bearbeitet werden.\n"
+"[b]Hinweis:[/b] Kann nicht aktiviert werden, wenn der Raw-Modus aktiviert "
+"ist."
#: doc/classes/ColorPicker.xml:51
msgid "If [code]true[/code], the \"add preset\" button is enabled."
msgstr ""
+"Wenn [code]true[/code], ist die Schaltfläche \"Vorlage hinzufügen\" "
+"aktiviert."
#: doc/classes/ColorPicker.xml:54
msgid "If [code]true[/code], saved color presets are visible."
-msgstr ""
+msgstr "Wenn [code]true[/code], sind gespeicherte Farbvorlagen sichtbar."
#: doc/classes/ColorPicker.xml:57
msgid ""
@@ -16517,56 +16610,66 @@ msgid ""
"tinting without darkening or rendering sprites in HDR).\n"
"[b]Note:[/b] Cannot be enabled if HSV mode is on."
msgstr ""
+"Wenn [code]true[/code], können die Farbwerte der R, G, B Komponenten über "
+"1.0 hinausgehen, was für bestimmte spezielle Operationen, die dies "
+"erfordern, verwendet werden kann (z. B. Abtönen ohne Abdunkeln oder Rendern "
+"von Sprites in HDR).\n"
+"[b]Hinweis:[/b] Kann nicht aktiviert werden, wenn der HSV-Modus aktiviert "
+"ist."
#: doc/classes/ColorPicker.xml:65
msgid "Emitted when the color is changed."
-msgstr ""
+msgstr "Wird ausgegeben, wenn die Farbe geändert wird."
#: doc/classes/ColorPicker.xml:71
msgid "Emitted when a preset is added."
-msgstr ""
+msgstr "Wird ausgegeben, wenn eine Vorlage hinzugefügt wird."
#: doc/classes/ColorPicker.xml:77
msgid "Emitted when a preset is removed."
-msgstr ""
+msgstr "Wird ausgegeben, wenn eine Vorlage entfernt wird."
#: doc/classes/ColorPicker.xml:85
msgid "The icon for the \"Add Preset\" button."
-msgstr ""
+msgstr "Das Symbol für die Schaltfläche \" Vorlage hinzufügen\"."
#: doc/classes/ColorPicker.xml:88
msgid "Custom texture for the hue selection slider on the right."
msgstr ""
+"Benutzerdefinierte Textur für den Schieberegler zur Farbauswahl auf der "
+"rechten Seite."
#: doc/classes/ColorPicker.xml:93
msgid "The width of the hue selection slider."
-msgstr ""
+msgstr "Die Breite des Schiebereglers für die Farbauswahl."
#: doc/classes/ColorPicker.xml:98
msgid "The margin around the [ColorPicker]."
-msgstr ""
+msgstr "Der Rand um den [ColorPicker]."
#: doc/classes/ColorPicker.xml:101
msgid ""
"The indicator used to signalize that the color value is outside the 0-1 "
"range."
msgstr ""
+"Der Indikator, der signalisiert, dass der Farbwert außerhalb des Bereichs "
+"0-1 liegt."
#: doc/classes/ColorPicker.xml:106
msgid "The icon for the screen color picker button."
-msgstr ""
+msgstr "Das Symbol für die Schaltfläche des Bildschirmfarbwählers."
#: doc/classes/ColorPicker.xml:109
msgid "The height of the saturation-value selection box."
-msgstr ""
+msgstr "Die Höhe des Auswahlfeldes für den Sättigungswert."
#: doc/classes/ColorPicker.xml:112
msgid "The width of the saturation-value selection box."
-msgstr ""
+msgstr "Die Breite des Auswahlfeldes für den Sättigungswert."
#: doc/classes/ColorPickerButton.xml:4
msgid "Button that pops out a [ColorPicker]."
-msgstr ""
+msgstr "Schaltfläche, die einen [ColorPicker] erscheinen lässt."
#: doc/classes/ColorPickerButton.xml:7
msgid ""
@@ -16578,6 +16681,15 @@ msgid ""
"preview swatch to be visible. Make sure to set [member Control."
"rect_min_size] to a big enough value to give the button enough space."
msgstr ""
+"Verkapselt einen [ColorPicker] und macht ihn durch Drücken einer "
+"Schaltfläche zugänglich. Durch Drücken der Schaltfläche wird die "
+"Sichtbarkeit des [ColorPicker] umgeschaltet.\n"
+"Siehe auch [BaseButton], das allgemeine Eigenschaften und Methoden im "
+"Zusammenhang mit diesem Node enthält.\n"
+"[b]Hinweis:[/b] Standardmäßig ist die Schaltfläche möglicherweise nicht "
+"breit genug, damit das Farbvorschaumuster sichtbar ist. Achte darauf, "
+"[member Control.rect_min_size] auf einen ausreichend großen Wert zu setzen, "
+"damit die Schaltfläche genügend Platz hat."
#: doc/classes/ColorPickerButton.xml:19
msgid ""
@@ -16586,6 +16698,11 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"Gibt den [ColorPicker] aus, den dieser Node umschaltet.\n"
+"[b]Warnung:[/b] Dies ist ein erforderlicher interner Node, sein Entfernen "
+"und Freigeben kann zu einem Absturz führen. Wenn Sie ihn oder eines seiner "
+"Kinder ausblenden möchten, verwenden Sie deren Eigenschaft [member "
+"CanvasItem.visible]."
#: doc/classes/ColorPickerButton.xml:26
msgid ""
@@ -16596,26 +16713,37 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"Gibt das [PopupPanel] des Steuerelements aus, mit dem Sie eine Verbindung zu "
+"Popup-Signalen herstellen können. So können Sie Ereignisse handhaben, wenn "
+"der Farbwähler angezeigt oder ausgeblendet wird.\n"
+"[b]Warnung:[/b] Dies ist ein erforderlicher interner Node, sein Entfernen "
+"und Freigeben kann zu einem Absturz führen. Wenn Sie ihn oder eines seiner "
+"Kinder ausblenden möchten, verwenden Sie deren Eigenschaft [member "
+"CanvasItem.visible]."
#: doc/classes/ColorPickerButton.xml:36
msgid ""
"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
"be visible."
msgstr ""
+"Wenn [code]true[/code], wird der Alphakanal im angezeigten [ColorPicker] "
+"sichtbar sein."
#: doc/classes/ColorPickerButton.xml:44
msgid "Emitted when the color changes."
-msgstr ""
+msgstr "Wird ausgegeben, wenn sich die Farbe ändert."
#: doc/classes/ColorPickerButton.xml:49
msgid ""
"Emitted when the [ColorPicker] is created (the button is pressed for the "
"first time)."
msgstr ""
+"Wird ausgegeben, wenn der [ColorPicker] erstellt wird (wenn die Schaltfläche "
+"zum ersten Mal gedrückt wird)."
#: doc/classes/ColorPickerButton.xml:54
msgid "Emitted when the [ColorPicker] is closed."
-msgstr ""
+msgstr "Wird ausgegeben, wenn der [ColorPicker] geschlossen wird."
#: doc/classes/ColorPickerButton.xml:62
msgid "The background of the color preview rect on the button."
@@ -16645,26 +16773,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -21938,7 +22073,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -22065,7 +22201,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -23107,8 +23243,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr "Gesendet wenn das Rechteck Element geändert wurde."
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -29779,16 +29918,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -29796,7 +29937,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -29804,73 +29945,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -29880,7 +30021,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -29890,7 +30031,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -29901,7 +30042,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -29909,7 +30050,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -29917,7 +30058,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -29926,21 +30067,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -29949,25 +30090,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -29975,7 +30116,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29983,7 +30124,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29991,7 +30132,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29999,7 +30140,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30007,7 +30148,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30017,7 +30158,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30027,7 +30168,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30038,31 +30179,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -30077,55 +30218,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -30351,6 +30492,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -30362,7 +30514,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -30372,7 +30524,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -30384,7 +30536,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -30392,17 +30544,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -30412,7 +30564,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -30421,53 +30573,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -30475,7 +30627,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -30484,17 +30636,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -30507,7 +30659,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -30519,7 +30671,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -30529,7 +30681,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -30540,7 +30692,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
@@ -30549,7 +30701,7 @@ msgstr ""
"Gibt [code]true[/code] zurück, wenn ein Übergang zwischen den übergebenen "
"Nodes existiert."
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -30557,20 +30709,20 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr "Gibt [code]true[/code] zurück, wenn eine Animation abgespielt wird."
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -30579,7 +30731,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -30592,12 +30744,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -30612,7 +30773,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -30622,11 +30783,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -30640,7 +30828,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -30653,34 +30841,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -30688,83 +30876,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -30772,23 +30960,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -34058,14 +34246,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -34560,26 +34755,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -39215,26 +39417,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -44381,30 +44590,31 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr "Entfernt das Element der Arrays dessen Position übergeben wurde."
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
+#, fuzzy
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
"Legt die Größe des Arrays fest. Sollte das Array dadurch wachsen, werden "
"neue Elemente am Ende des Arrays reserviert. Sollte es schrumpfen, werden "
"Elemente am Ende entsprechend weggeschnitten."
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr "Gibt die Größe des Arrays zurück."
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -44446,6 +44656,17 @@ msgstr "Hängt ein [PackedVector2Array] am Ende dieses Arrays an."
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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 ""
+"Legt die Größe des Arrays fest. Sollte das Array dadurch wachsen, werden "
+"neue Elemente am Ende des Arrays reserviert. Sollte es schrumpfen, werden "
+"Elemente am Ende entsprechend weggeschnitten."
+
#: doc/classes/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -44490,12 +44711,12 @@ 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/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
#, fuzzy
msgid "Changes the int at the given index."
msgstr "Ändert den [Vector2] am übergeben Index."
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -44532,7 +44753,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr "Hängt ein [PackedVector2Array] am Ende dieses Arrays an."
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -45843,18 +46064,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -45862,7 +46071,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -45872,13 +46081,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -45892,14 +46116,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -45908,7 +46132,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -45916,7 +46140,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -45932,20 +46156,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -45953,75 +46177,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -46031,7 +46255,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -46041,14 +46265,14 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
@@ -46056,14 +46280,14 @@ msgstr ""
"Aktiviert [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -46071,81 +46295,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -46153,74 +46377,74 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
@@ -46228,38 +46452,38 @@ msgstr ""
"Wenn [code]true[/code], können andere Überwachungsbereiche diesen Bereich "
"erkennen."
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr "Wenn [code]true[/code], ist die Filterung aktiviert."
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -46270,91 +46494,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -46363,13 +46587,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -46379,7 +46603,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -46387,19 +46611,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -46413,45 +46637,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -46460,7 +46684,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -46471,7 +46695,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -46487,14 +46711,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -46502,49 +46726,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -46553,7 +46777,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -46561,7 +46785,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46569,7 +46793,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -46579,7 +46803,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -46588,7 +46812,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -46597,7 +46821,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -46607,7 +46831,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46615,7 +46839,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -46625,7 +46849,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -46635,7 +46859,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46643,7 +46867,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -46652,7 +46876,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46660,7 +46884,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -46672,477 +46896,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -47150,92 +47374,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -47245,33 +47469,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47284,7 +47508,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47296,7 +47520,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47308,7 +47532,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47321,7 +47545,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -47329,28 +47553,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -47360,25 +47584,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47391,7 +47615,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47403,7 +47627,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47415,7 +47639,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47428,13 +47652,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -47442,11 +47666,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -47460,7 +47684,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -47469,7 +47693,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -47485,7 +47709,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -47495,7 +47719,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -47505,7 +47729,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -47516,7 +47740,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -47526,7 +47750,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -47534,7 +47758,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -47545,7 +47769,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -47560,7 +47784,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -47569,13 +47793,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -47584,7 +47808,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -47594,7 +47818,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -47606,7 +47830,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -47616,24 +47840,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -47642,7 +47866,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -47650,7 +47874,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -47659,7 +47883,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -47669,7 +47893,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -47677,31 +47901,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -47709,7 +47933,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -47719,46 +47943,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -47766,7 +47997,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -47776,7 +48007,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -47785,7 +48016,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -47794,20 +48025,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -47816,7 +48047,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -47824,7 +48055,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -47833,7 +48064,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -47843,20 +48074,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -47865,13 +48096,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -47881,46 +48112,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -47930,7 +48161,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -47942,7 +48173,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -47950,7 +48181,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -47958,7 +48189,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -47967,7 +48198,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -47981,7 +48212,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -47991,7 +48222,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -48000,7 +48231,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -48010,54 +48241,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -48068,61 +48299,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -48133,7 +48364,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -48142,26 +48373,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -48172,20 +48403,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -48197,52 +48428,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -48250,7 +48481,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -48260,10 +48491,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -48272,10 +48503,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -48284,10 +48515,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -48296,10 +48527,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -48308,10 +48539,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -59840,26 +60071,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
@@ -72197,6 +72435,19 @@ msgstr ""
"Wenn [code]true[/code], dann werden untergeordnete Nodes sortiert, "
"anderenfalls wird die Sortierung deaktiviert."
+#, fuzzy
+#~ msgid ""
+#~ "Returns a list of intersecting [Area]s. For performance reasons "
+#~ "(collisions are all processed at the same time) this list is modified "
+#~ "once during the physics step, not immediately after objects are moved. "
+#~ "Consider using signals instead."
+#~ msgstr ""
+#~ "Gibt eine Liste der sich schneidenden [Area2D]s zurück. Aus "
+#~ "Leistungsgründen (Kollisionen werden alle gleichzeitig verarbeitet) wird "
+#~ "diese Liste einmal während des Physikschritts geändert, nicht sofort nach "
+#~ "dem Verschieben von Objekten. Erwägen Sie stattdessen die Verwendung von "
+#~ "Signalen."
+
#~ msgid "Returns the label used for built-in text."
#~ msgstr "Gibt das für den eingebauten Text verwendete Label zurück."
diff --git a/doc/translations/el.po b/doc/translations/el.po
index 562bdf1235..83ef618560 100644
--- a/doc/translations/el.po
+++ b/doc/translations/el.po
@@ -23,43 +23,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.6-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "ΠεÏιγÏαφή"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Οδηγοί"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Ιδιότητες"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "ΣυναÏτήσεις"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Ιδιότητες θέματος"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Σήματα"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "ΑπαÏιθμήσεις"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "ΣταθεÏές"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "ΠεÏιγÏαφές ιδιοτήτων"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "ΠεÏιγÏαφές μεθόδων"
@@ -6216,21 +6216,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6238,7 +6242,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6249,7 +6253,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6257,41 +6261,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6299,61 +6303,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6368,7 +6372,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6377,7 +6381,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6386,7 +6390,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6403,29 +6407,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6464,21 +6468,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6486,7 +6494,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6497,7 +6505,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6505,14 +6513,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6520,21 +6528,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6549,7 +6557,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6564,7 +6572,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6573,7 +6581,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6582,7 +6590,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6601,7 +6609,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10186,7 +10194,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10385,19 +10394,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11242,26 +11263,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12734,80 +12762,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12851,49 +12895,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14668,26 +14719,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19921,7 +19979,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20048,7 +20107,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21083,8 +21142,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27697,16 +27759,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27714,7 +27778,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27722,73 +27786,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27798,7 +27862,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27808,7 +27872,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27819,7 +27883,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27827,7 +27891,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27835,7 +27899,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27844,21 +27908,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27867,25 +27931,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27893,7 +27957,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27901,7 +27965,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27909,7 +27973,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27917,7 +27981,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27925,7 +27989,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27935,7 +27999,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27945,7 +28009,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27956,31 +28020,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27995,55 +28059,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28268,6 +28332,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28279,7 +28354,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28289,7 +28364,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28301,7 +28376,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28309,17 +28384,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28329,7 +28404,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28338,53 +28413,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28392,7 +28467,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28401,17 +28476,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28424,7 +28499,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28436,7 +28511,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28446,7 +28521,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28457,13 +28532,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28471,19 +28546,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28492,7 +28567,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28505,12 +28580,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28525,7 +28609,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28535,11 +28619,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28553,7 +28664,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28566,34 +28677,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28601,83 +28712,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28685,23 +28796,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31960,14 +32071,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32460,26 +32578,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37091,26 +37216,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42195,27 +42327,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42247,6 +42379,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42283,11 +42423,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42319,7 +42459,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43586,18 +43726,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43605,7 +43733,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43615,13 +43743,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43635,14 +43778,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43651,7 +43794,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43659,7 +43802,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43675,20 +43818,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43696,75 +43839,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43774,7 +43917,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43784,27 +43927,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43812,81 +43955,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43894,109 +44037,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44007,91 +44150,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44100,13 +44243,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44116,7 +44259,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44124,19 +44267,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44150,45 +44293,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44197,7 +44340,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44208,7 +44351,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44224,14 +44367,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44239,49 +44382,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44290,7 +44433,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44298,7 +44441,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44306,7 +44449,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44316,7 +44459,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44325,7 +44468,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44334,7 +44477,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44344,7 +44487,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44352,7 +44495,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44362,7 +44505,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44372,7 +44515,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44380,7 +44523,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44389,7 +44532,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44397,7 +44540,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44409,477 +44552,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44887,92 +45030,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44982,33 +45125,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45021,7 +45164,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45033,7 +45176,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45045,7 +45188,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45058,7 +45201,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45066,28 +45209,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45097,25 +45240,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45128,7 +45271,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45140,7 +45283,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45152,7 +45295,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45165,13 +45308,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45179,11 +45322,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45197,7 +45340,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45206,7 +45349,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45222,7 +45365,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45232,7 +45375,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45242,7 +45385,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45253,7 +45396,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45263,7 +45406,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45271,7 +45414,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45282,7 +45425,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45297,7 +45440,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45306,13 +45449,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45321,7 +45464,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45331,7 +45474,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45343,7 +45486,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45353,24 +45496,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45379,7 +45522,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45387,7 +45530,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45396,7 +45539,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45406,7 +45549,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45414,31 +45557,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45446,7 +45589,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45456,46 +45599,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45503,7 +45653,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45513,7 +45663,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45522,7 +45672,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45531,20 +45681,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45553,7 +45703,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45561,7 +45711,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45570,7 +45720,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45580,20 +45730,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45602,13 +45752,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45618,46 +45768,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45667,7 +45817,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45679,7 +45829,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45687,7 +45837,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45695,7 +45845,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45704,7 +45854,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45718,7 +45868,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45728,7 +45878,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45737,7 +45887,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45747,54 +45897,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45805,61 +45955,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45870,7 +46020,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45879,26 +46029,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45909,20 +46059,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45934,52 +46084,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45987,7 +46137,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45997,10 +46147,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46009,10 +46159,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46021,10 +46171,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46033,10 +46183,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46045,10 +46195,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57417,26 +57567,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/es.po b/doc/translations/es.po
index 2b509c25cc..cc5a950431 100644
--- a/doc/translations/es.po
+++ b/doc/translations/es.po
@@ -22,12 +22,15 @@
# Cameron Toms <cameron.toms@gmail.com>, 2021.
# Roderick Lagunas <rdcklinux@gmail.com>, 2021.
# Erick Figueroa <querecuto@hotmail.com>, 2021.
+# Anderson Guzman Abreu <chicobello1111@gmail.com>, 2021.
+# Fonspem None <fonspem@gmail.com>, 2021.
+# Andres David Calderón Jimenez <davidcampeon2007@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-08-12 02:34+0000\n"
-"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:39+0000\n"
+"Last-Translator: Andres David Calderón Jimenez <davidcampeon2007@gmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/es/>\n"
"Language: es\n"
@@ -35,45 +38,45 @@ 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.8-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Descripción"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Tutoriales"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Propiedades"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Métodos"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Propiedades del Theme"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Señales"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumeraciones"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constantes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Descripciones de Propiedades"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descripciones de Métodos"
@@ -87,9 +90,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
-"Lista de funciones GDScript incorporadas primordiales. Funciunes Math y "
-"otras utilidades. Todo lo demás está proporcionado por objetos. (Palabras "
-"clave: incorporado, includido, funciones globales.)"
+"Lista de funciones primordiales e incorporadas de GDScript. Funciones "
+"matemáticas y otras utilidades. Todo lo demás está proporcionado por "
+"objetos. (Palabras clave: incorporado, includido, funciones globales.)"
#: modules/gdscript/doc_classes/@GDScript.xml:19
msgid ""
@@ -133,7 +136,6 @@ msgstr ""
"definidas en [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -144,8 +146,7 @@ msgstr ""
"Devuelve el valor absoluto del parámetro [code]s[/code] (es decir, un valor "
"positivo).\n"
"[codeblock]\n"
-"#a es 1\n"
-"a = abs(-1)\n"
+"a = abs(-1) #a es 1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
@@ -417,7 +418,7 @@ msgstr "Convierte de decibeles a energía lineal (audio)."
#: modules/gdscript/doc_classes/@GDScript.xml:218
msgid "Deprecated alias for [method step_decimals]."
-msgstr ""
+msgstr "Alias obsoleto del [method step_decimals]."
#: modules/gdscript/doc_classes/@GDScript.xml:227
#, fuzzy
@@ -438,27 +439,25 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:238
-#, fuzzy
msgid ""
"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"r = deg2rad(180) # r is 3.141593\n"
"[/codeblock]"
msgstr ""
-"Convierte un ángulo expresado en grados en radianes.\n"
+"Convierte un ángulo expresado en grados a radianes.\n"
"[codeblock]\n"
"# r es 3.141593\n"
"r = deg2rad(180)\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:248
-#, fuzzy
msgid ""
"Converts a dictionary (previously created with [method inst2dict]) back to "
"an instance. Useful for deserializing."
msgstr ""
-"Convierte una instancia previamente convertida en un diccionario, de nuevo "
-"en una instancia. Es útil para deserializar."
+"Convierte un diccionario (que fue creado previamente con [method inst2dict]) "
+"de nuevo a una instancia. Es útil para deserializar."
#: modules/gdscript/doc_classes/@GDScript.xml:256
msgid ""
@@ -1211,6 +1210,16 @@ msgid ""
"distinguishes them from print messages used for debugging purposes, while "
"also displaying a stack trace when an error or warning is printed."
msgstr ""
+"convierte uno o mas argumentos de cualquior tipo a una cadena de texto de la "
+"mejor manera posible, y los muestra en la consola.\n"
+"[codeblock]\n"
+"a=[1,2,3]\n"
+"print(\"a,\"=\",a)#Muestra a=[1,2,3]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] considera usar [method push_error] y [method push_warning] para "
+"mostrar errores mensajes de advertencia en vez de [method print]. esto los "
+"distingue de mensajes en la consola usados por motivos de depuración, "
+"mientras muestra un trazo de cuando un error o advertencia se muestra."
#: modules/gdscript/doc_classes/@GDScript.xml:702
msgid "Like [method print], but prints only when used in debug mode."
@@ -2573,6 +2582,8 @@ msgstr "Tecla Dirección Derecha."
msgid ""
"Media back key. Not to be confused with the Back button on an Android device."
msgstr ""
+"Tecla para atrás en multimedia. No confundirlo con el botón hacia atrás en "
+"un dispositivo Android."
#: doc/classes/@GlobalScope.xml:344
#, fuzzy
@@ -4763,6 +4774,10 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"Retorna la instancia de el [Button] aceptar. \n"
+"[b]Warning:[/b] Esto es un nodo interno requerido, removerlo y liberarlo "
+"podría causar un crasheo. Si deseas esconder este o alguno de sus hijos, "
+"utiliza su propiedad [member CanvasItem.visible]."
#: doc/classes/AcceptDialog.xml:49
msgid ""
@@ -7984,24 +7999,28 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
#, fuzzy
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
-"Devuelve una lista de los [Area2D] que se intersectan. Por razones de "
+"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 usar señales en su "
-"lugar."
+"que los objetos se muevan. Considere la posibilidad de utilizar señales en "
+"su lugar."
-#: doc/classes/Area.xml:23
+#: doc/classes/Area.xml:24
#, fuzzy
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
"Devuelve una lista de [PhysicsBody2D] que se intersectan. Por razones de "
"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
@@ -8009,7 +8028,7 @@ msgstr ""
"que los objetos se muevan. Considere la posibilidad de utilizar señales en "
"su lugar."
-#: doc/classes/Area.xml:30
+#: doc/classes/Area.xml:32
#, fuzzy
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
@@ -8023,7 +8042,7 @@ msgstr ""
"una vez por cuadro y antes del paso de física. Considere la posibilidad de "
"utilizar señales en su lugar."
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
#, fuzzy
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
@@ -8044,7 +8063,7 @@ msgstr ""
"registran sus piezas con formas de colisión como un cuerpo de física "
"virtual)."
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
#, fuzzy
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
@@ -8056,18 +8075,18 @@ msgstr ""
"velocidad angular perdida por segundo. Los valores van desde [code]0[/code] "
"(sin amortiguación) hasta [code]1[/code] (amortiguación completa)."
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr "El nombre del bus de audio de la zona."
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
"Si [code]true[/code], el área del bus de audio sobrescribe el bus de audio "
"por defecto."
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
#, fuzzy
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
@@ -8078,7 +8097,7 @@ msgstr ""
"multiplica el vector de gravedad. Esto es útil para alterar la fuerza de "
"gravedad sin alterar su dirección."
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
@@ -8086,7 +8105,7 @@ msgstr ""
"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/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
@@ -8095,7 +8114,7 @@ msgstr ""
"(establecido mediante [member gravity_vec]). Ver también [member "
"space_override]."
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
msgid ""
"The area's gravity vector (not normalized). If gravity is a point (see "
"[member gravity_point]), this will be the point of attraction."
@@ -8103,7 +8122,7 @@ msgstr ""
"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/Area.xml:68
+#: doc/classes/Area.xml:70
#, fuzzy
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
@@ -8115,12 +8134,12 @@ msgstr ""
"velocidad lineal perdida por segundo. Los valores van desde [code]0[/code] "
"(sin amortiguación) hasta [code]1[/code] (amortiguación completa)."
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
"Si [code]true[/code], otras áreas de monitoreo pueden detectar esta área."
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
@@ -8128,12 +8147,12 @@ msgstr ""
"Si [code]true[/code], el área detecta cuerpos o áreas que entran y salen de "
"ella."
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
"La prioridad de la zona. Las áreas de mayor prioridad se procesan primero."
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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."
@@ -8141,18 +8160,18 @@ msgstr ""
"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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
"Si [code]true[/code], el área aplica reverberación a su audio asociado."
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
"El nombre del bus de reverberación que se usará para el audio asociado a "
"esta área."
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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."
@@ -8160,7 +8179,7 @@ msgstr ""
"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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
@@ -8168,7 +8187,7 @@ msgstr ""
"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/Area.xml:100
+#: doc/classes/Area.xml:102
#, fuzzy
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
@@ -8179,7 +8198,7 @@ msgstr ""
"Requiere que [member input_pickable] sea [code]true[/code] y que al menos un "
"bit [code]collision_layer[/code] esté activado."
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
#, fuzzy
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
@@ -8190,7 +8209,7 @@ msgstr ""
"Requiere que [member input_pickable] sea [code]true[/code] y que al menos un "
"bit [code]collision_layer[/code] esté activado."
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8205,7 +8224,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -8214,7 +8233,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -8223,7 +8242,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -8240,11 +8259,11 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr "Esta zona no afecta a la gravedad/amortiguación."
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
@@ -8252,7 +8271,7 @@ msgstr ""
"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/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
@@ -8261,7 +8280,7 @@ msgstr ""
"calculado hasta ahora (en el orden [member priority]), ignorando cualquier "
"área de menor prioridad."
-#: doc/classes/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
@@ -8269,7 +8288,7 @@ msgstr ""
"Esta área reemplaza cualquier gravedad/amortiguación, incluso las "
"predeterminadas, ignorando cualquier área de menor prioridad."
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -8314,11 +8333,14 @@ msgid "https://godotengine.org/asset-library/asset/120"
msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
+#, fuzzy
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"Devuelve una lista de los [Area2D] que se intersectan. Por razones de "
"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
@@ -8326,12 +8348,15 @@ msgstr ""
"que los objetos se muevan. Considere la posibilidad de usar señales en su "
"lugar."
-#: doc/classes/Area2D.xml:25
+#: doc/classes/Area2D.xml:26
+#, fuzzy
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"Devuelve una lista de [PhysicsBody2D] que se intersectan. Por razones de "
"rendimiento (las colisiones se procesan todas al mismo tiempo) esta lista se "
@@ -8339,7 +8364,7 @@ msgstr ""
"que los objetos se muevan. Considere la posibilidad de utilizar señales en "
"su lugar."
-#: doc/classes/Area2D.xml:32
+#: doc/classes/Area2D.xml:34
#, fuzzy
msgid ""
"If [code]true[/code], the given area overlaps the Area2D.\n"
@@ -8353,7 +8378,7 @@ msgstr ""
"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:40
+#: doc/classes/Area2D.xml:42
#, fuzzy
msgid ""
"If [code]true[/code], the given physics body overlaps the Area2D.\n"
@@ -8373,7 +8398,7 @@ msgstr ""
"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:48
+#: doc/classes/Area2D.xml:50
#, fuzzy
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
@@ -8385,7 +8410,7 @@ msgstr ""
"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:58
+#: doc/classes/Area2D.xml:60
#, fuzzy
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
@@ -8396,7 +8421,7 @@ msgstr ""
"multiplica el vector de gravedad. Esto es útil para alterar la fuerza de "
"gravedad sin alterar su dirección."
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
#, fuzzy
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
@@ -8408,7 +8433,7 @@ msgstr ""
"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:90
+#: doc/classes/Area2D.xml:92
#, fuzzy
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
@@ -8419,7 +8444,7 @@ msgstr ""
"Requiere que [member input_pickable] sea [code]true[/code] y que al menos un "
"bit [code]collision_layer[/code] esté activado."
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
#, fuzzy
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
@@ -8430,7 +8455,7 @@ msgstr ""
"Requiere que [member input_pickable] sea [code]true[/code] y que al menos un "
"bit [code]collision_layer[/code] esté activado."
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8445,7 +8470,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8460,7 +8485,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8469,7 +8494,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8478,7 +8503,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8497,7 +8522,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8831,6 +8856,12 @@ msgid ""
"element is close to the beginning of the array (index 0). This is because "
"all elements placed after the newly inserted element have to be reindexed."
msgstr ""
+"Inserta un nuevo elemento en la posisción dada en el array. La posición debe "
+"ser valida, o al final de el array([code]pos == size()[/code].\n"
+"[b]Note:[/b] este metodo actua en el lugar y no devuelve ningún valor.\n"
+"[b]Note:[/b] en arrays largos, este metodo va a ser mas lento si el elemento "
+"incertado esta cerca al inicio del array (índice 0). Esto es por que todos "
+"los elementos despues del elemento incertado tienen que ser reindisados."
#: doc/classes/Array.xml:239 doc/classes/PoolByteArray.xml:96
#: doc/classes/PoolColorArray.xml:48 doc/classes/PoolIntArray.xml:49
@@ -13254,7 +13285,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -13462,19 +13494,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr "Devuelve el botón de cancelación."
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
#, fuzzy
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -14597,26 +14641,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr "[Color] del texto utilizado cuando el [Button] está desactivado."
#: doc/classes/Button.xml:77
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/Button.xml:80
msgid "Text [Color] used when the [Button] is being hovered."
msgstr "[Color] del texto usado cuando el [Button] tiene encima el cursor."
-#: doc/classes/Button.xml:80
+#: doc/classes/Button.xml:83
msgid "Text [Color] used when the [Button] is being pressed."
msgstr "[Color] del texto utilizado cuando se pulsa el [Button]."
-#: doc/classes/Button.xml:83
+#: doc/classes/Button.xml:86
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr "[StyleBox] que se usa cuando el [Button] tiene encima el cursor."
-#: doc/classes/Button.xml:86
+#: doc/classes/Button.xml:89
msgid "The horizontal space between [Button]'s icon and text."
msgstr "El espacio horizontal entre el icono y el texto de [Button]."
-#: doc/classes/Button.xml:89
+#: doc/classes/Button.xml:92
msgid "Default [StyleBox] for the [Button]."
msgstr "[StyleBox] por defecto para el [Button]."
-#: doc/classes/Button.xml:92
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr "[StyleBox] que se usa cuando se presiona el [Button]."
@@ -16599,53 +16650,67 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr "El check icon que se muestra cuando se marca el [CheckBox]."
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+#, fuzzy
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+"El icono que se muestra cuando el [CheckButton] está seleccionado y "
+"desactivado."
+
+#: doc/classes/CheckBox.xml:31
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:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr "El [StyleBox] a mostrar como fondo cuando se enfoca el [CheckBox]."
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr "La [Font] a usar para el texto de [CheckBox]."
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr "El color de la fuente del texto [CheckBox]."
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr "El color de la fuente del texto [CheckBox] cuando está desactivado."
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
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:48
+#: doc/classes/CheckBox.xml:52
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:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr "El color de la fuente del texto [CheckBox] cuando se presiona."
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
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:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
@@ -16653,20 +16718,20 @@ msgstr ""
"El [StyleBox] a mostrar como fondo cuando el cursor se encuentra encima de "
"el [CheckBox] y se presiona."
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr "La separación entre el check icon y el texto (en píxeles)."
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr "El [StyleBox] para mostrar como fondo."
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr "El [StyleBox] para mostrar como fondo cuando se pulsa el [CheckBox]."
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
@@ -16674,7 +16739,7 @@ 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:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
@@ -16682,10 +16747,18 @@ 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:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr "El check icon que aparece cuando el [CheckBox] está deseleccionado."
+#: doc/classes/CheckBox.xml:86
+#, fuzzy
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+"El icono que se muestra cuando el [CheckButton] está deseleccionado y "
+"desactivado."
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr "Botón chequeable. Véase también [CheckBox]."
@@ -16743,29 +16816,36 @@ msgstr ""
"desactivado."
#: doc/classes/CheckButton.xml:40
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:43
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:43
+#: doc/classes/CheckButton.xml:46
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:46
+#: doc/classes/CheckButton.xml:49
msgid "The [CheckButton] text's font color when it's pressed."
msgstr "El color de la fuente del texto del [CheckButton] cuando se presiona."
-#: doc/classes/CheckButton.xml:49
+#: doc/classes/CheckButton.xml:52
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:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
@@ -16773,31 +16853,31 @@ msgstr ""
"El [StyleBox] para mostrar como fondo cuando el cursor esta encima del "
"[CheckButton] y se presiona."
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr "La separación entre el icono de conmutación y el texto (en píxeles)."
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr "El icono que se muestra cuando el [CheckButton] está deseleccionado."
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
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:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr "El icono que se muestra cuando se selecciona el [CheckButton]."
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
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:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -19010,28 +19090,35 @@ msgstr ""
"[Color] del texto utilizado cuando el [ColorPickerButton] está desactivado."
#: doc/classes/ColorPickerButton.xml:80
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
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:83
+#: doc/classes/ColorPickerButton.xml:86
msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr "[Color] del texto utilizado cuando se pulsa el [ColorPickerButton]."
-#: doc/classes/ColorPickerButton.xml:86
+#: doc/classes/ColorPickerButton.xml:89
msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr "[StyleBox] usado cuando el [ColorPickerButton] tiene el cursor encima."
-#: doc/classes/ColorPickerButton.xml:89
+#: doc/classes/ColorPickerButton.xml:92
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:92
+#: doc/classes/ColorPickerButton.xml:95
msgid "Default [StyleBox] for the [ColorPickerButton]."
msgstr "[StyleBox] por defecto para el [ColorPickerButton]."
-#: doc/classes/ColorPickerButton.xml:95
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr "[StyleBox] que se utiliza cuando se pulsa el [ColorPickerButton]."
@@ -26221,7 +26308,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -26439,7 +26527,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
"Obtiene la extensión utilizada para guardar este recurso en el directorio "
"[code].import[/code]."
@@ -27808,10 +27896,12 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr "Emitido cada vez que el recurso cambia."
-#: doc/classes/EditorResourcePicker.xml:89
-#, fuzzy
-msgid "Emitted when the resource value was set and user clicked to edit it."
-msgstr "Emitido cuando se selecciona un recurso en el inspector."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
msgid "Helper to generate previews of resources or files."
@@ -36839,14 +36929,19 @@ msgstr ""
"almacenado con 8 bits."
#: doc/classes/Image.xml:436
+#, fuzzy
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-"Formato de textura OpenGL [code]RED[/code] con un solo componente y una "
-"profundidad de bits de 8."
+"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:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
@@ -36854,7 +36949,7 @@ 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:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -36866,7 +36961,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -36878,7 +36973,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
@@ -36886,7 +36981,7 @@ msgstr ""
"Formato de textura OpenGL [code]RGBA[/code] con cuatro componentes, cada uno "
"con una profundidad de bits de 4."
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
#, fuzzy
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
@@ -36895,7 +36990,7 @@ 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:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
@@ -36903,7 +36998,7 @@ 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:459
+#: doc/classes/Image.xml:460
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
@@ -36911,7 +37006,7 @@ 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:462
+#: doc/classes/Image.xml:463
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
@@ -36919,7 +37014,7 @@ 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:465
+#: doc/classes/Image.xml:466
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
@@ -36927,7 +37022,7 @@ 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:468
+#: doc/classes/Image.xml:469
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
@@ -36935,7 +37030,7 @@ 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:471
+#: doc/classes/Image.xml:472
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
@@ -36943,7 +37038,7 @@ 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:474
+#: doc/classes/Image.xml:475
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
@@ -36951,7 +37046,7 @@ 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:477
+#: doc/classes/Image.xml:478
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
@@ -36960,7 +37055,7 @@ msgstr ""
"componentes, cada uno de ellos un valor de 16 bits de \"media precisión\" "
"real."
-#: doc/classes/Image.xml:480
+#: doc/classes/Image.xml:481
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."
@@ -36968,7 +37063,7 @@ 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:483
+#: doc/classes/Image.xml:484
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 "
@@ -36984,7 +37079,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -37001,7 +37096,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImagenTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -37021,7 +37116,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -37033,7 +37128,7 @@ msgstr ""
"normalizando los datos del canal rojo utilizando el mismo algoritmo de "
"compresión que DXT5 utiliza para el canal alfa."
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -37045,7 +37140,7 @@ msgstr ""
"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:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -37059,7 +37154,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
@@ -37069,7 +37164,7 @@ msgstr ""
"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] con componentes RGB reales "
"firmados."
-#: doc/classes/Image.xml:508
+#: doc/classes/Image.xml:509
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
@@ -37079,7 +37174,7 @@ msgstr ""
"opengl/wiki/BPTC_Texture_Compression]BPTC[/url] con componentes RGB reales "
"sin firmar."
-#: doc/classes/Image.xml:511
+#: doc/classes/Image.xml:512
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."
@@ -37093,7 +37188,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
@@ -37101,7 +37196,7 @@ msgstr ""
"Igual que [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], pero con un "
"componente alfa."
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
@@ -37109,7 +37204,7 @@ 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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
@@ -37117,7 +37212,7 @@ msgstr ""
"Igual que [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], pero con un "
"componente alfa."
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -37129,7 +37224,7 @@ msgstr ""
"es parte del estándar de gráficos OpenGL ES. Este formato no puede almacenar "
"un canal alfa."
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37141,7 +37236,7 @@ msgstr ""
"Ericsson 2[/url] ([code]R11_EAC[/code] variant), que proporciona un canal de "
"datos sin firmar."
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37153,7 +37248,7 @@ msgstr ""
"de Ericsson 2[/url] (variante de [code]SIGNED_R11_EAC[/code]), que "
"proporciona un canal de datos firmado."
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37165,7 +37260,7 @@ msgstr ""
"de Ericsson 2[/url] ([code]RG11_EAC[/code] variant), que proporciona dos "
"canales de datos sin firmar."
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37177,7 +37272,7 @@ msgstr ""
"de Ericsson 2[/url] (variante de [code]SIGNED_RG11_EAC[/code]), que "
"proporciona dos canales de datos firmados."
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37193,7 +37288,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37209,7 +37304,7 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -37227,11 +37322,11 @@ msgstr ""
"[b]Nota:[/b] Al crear una [ImageTexture], se realiza una conversión del "
"espacio de color sRGB a lineal."
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr "Representa el tamaño del enum [enum Format]."
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
@@ -37239,7 +37334,7 @@ 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:557
+#: doc/classes/Image.xml:558
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 "
@@ -37249,7 +37344,7 @@ msgstr ""
"será borrosa. Este modo es más rápido que [constant INTERPOLATE_CUBIC], pero "
"da como resultado una menor calidad."
-#: doc/classes/Image.xml:560
+#: doc/classes/Image.xml:561
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
@@ -37259,7 +37354,7 @@ msgstr ""
"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:563
+#: doc/classes/Image.xml:564
#, fuzzy
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
@@ -37286,7 +37381,7 @@ msgstr ""
"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:570
+#: doc/classes/Image.xml:571
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
@@ -37295,39 +37390,39 @@ msgstr ""
"imágenes más lento, pero suele dar los mejores resultados, especialmente "
"cuando se reducen las imágenes."
-#: doc/classes/Image.xml:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr "La imagen no tiene alfa."
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr "La imagen almacena el alfa en un solo bit."
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr "La imagen usa el alfa."
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr "Use la compresión S3TC."
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr "Use la compresión PVRTC2."
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr "Use la compresión PVRTC4."
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr "Use la compresión ETC."
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr "Use la compresión ETC2."
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
@@ -37335,12 +37430,12 @@ 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:600
+#: doc/classes/Image.xml:601
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:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -37606,6 +37701,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -37617,7 +37723,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -37627,7 +37733,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
#, fuzzy
msgid ""
"Returns a value between 0 and 1 representing the intensity of the given "
@@ -37645,7 +37751,7 @@ msgstr ""
"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:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -37653,7 +37759,7 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
@@ -37661,12 +37767,12 @@ msgstr ""
"Devuelve un [Array] que contiene los Ids de los dispositivos de todos los "
"joypads conectados actualmente."
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
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:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -37676,7 +37782,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -37685,7 +37791,7 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
#, fuzzy
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
@@ -37694,11 +37800,11 @@ msgstr ""
"Devuelve el valor actual del eje del joypad en un índice determinado (véase "
"[enum JoyAxisList])."
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr "Devuelve el índice del nombre del eje suministrado."
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
#, fuzzy
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
@@ -37707,11 +37813,11 @@ msgstr ""
"Recibe un eje [enum JoyAxisList] y devuelve su nombre equivalente como una "
"String."
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr "Devuelve el índice del nombre del botón proporcionado."
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
#, fuzzy
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
@@ -37720,7 +37826,7 @@ msgstr ""
"Recibe un botón del gamepad de [enum JoyButtonList] y devuelve su nombre "
"equivalente en forma de cadena."
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
@@ -37729,16 +37835,16 @@ msgstr ""
"usan remapeo de gamepad. Devuelve [code]\"Default Gamepad\"[/code] de otra "
"manera."
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
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:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr "Devuelve la duración del efecto de la vibración actual en segundos."
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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."
@@ -37746,7 +37852,7 @@ 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:168
+#: doc/classes/Input.xml:175
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 "
@@ -37758,7 +37864,7 @@ msgstr ""
"que aunque el ratón no se mueva, esta función seguirá devolviendo el valor "
"del último movimiento."
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -37767,7 +37873,7 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
msgid ""
"Returns mouse buttons as a bitmask. If multiple mouse buttons are pressed at "
"the same time, the bits are added together."
@@ -37775,11 +37881,11 @@ 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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr "Devuelve el modo de ratón. Vea las constantes para más información."
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -37792,7 +37898,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
#, fuzzy
msgid ""
"Returns [code]true[/code] when the user starts pressing the action event, "
@@ -37810,7 +37916,7 @@ msgstr ""
"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
+#: doc/classes/Input.xml:225
#, fuzzy
msgid ""
"Returns [code]true[/code] when the user stops pressing the action event, "
@@ -37826,7 +37932,7 @@ msgstr ""
"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:227
+#: doc/classes/Input.xml:234
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the action event. Note that if "
@@ -37842,7 +37948,7 @@ msgstr ""
"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:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
@@ -37851,7 +37957,7 @@ msgstr ""
"Devuelve [code]true[/code] si el ratón ha entrado en el botón y no lo ha "
"dejado todavía."
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
#, fuzzy
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
@@ -37864,7 +37970,7 @@ msgstr ""
"espera que los joypads desconocidos coincidan con estas constantes, pero aún "
"así se pueden recuperar eventos de ellos."
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
@@ -37873,7 +37979,7 @@ 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:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
@@ -37881,7 +37987,7 @@ msgstr ""
"Devuelve [code]true[/code] si se pulsa el botón del ratón especificado con "
"[enum ButtonList]."
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -37895,7 +38001,7 @@ msgstr ""
"los scripts de usuario. Véase [signal joy_connection_changed] para la señal "
"emitida cuando se activa internamente."
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -37918,14 +38024,23 @@ msgstr ""
"Input.parse_input_event(evento)\n"
"[/codeblock]"
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
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:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -37953,7 +38068,7 @@ msgstr ""
"modo de compresión [b]Video RAM[/b] no puede utilizarse para cursores "
"personalizados."
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -37970,11 +38085,38 @@ msgstr ""
"[b]Nota:[/b] Este método genera un [InputEventMouseMotion] para actualizar "
"el cursor inmediatamente."
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr "Establece el modo del ratón. Vea las constantes para más información."
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -38000,7 +38142,7 @@ msgstr ""
"el usuario está dibujando la línea para obtener resultados que sigan de "
"cerca la entrada real."
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -38022,11 +38164,11 @@ msgstr ""
"efecto largas; se recomienda reiniciar un efecto si tiene que ser "
"reproducido durante más de unos pocos segundos."
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr "Detiene la vibración del joypad."
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
#, fuzzy
msgid ""
"Vibrate Android and iOS devices.\n"
@@ -38037,23 +38179,23 @@ msgstr ""
"[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:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr "Establece la posición del ratón en el vector especificado."
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr "Se emite cuando se ha conectado o desconectado un dispositivo joypad."
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr "Hace que el cursor del ratón sea visible si está oculto."
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr "Hace que el cursor del ratón se oculte si es visible."
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -38061,16 +38203,16 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: 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:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr "Cursor de la flecha. Cursor puntero estándar y predeterminado."
-#: doc/classes/Input.xml:390
+#: doc/classes/Input.xml:429
msgid ""
"I-beam cursor. Usually used to show where the text cursor will appear when "
"the mouse is clicked."
@@ -38078,7 +38220,7 @@ 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:393
+#: doc/classes/Input.xml:432
msgid ""
"Pointing hand cursor. Usually used to indicate the pointer is over a link or "
"other interactable item."
@@ -38086,7 +38228,7 @@ 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:396
+#: doc/classes/Input.xml:435
msgid ""
"Cross cursor. Typically appears over regions in which a drawing operation "
"can be performed or for selections."
@@ -38094,7 +38236,7 @@ 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:399
+#: 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 "
@@ -38104,7 +38246,7 @@ msgstr ""
"operación. La forma del cursor indica que la aplicación sigue siendo "
"utilizable durante la operación."
-#: doc/classes/Input.xml:402
+#: 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 "
@@ -38114,11 +38256,11 @@ msgstr ""
"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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr "Cursor de arrastre. Normalmente se muestra cuando se arrastra algo."
-#: doc/classes/Input.xml:408
+#: 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."
@@ -38126,7 +38268,7 @@ 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:411
+#: 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 "
@@ -38135,7 +38277,7 @@ 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:414
+#: 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."
@@ -38144,7 +38286,7 @@ msgstr ""
"dice al usuario que puede cambiar el tamaño de la ventana o del panel "
"verticalmente."
-#: doc/classes/Input.xml:417
+#: 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."
@@ -38153,7 +38295,7 @@ msgstr ""
"cabeza. Le dice al usuario que puede cambiar el tamaño de la ventana o del "
"panel horizontalmente."
-#: doc/classes/Input.xml:420
+#: 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 "
@@ -38164,7 +38306,7 @@ msgstr ""
"usuario que puede cambiar el tamaño de la ventana o del panel tanto "
"horizontal como verticalmente."
-#: doc/classes/Input.xml:423
+#: 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 "
@@ -38176,11 +38318,11 @@ msgstr ""
"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:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr "Mueve el cursor. Indica que algo puede ser movido."
-#: doc/classes/Input.xml:429
+#: doc/classes/Input.xml:468
msgid ""
"Vertical split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_VSIZE]."
@@ -38188,7 +38330,7 @@ msgstr ""
"Cursor del ratón dividido verticalmente. En Windows, es lo mismo que "
"[constant CURSOR_VSIZE]."
-#: doc/classes/Input.xml:432
+#: doc/classes/Input.xml:471
msgid ""
"Horizontal split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_HSIZE]."
@@ -38196,7 +38338,7 @@ msgstr ""
"Cursor del ratón dividido horizontalmente. En Windows, es lo mismo que "
"[constant CURSOR_HSIZE]."
-#: doc/classes/Input.xml:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr "Cursor de ayuda. Normalmente un signo de interrogación."
@@ -42500,14 +42642,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr "[Color] del texto predeterminado del [LinkButton]."
#: doc/classes/LinkButton.xml:46
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr "[Color] del texto usado cuando el [LinkButton] está siendo movido."
-#: doc/classes/LinkButton.xml:49
+#: doc/classes/LinkButton.xml:52
msgid "Text [Color] used when the [LinkButton] is being pressed."
msgstr "[Color] del texto utilizado cuando se pulsa el [LinkButton]."
-#: doc/classes/LinkButton.xml:52
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr "El espacio vertical entre la línea de base del texto y el subrayado."
@@ -43228,27 +43377,34 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr "[Color] del texto utilizado cuando el [MenuButton] está desactivado."
#: doc/classes/MenuButton.xml:64
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:67
msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr "[Color] del texto usado cuando el puntero esta sobre el [MenuButton]."
-#: doc/classes/MenuButton.xml:67
+#: doc/classes/MenuButton.xml:70
msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr "[Color] del texto utilizado cuando se pulsa el [MenuButton]."
-#: doc/classes/MenuButton.xml:70
+#: doc/classes/MenuButton.xml:73
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:73
+#: doc/classes/MenuButton.xml:76
msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr "El espacio horizontal entre el icono y el texto de [MenuButton]."
-#: doc/classes/MenuButton.xml:76
+#: doc/classes/MenuButton.xml:79
msgid "Default [StyleBox] for the [MenuButton]."
msgstr "[StyleBox] por defecto para el [MenuButton]."
-#: doc/classes/MenuButton.xml:79
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr "[StyleBox] que se utiliza cuando se pulsa el [MenuButton]."
@@ -49610,27 +49766,34 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr "[Color] del texto utilizado cuando el [OptionButton] está desactivado."
#: doc/classes/OptionButton.xml:212
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:215
msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr "[Color] del texto usado cuando el [OptionButton] está siendo movido."
-#: doc/classes/OptionButton.xml:215
+#: doc/classes/OptionButton.xml:218
msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr "[Color] del texto utilizado cuando se pulsa el [OptionButton]."
-#: doc/classes/OptionButton.xml:218
+#: doc/classes/OptionButton.xml:221
msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
"[StyleBox] usado cuando el cursor se encuentra sobre el [OptionButton]."
-#: doc/classes/OptionButton.xml:221
+#: doc/classes/OptionButton.xml:224
msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr "El espacio horizontal entre el icono de [OptionButton] y el texto."
-#: doc/classes/OptionButton.xml:224
+#: doc/classes/OptionButton.xml:227
msgid "Default [StyleBox] for the [OptionButton]."
msgstr "Por defecto, [StyleBox] para el [OptionButton]."
-#: doc/classes/OptionButton.xml:227
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr "[StyleBox] utilizado cuando se presiona el [OptionButton]."
@@ -56391,29 +56554,30 @@ msgstr "Concatena un elemen al final del array."
msgid "Removes an element from the array by index."
msgstr "Elimina un elemento del array por indice."
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
+#, fuzzy
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
"Establece el tamaño del conjunto. Si el array crece, reserva elementos al "
"final del array. Si el array se reduce, trunca el array al nuevo tamaño."
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr "Cambia el byte en el índice dado."
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr "Devuelve el tamaño del array."
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
#, fuzzy
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
@@ -56459,6 +56623,16 @@ msgstr "Añade un [PackedColorArray] al final de este array."
msgid "Appends a value to the array."
msgstr "Añade un valor al array."
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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 ""
+"Establece el tamaño del conjunto. Si el array crece, reserva elementos al "
+"final del array. Si el array se reduce, trunca el array al nuevo tamaño."
+
#: doc/classes/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr "Cambia el [Color] en el índice dado."
@@ -56516,12 +56690,12 @@ msgstr ""
"posición debe ser válida, o al final de la array ([code]idx == size()[/"
"code])."
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
#, fuzzy
msgid "Changes the int at the given index."
msgstr "Cambia el entero en el índice dado."
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr "Devuelve el tamaño del array."
@@ -56558,7 +56732,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr "Añade un [PackedColorArray] al final de este array."
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr "Cambia el real en el índice dado."
@@ -58251,18 +58425,6 @@ msgid ""
msgstr ""
#: doc/classes/ProjectSettings.xml:204
-msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
#, fuzzy
msgid ""
"Specifies a file to override project settings. For example: [code]user://"
@@ -58277,7 +58439,7 @@ msgstr ""
"leyendo [code]res://override.cfg[/code] para anular la configuración del "
"proyecto (véase la descripción de esta clase en la parte superior)."
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -58295,7 +58457,22 @@ msgstr ""
"(directorio de datos de usuario del sistema operativo)/Godot/app_userdata/"
"(nombre del proyecto)[/code]."
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
#, fuzzy
msgid ""
"Icon set in [code].ico[/code] format used on Windows to set the game's icon. "
@@ -58305,7 +58482,7 @@ msgstr ""
"juego. Esto se hace automáticamente al inicio llamando al [method "
"DisplayServer.set_native_icon]."
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -58319,14 +58496,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -58335,7 +58512,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -58343,7 +58520,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -58359,14 +58536,14 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
msgid ""
"Forces a delay between frames in the main loop (in milliseconds). This may "
"be useful if you plan to disable vertical synchronization."
@@ -58374,7 +58551,7 @@ msgstr ""
"Fuerza un retardo entre fotogramas en el bucle principal (en milisegundos). "
"Esto puede ser útil si planea deshabilitar la sincronización vertical."
-#: doc/classes/ProjectSettings.xml:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -58387,7 +58564,7 @@ msgstr ""
"aplicaciones y editores, pero es bastante inútil (y puede perjudicar el "
"rendimiento) en la mayoría de los juegos."
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
msgid ""
"Amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
@@ -58396,13 +58573,13 @@ msgstr ""
"procesador bajo (en microsegundos). Valores más altos resultarán en un menor "
"uso de la CPU."
-#: doc/classes/ProjectSettings.xml:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
"Ruta al archivo de la escena principal que se cargará cuando se ejecute el "
"proyecto."
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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 "
@@ -58413,7 +58590,7 @@ msgstr ""
"CPU ya que los efectos asignados a ese bus ya no harán ningún tipo de "
"procesamiento."
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
@@ -58421,7 +58598,7 @@ msgstr ""
"Archivo de recursos [AudioBusLayout] por defecto para usar en el proyecto, a "
"menos que sea sobreescrito por la escena."
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
msgid ""
"Specifies the audio driver to use. This setting is platform-dependent as "
"each platform supports different audio drivers. If left empty, the default "
@@ -58432,7 +58609,7 @@ msgstr ""
"audio. Si se deja en blanco, se utilizará el controlador de audio "
"predeterminado."
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:270
msgid ""
"If [code]true[/code], microphone input will be allowed. This requires "
"appropriate permissions to be set when exporting to Android or iOS."
@@ -58440,7 +58617,7 @@ msgstr ""
"Si [code]true[/code], se permitirá la entrada del micrófono. Esto requiere "
"que se establezcan los permisos apropiados al exportar a Android o iOS."
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:273
#, fuzzy
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
@@ -58449,14 +58626,14 @@ msgstr ""
"Tasa de mezcla utilizada para el audio. En general, es mejor no tocar esto y "
"dejarlo al sistema operativo del host."
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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 "
@@ -58467,7 +58644,7 @@ msgstr ""
"Valores bajos pueden resultar en un cracking audible en un hardware más "
"lento."
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:282
msgid ""
"Safer override for [member audio/output_latency] in the Web platform, to "
"avoid audio issues especially on mobile devices."
@@ -58476,7 +58653,7 @@ msgstr ""
"plataforma web, para evitar problemas de audio especialmente en los "
"dispositivos móviles."
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:285
msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"untouched unless you know what you are doing."
@@ -58484,7 +58661,7 @@ msgstr ""
"Ajustar el retardo de audio hardcode cuando se reproduce el video. Es mejor "
"dejar esto intacto a menos que sepas lo que estás haciendo."
-#: doc/classes/ProjectSettings.xml:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -58501,7 +58678,7 @@ msgstr ""
"[code]6[/code] pero podría cambiar en el futuro debido a las actualizaciones "
"subyacentes de zlib."
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -58518,7 +58695,7 @@ msgstr ""
"[code]6[/code] pero podría cambiar en el futuro debido a las actualizaciones "
"subyacentes de zlib."
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -58529,7 +58706,7 @@ msgstr ""
"pequeños a costa de la velocidad de compresión. La velocidad de "
"descompresión no se ve afectada por el nivel de compresión."
-#: doc/classes/ProjectSettings.xml:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
@@ -58537,7 +58714,7 @@ msgstr ""
"Habilita [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]la "
"coincidencia a larga distancia[/url] en Zstandard."
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
@@ -58548,7 +58725,7 @@ msgstr ""
"pueden resultar en una mejor compresión, pero requerirán más memoria al "
"comprimir y descomprimir."
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -58560,14 +58737,14 @@ msgstr ""
"ser usada cuando se portan proyectos antiguos (Godot 2), ya que el uso de "
"variables de miembros es el estilo preferido a partir de Godot 3."
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
"Si [code]true[/code], habilita las advertencias cuando se utiliza una "
"constante como función."
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
@@ -58576,7 +58753,7 @@ msgstr ""
"Si [code]true[/code], activa las advertencias cuando se utilizan palabras "
"clave obsoletas."
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
@@ -58586,7 +58763,7 @@ msgstr ""
"la configuración de [code]debug/gdscript/warnings/*[/code]). Si [code]false[/"
"code], desactiva todas las advertencias de GDScript."
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
@@ -58594,7 +58771,7 @@ msgstr ""
"Si [code]true[/code], los scripts de la carpeta [code]res://addons[/code] no "
"generarán advertencias."
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
@@ -58603,14 +58780,14 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias cuando se utiliza una "
"función como si fuera una propiedad."
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function assigned to a "
@@ -58619,7 +58796,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias al asignar el resultado de "
"una función que devuelve [code]void[/code] a una variable."
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
@@ -58627,7 +58804,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias cuando se utiliza una "
"función como si fuera una propiedad."
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
@@ -58635,7 +58812,7 @@ msgstr ""
"Si [code]true[/code], habilita advertencias cuando un operador ternario "
"puede emitir valores con tipos incompatibles."
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
@@ -58643,7 +58820,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias al dividir un entero por "
"otro entero (la parte decimal será descartada)."
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:336
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 "
@@ -58652,7 +58829,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias al pasar un valor de real a "
"una función que espera un número entero (se convertirá y perderá precisión)."
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
@@ -58660,7 +58837,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias cuando se utiliza una "
"propiedad como si fuera una función."
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -58672,7 +58849,7 @@ msgstr ""
"como argumento de la función). Esos valores de retorno se utilizan a veces "
"para denotar posibles errores mediante el uso de enum [enum Error]."
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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 "
@@ -58682,7 +58859,7 @@ msgstr ""
"miembro local o de subclase que ensombrecería una variable en un nivel "
"superior (como una variable miembro)."
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:348
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 "
@@ -58692,7 +58869,7 @@ msgstr ""
"que no tiene efecto en el código circundante, como escribir [code]2 + 2[/"
"code] como una declaración."
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:351
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 "
@@ -58702,14 +58879,14 @@ msgstr ""
"ternaria que no tiene efecto en el código circundante, como escribir "
"[code]42 si está activo o 0[/code] como una declaración."
-#: doc/classes/ProjectSettings.xml:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
"Si [code]true[/code], todas las advertencias serán reportadas como si fueran "
"errores."
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
@@ -58717,7 +58894,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias cuando se utiliza una "
"variable que no fue asignada previamente."
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
@@ -58727,7 +58904,7 @@ msgstr ""
"utilizando un operador de asignación como [code]+=[/code] si la variable no "
"fue asignada previamente."
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:363
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)."
@@ -58736,7 +58913,7 @@ msgstr ""
"inalcanzable (como después de una declaración de [code]return[/code] que "
"siempre se ejecutará)."
-#: doc/classes/ProjectSettings.xml:365
+#: doc/classes/ProjectSettings.xml:366
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
@@ -58745,13 +58922,13 @@ msgstr ""
"expresión cuyo tipo puede no ser compatible con el parámetro de función "
"esperado."
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
"Si [code]true[/code], habilita las advertencias cuando se realiza un "
"lanzamiento inseguro."
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
@@ -58759,7 +58936,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias al llamar a un método cuya "
"presencia no está garantizada en tiempo de compilación en la clase."
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
@@ -58768,7 +58945,7 @@ msgstr ""
"propiedad cuya presencia no está garantizada en tiempo de compilación en la "
"clase."
-#: doc/classes/ProjectSettings.xml:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
@@ -58776,7 +58953,7 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias cuando una señal no es "
"utilizada."
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
@@ -58784,26 +58961,26 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias cuando una variable local no "
"se utiliza."
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
"Si [code]true[/code], habilita las advertencias cuando una señal no es "
"utilizada."
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
"Si [code]true[/code], habilita las advertencias cuando una variable local no "
"se utiliza."
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
@@ -58811,12 +58988,12 @@ msgstr ""
"Si [code]true[/code], habilita las advertencias al asignar el resultado de "
"una función que devuelve [code]void[/code] a una variable."
-#: doc/classes/ProjectSettings.xml:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
"Mensaje que se mostrará antes del retroceso cuando el motor se crashea."
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
#, fuzzy
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
@@ -58838,21 +59015,21 @@ msgstr ""
"no en tiempo real de fotogramas estáticos, o para probar el proyecto en "
"condiciones de retardo."
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr "Máxima pila de llamadas permitida para depurar GDScript."
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
"Cantidad máxima de funciones por fotograma permitidas en la elaboración de "
"perfiles."
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr "Imprime fotogramas por segundo a una salida estándar cada segundo."
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
@@ -58862,13 +59039,13 @@ msgstr ""
"Muestra información como las fugas de memoria, qué escenas y recursos se "
"están cargando, etc."
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
"Máxima pila de llamadas en el guión visual, para evitar la recursividad "
"infinita."
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
@@ -58876,7 +59053,7 @@ msgstr ""
"Color de los puntos de contacto entre las formas de colisión, visible cuando "
"\"Formas de colisión visibles\" está activado en el menú de Depuración."
-#: doc/classes/ProjectSettings.xml:421
+#: doc/classes/ProjectSettings.xml:422
#, fuzzy
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
@@ -58885,7 +59062,7 @@ msgstr ""
"Color de las formas de colisión, visible cuando \"Formas de colisión visibles"
"\" está activado en el menú de Depuración."
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
@@ -58894,7 +59071,7 @@ msgstr ""
"cuando \"Formas de colisión visibles\" está activado en el menú de "
"Depuración."
-#: doc/classes/ProjectSettings.xml:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
@@ -58902,7 +59079,7 @@ msgstr ""
"Color de las formas de colisión, visible cuando \"Formas de colisión visibles"
"\" está activado en el menú de Depuración."
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
@@ -58910,7 +59087,7 @@ msgstr ""
"Color de la geometría de navegación desactivada, visible cuando la "
"\"Navegación visible\" está activada en el menú de depuración."
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
@@ -58918,21 +59095,21 @@ msgstr ""
"Color de la geometría de navegación, visible cuando la \"Navegación visible"
"\" está activada en el menú de depuración."
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr "Imagen personalizada para el cursor del ratón (limitada a 256×256)."
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr "Punto donde se encuentra la imagen personalizada del cursor del ratón."
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
"Desplazamiento de la posición de las sugerencias, en relación con el punto "
"donde se encuentra el cursor del ratón."
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
#, fuzzy
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
@@ -58943,7 +59120,7 @@ msgstr ""
"Esta configuración no tiene efecto en el escritorio de Linux, ya que los "
"fallos de conocimiento de DPI no están soportados allí."
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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."
@@ -58952,7 +59129,7 @@ msgstr ""
"inactividad), por lo que el salvapantallas no toma el control. Funciona en "
"plataformas de escritorio y móviles."
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -58961,7 +59138,7 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
@@ -58969,7 +59146,7 @@ msgstr ""
"Si [code]verdad[/code], el indicador de casa se oculta automáticamente. Esto "
"sólo afecta a los dispositivos iOS sin un botón de inicio físico."
-#: doc/classes/ProjectSettings.xml:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -58979,7 +59156,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -58987,19 +59164,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -59013,7 +59190,7 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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 "
@@ -59023,14 +59200,14 @@ msgstr ""
"escritorio, este es el tamaño de ventana por defecto. Los ajustes del modo "
"de estiramiento también utilizan esto como referencia cuando está activado."
-#: doc/classes/ProjectSettings.xml:484
+#: doc/classes/ProjectSettings.xml:485
#, fuzzy
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr "Permite que la ventana sea redimensionada por defecto."
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
@@ -59038,7 +59215,7 @@ msgstr ""
"Si es mayor que cero, sobreescribe la altura de la ventana al ejecutar el "
"juego. Es útil para probar los modos de estiramiento."
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
@@ -59046,7 +59223,7 @@ msgstr ""
"Si es mayor que cero, anula el ancho de la ventana al ejecutar el juego. Es "
"útil para probar los modos de estiramiento."
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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 "
@@ -59056,7 +59233,7 @@ msgstr ""
"escritorio, este es el tamaño de ventana por defecto. La configuración del "
"modo ampliado también utiliza esto como referencia cuando está activado."
-#: doc/classes/ProjectSettings.xml:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
@@ -59064,7 +59241,7 @@ msgstr ""
"Especifica el controlador de la tableta a utilizar. Si se deja vacío, se "
"utilizará el controlador predeterminado."
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -59079,7 +59256,7 @@ msgstr ""
"muchas plataformas la harán cumplir independientemente (como las plataformas "
"móviles y HTML5)."
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -59099,7 +59276,7 @@ msgstr ""
"han experimentado una reducción de la mitad de la velocidad de los cuadros "
"Vsync (por ejemplo, de 60 FPS a 30 FPS) al usarla."
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -59115,7 +59292,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
#, fuzzy
msgid ""
"Search path for project-specific script templates. Godot will search for "
@@ -59126,7 +59303,7 @@ msgstr ""
"plantillas de script se buscarán tanto en la ruta específica del editor como "
"en esta ruta específica del proyecto."
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -59139,7 +59316,7 @@ msgstr ""
"especialmente si utilizas scripts incorporados que se serializan en los "
"archivos de la escena."
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
@@ -59147,7 +59324,7 @@ msgstr ""
"Valor por defecto para [member ScrollContainer.scroll_deadzone], que se "
"utilizará para todos los [ScrollContainer]s a menos que se sobrescriba."
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
#, fuzzy
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
@@ -59156,7 +59333,7 @@ msgstr ""
"Si [code]true[/code], cambia los botones Cancelar y Aceptar en los diálogos "
"de Windows y UWP para seguir las convenciones de la interfaz."
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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)."
@@ -59164,7 +59341,7 @@ msgstr ""
"Ruta a un archivo de recursos [Theme] personalizado para usar en el proyecto "
"([code]theme[/code] o genérico [code]tres[/code]/[code]res[/code] extension)."
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
@@ -59172,12 +59349,12 @@ msgstr ""
"Ruta a un recurso [Font] personalizado para usar como predeterminado para "
"todos los elementos de la interfaz gráfica de usuario del proyecto."
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
"Si [code]true[/code], se asegura de que el tema utilizado funciona con HiDPI."
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
@@ -59185,15 +59362,15 @@ msgstr ""
"Ajuste del temporizador para la búsqueda incremental en los controles de "
"[Tree], [ItemList], etc. (en milisegundos)."
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr "Temporizador para detectar la inactividad en [TextEdit] (en segundos)."
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr "Retraso predeterminado para las sugerencias (en segundos)."
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -59208,7 +59385,7 @@ msgstr ""
"[Control]s. Sin embargo, los eventos asignados a la acción pueden ser "
"modificados."
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -59221,7 +59398,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -59233,7 +59410,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -59250,7 +59427,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -59265,7 +59442,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -59280,7 +59457,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -59297,7 +59474,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -59309,7 +59486,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -59326,7 +59503,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -59343,7 +59520,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -59355,7 +59532,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -59369,7 +59546,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -59381,7 +59558,7 @@ msgstr ""
"eliminar ya que son necesarias para la lógica interna de varios [Control]s. "
"Sin embargo, los eventos asignados a la acción pueden ser modificados."
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -59393,7 +59570,7 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
@@ -59401,7 +59578,7 @@ msgstr ""
"Si [code]true[/code], envía eventos de entrada de ratón al tocar o deslizar "
"en la pantalla táctil."
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
@@ -59409,452 +59586,452 @@ msgstr ""
"Si [code]true[/code], envía eventos de entrada táctil al hacer clic o "
"arrastrar el ratón."
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
#, fuzzy
msgid "Default delay for touch events. This only affects iOS devices."
msgstr "Retraso predeterminado para las sugerencias (en segundos)."
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr "Nombre opcional para la capa 1 de la física 2D."
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr "Nombre opcional para la capa 10 de física 2D."
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr "Nombre opcional para la capa 11 de física 2D."
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr "Nombre opcional para la capa 12 de física 2D."
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr "Nombre opcional para la capa 13 de la física 2D."
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr "Nombre opcional para la capa 14 de la física 2D."
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr "Nombre opcional para la capa 15 de física 2D."
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr "Nombre opcional para la capa 15 de la física 2D."
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr "Nombre opcional para la capa 17 de la física 2D."
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr "Nombre opcional para la capa 18 de física 2D."
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr "Nombre opcional para la capa 19 de la física 2D."
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr "Nombre opcional para la capa 20 de física 2D."
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
#, fuzzy
msgid "Optional name for the 2D physics layer 21."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
#, fuzzy
msgid "Optional name for the 2D physics layer 22."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
#, fuzzy
msgid "Optional name for the 2D physics layer 23."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
#, fuzzy
msgid "Optional name for the 2D physics layer 24."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
#, fuzzy
msgid "Optional name for the 2D physics layer 25."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
#, fuzzy
msgid "Optional name for the 2D physics layer 26."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
#, fuzzy
msgid "Optional name for the 2D physics layer 27."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
#, fuzzy
msgid "Optional name for the 2D physics layer 28."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
#, fuzzy
msgid "Optional name for the 2D physics layer 29."
msgstr "Nombre opcional para la capa 2 de física 2D."
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr "Nombre opcional para la capa 3 de física 2D."
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
#, fuzzy
msgid "Optional name for the 2D physics layer 30."
msgstr "Nombre opcional para la capa 3 de física 2D."
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
#, fuzzy
msgid "Optional name for the 2D physics layer 31."
msgstr "Nombre opcional para la capa 3 de física 2D."
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
#, fuzzy
msgid "Optional name for the 2D physics layer 32."
msgstr "Nombre opcional para la capa 3 de física 2D."
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr "Nombre opcional para la capa 4 de física 2D."
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr "Nombre opcional para la capa 5 de física 2D."
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr "Nombre opcional para la capa 6 de física 2D."
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr "Nombre opcional para la capa 7 de física 2D."
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr "Nombre opcional para la capa 8 de física 2D."
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr "Nombre opcional para la capa 9 de física 2D."
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr "Nombre opcional para la capa 1 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr "Nombre opcional para la capa 10 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr "Nombre opcional para la capa 11 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr "Nombre opcional para la capa 12 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr "Nombre opcional para la capa 13 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr "Nombre opcional para la capa 14 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr "Nombre opcional para la capa 15 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr "Nombre opcional para la capa 16 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr "Nombre opcional para la capa 17 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr "Nombre opcional para la capa 18 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr "Nombre opcional para la capa 19 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr "Nombre opcional para la capa 2 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr "Nombre opcional para la capa 20 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr "Nombre opcional para la capa 3 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr "Nombre opcional para la capa 4 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr "Nombre opcional para la capa 5 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr "Nombre opcional para la capa 6 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr "Nombre opcional para la capa 7 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr "Nombre opcional para la capa 8 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr "Nombre opcional para la capa 9 del renderizado 2D."
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr "Nombre opcional para la capa 1 de la física 3D."
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr "Nombre opcional para la capa 10 de física 3D."
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr "Nombre opcional para la capa 11 de la física 3D."
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr "Nombre opcional para la capa 12 de física 3D."
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr "Nombre opcional para la capa 13 de la física 3D."
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr "Nombre opcional para la capa 14 de la física 3D."
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr "Nombre opcional para la capa 15 de la física 3D."
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr "Nombre opcional para la capa 16 de la física 3D."
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr "Nombre opcional para la capa 17 de la física 3D."
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr "Nombre opcional para la capa 18 de la física 3D."
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr "Nombre opcional para la capa 19 de la física 3D."
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr "Nombre opcional para la capa 20 de física 3D."
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
#, fuzzy
msgid "Optional name for the 3D physics layer 21."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
#, fuzzy
msgid "Optional name for the 3D physics layer 22."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
#, fuzzy
msgid "Optional name for the 3D physics layer 23."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
#, fuzzy
msgid "Optional name for the 3D physics layer 24."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
#, fuzzy
msgid "Optional name for the 3D physics layer 25."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
#, fuzzy
msgid "Optional name for the 3D physics layer 26."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
#, fuzzy
msgid "Optional name for the 3D physics layer 27."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
#, fuzzy
msgid "Optional name for the 3D physics layer 28."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
#, fuzzy
msgid "Optional name for the 3D physics layer 29."
msgstr "Nombre opcional para la capa 2 de la física 3D."
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr "Nombre opcional para la capa 3 de física 3D."
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
#, fuzzy
msgid "Optional name for the 3D physics layer 30."
msgstr "Nombre opcional para la capa 3 de física 3D."
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
#, fuzzy
msgid "Optional name for the 3D physics layer 31."
msgstr "Nombre opcional para la capa 3 de física 3D."
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
#, fuzzy
msgid "Optional name for the 3D physics layer 32."
msgstr "Nombre opcional para la capa 3 de física 3D."
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr "Nombre opcional para la capa 4 de física 3D."
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr "Nombre opcional para la capa 5 de física 3D."
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr "Nombre opcional para la capa 6 de física 3D."
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr "Nombre opcional para la capa 7 de física 3D."
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr "Nombre opcional para la capa 8 de física 3D."
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr "Nombre opcional para la capa 9 de física 3D."
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr "Nombre opcional para la capa 1 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr "Nombre opcional para la capa 10 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr "Nombre opcional para la capa 11 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr "Nombre opcional para la capa 12 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr "Nombre opcional para la capa 13 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr "Nombre opcional para la capa 14 del renderizado 3D"
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr "Nombre opcional para la capa 15 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr "Nombre opcional para la capa 16 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr "Nombre opcional para la capa 17 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr "Nombre opcional para la capa 18 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr "Nombre opcional para la capa 19 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr "Nombre opcional para la capa 2 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr "Nombre opcional para la capa 20 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr "Nombre opcional para la capa 3 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr "Nombre opcional para la capa 4 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr "Nombre opcional para la capa 5 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr "Nombre opcional para la capa 6 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr "Nombre opcional para la capa 7 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr "Nombre opcional para la capa 8 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr "Nombre opcional para la capa 9 del renderizado 3D."
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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."
@@ -59862,7 +60039,7 @@ msgstr ""
"El lugar al que recurrir si una traducción no está disponible en un idioma "
"determinado. Si se deja vacío, se usará [code]en[/code] (inglés)."
-#: doc/classes/ProjectSettings.xml:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
@@ -59870,17 +60047,17 @@ msgstr ""
"Si no está vacío, este lugar se utilizará cuando se ejecute el proyecto "
"desde el editor."
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr "Si [code]true[/code], registra todos los resultados en archivos."
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
@@ -59888,13 +60065,13 @@ msgstr ""
"Camino a los registros dentro del proyecto. Se recomienda utilizar una ruta "
"[code]user://[/code]."
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
"Especifica la cantidad máxima de archivos de registro permitidos (utilizados "
"para la rotación)."
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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."
@@ -59903,7 +60080,7 @@ msgstr ""
"funciones. Si te quedas sin espacio en ella (verás un error), puedes "
"aumentar el tamaño aquí."
-#: doc/classes/ProjectSettings.xml:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -59915,7 +60092,7 @@ msgstr ""
"los solicite en los hilos. Si los servidores se paralizan con demasiada "
"frecuencia al cargar recursos en un hilo, aumente este número."
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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 "
@@ -59925,7 +60102,7 @@ msgstr ""
"depurador. Por encima de este valor, el contenido se elimina. Esto ayuda a "
"no detener la conexión del depurador."
-#: doc/classes/ProjectSettings.xml:955
+#: doc/classes/ProjectSettings.xml:956
#, fuzzy
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
@@ -59936,7 +60113,7 @@ msgstr ""
"encima de este valor, el contenido se elimina. Esto ayuda a no detener la "
"conexión del depurador."
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
#, fuzzy
msgid ""
"Maximum amount of messages allowed to send as output from the debugger. Over "
@@ -59947,7 +60124,7 @@ msgstr ""
"depurador. Por encima de este valor, el contenido se elimina. Esto ayuda a "
"no detener la conexión del depurador."
-#: doc/classes/ProjectSettings.xml:961
+#: doc/classes/ProjectSettings.xml:962
#, fuzzy
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
@@ -59958,7 +60135,7 @@ msgstr ""
"Por encima de este valor, el contenido se elimina. Esto ayuda a no detener "
"la conexión del depurador."
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
#, fuzzy
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
@@ -59968,52 +60145,52 @@ msgstr ""
"Tamaño por defecto del flujo de paquetes para deserializar los datos de "
"Godot. Por encima de este tamaño, los datos se eliminan."
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
"Tiempo de espera (en segundos) para los intentos de conexión usando TCP."
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr "Tamaño máximo (en kiB) para el buffer de entrada [WebRTCDataChannel]."
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr "Tamaño máximo (en kiB) para el buffer de entrada [WebRTCDataChannel]."
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr "Tamaño máximo (en kiB) para el buffer de entrada [WebRTCDataChannel]."
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr "Tamaño máximo (en kiB) para el buffer de entrada [WebRTCDataChannel]."
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr "Tamaño máximo (en kiB) para el buffer de entrada [WebRTCDataChannel]."
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
@@ -60022,12 +60199,12 @@ msgstr ""
"remoto. Los valores más altos disminuyen los efectos de la latencia a costa "
"de un mayor uso del ancho de banda."
-#: doc/classes/ProjectSettings.xml:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
"Tamaño de la página utilizada por el sistema de archivos remoto (en bytes)."
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -60044,7 +60221,7 @@ msgstr ""
"defecto.\n"
"En caso de duda, deje este ajuste vacío."
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
msgid ""
"When creating node names automatically, set the type of casing in this "
"project. This is mostly an editor setting."
@@ -60052,7 +60229,7 @@ msgstr ""
"Al crear los nombres de los nodos de forma automática, establezca el tipo de "
"carcasa en este proyecto. Esto es mayormente un ajuste de editor."
-#: doc/classes/ProjectSettings.xml:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
@@ -60060,7 +60237,7 @@ msgstr ""
"Qué usar para separar el nombre del nodo del número. Esto es mayormente un "
"ajuste de editor."
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
#, fuzzy
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
@@ -60070,14 +60247,14 @@ msgstr ""
"Tamaño de la tabla hash usada para el algoritmo de la cuadrícula hash 2D de "
"fase ancha."
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -60090,7 +60267,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
#, fuzzy
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
@@ -60112,7 +60289,7 @@ msgstr ""
"PhysicsServer2D.AREA_PARAM_GRAVITY, 98)\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
#, fuzzy
msgid ""
"The default gravity direction in 2D.\n"
@@ -60134,7 +60311,7 @@ msgstr ""
"get_space(), Servidor de Física2D.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -60147,7 +60324,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
#, fuzzy
msgid ""
"Threshold defining the surface size that constitutes a large object with "
@@ -60159,7 +60336,7 @@ msgstr ""
"con respecto a las células en el algoritmo de la cuadrícula hash 2D de fase "
"ancha."
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
#, fuzzy
msgid ""
"Sets which physics engine to use for 2D physics.\n"
@@ -60170,7 +60347,7 @@ msgstr ""
"\"DEFAULT\" y \"GodotPhysics2D\" son lo mismo, ya que actualmente no hay "
"ningún servidor de física 2D alternativo implementado."
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
#, fuzzy
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
@@ -60181,7 +60358,7 @@ msgstr ""
"inactivo. Ver [constant PhysicsServer2D."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
#, fuzzy
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
@@ -60192,7 +60369,7 @@ msgstr ""
"inactivo. Ver [constant PhysicsServer2D."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -60208,7 +60385,7 @@ msgstr ""
"de un modelo de hilo multi-hilo para la física. Asegúrate de evaluar si te "
"da un rendimiento extra y no hay regresiones al usarlo."
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
#, fuzzy
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
@@ -60218,13 +60395,13 @@ msgstr ""
"ponga a dormir. Ver [constant PhysicsServer2D."
"SPACE_PARAM_BODY_TIME_TO_SLEEP]."
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
#, fuzzy
msgid ""
"Sets whether the 3D physics world will be created with support for "
@@ -60233,7 +60410,7 @@ msgstr ""
"Establece si el mundo de la física 3D se creará con soporte para la física "
"[SoftBody3D]. Sólo se aplica al motor de física de Bullet."
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -60246,7 +60423,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
#, fuzzy
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
@@ -60268,7 +60445,7 @@ msgstr ""
"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
#, fuzzy
msgid ""
"The default gravity direction in 3D.\n"
@@ -60290,7 +60467,7 @@ msgstr ""
"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -60303,13 +60480,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
#, fuzzy
msgid ""
"Sets which physics engine to use for 3D physics.\n"
@@ -60322,11 +60499,11 @@ msgstr ""
"org]Bullet[/url]. El motor de \"GodotPhysics3D\" sigue siendo soportado como "
"una alternativa."
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr "Habilita [member Viewport.physics_object_picking] en el viewport raíz."
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -60340,7 +60517,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -60355,7 +60532,7 @@ msgstr ""
"cambiar el FPS de física en tiempo de ejecución, establece [member Engine."
"iterations_per_second] en su lugar."
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
#, fuzzy
msgid ""
"Controls how much physics ticks are synchronized with real time. For 0 or "
@@ -60380,7 +60557,7 @@ msgstr ""
"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/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -60390,7 +60567,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -60400,7 +60577,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -60411,7 +60588,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -60421,7 +60598,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -60429,7 +60606,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
#, fuzzy
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
@@ -60449,7 +60626,7 @@ msgstr ""
"backend de renderizado GLES2, y sólo a las plataformas de escritorio. No es "
"necesaria cuando se utiliza el backend de Vulkan."
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -60464,7 +60641,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -60473,13 +60650,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -60488,7 +60665,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -60498,7 +60675,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -60510,7 +60687,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -60520,24 +60697,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -60546,7 +60723,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -60554,7 +60731,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -60563,7 +60740,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -60573,7 +60750,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -60581,31 +60758,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
#, fuzzy
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
@@ -60619,7 +60796,7 @@ msgstr ""
"predeterminado de forma programada, utilice el [method RenderingServer."
"set_default_clear_color]."
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -60635,46 +60812,53 @@ msgstr ""
"reserva, es mejor borrar [code]default_env.tres[/code], o especificar aquí "
"un entorno por defecto diferente."
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -60682,7 +60866,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -60692,7 +60876,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -60701,7 +60885,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -60710,14 +60894,14 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
@@ -60728,7 +60912,7 @@ msgstr ""
"Este algoritmo sólo es compatible con las plataformas y consolas de "
"escritorio."
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
#, fuzzy
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
@@ -60745,7 +60929,7 @@ msgstr ""
"[code]6[/code] pero podría cambiar en el futuro debido a las actualizaciones "
"subyacentes de zlib."
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -60753,7 +60937,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -60762,7 +60946,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -60772,13 +60956,13 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
#, fuzzy
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
@@ -60789,7 +60973,7 @@ msgstr ""
"cinematico. Si [code]false[/code], las colisiones se manejarán como un "
"cuerpo estático."
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -60798,13 +60982,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -60814,14 +60998,14 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
@@ -60831,7 +61015,7 @@ msgstr ""
"size] en los dispositivos móviles, debido a problemas de rendimiento o de "
"compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
@@ -60839,7 +61023,7 @@ msgstr ""
"Desactiva el paso previo de profundidad para algunos fabricantes de GPU "
"(normalmente móviles), ya que su arquitectura ya lo hace."
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
@@ -60849,7 +61033,7 @@ msgstr ""
"renderizar los materiales. Esto aumenta el rendimiento en escenas con alto "
"sobregiro, cuando se utilizan materiales complejos e iluminación."
-#: doc/classes/ProjectSettings.xml:1299
+#: doc/classes/ProjectSettings.xml:1303
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 "
@@ -60859,7 +61043,7 @@ msgstr ""
"en sombras más nítidas, a costa del rendimiento. El valor se redondeará a la "
"potencia más cercana de 2."
-#: doc/classes/ProjectSettings.xml:1302
+#: doc/classes/ProjectSettings.xml:1306
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
@@ -60868,7 +61052,7 @@ msgstr ""
"directional_shadow/size] en los dispositivos móviles, debido a problemas de "
"rendimiento o de apoyo al driver."
-#: doc/classes/ProjectSettings.xml:1305
+#: doc/classes/ProjectSettings.xml:1309
#, fuzzy
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
@@ -60886,7 +61070,7 @@ msgstr ""
"[code]OS.get_current_video_driver[/code] para consultarla en tiempo de "
"ejecución."
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -60898,7 +61082,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -60906,7 +61090,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
#, fuzzy
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
@@ -60921,7 +61105,7 @@ msgstr ""
"[b]Nota:[/b] La MSAA no está disponible en la exportación a HTML5 utilizando "
"el backend GLES2."
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -60930,7 +61114,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -60944,7 +61128,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
#, fuzzy
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
@@ -60959,7 +61143,7 @@ msgstr ""
"la imagen se vea borrosa, especialmente en resoluciones más bajas. Puede "
"funcionar relativamente bien en resoluciones grandes como 1440p y 4K."
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -60974,7 +61158,7 @@ msgstr ""
"de memoria. Si [code]false[/code], se utiliza el filtrado lineal de mipmaps "
"(también llamado \"filtrado trilíneo\")."
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -60990,7 +61174,7 @@ msgstr ""
"[code]DEPTH_TEXTURE[/code] no estarán disponibles en los shaders y los "
"efectos de post-procesamiento no estarán disponibles en el [Environment]."
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
@@ -61000,14 +61184,14 @@ msgstr ""
"framebuffer_allocation] en los dispositivos móviles, debido a problemas de "
"rendimiento o de compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
@@ -61017,27 +61201,27 @@ msgstr ""
"force_vertex_shading] en los dispositivos móviles, debido a problemas de "
"rendimiento o de compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
@@ -61048,7 +61232,7 @@ msgstr ""
"reflections/ggx_samples] en dispositivos móviles, debido a problemas de "
"rendimiento o de compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -61059,7 +61243,7 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
#, fuzzy
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
@@ -61072,7 +61256,7 @@ msgstr ""
"significativamente más lento de calcular y utiliza [member rendering/quality/"
"reflections/roughness_layers] veces más memoria."
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
@@ -61082,7 +61266,7 @@ msgstr ""
"reflections/texture_array_reflections] en dispositivos móviles, debido a "
"problemas de rendimiento o compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1368
+#: doc/classes/ProjectSettings.xml:1372
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
@@ -61090,7 +61274,7 @@ msgstr ""
"Si [code]true[/code], utiliza un modelo Blinn más rápido pero de menor "
"calidad para generar reflejos borrosos en lugar del modelo GGX."
-#: doc/classes/ProjectSettings.xml:1371
+#: doc/classes/ProjectSettings.xml:1375
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
@@ -61100,7 +61284,7 @@ msgstr ""
"shadinging/force_blinn_over_ggx] en los dispositivos móviles, debido a "
"problemas de rendimiento o de soporte de los conductores."
-#: doc/classes/ProjectSettings.xml:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
@@ -61108,7 +61292,7 @@ msgstr ""
"Si [code]true[/code], utiliza un modelo de iluminación de material Lambert "
"más rápido pero de menor calidad en lugar del Burley."
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
@@ -61118,7 +61302,7 @@ msgstr ""
"shadinging/force_lambert_over_burley] en los dispositivos móviles, debido a "
"problemas de rendimiento o de apoyo al conductor."
-#: doc/classes/ProjectSettings.xml:1380
+#: doc/classes/ProjectSettings.xml:1384
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 "
@@ -61129,7 +61313,7 @@ msgstr ""
"la calidad enormemente. Se puede utilizar para optimizar el rendimiento en "
"dispositivos móviles de gama baja."
-#: doc/classes/ProjectSettings.xml:1383
+#: doc/classes/ProjectSettings.xml:1387
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
@@ -61139,7 +61323,7 @@ msgstr ""
"force_vertex_shading] en los dispositivos móviles, debido a problemas de "
"rendimiento o de compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -61150,7 +61334,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -61159,8 +61343,8 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
@@ -61168,7 +61352,7 @@ msgstr ""
"Tamaño del cuadrante de subdivisión para el mapeo de sombras. Ver la "
"documentación del mapeo de sombras."
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
@@ -61176,7 +61360,7 @@ msgstr ""
"Tamaño para el atlas de sombras (usado para OmniLights y SpotLights). Vea la "
"documentación."
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
@@ -61185,7 +61369,7 @@ msgstr ""
"size] en los dispositivos móviles, debido a problemas de rendimiento o de "
"compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -61196,7 +61380,7 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
@@ -61206,14 +61390,14 @@ msgstr ""
"size] en los dispositivos móviles, debido a problemas de rendimiento o de "
"compatibilidad con el controlador."
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -61225,47 +61409,47 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
#, fuzzy
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr "La fuerza del efecto de dispersión del subsuelo."
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
#, fuzzy
msgid "Max radius used for subsurface scattering samples."
msgstr "La fuerza del efecto de dispersión del subsuelo."
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
@@ -61275,7 +61459,7 @@ msgstr ""
"mejorar enormemente el rendimiento, pero la sincronización con el hilo "
"principal puede causar un poco más de temblor."
-#: doc/classes/ProjectSettings.xml:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -61283,7 +61467,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -61294,14 +61478,14 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"Si [code]true[/code], el importador de texturas importará texturas "
"comprimidas con VRAM usando el algoritmo BPTC. Este algoritmo de compresión "
"de texturas sólo está soportado en plataformas de escritorio, y sólo cuando "
"se utiliza el renderizador Vulkan."
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -61311,14 +61495,14 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"Si [code]true[/code], el importador de texturas importará texturas "
"comprimidas con VRAM usando el algoritmo BPTC. Este algoritmo de compresión "
"de texturas sólo está soportado en plataformas de escritorio, y sólo cuando "
"se utiliza el renderizador Vulkan."
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -61328,14 +61512,14 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"Si [code]true[/code], el importador de texturas importará texturas "
"comprimidas con VRAM usando el algoritmo BPTC. Este algoritmo de compresión "
"de texturas sólo está soportado en plataformas de escritorio, y sólo cuando "
"se utiliza el renderizador Vulkan."
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -61345,14 +61529,14 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"Si [code]true[/code], el importador de texturas importará texturas "
"comprimidas con VRAM usando el algoritmo BPTC. Este algoritmo de compresión "
"de texturas sólo está soportado en plataformas de escritorio, y sólo cuando "
"se utiliza el renderizador Vulkan."
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -61362,14 +61546,14 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"Si [code]true[/code], el importador de texturas importará texturas "
"comprimidas con VRAM usando el algoritmo BPTC. Este algoritmo de compresión "
"de texturas sólo está soportado en plataformas de escritorio, y sólo cuando "
"se utiliza el renderizador Vulkan."
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
#, fuzzy
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
@@ -76202,31 +76386,38 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr "[Color] del texto utilizado cuando el [Button] está desactivado."
#: doc/classes/ToolButton.xml:39
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:42
#, fuzzy
msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr "[Color] del texto usado cuando el [Button] tiene encima el cursor."
-#: doc/classes/ToolButton.xml:42
+#: doc/classes/ToolButton.xml:45
#, fuzzy
msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr "[Color] del texto utilizado cuando se pulsa el [Button]."
-#: doc/classes/ToolButton.xml:45
+#: doc/classes/ToolButton.xml:48
#, fuzzy
msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr "[StyleBox] que se usa cuando el [Button] tiene encima el cursor."
-#: doc/classes/ToolButton.xml:48
+#: doc/classes/ToolButton.xml:51
#, fuzzy
msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr "El espacio horizontal entre el icono y el texto de [Button]."
-#: doc/classes/ToolButton.xml:51
+#: doc/classes/ToolButton.xml:54
#, fuzzy
msgid "Default [StyleBox] for the [ToolButton]."
msgstr "[StyleBox] por defecto para el [Button]."
-#: doc/classes/ToolButton.xml:54
+#: doc/classes/ToolButton.xml:57
#, fuzzy
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr "[StyleBox] que se usa cuando se presiona el [Button]."
@@ -92058,6 +92249,30 @@ msgstr ""
"Si es [code]true[/code], los nodos hijos son ordenados, de lo contrario el "
"ordenado está deshabilitado."
+#, fuzzy
+#~ msgid ""
+#~ "Returns a list of intersecting [Area]s. For performance reasons "
+#~ "(collisions are all processed at the same time) this list is modified "
+#~ "once during the physics step, not immediately after objects are moved. "
+#~ "Consider using signals instead."
+#~ msgstr ""
+#~ "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."
+
+#, fuzzy
+#~ msgid "Emitted when the resource value was set and user clicked to edit it."
+#~ msgstr "Emitido cuando se selecciona un recurso en el inspector."
+
+#~ 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."
+
#~ msgid "Returns the label used for built-in text."
#~ msgstr "Devuelve la etiqueta utilizada para el texto interno."
diff --git a/doc/translations/et.po b/doc/translations/et.po
new file mode 100644
index 0000000000..b4bd240ceb
--- /dev/null
+++ b/doc/translations/et.po
@@ -0,0 +1,69329 @@
+# LANGUAGE translation of the Godot Engine class reference.
+# Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur.
+# Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md).
+# This file is distributed under the same license as the Godot source code.
+#
+# karl kivi <karl97kivi@gmail.com>, 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: Godot Engine class reference\n"
+"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
+"Language: et\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#: doc/tools/make_rst.py
+msgid "Description"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Tutorials"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Properties"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Methods"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Theme Properties"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Signals"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Enumerations"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Constants"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Property Descriptions"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Method Descriptions"
+msgstr ""
+
+#: 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:19
+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:34
+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:45
+msgid ""
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
+"[codeblock]\n"
+"a = abs(-1) # a is 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:55
+msgid ""
+"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
+"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
+"[code]1.0[/code] (inclusive), otherwise, [method acos] will return [constant "
+"NAN].\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:66
+msgid ""
+"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
+"sine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
+"[code]1.0[/code] (inclusive), otherwise, [method asin] will return [constant "
+"NAN].\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:78
+msgid ""
+"Asserts that the [code]condition[/code] is [code]true[/code]. If the "
+"[code]condition[/code] is [code]false[/code], an error is generated. When "
+"running from the editor, the running project will also be paused until you "
+"resume it. This can be used as a stronger form of [method push_error] for "
+"reporting errors to project developers or add-on users.\n"
+"[b]Note:[/b] For performance reasons, the code inside [method assert] is "
+"only executed in debug builds or when running the project from the editor. "
+"Don't include code that has side effects in an [method assert] call. "
+"Otherwise, the project will behave differently when exported in release "
+"mode.\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"
+"var speed = -10\n"
+"assert(speed < 20) # True, the program will continue\n"
+"assert(speed >= 0) # False, the program will stop\n"
+"assert(speed >= 0 and 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:95
+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:107
+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:119
+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:128
+#: 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:135
+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"
+"a = ceil(1.45) # a is 2.0\n"
+"a = ceil(1.001) # a is 2.0\n"
+"[/codeblock]\n"
+"See also [method floor], [method round], [method stepify], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:147
+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:162
+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"
+"a = clamp(1000, 1, 20) # a is 20\n"
+"a = clamp(-10, 1, 20) # a is 1\n"
+"a = clamp(15, 1, 20) # a is 15\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:175
+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:190
+msgid ""
+"Returns the cosine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"a = cos(TAU) # a is 1.0\n"
+"a = cos(PI) # a is -1.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:201
+msgid ""
+"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"print(cosh(1)) # Prints 1.543081\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:211
+msgid "Converts from decibels to linear energy (audio)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:218
+msgid "Deprecated alias for [method step_decimals]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:227
+msgid ""
+"[b]Note:[/b] [code]dectime[/code] has been deprecated and will be removed in "
+"Godot 4.0, please use [method move_toward] instead.\n"
+"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code].\n"
+"[codeblock]\n"
+"a = dectime(60, 10, 0.1)) # a is 59.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:238
+msgid ""
+"Converts an angle expressed in degrees to radians.\n"
+"[codeblock]\n"
+"r = deg2rad(180) # r is 3.141593\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:248
+msgid ""
+"Converts a dictionary (previously created with [method inst2dict]) back to "
+"an instance. Useful for deserializing."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:256
+msgid ""
+"Returns an \"eased\" value of [code]x[/code] based on an easing function "
+"defined with [code]curve[/code]. This easing function is based on an "
+"exponent. The [code]curve[/code] can be any floating-point number, with "
+"specific values leading to the following behaviors:\n"
+"[codeblock]\n"
+"- Lower than -1.0 (exclusive): Ease in-out\n"
+"- 1.0: Linear\n"
+"- Between -1.0 and 0.0 (exclusive): Ease out-in\n"
+"- 0.0: Constant\n"
+"- Between 0.0 to 1.0 (exclusive): Ease in\n"
+"- 1.0: Linear\n"
+"- Greater than 1.0 (exclusive): Ease out\n"
+"[/codeblock]\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
+"See also [method smoothstep]. If you need to perform more advanced "
+"transitions, use [Tween] or [AnimationPlayer]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:274
+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:286
+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 = floor(2.45) # a is 2.0\n"
+"a = floor(2.99) # a is 2.0\n"
+"a = floor(-2.99) # a is -3.0\n"
+"[/codeblock]\n"
+"See also [method ceil], [method round], [method stepify], and [int].\n"
+"[b]Note:[/b] This method returns a float. If you need an integer and "
+"[code]s[/code] is a non-negative number, you can use [code]int(s)[/code] "
+"directly."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:301
+msgid ""
+"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
+"of [code]a[/code].\n"
+"[codeblock]\n"
+"r = fmod(7, 5.5) # r is 1.5\n"
+"[/codeblock]\n"
+"For the integer remainder operation, use the % operator."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:313
+msgid ""
+"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"for i in 7:\n"
+" var x = 0.5 * i - 1.5\n"
+" print(\"%4.1f %4.1f %4.1f\" % [x, fmod(x, 1.5), fposmod(x, 1.5)])\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-1.5 -0.0 0.0\n"
+"-1.0 -1.0 0.5\n"
+"-0.5 -0.5 1.0\n"
+" 0.0 0.0 0.0\n"
+" 0.5 0.5 0.5\n"
+" 1.0 1.0 1.0\n"
+" 1.5 0.0 0.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:336
+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:349
+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:370
+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:380
+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:399
+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:415
+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:430
+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:439
+msgid ""
+"Returns whether [code]s[/code] is an infinity value (either positive "
+"infinity or negative infinity)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:446
+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:453
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:460
+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:468
+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:482
+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]linear_interpolate[/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:497
+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:514
+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:527
+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].\n"
+"This method is a simplified version of [method ResourceLoader.load], which "
+"can be used for more advanced scenarios."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:541
+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:554
+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:566
+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:579
+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:592
+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:609
+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:622
+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:640
+#: 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:648
+msgid ""
+"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"for i in range(-3, 4):\n"
+" print(\"%2d %2d %2d\" % [i, i % 3, posmod(i, 3)])\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-3 0 0\n"
+"-2 -2 1\n"
+"-1 -1 2\n"
+" 0 0 0\n"
+" 1 1 1\n"
+" 2 2 2\n"
+" 3 0 0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:670
+msgid ""
+"Returns the result of [code]base[/code] raised to the power of [code]exp[/"
+"code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Returns 32.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:680
+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:691
+msgid ""
+"Converts one or more arguments of any type to string in the best way "
+"possible and prints them to the console.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"=\", a) # Prints a=[1, 2, 3]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
+"print error and warning messages instead of [method print]. This "
+"distinguishes them from print messages used for debugging purposes, while "
+"also displaying a stack trace when an error or warning is printed."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:702
+msgid "Like [method print], but prints only when used in debug mode."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:708
+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:718
+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:727
+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:739
+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:748
+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:758
+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]\n"
+"[b]Note:[/b] Errors printed this way will not pause project execution. To "
+"print an error message and pause project execution in debug builds, use "
+"[code]assert(false, \"test error\")[/code] instead."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:769
+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:779
+msgid ""
+"Converts an angle expressed in radians to degrees.\n"
+"[codeblock]\n"
+"rad2deg(0.523599) # Returns 30.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:790
+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:800
+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:806
+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:815
+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:827
+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:837
+msgid ""
+"Returns an array with the given range. Range can be 1 argument [code]N[/"
+"code] (0 to [code]N[/code] - 1), two arguments ([code]initial[/code], "
+"[code]final - 1[/code]) or three arguments ([code]initial[/code], "
+"[code]final - 1[/code], [code]increment[/code]). Returns an empty array if "
+"the range isn't valid (e.g. [code]range(2, 5, -1)[/code] or [code]range(5, "
+"5, 1)[/code]).\n"
+"Returns an array with the given range. [code]range()[/code] can have 1 "
+"argument N ([code]0[/code] to [code]N - 1[/code]), two arguments "
+"([code]initial[/code], [code]final - 1[/code]) or three arguments "
+"([code]initial[/code], [code]final - 1[/code], [code]increment[/code]). "
+"[code]increment[/code] can be negative. If [code]increment[/code] is "
+"negative, [code]final - 1[/code] will become [code]final + 1[/code]. Also, "
+"the initial value must be greater than the final value for the loop to run.\n"
+"[codeblock]\n"
+"print(range(4))\n"
+"print(range(2, 5))\n"
+"print(range(0, 6, 2))\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"[0, 1, 2, 3]\n"
+"[2, 3, 4]\n"
+"[0, 2, 4]\n"
+"[/codeblock]\n"
+"To iterate over an [Array] backwards, use:\n"
+"[codeblock]\n"
+"var array = [3, 6, 9]\n"
+"var i := array.size() - 1\n"
+"while i >= 0:\n"
+" print(array[i])\n"
+" i -= 1\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"9\n"
+"6\n"
+"3\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:874
+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:884
+msgid ""
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
+"[codeblock]\n"
+"a = round(2.49) # a is 2.0\n"
+"a = round(2.5) # a is 3.0\n"
+"a = round(2.51) # a is 3.0\n"
+"[/codeblock]\n"
+"See also [method floor], [method ceil], [method stepify], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:897
+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:908
+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:920
+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:930
+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:943
+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(y) = "
+"3*y^2 - 2*y^3[/code] where [code]y = (x-from) / (to-from)[/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]\n"
+"Compared to [method ease] with a curve value of [code]-1.6521[/code], "
+"[method smoothstep] returns the smoothest possible curve with no sudden "
+"changes in the derivative. If you need to perform more advanced transitions, "
+"use [Tween] or [AnimationPlayer].\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, "
+"-1.6521) return values[/url]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:960
+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:971
+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 = step_decimals(5) # n is 0\n"
+"n = step_decimals(1.0005) # n is 4\n"
+"n = step_decimals(0.000000005) # n is 9\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:984
+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.0\n"
+"stepify(3.14159, 0.01) # Returns 3.14\n"
+"[/codeblock]\n"
+"See also [method ceil], [method floor], [method round], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:995
+msgid ""
+"Converts one or more arguments of any type 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:1008
+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:1020
+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:1030
+msgid ""
+"Returns the hyperbolic tangent of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # a is 0.693147\n"
+"b = tanh(a) # b is 0.6\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1041
+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:1057
+msgid ""
+"Returns whether the given class exists in [ClassDB].\n"
+"[codeblock]\n"
+"type_exists(\"Sprite\") # Returns true\n"
+"type_exists(\"Variant\") # Returns false\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1068
+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:1082
+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:1098
+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:1105
+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:1123
+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:1133
+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:1157
+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:1176
+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 ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1207
+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:1210
+msgid ""
+"The circle constant, the circumference of the unit circle in radians. This "
+"is equivalent to [code]PI * 2[/code], or 360 degrees in rotations."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1213
+msgid ""
+"Positive floating-point infinity. This is the result of floating-point "
+"division when the divisor is [code]0.0[/code]. For negative infinity, use "
+"[code]-INF[/code]. Dividing by [code]-0.0[/code] will result in negative "
+"infinity if the numerator is positive, so dividing by [code]0.0[/code] is "
+"not the same as dividing by [code]-0.0[/code] (despite [code]0.0 == -0.0[/"
+"code] returning [code]true[/code]).\n"
+"[b]Note:[/b] Numeric infinity is only a concept with floating-point numbers, "
+"and has no equivalent for integers. Dividing an integer number by [code]0[/"
+"code] will not result in [constant INF] and will result in a run-time error "
+"instead."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1217
+msgid ""
+"\"Not a Number\", an invalid floating-point value. [constant NAN] has "
+"special properties, including that it is not equal to itself ([code]NAN == "
+"NAN[/code] returns [code]false[/code]). It is output by some invalid "
+"operations, such as dividing floating-point [code]0.0[/code] by [code]0.0[/"
+"code].\n"
+"[b]Note:[/b] \"Not a Number\" is only a concept with floating-point numbers, "
+"and has no equivalent for integers. Dividing an integer [code]0[/code] by "
+"[code]0[/code] will not result in [constant NAN] and will result in a run-"
+"time error instead."
+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, scancodes, property hints, etc.\n"
+"Singletons are also documented here, since they can be accessed from "
+"anywhere."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:16
+msgid "The [ARVRServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:19
+msgid "The [AudioServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:22
+msgid "The [CameraServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:25
+msgid "The [ClassDB] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:28
+msgid "The [Engine] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:31
+msgid "The [Geometry] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:34
+msgid "The [IP] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:37
+msgid "The [Input] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:40
+msgid "The [InputMap] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:43
+msgid "The [JSON] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:46
+msgid ""
+"The [JavaClassWrapper] singleton.\n"
+"[b]Note:[/b] Only implemented on Android."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:50
+msgid ""
+"The [JavaScript] singleton.\n"
+"[b]Note:[/b] Only implemented on HTML5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:54
+msgid "The [Marshalls] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:57
+msgid "The [EditorNavigationMeshGenerator] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:60
+msgid "The [OS] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:63
+msgid "The [Performance] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:66
+msgid "The [Physics2DServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:69
+msgid "The [PhysicsServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:72
+msgid "The [ProjectSettings] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:75
+msgid "The [ResourceLoader] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:78
+msgid "The [ResourceSaver] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:81
+msgid "The [TranslationServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:84
+msgid "The [VisualScriptEditor] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:87
+msgid "The [VisualServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:92
+msgid "Left margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:95
+msgid "Top margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:98
+msgid "Right margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:101
+msgid ""
+"Bottom margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:104
+msgid "Top-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:107
+msgid "Top-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:110
+msgid "Bottom-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:113
+msgid "Bottom-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:116
+msgid ""
+"General vertical alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:119
+msgid ""
+"General horizontal alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:122
+msgid "Horizontal left alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:125
+msgid "Horizontal center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:128
+msgid "Horizontal right alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:131
+msgid "Vertical top alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:134
+msgid "Vertical center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:137
+msgid "Vertical bottom alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:140
+msgid "Scancodes with this bit applied are non-printable."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:143
+msgid "Escape key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:146
+msgid "Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:149
+msgid "Shift+Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:152
+msgid "Backspace key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:155
+msgid "Return key (on the main keyboard)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:158
+msgid "Enter key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:161
+msgid "Insert key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:164
+msgid "Delete key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:167
+msgid "Pause key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:170
+msgid "Print Screen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:173
+msgid "System Request key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:176
+msgid "Clear key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:179
+msgid "Home key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:182
+msgid "End key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:185
+msgid "Left arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:188
+msgid "Up arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:191
+msgid "Right arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:194
+msgid "Down arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:197
+msgid "Page Up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:200
+msgid "Page Down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:203
+msgid "Shift key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:206
+msgid "Control key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:209
+msgid "Meta key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:212
+msgid "Alt key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:215
+msgid "Caps Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:218
+msgid "Num Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:221
+msgid "Scroll Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:224
+msgid "F1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:227
+msgid "F2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:230
+msgid "F3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:233
+msgid "F4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:236
+msgid "F5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:239
+msgid "F6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:242
+msgid "F7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:245
+msgid "F8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:248
+msgid "F9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:251
+msgid "F10 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:254
+msgid "F11 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:257
+msgid "F12 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:260
+msgid "F13 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:263
+msgid "F14 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:266
+msgid "F15 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:269
+msgid "F16 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:272
+msgid "Multiply (*) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:275
+msgid "Divide (/) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:278
+msgid "Subtract (-) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:281
+msgid "Period (.) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:284
+msgid "Add (+) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:287
+msgid "Number 0 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:290
+msgid "Number 1 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:293
+msgid "Number 2 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:296
+msgid "Number 3 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:299
+msgid "Number 4 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:302
+msgid "Number 5 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:305
+msgid "Number 6 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:308
+msgid "Number 7 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:311
+msgid "Number 8 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:314
+msgid "Number 9 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:317
+msgid "Left Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:320
+msgid "Right Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:323
+msgid "Context menu key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:326
+msgid "Left Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:329
+msgid "Right Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:332
+msgid "Help key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:335
+msgid "Left Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:338
+msgid "Right Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:341
+msgid ""
+"Media back key. Not to be confused with the Back button on an Android device."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:344
+msgid "Media forward key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:347 doc/classes/@GlobalScope.xml:380
+msgid "Media stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:350
+msgid "Media refresh key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:353
+msgid "Volume down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:356
+msgid "Mute volume key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:359
+msgid "Volume up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:362
+msgid "Bass Boost key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:365
+msgid "Bass up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:368
+msgid "Bass down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:371
+msgid "Treble up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:374
+msgid "Treble down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:377
+msgid "Media play key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:383
+msgid "Previous song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:386
+msgid "Next song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:389
+msgid "Media record key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:392
+msgid "Home page key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:395
+msgid "Favorites key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:398
+msgid "Search key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:401
+msgid "Standby key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:404
+msgid "Open URL / Launch Browser key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:407
+msgid "Launch Mail key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:410
+msgid "Launch Media key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:413
+msgid "Launch Shortcut 0 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:416
+msgid "Launch Shortcut 1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:419
+msgid "Launch Shortcut 2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:422
+msgid "Launch Shortcut 3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:425
+msgid "Launch Shortcut 4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:428
+msgid "Launch Shortcut 5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:431
+msgid "Launch Shortcut 6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:434
+msgid "Launch Shortcut 7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:437
+msgid "Launch Shortcut 8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:440
+msgid "Launch Shortcut 9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:443
+msgid "Launch Shortcut A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:446
+msgid "Launch Shortcut B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:449
+msgid "Launch Shortcut C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:452
+msgid "Launch Shortcut D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:455
+msgid "Launch Shortcut E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:458
+msgid "Launch Shortcut F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:461
+msgid "Unknown key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:464
+msgid "Space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:467
+msgid "! key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:470
+msgid "\" key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:473
+msgid "# key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:476
+msgid "$ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:479
+msgid "% 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 "Number 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:515
+msgid "Number 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:518
+msgid "Number 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:521
+msgid "Number 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:524
+msgid "Number 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:527
+msgid "Number 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:530
+msgid "Number 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:533
+msgid "Number 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:536
+msgid "Number 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:539
+msgid "Number 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:542
+msgid ": key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:545
+msgid "; key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:548
+msgid "< key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:551
+msgid "= key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:554
+msgid "> key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:557
+msgid "? key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:560
+msgid "@ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:563
+msgid "A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:566
+msgid "B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:569
+msgid "C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:572
+msgid "D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:575
+msgid "E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:578
+msgid "F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:581
+msgid "G key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:584
+msgid "H key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:587
+msgid "I key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:590
+msgid "J key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:593
+msgid "K key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:596
+msgid "L key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:599
+msgid "M key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:602
+msgid "N key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:605
+msgid "O key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:608
+msgid "P key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:611
+msgid "Q key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:614
+msgid "R key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:617
+msgid "S key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:620
+msgid "T key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:623
+msgid "U key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:626
+msgid "V key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:629
+msgid "W key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:632
+msgid "X key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:635
+msgid "Y key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:638
+msgid "Z key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:641
+msgid "[ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:644
+msgid "\\ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:647
+msgid "] key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:650
+msgid "^ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:653
+msgid "_ 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 "Non-breakable space 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 "Â¥ 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 "Soft hyphen 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 "² 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 Code mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:872
+msgid "Modifier key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:875
+msgid "Shift key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:878
+msgid "Alt key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:881
+msgid "Meta key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:884
+msgid "Ctrl key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:887
+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:890
+msgid "Keypad key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:893
+msgid "Group Switch key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:896
+msgid "Left mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:899
+msgid "Right mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:902
+msgid "Middle mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:905
+msgid "Extra mouse button 1 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:908
+msgid "Extra mouse button 2 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:911
+msgid "Mouse wheel up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:914
+msgid "Mouse wheel down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:917
+msgid "Mouse wheel left button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:920
+msgid "Mouse wheel right button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:923
+msgid "Left mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:926
+msgid "Right mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:929
+msgid "Middle mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:932
+msgid "Extra mouse button 1 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:935
+msgid "Extra mouse button 2 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:938
+msgid "Invalid button or axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:941
+msgid "Gamepad button 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:944
+msgid "Gamepad button 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:947
+msgid "Gamepad button 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:950
+msgid "Gamepad button 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:953
+msgid "Gamepad button 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:956
+msgid "Gamepad button 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:959
+msgid "Gamepad button 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:962
+msgid "Gamepad button 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:965
+msgid "Gamepad button 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:968
+msgid "Gamepad button 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:971
+msgid "Gamepad button 10."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:974
+msgid "Gamepad button 11."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:977
+msgid "Gamepad button 12."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:980
+msgid "Gamepad button 13."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:983
+msgid "Gamepad button 14."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:986
+msgid "Gamepad button 15."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:989
+msgid "Gamepad button 16."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:992
+msgid "Gamepad button 17."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:995
+msgid "Gamepad button 18."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:998
+msgid "Gamepad button 19."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1001
+msgid "Gamepad button 20."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1004
+msgid "Gamepad button 21."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1007
+msgid "Gamepad button 22."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1010
+msgid "Represents the maximum number of joystick buttons supported."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1013
+msgid "DualShock circle button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1016
+msgid "DualShock X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1019
+msgid "DualShock square button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1022
+msgid "DualShock triangle button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1025
+msgid "Xbox controller B button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1028
+msgid "Xbox controller A button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1031
+msgid "Xbox controller X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1034
+msgid "Xbox controller Y button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1037
+msgid "Nintendo controller A button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1040
+msgid "Nintendo controller B button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1043
+msgid "Nintendo controller X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1046
+msgid "Nintendo controller Y button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1049
+msgid "Grip (side) buttons on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1052
+msgid "Push down on the touchpad or main joystick on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1055
+msgid "Trigger on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1058
+msgid ""
+"A button on the right Oculus Touch controller, X button on the left "
+"controller (also when used in OpenVR)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1061
+msgid ""
+"B button on the right Oculus Touch controller, Y button on the left "
+"controller (also when used in OpenVR)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1064
+msgid "Menu button on either Oculus Touch controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1067
+msgid "Menu button in OpenVR (Except when Oculus Touch controllers are used)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1070
+msgid "Gamepad button Select."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1073
+msgid "Gamepad button Start."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1076
+msgid "Gamepad DPad up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1079
+msgid "Gamepad DPad down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1082
+msgid "Gamepad DPad left."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1085
+msgid "Gamepad DPad right."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1088
+msgid "Gamepad SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1091
+msgid "Gamepad SDL miscellaneous button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1094
+msgid "Gamepad SDL paddle 1 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1097
+msgid "Gamepad SDL paddle 2 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1100
+msgid "Gamepad SDL paddle 3 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1103
+msgid "Gamepad SDL paddle 4 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1106
+msgid "Gamepad SDL touchpad button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1109
+msgid "Gamepad left Shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1112
+msgid "Gamepad left trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1115
+msgid "Gamepad left stick click."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1118
+msgid "Gamepad right Shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1121
+msgid "Gamepad right trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1124
+msgid "Gamepad right stick click."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1127 doc/classes/@GlobalScope.xml:1160
+msgid "Gamepad left stick horizontal axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1130 doc/classes/@GlobalScope.xml:1163
+msgid "Gamepad left stick vertical axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1133 doc/classes/@GlobalScope.xml:1166
+msgid "Gamepad right stick horizontal axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1136 doc/classes/@GlobalScope.xml:1169
+msgid "Gamepad right stick vertical axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1139
+msgid "Generic gamepad axis 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1142
+msgid "Generic gamepad axis 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1145
+msgid "Gamepad left trigger analog axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1148
+msgid "Gamepad right trigger analog axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1151
+msgid "Generic gamepad axis 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1154
+msgid "Generic gamepad axis 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1157
+msgid "Represents the maximum number of joystick axes supported."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1172
+msgid "Gamepad left analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1175
+msgid "Gamepad right analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1178
+msgid "VR Controller analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1181
+msgid "VR Controller analog grip (side buttons)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1184
+msgid ""
+"OpenVR touchpad X axis (Joystick axis on Oculus Touch and Windows MR "
+"controllers)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1187
+msgid ""
+"OpenVR touchpad Y axis (Joystick axis on Oculus Touch and Windows MR "
+"controllers)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1190
+msgid "MIDI note OFF message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1193
+msgid "MIDI note ON message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1196
+msgid "MIDI aftertouch message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1199
+msgid "MIDI control change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1202
+msgid "MIDI program change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1205
+msgid "MIDI channel pressure message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1208
+msgid "MIDI pitch bend message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1211
+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:1223
+msgid "Generic error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1226
+msgid "Unavailable error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1229
+msgid "Unconfigured error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1232
+msgid "Unauthorized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1235
+msgid "Parameter range error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1238
+msgid "Out of memory (OOM) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1241
+msgid "File: Not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1244
+msgid "File: Bad drive error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1247
+msgid "File: Bad path error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1250
+msgid "File: No permission error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1253
+msgid "File: Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1256
+msgid "File: Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1259
+msgid "File: Can't write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1262
+msgid "File: Can't read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1265
+msgid "File: Unrecognized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1268
+msgid "File: Corrupt error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1271
+msgid "File: Missing dependencies error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1274
+msgid "File: End of file (EOF) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1277
+msgid "Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1280
+msgid "Can't create error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1283
+msgid "Query failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1286
+msgid "Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1289
+msgid "Locked error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1292
+msgid "Timeout error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1295
+msgid "Can't connect error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1298
+msgid "Can't resolve error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1301
+msgid "Connection error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1304
+msgid "Can't acquire resource error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1307
+msgid "Can't fork process error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1310
+msgid "Invalid data error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1313
+msgid "Invalid parameter error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1316
+msgid "Already exists error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1319
+msgid "Does not exist error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1322
+msgid "Database: Read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1325
+msgid "Database: Write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1328
+msgid "Compilation failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1331
+msgid "Method not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1334
+msgid "Linking failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1337
+msgid "Script failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1340
+msgid "Cycling link (import cycle) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1343
+msgid "Invalid declaration error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1346
+msgid "Duplicate symbol error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1349
+msgid "Parse error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1352
+msgid "Busy error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1355
+msgid "Skip error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1358
+msgid "Help error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1361
+msgid "Bug error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1364
+msgid ""
+"Printer on fire error. (This is an easter egg, no engine methods return this "
+"error code.)"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1367
+msgid "No hint for the edited property."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1370
+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:1373
+msgid ""
+"Hints that a 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:1376
+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:1379
+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:1382 doc/classes/@GlobalScope.xml:1385
+msgid "Deprecated hint, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1388
+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:1391
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1394
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1397
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1400
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1403
+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:1406
+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:1409
+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:1412
+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:1415
+msgid ""
+"Hints that a property is an instance of a [Resource]-derived type, "
+"optionally specified via the hint string (e.g. [code]\"Texture\"[/code]). "
+"Editing it will show a popup menu of valid resource types to instantiate."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1418
+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:1421
+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:1424
+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:1427
+msgid "Hints that an image is compressed using lossy compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1430
+msgid "Hints that an image is compressed using lossless compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1433
+msgid "The property is serialized and saved in the scene file (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1436
+msgid "The property is shown in the editor inspector (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1439 doc/classes/@GlobalScope.xml:1442
+msgid "Deprecated usage flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1445
+msgid "The property can be checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1448
+msgid "The property is checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1451
+msgid "The property is a translatable string."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1454
+msgid "Used to group properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1457
+msgid "Used to categorize properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1460
+msgid "The property does not save its state in [PackedScene]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1463
+msgid "Editing the property prompts the user for restarting the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1466
+msgid ""
+"The property is a script variable which should be serialized and saved in "
+"the scene file."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1469
+msgid "Default usage (storage, editor and network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1472
+msgid ""
+"Default usage for translatable strings (storage, editor, network and "
+"internationalized)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1475
+msgid ""
+"Default usage but without showing the property in the editor (storage, "
+"network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1478
+msgid "Flag for a normal method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1481
+msgid "Flag for an editor method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1484 doc/classes/@GlobalScope.xml:1490
+#: doc/classes/@GlobalScope.xml:1496
+msgid "Deprecated method flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1487
+msgid "Flag for a constant method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1493
+msgid "Flag for a virtual method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1499
+msgid "Default method flags."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1502
+msgid "Variable is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1505
+msgid "Variable is of type [bool]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1508
+msgid "Variable is of type [int]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1511
+msgid "Variable is of type [float] (real)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1514
+msgid "Variable is of type [String]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1517
+msgid "Variable is of type [Vector2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1520
+msgid "Variable is of type [Rect2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1523
+msgid "Variable is of type [Vector3]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1526
+msgid "Variable is of type [Transform2D]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1529
+msgid "Variable is of type [Plane]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1532
+msgid "Variable is of type [Quat]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1535
+msgid "Variable is of type [AABB]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1538
+msgid "Variable is of type [Basis]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1541
+msgid "Variable is of type [Transform]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1544
+msgid "Variable is of type [Color]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1547
+msgid "Variable is of type [NodePath]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1550
+msgid "Variable is of type [RID]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1553
+msgid "Variable is of type [Object]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1556
+msgid "Variable is of type [Dictionary]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1559
+msgid "Variable is of type [Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1562
+msgid "Variable is of type [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1565
+msgid "Variable is of type [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1568
+msgid "Variable is of type [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1571
+msgid "Variable is of type [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1574
+msgid "Variable is of type [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1577
+msgid "Variable is of type [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1580
+msgid "Variable is of type [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1583
+msgid "Represents the size of the [enum Variant.Type] enum."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1586
+msgid "Equality operator ([code]==[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1589
+msgid "Inequality operator ([code]!=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1592
+msgid "Less than operator ([code]<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1595
+msgid "Less than or equal operator ([code]<=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1598
+msgid "Greater than operator ([code]>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1601
+msgid "Greater than or equal operator ([code]>=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1604
+msgid "Addition operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1607
+msgid "Subtraction operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1610
+msgid "Multiplication operator ([code]*[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1613
+msgid "Division operator ([code]/[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1616
+msgid "Unary negation operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1619
+msgid "Unary plus operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1622
+msgid "Remainder/modulo operator ([code]%[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1625
+msgid "String concatenation operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1628
+msgid "Left shift operator ([code]<<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1631
+msgid "Right shift operator ([code]>>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1634
+msgid "Bitwise AND operator ([code]&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1637
+msgid "Bitwise OR operator ([code]|[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1640
+msgid "Bitwise XOR operator ([code]^[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1643
+msgid "Bitwise NOT operator ([code]~[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1646
+msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1649
+msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1652
+msgid "Logical XOR operator (not implemented in GDScript)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1655
+msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1658
+msgid "Logical IN operator ([code]in[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1661
+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.\n"
+"It uses floating-point coordinates. The 2D counterpart to [AABB] is "
+"[Rect2].\n"
+"[b]Note:[/b] Unlike [Rect2], [AABB] does not have a variant that uses "
+"integer coordinates."
+msgstr ""
+
+#: doc/classes/AABB.xml:12 doc/classes/Basis.xml:13 doc/classes/Plane.xml:10
+#: doc/classes/Rect2.xml:12 doc/classes/Transform.xml:11
+#: doc/classes/Transform2D.xml:11 doc/classes/Vector2.xml:11
+#: doc/classes/Vector3.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/math/index.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:13 doc/classes/Rect2.xml:13 doc/classes/Vector2.xml:12
+#: doc/classes/Vector3.xml:12
+msgid "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:14 doc/classes/Rect2.xml:14 doc/classes/Vector2.xml:13
+#: doc/classes/Vector3.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:22
+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:35
+msgid ""
+"Returns [code]true[/code] if this [AABB] completely encloses another one."
+msgstr ""
+
+#: doc/classes/AABB.xml:42
+msgid "Returns this [AABB] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/AABB.xml:48
+msgid "Returns the volume of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:55
+msgid "Gets the position of the 8 endpoints of the [AABB] in space."
+msgstr ""
+
+#: doc/classes/AABB.xml:61
+msgid "Returns the normalized longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:67
+msgid ""
+"Returns the index of the longest axis of the [AABB] (according to "
+"[Vector3]'s [code]AXIS_*[/code] constants)."
+msgstr ""
+
+#: doc/classes/AABB.xml:73
+msgid "Returns the scalar length of the longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:79
+msgid "Returns the normalized shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:85
+msgid ""
+"Returns the index of the shortest axis of the [AABB] (according to "
+"[Vector3]::AXIS* enum)."
+msgstr ""
+
+#: doc/classes/AABB.xml:91
+msgid "Returns the scalar length of the shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:98
+msgid ""
+"Returns the support point in a given direction. This is useful for collision "
+"detection algorithms."
+msgstr ""
+
+#: doc/classes/AABB.xml:105
+msgid ""
+"Returns a copy of the [AABB] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/AABB.xml:111
+msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:117
+msgid "Returns [code]true[/code] if the [AABB] is empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:124
+msgid "Returns [code]true[/code] if the [AABB] contains a point."
+msgstr ""
+
+#: doc/classes/AABB.xml:131
+msgid ""
+"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
+"returned on failure."
+msgstr ""
+
+#: doc/classes/AABB.xml:138
+msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
+msgstr ""
+
+#: doc/classes/AABB.xml:145
+msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
+msgstr ""
+
+#: doc/classes/AABB.xml:153
+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:160
+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:167
+msgid ""
+"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:173 doc/classes/Rect2.xml:132
+msgid ""
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
+msgstr ""
+
+#: doc/classes/AABB.xml:176 doc/classes/Rect2.xml:135
+msgid "Beginning corner. Typically has values lower than [member end]."
+msgstr ""
+
+#: doc/classes/AABB.xml:179 doc/classes/Rect2.xml:138
+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:18
+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.\n"
+"You can use [method remove_button] method to remove a button created with "
+"this method from the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:27
+msgid ""
+"Adds a button with label [code]name[/code] and a cancel action to the dialog "
+"and returns the created button.\n"
+"You can use [method remove_button] method to remove a button created with "
+"this method from the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:34
+msgid ""
+"Returns the label used for built-in text.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:41
+msgid ""
+"Returns the OK [Button] instance.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:49
+msgid ""
+"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
+"dialog will be accepted."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:56
+msgid ""
+"Removes the [code]button[/code] from the dialog. Does NOT free the "
+"[code]button[/code]. The [code]button[/code] must be a [Button] added with "
+"[method add_button] or [method add_cancel] method. After removal, pressing "
+"the [code]button[/code] will no longer emit this dialog's [signal "
+"custom_action] signal or cancel this dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:62
+msgid "Sets autowrapping for the text in the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:65
+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:69
+msgid "The text displayed by the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:76
+msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:82
+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:46
+msgid "Close this AES context so it can be started again. See [method start]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:52
+msgid ""
+"Get the current IV state for this context (IV gets updated when calling "
+"[method update]). You normally don't need this function.\n"
+"[b]Note:[/b] 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:62
+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:69
+msgid ""
+"Run the desired operation for this AES context. Will return a "
+"[PoolByteArray] containing the result of encrypting (or decrypting) the "
+"given [code]src[/code]. See [method start] for mode of operation.\n"
+"[b]Note:[/b] The size of [code]src[/code] must be a multiple of 16. Apply "
+"some padding if needed."
+msgstr ""
+
+#: doc/classes/AESContext.xml:76
+msgid "AES electronic codebook encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:79
+msgid "AES electronic codebook decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:82
+msgid "AES cipher blocker chaining encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:85
+msgid "AES cipher blocker chaining decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:88
+msgid "Maximum value for the mode enum."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:4
+msgid "Sprite node that can use multiple textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel.\n"
+"[b]Note:[/b] You can associate a set of normal maps by creating additional "
+"[SpriteFrames] resources with a [code]_normal[/code] suffix. For example, "
+"having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/"
+"code] will make it so the [code]run[/code] animation uses the normal map."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:11 doc/classes/AnimatedSprite3D.xml:10
+#: doc/classes/AnimationPlayer.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:12 doc/classes/Area2D.xml:11
+#: doc/classes/AudioStreamPlayer.xml:12 doc/classes/Button.xml:24
+#: doc/classes/CanvasLayer.xml:12 doc/classes/CollisionShape2D.xml:11
+#: doc/classes/ColorRect.xml:10 doc/classes/Input.xml:11
+#: doc/classes/InputEvent.xml:12 doc/classes/InputEventAction.xml:11
+#: doc/classes/Label.xml:12 doc/classes/Particles2D.xml:15
+#: doc/classes/Timer.xml:11 doc/classes/VisibilityNotifier2D.xml:12
+msgid "https://godotengine.org/asset-library/asset/515"
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:18 doc/classes/AnimatedSprite3D.xml:16
+msgid "Returns [code]true[/code] if an animation is currently being played."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:26
+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/AnimatedSprite.xml:32 doc/classes/AnimatedSprite3D.xml:29
+msgid "Stops the current animation (does not reset the frame counter)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:38 doc/classes/AnimatedSprite3D.xml:35
+msgid ""
+"The current animation from the [code]frames[/code] resource. If this value "
+"changes, the [code]frame[/code] counter is reset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:41 doc/classes/SpriteBase3D.xml:48
+msgid "If [code]true[/code], texture will be centered."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:44 doc/classes/Sprite.xml:39
+#: doc/classes/SpriteBase3D.xml:54 doc/classes/TextureButton.xml:21
+#: doc/classes/TextureRect.xml:20
+msgid "If [code]true[/code], texture is flipped horizontally."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:47 doc/classes/Sprite.xml:42
+#: doc/classes/SpriteBase3D.xml:57 doc/classes/TextureButton.xml:24
+#: doc/classes/TextureRect.xml:23
+msgid "If [code]true[/code], texture is flipped vertically."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:50 doc/classes/AnimatedSprite3D.xml:38
+msgid "The displayed animation frame's index."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:53 doc/classes/AnimatedSprite3D.xml:41
+msgid "The [SpriteFrames] resource containing the animation(s)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:56 doc/classes/Sprite.xml:58
+#: doc/classes/SpriteBase3D.xml:63
+msgid "The texture's drawing offset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:59 doc/classes/AnimatedSprite3D.xml:44
+msgid "If [code]true[/code], the [member animation] is currently playing."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:62
+msgid "The animation speed is multiplied by this value."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:68 doc/classes/AnimatedSprite3D.xml:50
+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/AnimatedSprite.xml:73 doc/classes/AnimatedSprite3D.xml:55
+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:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:23
+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 [AnimatedSprite], it isn't a [Node], "
+"but has the advantage of being usable anywhere a [Texture] 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.\n"
+"[b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each "
+"frame needs to be a separate [Texture]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:19
+msgid "Returns the given frame's delay value."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:26
+msgid "Returns the given frame's [Texture]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:34
+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:49
+msgid ""
+"Assigns a [Texture] 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:56
+msgid "Sets the currently visible frame of the texture."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:60
+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:64
+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:67
+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:70
+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:75
+msgid ""
+"The maximum number of frames supported by [AnimatedTexture]. If you need "
+"more frames in your animation, use [AnimationPlayer] or [AnimatedSprite]."
+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] or [AnimationTreePlayer] 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:12
+msgid "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html"
+msgstr ""
+
+#: doc/classes/Animation.xml:28
+msgid "Adds a track to the Animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:36
+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:45
+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:54
+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:62
+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:71
+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:80
+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:91
+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:101
+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:110
+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:119
+msgid ""
+"Sets the stream of the key identified by [code]key_idx[/code] to value "
+"[code]stream[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:127
+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:135
+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:143
+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:154
+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:163
+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:172
+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:181
+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:190
+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:196
+msgid "Clear the animation (clear all tracks and reset all)."
+msgstr ""
+
+#: doc/classes/Animation.xml:204
+msgid ""
+"Adds a new track that is a copy of the given track from [code]to_animation[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:211
+msgid ""
+"Returns the index of the specified track. If the track is not found, return "
+"-1."
+msgstr ""
+
+#: doc/classes/Animation.xml:217
+msgid "Returns the amount of tracks in the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:226
+msgid ""
+"Returns all the key indices of a method track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:234
+msgid "Returns the method name of a method track."
+msgstr ""
+
+#: doc/classes/Animation.xml:242
+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:249
+msgid "Removes a track by specifying the track index."
+msgstr ""
+
+#: doc/classes/Animation.xml:258
+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:265
+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:272
+msgid "Returns the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:279
+msgid "Returns the amount of keys in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:287
+msgid "Returns the time at which the key is located."
+msgstr ""
+
+#: doc/classes/Animation.xml:295
+msgid ""
+"Returns the transition curve (easing) for a specific key (see the built-in "
+"math function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:303
+msgid "Returns the value of a given key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:310
+msgid ""
+"Gets the path of a track. For more information on the path format, see "
+"[method track_set_path]."
+msgstr ""
+
+#: doc/classes/Animation.xml:317
+msgid "Gets the type of a track."
+msgstr ""
+
+#: doc/classes/Animation.xml:327
+msgid "Insert a generic key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:334
+msgid ""
+"Returns [code]true[/code] if the track at index [code]idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/Animation.xml:341
+msgid ""
+"Returns [code]true[/code] if the given track is imported. Else, return "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:348
+msgid "Moves a track down."
+msgstr ""
+
+#: doc/classes/Animation.xml:356
+msgid ""
+"Changes the index position of track [code]idx[/code] to the one defined in "
+"[code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:363
+msgid "Moves a track up."
+msgstr ""
+
+#: doc/classes/Animation.xml:371
+msgid "Removes a key by index in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:379
+msgid "Removes a key by position (seconds) in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:387
+msgid "Enables/disables the given track. Tracks are enabled by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:395
+msgid "Sets the given track as imported or not."
+msgstr ""
+
+#: doc/classes/Animation.xml:403
+msgid ""
+"If [code]true[/code], the track at [code]idx[/code] wraps the interpolation "
+"loop."
+msgstr ""
+
+#: doc/classes/Animation.xml:411
+msgid "Sets the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:420
+msgid "Sets the time of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:429
+msgid ""
+"Sets the transition curve (easing) for a specific key (see the built-in math "
+"function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:438
+msgid "Sets the value of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:446
+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:455
+msgid ""
+"Swaps the track [code]idx[/code]'s index position with the track "
+"[code]with_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:466
+msgid "Insert a transform key for a transform track."
+msgstr ""
+
+#: doc/classes/Animation.xml:474
+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:483
+msgid ""
+"Returns all the key indices of a value track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:490
+msgid "Returns the update mode of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:498
+msgid ""
+"Returns the interpolated value at the given time (in seconds). The "
+"[code]track_idx[/code] must be the index of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:506
+msgid "Sets the update mode (see [enum UpdateMode]) of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:512
+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:516
+msgid ""
+"A flag indicating that the animation must loop. This is used for correct "
+"interpolation of animation cycles, and for hinting the player that it must "
+"restart the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:519
+msgid "The animation step value."
+msgstr ""
+
+#: doc/classes/Animation.xml:525
+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:531
+msgid ""
+"Value tracks set values in node properties, but only those which can be "
+"Interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:534
+msgid ""
+"Transform tracks are used to change node local transforms or skeleton pose "
+"bones. Transitions are interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:537
+msgid "Method tracks call functions with given arguments per key."
+msgstr ""
+
+#: doc/classes/Animation.xml:540
+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:543
+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:546
+msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/Animation.xml:549
+msgid "No interpolation (nearest value)."
+msgstr ""
+
+#: doc/classes/Animation.xml:552
+msgid "Linear interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:555
+msgid "Cubic interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:558
+msgid "Update between keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:561
+msgid "Update at the keyframes and hold the value."
+msgstr ""
+
+#: doc/classes/Animation.xml:564
+msgid "Update at the keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:567
+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:21
+#: doc/classes/AnimationNodeTransition.xml:10 doc/classes/AnimationTree.xml:11
+#: doc/classes/AnimationTreePlayer.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html"
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:18
+msgid ""
+"Adds an input to the node. This is only useful for nodes created for use in "
+"an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:29
+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:41
+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:54
+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:60
+msgid "Gets the text caption for this node (used by some editors)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:67
+msgid ""
+"Gets a child node by index (used by editors inheriting from "
+"[AnimationRootNode])."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:73
+msgid ""
+"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
+"Only useful when inheriting [AnimationRootNode]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:79
+msgid ""
+"Amount of inputs in this node, only useful for nodes that go into "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:86
+msgid "Gets the name of an input by index."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:93
+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:100
+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:106
+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:112
+msgid ""
+"Returns [code]true[/code] whether you want the blend tree editor to display "
+"filter editing on this node."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:119
+msgid "Returns [code]true[/code] whether a given path is filtered."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:127
+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:136
+msgid "Removes an input, call this only when inactive."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:144
+msgid "Adds or removes a path for the filter."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:152
+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:158
+msgid "If [code]true[/code], filtering is enabled."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:164
+msgid "Called when the node was removed from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:169
+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:175
+msgid "Do not use filtering."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:178
+msgid "Paths matching the filter will be allowed to pass."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:181
+msgid "Paths matching the filter will be discarded."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:184
+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:21
+#: doc/classes/AnimationNodeBlend2.xml:18
+#: 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/AnimationNodeAdd3.xml:15
+#: doc/classes/AnimationNodeAnimation.xml:12
+#: doc/classes/AnimationNodeBlend2.xml:12
+#: doc/classes/AnimationNodeBlendSpace2D.xml:13
+#: doc/classes/AnimationNodeOneShot.xml:11
+#: doc/classes/AnimationNodeOutput.xml:11
+#: doc/classes/AnimationNodeTransition.xml:12
+#: doc/classes/AnimationPlayer.xml:14 doc/classes/AnimationTree.xml:12
+#: doc/classes/AudioEffectReverb.xml:11 doc/classes/Camera.xml:10
+#: doc/classes/CollisionShape.xml:13 doc/classes/CylinderShape.xml:10
+#: doc/classes/Environment.xml:19 doc/classes/GIProbe.xml:14
+#: doc/classes/GIProbeData.xml:8 doc/classes/KinematicBody.xml:16
+#: doc/classes/Light.xml:11 doc/classes/Material.xml:11 doc/classes/Mesh.xml:13
+#: doc/classes/MeshInstance.xml:13 doc/classes/Particles.xml:14
+#: doc/classes/Quat.xml:13 doc/classes/Skeleton.xml:13
+#: doc/classes/SpotLight.xml:12 doc/classes/StaticBody.xml:12
+#: doc/classes/WorldEnvironment.xml:15
+msgid "https://godotengine.org/asset-library/asset/678"
+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:11
+#: doc/classes/AnimationNodeBlend2.xml:11
+#: doc/classes/AnimationNodeOutput.xml:10
+#: doc/classes/AnimationNodeTimeScale.xml:11
+#: doc/classes/AnimationNodeTransition.xml:11 doc/classes/Area.xml:10
+#: doc/classes/Basis.xml:17 doc/classes/BoxShape.xml:12
+#: doc/classes/CollisionShape.xml:12 modules/gridmap/doc_classes/GridMap.xml:15
+#: doc/classes/KinematicBody.xml:14 doc/classes/Mesh.xml:12
+#: doc/classes/MeshInstance.xml:12 doc/classes/MeshLibrary.xml:11
+#: doc/classes/ProjectSettings.xml:14 doc/classes/Transform.xml:15
+msgid "https://godotengine.org/asset-library/asset/125"
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:18
+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:22
+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:28
+msgid "Returns the number of points on the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:35
+msgid ""
+"Returns the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:42
+#: doc/classes/AnimationNodeBlendSpace2D.xml:52
+msgid "Returns the position of the point at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:49
+msgid "Removes the point at index [code]point[/code] from the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:57
+#: doc/classes/AnimationNodeBlendSpace2D.xml:88
+msgid ""
+"Changes the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:65
+#: doc/classes/AnimationNodeBlendSpace2D.xml:96
+msgid ""
+"Updates the position of the point at index [code]point[/code] on the blend "
+"axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:71
+msgid ""
+"The blend space's axis's upper limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:74
+msgid ""
+"The blend space's axis's lower limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:77
+msgid "Position increment to snap to when moving a point on the axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:80
+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:22
+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:32
+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:38
+msgid "Returns the number of points in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:45
+msgid ""
+"Returns the [AnimationRootNode] referenced by the point at index "
+"[code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:58
+msgid "Returns the number of triangles in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:66
+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:73
+msgid "Removes the point at index [code]point[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:80
+msgid ""
+"Removes the triangle at index [code]triangle[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:102
+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:105
+msgid ""
+"Controls the interpolation between animations. See [enum BlendMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:108
+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:111
+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:114
+msgid "Position increment to snap to when moving a point."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:117
+msgid "Name of the blend space's X axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:120
+msgid "Name of the blend space's Y axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:126
+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:132
+msgid "The interpolation between animations is linear."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:135
+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:138
+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:19
+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:28
+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:36
+msgid "Disconnects the node connected to the specified input."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:43
+msgid "Returns the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:50
+msgid ""
+"Returns the position of the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:57
+msgid ""
+"Returns [code]true[/code] if a sub-node with specified [code]name[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:64
+msgid "Removes a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:72
+msgid "Changes the name of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:80
+msgid "Modifies the position of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:86
+msgid "The global offset of all sub-nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:91
+msgid "The connection was successful."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:94
+msgid "The input node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:97
+msgid "The specified input port is out of range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:100
+msgid "The output node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:103
+msgid "Input and output nodes are the same."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:106
+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:28
+msgid ""
+"If [code]true[/code], the sub-animation will restart automatically after "
+"finishing."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:31
+msgid "The delay after which the automatic restart is triggered, in seconds."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:34
+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:24
+msgid ""
+"Adds a new node to the graph. The [code]position[/code] is used for display "
+"in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:33
+msgid "Adds a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:39
+#: doc/classes/AnimationNodeStateMachine.xml:72
+msgid "Returns the graph's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:45
+msgid "Returns the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:52
+msgid "Returns the animation node with the given name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:59
+msgid "Returns the given animation node's name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:66
+msgid "Returns the given node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:79
+msgid "Returns the given transition."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:85
+msgid "Returns the number of connections in the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:92
+msgid "Returns the given transition's start node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:99
+msgid "Returns the given transition's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:106
+msgid "Returns [code]true[/code] if the graph contains the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:114
+msgid ""
+"Returns [code]true[/code] if there is a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:121
+msgid "Deletes the given node from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:129
+msgid "Deletes the transition between the two specified nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:136
+msgid "Deletes the given transition by index."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:144
+msgid "Renames the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:152
+msgid "Replaces the node and keeps its transitions unchanged."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:159
+msgid "Sets the given node as the graph end point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:166
+msgid "Sets the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:174
+msgid "Sets the node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:181
+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:26
+msgid "Returns the currently playing animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:32
+msgid "Returns the playback position within the current animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:38
+msgid ""
+"Returns the current travel path as computed internally by the A* algorithm."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:44
+msgid "Returns [code]true[/code] if an animation is playing."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:51
+msgid "Starts playing the given animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:57
+msgid "Stops the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:64
+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/3.4/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 animation graph. Use this node type to play an [Animation] from the "
+"start or a certain playback position inside the [AnimationNodeBlendTree]. "
+"After setting the time and changing the animation playback, the seek node "
+"automatically goes into sleep mode on the next process frame by setting its "
+"[code]seek_position[/code] value to [code]-1.0[/code].\n"
+"[codeblock]\n"
+"# Play child animation from the start.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 0.0)\n"
+"# Alternative syntax (same result as above).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 0.0\n"
+"\n"
+"# Play child animation from 12 second timestamp.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 12.0)\n"
+"# Alternative syntax (same result as above).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
+"[/codeblock]"
+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:44
+msgid "The number of available input ports for this node."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:47
+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:22
+msgid ""
+"Adds [code]animation[/code] to the player accessible with the key "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:29
+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:36
+msgid "Returns the name of the next animation in the queue."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:44
+msgid ""
+"Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] "
+"animation completes."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:50
+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:56
+msgid "Clears all queued, unplayed animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:63
+msgid ""
+"Returns the name of [code]animation[/code] or an empty string if not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:70
+msgid ""
+"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
+"not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:76
+msgid "Returns the list of stored animation names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:84
+msgid ""
+"Gets the blend time (in seconds) between two animations, referenced by their "
+"names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:90
+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:96
+msgid ""
+"Returns a list of the animation names that are currently queued to play."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:103
+msgid ""
+"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
+"with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:109
+msgid "Returns [code]true[/code] if playing an animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:119
+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:129
+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:137
+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:145
+msgid "Removes the animation with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:153
+msgid ""
+"Renames an existing animation with key [code]name[/code] to [code]newname[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:161
+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:170
+msgid ""
+"Specifies a blend time (in seconds) between two animations, referenced by "
+"their names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:177
+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:184
+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:187
+msgid "The name of the animation to play when the scene loads."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:190
+msgid ""
+"The name of the currently playing animation. If no animation is playing, the "
+"property's value is an empty string. Changing this value does not restart "
+"the animation. See [method play] for more information on playing "
+"animations.\n"
+"[b]Note:[/b] While this property appears in the inspector, it's not meant to "
+"be edited, and it's not saved in the scene. This property is mainly used to "
+"get the currently playing animation, and internally for animation playback "
+"tracks. For more information, see [Animation]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:194
+msgid "The length (in seconds) of the currently being played animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:197
+msgid "The position (in seconds) of the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:200
+msgid "The call mode to use for Call Method tracks."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:203
+msgid ""
+"If [code]true[/code], updates animations in response to process-related "
+"notifications."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:206
+msgid ""
+"The default time in which to blend animations. Ranges from 0 to 4096 with "
+"0.01 precision."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:209
+msgid "The process notification in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:212
+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:215
+msgid ""
+"This is used by the editor. If set to [code]true[/code], the scene will be "
+"saved with the effects of the reset animation applied (as if it had been "
+"seeked to time 0), then reverted after saving.\n"
+"In other words, the saved scene file will contain the \"default pose\", as "
+"defined by the reset animation, if any, with the editor keeping the values "
+"that the nodes had before saving."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:219
+msgid "The node from which node path references will travel."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:227
+msgid ""
+"Emitted when a queued animation plays after the previous animation was "
+"finished. See [method queue].\n"
+"[b]Note:[/b] The signal is not emitted when the animation is changed via "
+"[method play] or from [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:234
+msgid "Notifies when an animation finished playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:240
+msgid "Notifies when an animation starts playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:245
+msgid ""
+"Notifies when the caches have been cleared, either automatically, or "
+"manually via [method clear_caches]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:251 doc/classes/AnimationTreePlayer.xml:505
+msgid ""
+"Process animation during the physics process. This is especially useful when "
+"animating physics bodies."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:254 doc/classes/AnimationTreePlayer.xml:508
+msgid "Process animation during the idle process."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:257
+msgid ""
+"Do not process animation. Use [method advance] to process the animation "
+"manually."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:260
+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:263
+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 ""
+"A node to be used for advanced animation transitions in an "
+"[AnimationPlayer].\n"
+"[b]Note:[/b] 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:19
+msgid "Manually advance the animations by the specified time (in seconds)."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:25
+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. See also [member root_motion_track] and [RootMotionView]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:38
+msgid "If [code]true[/code], the [AnimationTree] will be processing."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:41
+msgid "The path to the [AnimationPlayer] used for animating."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:44
+msgid ""
+"The process mode of this [AnimationTree]. See [enum AnimationProcessMode] "
+"for available modes."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:47
+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. See also [method get_root_motion_transform] and "
+"[RootMotionView]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:51
+msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:56
+msgid ""
+"The animations will progress during the physics frame (i.e. [method Node."
+"_physics_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:59
+msgid ""
+"The animations will progress during the idle frame (i.e. [method Node."
+"_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:62
+msgid "The animations will only progress manually (see [method advance])."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:4
+msgid ""
+"[i]Deprecated.[/i] Animation player that uses a node graph for blending "
+"animations. Superseded by [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:7
+msgid ""
+"[i]Deprecated.[/i] A node graph tool for blending multiple animations bound "
+"to an [AnimationPlayer]. Especially useful for animating characters or other "
+"skeleton-based rigs. It can combine several animations to form a desired "
+"pose.\n"
+"It takes [Animation]s from an [AnimationPlayer] node and mixes them "
+"depending on the graph.\n"
+"See [AnimationTree] for a more full-featured replacement of this node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:20
+msgid "Adds a [code]type[/code] node to the graph with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:27
+msgid ""
+"Shifts position in the animation timeline. [code]delta[/code] is the time in "
+"seconds to shift. Events between the current frame and [code]delta[/code] "
+"are handled."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:34
+msgid ""
+"Returns the [AnimationPlayer]'s [Animation] bound to the "
+"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:41
+msgid ""
+"Returns the name of the [member master_player]'s [Animation] bound to this "
+"animation node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:48
+msgid ""
+"Returns the absolute playback timestamp of the animation node with name "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:56
+msgid ""
+"Binds a new [Animation] from the [member master_player] to the "
+"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:65
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the animation node with ID "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:73
+msgid ""
+"Binds the [Animation] named [code]source[/code] from [member master_player] "
+"to the animation node [code]id[/code]. Recalculates caches."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:82
+msgid ""
+"Returns whether node [code]id[/code] and [code]dst_id[/code] are connected "
+"at the specified slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:89
+msgid "Returns the blend amount of a Blend2 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:97
+msgid ""
+"Sets the blend amount of a Blend2 node given its name and value.\n"
+"A Blend2 node blends two animations (A and B) with the amount between 0 and "
+"1.\n"
+"At 0, output is input A. Towards 1, the influence of A gets lessened, the "
+"influence of B gets raised. At 1, output is input B."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:108
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the Blend2 node with name "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:115
+msgid "Returns the blend amount of a Blend3 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:123
+msgid ""
+"Sets the blend amount of a Blend3 node given its name and value.\n"
+"A Blend3 Node blends three animations (A, B-, B+) with the amount between -1 "
+"and 1.\n"
+"At -1, output is input B-. From -1 to 0, the influence of B- gets lessened, "
+"the influence of A gets raised and the influence of B+ is 0. At 0, output is "
+"input A. From 0 to 1, the influence of A gets lessened, the influence of B+ "
+"gets raised and the influence of B+ is 0. At 1, output is input B+."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:132
+msgid "Returns the blend amount of a Blend4 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:140
+msgid ""
+"Sets the blend amount of a Blend4 node given its name and value.\n"
+"A Blend4 Node blends two pairs of animations.\n"
+"The two pairs are blended like Blend2 and then added together."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:151
+msgid ""
+"Connects node [code]id[/code] to [code]dst_id[/code] at the specified input "
+"slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:159
+msgid ""
+"Disconnects nodes connected to [code]id[/code] at the specified input slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:165
+msgid "Returns a [PoolStringArray] containing the name of all nodes."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:172
+msgid "Returns the mix amount of a Mix node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:180
+msgid ""
+"Sets the mix amount of a Mix node given its name and value.\n"
+"A Mix node adds input b to input a by the amount given by ratio."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:188
+msgid "Check if a node exists (by name)."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:195
+msgid ""
+"Returns the input count for a given node. Different types of nodes have "
+"different amount of inputs."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:203
+msgid "Returns the input source for a given node input."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:210
+msgid "Returns position of a node in the graph given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:217
+msgid "Gets the node type, will return from [enum NodeType] enum."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:225
+msgid "Renames a node in the graph."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:233
+msgid "Sets the position of a node in the graph given its name and position."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:240
+msgid "Returns the autostart delay of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:247
+msgid "Returns the autostart random delay of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:254
+msgid "Returns the fade in time of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:261
+msgid "Returns the fade out time of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:268
+msgid "Returns whether a OneShot node will auto restart given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:275
+msgid "Returns whether a OneShot node is active given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:283
+msgid ""
+"Sets the autorestart property of a OneShot node given its name and value."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:291
+msgid ""
+"Sets the autorestart delay of a OneShot node given its name and value in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:299
+msgid ""
+"Sets the autorestart random delay of a OneShot node given its name and value "
+"in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:307
+msgid ""
+"Sets the fade in time of a OneShot node given its name and value in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:315
+msgid ""
+"Sets the fade out time of a OneShot node given its name and value in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:324
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the OneShot node with ID "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:331
+msgid "Starts a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:338
+msgid "Stops the OneShot node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:344
+msgid ""
+"Manually recalculates the cache of track information generated from "
+"animation nodes. Needed when external sources modify the animation nodes' "
+"state."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:351
+msgid "Removes the animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:357
+msgid "Resets this [AnimationTreePlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:364
+msgid ""
+"Returns the time scale value of the TimeScale node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:372
+msgid ""
+"Sets the time scale of the TimeScale node with name [code]id[/code] to "
+"[code]scale[/code].\n"
+"The TimeScale node is used to speed [Animation]s up if the scale is above 1 "
+"or slow them down if it is below 1.\n"
+"If applied after a blend or mix, affects all input animations to that blend "
+"or mix."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:382
+msgid ""
+"Sets the time seek value of the TimeSeek node with name [code]id[/code] to "
+"[code]seconds[/code].\n"
+"This functions as a seek in the [Animation] or the blend or mix of "
+"[Animation]s input in it."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:391
+msgid ""
+"Deletes the input at [code]input_idx[/code] for the transition node with "
+"name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:398
+msgid ""
+"Returns the index of the currently evaluated input for the transition node "
+"with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:405
+msgid ""
+"Returns the number of inputs for the transition node with name [code]id[/"
+"code]. You can add inputs by right-clicking on the transition node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:412
+msgid ""
+"Returns the cross fade time for the transition node with name [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:420
+msgid ""
+"Returns [code]true[/code] if the input at [code]input_idx[/code] on the "
+"transition node with name [code]id[/code] is set to automatically advance to "
+"the next input upon completion."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:428
+msgid ""
+"The transition node with name [code]id[/code] sets its current input at "
+"[code]input_idx[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:437
+msgid ""
+"The transition node with name [code]id[/code] advances to its next input "
+"automatically when the input at [code]input_idx[/code] completes."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:445
+msgid ""
+"Resizes the number of inputs available for the transition node with name "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:453
+msgid ""
+"The transition node with name [code]id[/code] sets its cross fade time to "
+"[code]time_sec[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:459
+msgid ""
+"If [code]true[/code], the [AnimationTreePlayer] is able to play animations."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:462
+msgid ""
+"The node from which to relatively access other nodes.\n"
+"It accesses the bones, so it should point to the same node the "
+"[AnimationPlayer] would point its Root Node at."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:466
+msgid ""
+"The path to the [AnimationPlayer] from which this [AnimationTreePlayer] "
+"binds animations to animation nodes.\n"
+"Once set, [Animation] nodes can be added to the [AnimationTreePlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:470
+msgid "The thread in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:475
+msgid "Output node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:478
+msgid "Animation node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:481
+msgid "OneShot node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:484
+msgid "Mix node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:487
+msgid "Blend2 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:490
+msgid "Blend3 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:493
+msgid "Blend4 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:496
+msgid "TimeScale node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:499
+msgid "TimeSeek node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:502
+msgid "Transition node."
+msgstr ""
+
+#: doc/classes/Area.xml:4
+msgid "3D area for detection and physics and audio influence."
+msgstr ""
+
+#: doc/classes/Area.xml:7
+msgid ""
+"3D area that detects [CollisionObject] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping) and route audio to custom audio buses."
+msgstr ""
+
+#: doc/classes/Area.xml:11 doc/classes/QuadMesh.xml:10
+#: doc/classes/Viewport.xml:17 doc/classes/ViewportTexture.xml:11
+msgid "https://godotengine.org/asset-library/asset/127"
+msgstr ""
+
+#: doc/classes/Area.xml:17
+msgid ""
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:24
+msgid ""
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:32
+msgid ""
+"If [code]true[/code], the given area overlaps the Area.\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/Area.xml:40
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area.\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 [PhysicsBody] 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/Area.xml:48
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
+msgid "The name of the area's audio bus."
+msgstr ""
+
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
+msgid ""
+"If [code]true[/code], the area's audio bus overrides the default audio bus."
+msgstr ""
+
+#: doc/classes/Area.xml:58
+msgid ""
+"The area's gravity intensity (in meters per second squared). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
+msgid ""
+"The falloff factor for point gravity. The greater the value, the faster "
+"gravity decreases with distance."
+msgstr ""
+
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
+msgid ""
+"If [code]true[/code], gravity is calculated from a point (set via [member "
+"gravity_vec]). See also [member space_override]."
+msgstr ""
+
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
+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/Area.xml:70
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
+msgid "If [code]true[/code], other monitoring areas can detect this area."
+msgstr ""
+
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
+msgid ""
+"If [code]true[/code], the area detects bodies or areas entering and exiting "
+"it."
+msgstr ""
+
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
+msgid "The area's priority. Higher priority areas are processed first."
+msgstr ""
+
+#: doc/classes/Area.xml:83
+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/Area.xml:86
+msgid "If [code]true[/code], the area applies reverb to its associated audio."
+msgstr ""
+
+#: doc/classes/Area.xml:89
+msgid "The reverb bus name to use for this area's associated audio."
+msgstr ""
+
+#: doc/classes/Area.xml:92
+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/Area.xml:95 doc/classes/Area2D.xml:85
+msgid ""
+"Override mode for gravity and damping calculations within this area. See "
+"[enum SpaceOverride] for possible values."
+msgstr ""
+
+#: doc/classes/Area.xml:102
+msgid ""
+"Emitted when another Area enters this Area. Requires [member monitoring] to "
+"be set to [code]true[/code].\n"
+"[code]area[/code] the other Area."
+msgstr ""
+
+#: doc/classes/Area.xml:109
+msgid ""
+"Emitted when another Area exits this Area. Requires [member monitoring] to "
+"be set to [code]true[/code].\n"
+"[code]area[/code] the other Area."
+msgstr ""
+
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
+msgid ""
+"Emitted when one of another Area's [Shape]s enters one of this Area's "
+"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area's [CollisionObject] used "
+"by the [PhysicsServer].\n"
+"[code]area[/code] the other Area.\n"
+"[code]area_shape_index[/code] the index of the [Shape] of the other Area "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]area."
+"shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this Area used by "
+"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area.xml:142
+msgid ""
+"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
+"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/Area.xml:149
+msgid ""
+"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
+"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
+msgid ""
+"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
+"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
+"code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody] or [MeshLibrary]'s "
+"[CollisionObject] used by the [PhysicsServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the [PhysicsBody] "
+"or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the [PhysicsBody] "
+"or [GridMap] used by the [PhysicsServer]. Get the [CollisionShape] node with "
+"[code]body.shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this Area used by "
+"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
+msgid "This area does not affect gravity/damping."
+msgstr ""
+
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order)."
+msgstr ""
+
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
+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/Area.xml:191 doc/classes/Area2D.xml:181
+msgid ""
+"This area replaces any gravity/damping, even the defaults, ignoring any "
+"lower priority areas."
+msgstr ""
+
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
+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/Area2D.xml:4
+msgid "2D area for detection and physics and audio 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) and route audio to a custom audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html"
+msgstr ""
+
+#: doc/classes/Area2D.xml:12 doc/classes/CollisionShape2D.xml:12
+#: doc/classes/RectangleShape2D.xml:10
+msgid "https://godotengine.org/asset-library/asset/121"
+msgstr ""
+
+#: doc/classes/Area2D.xml:13 doc/classes/Camera2D.xml:12
+#: doc/classes/KinematicBody2D.xml:15 doc/classes/TileMap.xml:12
+#: doc/classes/TileSet.xml:12
+msgid "https://godotengine.org/asset-library/asset/120"
+msgstr ""
+
+#: doc/classes/Area2D.xml:19
+msgid ""
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:26
+msgid ""
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:34
+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, the list of overlaps is updated once per frame and before "
+"the physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:42
+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 bodies themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:50
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/2d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:60
+msgid ""
+"The area's gravity intensity (in pixels per second squared). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:72
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:92
+msgid ""
+"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
+"to be set to [code]true[/code].\n"
+"[code]area[/code] the other Area2D."
+msgstr ""
+
+#: doc/classes/Area2D.xml:99
+msgid ""
+"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
+"to be set to [code]true[/code].\n"
+"[code]area[/code] the other Area2D."
+msgstr ""
+
+#: doc/classes/Area2D.xml:109
+msgid ""
+"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
+"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area2D's [CollisionObject2D] "
+"used by the [Physics2DServer].\n"
+"[code]area[/code] the other Area2D.\n"
+"[code]area_shape_index[/code] the index of the [Shape2D] of the other Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:122
+msgid ""
+"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
+"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area2D's [CollisionObject2D] "
+"used by the [Physics2DServer].\n"
+"[code]area[/code] the other Area2D.\n"
+"[code]area_shape_index[/code] the index of the [Shape2D] of the other Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:132
+msgid ""
+"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
+"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
+"if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:139
+msgid ""
+"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
+"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
+"if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:149
+msgid ""
+"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
+"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
+"[code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision "
+"[Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:162
+msgid ""
+"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
+"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
+"[code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision "
+"[Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:4
+msgid "A generic array datatype."
+msgstr ""
+
+#: doc/classes/Array.xml:7
+msgid ""
+"A generic array that 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 is 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] Concatenating with the [code]+=[/code] operator will create a "
+"new array, which has a cost. If you want to append another array to an "
+"existing array, [method append_array] is more efficient.\n"
+"[b]Note:[/b] Arrays are always passed by reference. To get a copy of an "
+"array that can be modified independently of the original array, use [method "
+"duplicate].\n"
+"[b]Note:[/b] When declaring an array with [code]const[/code], the array "
+"itself can still be mutated by defining the values at individual indices or "
+"pushing/removing elements. Using [code]const[/code] will only prevent "
+"assigning the constant with another value after it was initialized."
+msgstr ""
+
+#: doc/classes/Array.xml:34
+msgid "Constructs an array from a [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:41
+msgid "Constructs an array from a [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:48
+msgid "Constructs an array from a [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:55
+msgid "Constructs an array from a [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:62
+msgid "Constructs an array from a [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:69
+msgid "Constructs an array from a [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:76
+msgid "Constructs an array from a [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:82 doc/classes/PoolByteArray.xml:23
+#: doc/classes/PoolColorArray.xml:23 doc/classes/PoolIntArray.xml:24
+#: doc/classes/PoolRealArray.xml:24 doc/classes/PoolStringArray.xml:24
+#: doc/classes/PoolVector2Array.xml:24 doc/classes/PoolVector3Array.xml:23
+msgid ""
+"Appends an element at the end of the array (alias of [method push_back])."
+msgstr ""
+
+#: doc/classes/Array.xml:88
+msgid ""
+"Appends another array at the end of this array.\n"
+"[codeblock]\n"
+"var array1 = [1, 2, 3]\n"
+"var array2 = [4, 5, 6]\n"
+"array1.append_array(array2)\n"
+"print(array1) # Prints [1, 2, 3, 4, 5, 6].\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:100
+msgid ""
+"Returns the last element of the array. Prints an error and returns "
+"[code]null[/code] if the array is empty.\n"
+"[b]Note:[/b] Calling this function is not the same as writing [code]array[-1]"
+"[/code]. If the array is empty, accessing by index will pause project "
+"execution when running from the editor."
+msgstr ""
+
+#: doc/classes/Array.xml:109
+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:120
+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 declared in the [code]obj[/code]. "
+"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"
+"[codeblock]\n"
+"func cardinal_to_algebraic(a):\n"
+" match a:\n"
+" \"one\":\n"
+" return 1\n"
+" \"two\":\n"
+" return 2\n"
+" \"three\":\n"
+" return 3\n"
+" \"four\":\n"
+" return 4\n"
+" _:\n"
+" return 0\n"
+"\n"
+"func compare(a, b):\n"
+" return cardinal_to_algebraic(a) < cardinal_to_algebraic(b)\n"
+"\n"
+"func _ready():\n"
+" var a = [\"one\", \"two\", \"three\", \"four\"]\n"
+" # `compare` is defined in this object, so we use `self` as the `obj` "
+"parameter.\n"
+" print(a.bsearch_custom(\"three\", self, \"compare\", true)) # Expected "
+"value is 2.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Calling [method bsearch_custom] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:148
+msgid ""
+"Clears the array. This is equivalent to using [method resize] with a size of "
+"[code]0[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:155
+msgid "Returns the number of times an element is in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:162
+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:169 doc/classes/PoolByteArray.xml:61
+#: doc/classes/PoolColorArray.xml:35 doc/classes/PoolIntArray.xml:36
+#: doc/classes/PoolRealArray.xml:36 doc/classes/PoolStringArray.xml:36
+#: doc/classes/PoolVector2Array.xml:36 doc/classes/PoolVector3Array.xml:35
+msgid "Returns [code]true[/code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:175
+msgid ""
+"Removes the first occurrence of a value from the array. To remove an element "
+"by index, use [method remove] instead.\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the removed "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the removed element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:185
+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:192
+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:198
+msgid ""
+"Returns the first element of the array. Prints an error and returns "
+"[code]null[/code] if the array is empty.\n"
+"[b]Note:[/b] Calling this function is not the same as writing [code]array[0]"
+"[/code]. If the array is empty, accessing by index will pause project "
+"execution when running from the editor."
+msgstr ""
+
+#: doc/classes/Array.xml:206
+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"
+"[/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:224
+msgid ""
+"Returns a hashed integer value representing the array and its contents.\n"
+"[b]Note:[/b] Arrays with equal contents can still produce different hashes. "
+"Only the exact same arrays will produce the same hashed integer value."
+msgstr ""
+
+#: doc/classes/Array.xml:232
+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]).\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the inserted "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the newly inserted element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:239 doc/classes/PoolByteArray.xml:96
+#: doc/classes/PoolColorArray.xml:48 doc/classes/PoolIntArray.xml:49
+#: doc/classes/PoolRealArray.xml:49 doc/classes/PoolStringArray.xml:49
+#: doc/classes/PoolVector2Array.xml:49 doc/classes/PoolVector3Array.xml:48
+msgid "Reverses the order of the elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:245
+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:251
+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:258
+msgid ""
+"Removes and returns the element of the array at index [code]position[/code]. "
+"If negative, [code]position[/code] is considered relative to the end of the "
+"array. Leaves the array untouched and returns [code]null[/code] if the array "
+"is empty or if it's accessed out of bounds. An error message is printed when "
+"the array is accessed out of bounds, but not when the array is empty.\n"
+"[b]Note:[/b] On large arrays, this method can be slower than [method "
+"pop_back] as it will reindex the array's elements that are located after the "
+"removed element. The larger the array and the lower the index of the removed "
+"element, the slower [method pop_at] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:265
+msgid ""
+"Removes and returns the last element of the array. Returns [code]null[/code] "
+"if the array is empty, without printing an error message. See also [method "
+"pop_front]."
+msgstr ""
+
+#: doc/classes/Array.xml:271
+msgid ""
+"Removes and returns the first element of the array. Returns [code]null[/"
+"code] if the array is empty, without printing an error message. See also "
+"[method pop_back].\n"
+"[b]Note:[/b] On large arrays, this method is much slower than [method "
+"pop_back] as it will reindex all the array's elements every time it's "
+"called. The larger the array, the slower [method pop_front] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:278
+msgid ""
+"Appends an element at the end of the array. See also [method push_front]."
+msgstr ""
+
+#: doc/classes/Array.xml:284
+msgid ""
+"Adds an element at the beginning of the array. See also [method push_back].\n"
+"[b]Note:[/b] On large arrays, this method is much slower than [method "
+"push_back] as it will reindex all the array's elements every time it's "
+"called. The larger the array, the slower [method push_front] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:291
+msgid ""
+"Removes an element from the array by index. If the index does not exist in "
+"the array, nothing happens. To remove an element by searching for its value, "
+"use [method erase] instead.\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the removed "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the removed element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:299
+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:307
+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:312
+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:318
+msgid "Returns the number of elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:328
+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:333
+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:346
+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"
+"For two elements [code]a[/code] and [code]b[/code], if the given method "
+"returns [code]true[/code], element [code]b[/code] will be after element "
+"[code]a[/code] in the array.\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 = PoolVector3Array()\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 = MeshInstance.new()\n"
+"m.mesh = arr_mesh\n"
+"[/codeblock]\n"
+"The [MeshInstance] is ready to be added to the [SceneTree] to be shown.\n"
+"See also [ImmediateGeometry], [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/3.4/tutorials/content/procedural_geometry/"
+"arraymesh.html"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:36
+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:46
+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."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:54
+msgid "Removes all blend shapes from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:60
+msgid "Removes all surfaces from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:66
+msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:73
+msgid "Returns the name of the blend shape at this index."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:81
+msgid ""
+"Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for "
+"lightmapping."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:87
+msgid "Will regenerate normal maps for the [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:101
+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:108
+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:115
+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:122
+msgid ""
+"Returns the format mask of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:129
+msgid "Gets the name assigned to this surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:136
+msgid ""
+"Returns the primitive type of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:143
+msgid ""
+"Removes a surface at position [code]surf_idx[/code], shifting greater "
+"surfaces one [code]surf_idx[/code] slot down."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:151
+msgid "Sets a name for a given surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:160
+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:167
+msgid "Sets the blend shape mode to one of [enum Mesh.BlendShapeMode]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:170 doc/classes/PrimitiveMesh.xml:26
+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:175
+msgid "Default value used for index_array_len when no indices are present."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:178
+msgid "Amount of weights/bone indices per vertex (always 4)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:181
+msgid "[PoolVector3Array], [PoolVector2Array], or [Array] of vertex positions."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:184
+msgid "[PoolVector3Array] of vertex normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:187
+msgid ""
+"[PoolRealArray] 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:190
+msgid "[PoolColorArray] of vertex colors."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:193
+msgid "[PoolVector2Array] for UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:196
+msgid "[PoolVector2Array] for second UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:199
+msgid ""
+"[PoolRealArray] or [PoolIntArray] of bone indices. Each element in groups of "
+"4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:202
+msgid "[PoolRealArray] of bone weights. Each element in groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:205
+msgid ""
+"[PoolIntArray] 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:209 doc/classes/Mesh.xml:225
+#: doc/classes/VisualServer.xml:3270
+msgid "Represents the size of the [enum ArrayType] enum."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:212
+msgid "Array format will include vertices (mandatory)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:215
+msgid "Array format will include normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:218
+msgid "Array format will include tangents."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:221
+msgid "Array format will include a color array."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:224
+msgid "Array format will include UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:227
+msgid "Array format will include another set of UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:230
+msgid "Array format will include bone indices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:233
+msgid "Array format will include bone weights."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:236
+msgid "Index array will be used."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:4
+msgid "An anchor point in AR space."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:7
+msgid ""
+"The [ARVRAnchor] 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/ARVRAnchor.xml:17
+msgid "Returns the name given to this anchor."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:23
+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/ARVRAnchor.xml:29
+msgid ""
+"If provided by the [ARVRInterface], 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/ARVRAnchor.xml:35
+msgid ""
+"Returns a plane aligned with our anchor; handy for intersection testing."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:41
+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/ARVRAnchor.xml:47
+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/ARVRAnchor.xml:54
+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/ARVRCamera.xml:4
+msgid ""
+"A camera node with a few overrules for AR/VR applied, such as location "
+"tracking."
+msgstr ""
+
+#: doc/classes/ARVRCamera.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 "
+"ARVR 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 "
+"ARVR Controller, the render thread has access to the most up-to-date "
+"tracking data of the HMD and the location of the ARVRCamera can lag a few "
+"milliseconds behind what is used for rendering as a result."
+msgstr ""
+
+#: doc/classes/ARVRCamera.xml:11 doc/classes/ARVRController.xml:12
+#: doc/classes/ARVRInterface.xml:11 doc/classes/ARVROrigin.xml:13
+#: doc/classes/ARVRPositionalTracker.xml:12 doc/classes/ARVRServer.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html"
+msgstr ""
+
+#: doc/classes/ARVRController.xml:4
+msgid "A spatial node representing a spatially-tracked controller."
+msgstr ""
+
+#: doc/classes/ARVRController.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 "
+"ARVRController nodes to your scene.\n"
+"The position of the controller node is automatically updated by the "
+"[ARVRServer]. This makes this node ideal to add child nodes to visualize the "
+"controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:18
+msgid ""
+"If active, returns the name of the associated controller if provided by the "
+"AR/VR SDK used."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:24
+msgid ""
+"Returns the hand holding this controller, if known. See [enum "
+"ARVRPositionalTracker.TrackerHand]."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:30
+msgid ""
+"Returns [code]true[/code] if the bound controller is active. ARVR systems "
+"attempt to track active controllers."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:37
+msgid ""
+"Returns the value of the given axis for things like triggers, touchpads, "
+"etc. that are embedded into the controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:43
+msgid ""
+"Returns the ID of the joystick object bound to this. Every controller "
+"tracked by the [ARVRServer] that has buttons and axis will also be "
+"registered as a joystick within Godot. This means that all the normal "
+"joystick tracking and input mapping will work for buttons and axis found on "
+"the AR/VR controllers. This ID is purely offered as information so you can "
+"link up the controller with its joystick entry."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:49
+msgid ""
+"If provided by the [ARVRInterface], this returns a mesh associated with the "
+"controller. This can be used to visualize the controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:56
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button[/code] is "
+"pressed. See [enum JoystickList], in particular the [code]JOY_VR_*[/code] "
+"constants."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:62
+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 [ARVRServer] 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/ARVRController.xml:68
+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 ARVRPositionalTracker.rumble] accordingly.\n"
+"This is a useful property to animate if you want the controller to vibrate "
+"for a limited duration."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:76
+msgid "Emitted when a button on this controller is pressed."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:82
+msgid "Emitted when a button on this controller is released."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:88
+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/ARVRInterface.xml:4
+msgid "Base class for an AR/VR interface implementation."
+msgstr ""
+
+#: doc/classes/ARVRInterface.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 ARVRScriptInterface 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 "
+"[ARVRServer]."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:17
+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/ARVRInterface.xml:23
+msgid ""
+"Returns a combination of [enum Capabilities] flags providing information "
+"about the capabilities of this interface."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:29
+msgid "Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:35
+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/ARVRInterface.xml:41
+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/ARVRInterface.xml:47
+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/ARVRInterface.xml:57
+msgid ""
+"Returns [code]true[/code] if the current output of this interface is in "
+"stereo."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:63
+msgid "Turns the interface off."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:69
+msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:72
+msgid "[code]true[/code] if this interface been initialized."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:75
+msgid "[code]true[/code] if this is the primary interface."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:80
+msgid "No ARVR capabilities."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:83
+msgid ""
+"This interface can work with normal rendering output (non-HMD based AR)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:86
+msgid "This interface supports stereoscopic rendering."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:89
+msgid "This interface supports AR (video background and real world tracking)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:92
+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/ARVRInterface.xml:95
+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/ARVRInterface.xml:98
+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/ARVRInterface.xml:101
+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/ARVRInterface.xml:104
+msgid "Tracking is behaving as expected."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:107
+msgid ""
+"Tracking is hindered by excessive motion (the player is moving faster than "
+"tracking can keep up)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:110
+msgid ""
+"Tracking is hindered by insufficient features, it's too dark (for camera-"
+"based tracking), player is blocked, etc."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:113
+msgid ""
+"We don't know the status of the tracking or this interface does not provide "
+"feedback."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:116
+msgid ""
+"Tracking is not functional (camera not plugged in or obscured, lighthouses "
+"turned off, etc.)."
+msgstr ""
+
+#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:4
+msgid "GDNative wrapper for an ARVR interface."
+msgstr ""
+
+#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:7
+msgid ""
+"This is a wrapper class for GDNative implementations of the ARVR interface. "
+"To use a GDNative ARVR interface, simply instantiate this object and set "
+"your GDNative library containing the ARVR interface implementation."
+msgstr ""
+
+#: doc/classes/ARVROrigin.xml:4
+msgid "The origin point in AR/VR."
+msgstr ""
+
+#: doc/classes/ARVROrigin.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 ARVRCamera, ARVRController and ARVRAnchor 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 ARVROrigin 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/ARVROrigin.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 [ARVRServer] itself."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:4
+msgid "A tracked object."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.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 [ARVRServer].\n"
+"The [ARVRController] and [ARVRAnchor] 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/ARVRPositionalTracker.xml:18
+msgid ""
+"Returns the hand holding this tracker, if known. See [enum TrackerHand] "
+"constants."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:24
+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/ARVRPositionalTracker.xml:30
+msgid ""
+"Returns the mesh related to a controller or anchor point if one is available."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:36
+msgid "Returns the controller or anchor point's name if available."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:42
+msgid "Returns the controller's orientation matrix."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:48
+msgid "Returns the world-space controller position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:54
+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 "
+"[ARVRController] and [ARVRAnchor] nodes."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:60
+msgid "Returns [code]true[/code] if this device tracks orientation."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:66
+msgid "Returns [code]true[/code] if this device tracks position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:73
+msgid "Returns the transform combining this device's orientation and position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:79
+msgid "Returns the tracker's type."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:85
+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/ARVRPositionalTracker.xml:90
+msgid "The hand this tracker is held in is unknown or not applicable."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:93
+msgid "This tracker is the left hand controller."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:96
+msgid "This tracker is the right hand controller."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:4
+msgid "Server for AR and VR features."
+msgstr ""
+
+#: doc/classes/ARVRServer.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/ARVRServer.xml:17
+msgid "Registers an [ARVRInterface] object."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:24
+msgid ""
+"Registers a new [ARVRPositionalTracker] that tracks a spatial location in "
+"real space."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:32
+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/ARVRServer.xml:44
+msgid ""
+"Clears our current primary interface if it is set to the provided interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:51
+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/ARVRServer.xml:57
+msgid "Returns the primary interface's transformation."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:64
+msgid ""
+"Returns the interface registered at a given index in our list of interfaces."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:70
+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/ARVRServer.xml:76
+msgid ""
+"Returns a list of available interfaces the ID and name of each interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:82
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [ARVRServer] commit of "
+"the AR/VR eyes to [VisualServer]. The value comes from an internal call to "
+"[method OS.get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:88
+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/ARVRServer.xml:94
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [ARVRServer] process "
+"callback. The value comes from an internal call to [method OS."
+"get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:100
+msgid ""
+"Returns the reference frame transform. Mostly used internally and exposed "
+"for GDNative build interfaces."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:107
+msgid "Returns the positional tracker at the given ID."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:113
+msgid "Returns the number of trackers currently registered."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:120
+msgid "Removes this interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:127
+msgid "Removes this positional tracker."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:133
+msgid "The primary [ARVRInterface] currently bound to the [ARVRServer]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:136
+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/ARVRServer.xml:143
+msgid "Emitted when a new interface has been added."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:149
+msgid "Emitted when an interface is removed."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:157
+msgid ""
+"Emitted when a new tracker has been added. If you don't use a fixed number "
+"of controllers or if you're using [ARVRAnchor]s for an AR solution, it is "
+"important to react to this signal to add the appropriate [ARVRController] or "
+"[ARVRAnchor] nodes related to this new tracker."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:165
+msgid ""
+"Emitted when a tracker is removed. You should remove any [ARVRController] or "
+"[ARVRAnchor] 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/ARVRServer.xml:171
+msgid "The tracker tracks the location of a controller."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:174
+msgid "The tracker tracks the location of a base station."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:177
+msgid "The tracker tracks the location and size of an AR anchor."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:180
+msgid "Used internally to filter trackers of any known type."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:183
+msgid "Used internally if we haven't set the tracker type yet."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:186
+msgid "Used internally to select all trackers."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:189
+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/ARVRServer.xml:192
+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/ARVRServer.xml:195
+msgid ""
+"Does not reset the orientation of the HMD, only the position of the player "
+"gets centered."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:4
+msgid "Container that preserves its child controls' aspect ratio."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:7
+msgid ""
+"Arranges child controls in a way to preserve their aspect ratio "
+"automatically whenever the container is resized. Solves the problem where "
+"the container size is dynamic and the contents' size needs to adjust "
+"accordingly without losing proportions."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:15
+msgid "Specifies the horizontal relative position of child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:18
+msgid "Specifies the vertical relative position of child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:21
+msgid ""
+"The aspect ratio to enforce on child controls. This is the width divided by "
+"the height. The ratio depends on the [member stretch_mode]."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:24
+msgid "The stretch mode used to align child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:29
+msgid ""
+"The height of child controls is automatically adjusted based on the width of "
+"the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:32
+msgid ""
+"The width of child controls is automatically adjusted based on the height of "
+"the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:35
+msgid ""
+"The bounding rectangle of child controls is automatically adjusted to fit "
+"inside the container while keeping the aspect ratio."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:38
+msgid ""
+"The width and height of child controls is automatically adjusted to make "
+"their bounding rectangle cover the entire area of the container while "
+"keeping the aspect ratio.\n"
+"When the bounding rectangle of child controls exceed the container's size "
+"and [member Control.rect_clip_content] is enabled, this allows to show only "
+"the container's area restricted by its own bounding rectangle."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:42
+msgid ""
+"Aligns child controls with the beginning (left or top) of the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:45
+msgid "Aligns child controls with the center of the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:48
+msgid "Aligns child controls with the end (right or bottom) of the container."
+msgstr ""
+
+#: doc/classes/AStar.xml:4
+msgid ""
+"An implementation of A* to find the 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.\n"
+"If the default [method _estimate_cost] and [method _compute_cost] methods "
+"are used, or if the supplied [method _estimate_cost] method returns a lower "
+"bound of the cost, then the paths returned by A* will be the lowest-cost "
+"paths. Here, the cost of a path equals the sum of the [method _compute_cost] "
+"results of all segments in the path multiplied by the [code]weight_scale[/"
+"code]s of the endpoints of the respective segments. If the default methods "
+"are used and the [code]weight_scale[/code]s of all points are set to "
+"[code]1.0[/code], then this equals the sum of Euclidean distances of all "
+"segments in the path."
+msgstr ""
+
+#: doc/classes/AStar.xml:31
+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:40
+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:50
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
+"be 1 or larger.\n"
+"The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point. Thus, all else being equal, "
+"the algorithm prefers points with lower [code]weight_scale[/code]s to form a "
+"path.\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:65
+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:71 doc/classes/AStar2D.xml:56
+msgid "Clears all the points and segments."
+msgstr ""
+
+#: doc/classes/AStar.xml:80
+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:95
+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:101 doc/classes/AStar2D.xml:85
+msgid "Returns the next available point ID with no point associated to it."
+msgstr ""
+
+#: doc/classes/AStar.xml:109 doc/classes/AStar2D.xml:93
+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:117
+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:133
+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:154 doc/classes/AStar2D.xml:138
+msgid ""
+"Returns the capacity of the structure backing the points, useful in "
+"conjunction with [code]reserve_space[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:161
+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:179 doc/classes/AStar2D.xml:163
+msgid "Returns the number of points currently in the points pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:187
+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.\n"
+"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
+"will return an empty [PoolVector3Array] and will print an error message."
+msgstr ""
+
+#: doc/classes/AStar.xml:195 doc/classes/AStar2D.xml:179
+msgid ""
+"Returns the position of the point associated with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:202 doc/classes/AStar2D.xml:186
+msgid ""
+"Returns the weight scale of the point associated with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:208 doc/classes/AStar2D.xml:192
+msgid "Returns an array of all points."
+msgstr ""
+
+#: doc/classes/AStar.xml:215 doc/classes/AStar2D.xml:199
+msgid ""
+"Returns whether a point associated with the given [code]id[/code] exists."
+msgstr ""
+
+#: doc/classes/AStar.xml:222 doc/classes/AStar2D.xml:206
+msgid ""
+"Returns whether a point is disabled or not for pathfinding. By default, all "
+"points are enabled."
+msgstr ""
+
+#: doc/classes/AStar.xml:229 doc/classes/AStar2D.xml:213
+msgid ""
+"Removes the point associated with the given [code]id[/code] from the points "
+"pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:236 doc/classes/AStar2D.xml:220
+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:244 doc/classes/AStar2D.xml:228
+msgid ""
+"Disables or enables the specified point for pathfinding. Useful for making a "
+"temporary obstacle."
+msgstr ""
+
+#: doc/classes/AStar.xml:252 doc/classes/AStar2D.xml:236
+msgid ""
+"Sets the [code]position[/code] for the point with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:260 doc/classes/AStar2D.xml:244
+msgid ""
+"Sets the [code]weight_scale[/code] for the point with the given [code]id[/"
+"code]. The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point."
+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:17
+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:26
+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:36
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
+"be 1 or larger.\n"
+"The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point. Thus, all else being equal, "
+"the algorithm prefers points with lower [code]weight_scale[/code]s to form a "
+"path.\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:50
+msgid "Returns whether there is a connection/segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:65
+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:79
+msgid "Deletes the segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:101
+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:117
+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:145
+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:171
+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.\n"
+"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
+"will return an empty [PoolVector2Array] and will print an error message."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:4
+msgid ""
+"Crops out one part of a texture, such as a texture from a texture atlas."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:7
+msgid ""
+"[Texture] resource that crops out one part of the [member atlas] texture, "
+"defined by [member region]. The main use case is cropping out textures from "
+"a texture atlas, which is a big texture file that packs multiple smaller "
+"textures. Consists of a [Texture] for the [member atlas], a [member region] "
+"that defines the area of [member atlas] to use, and a [member margin] that "
+"defines the border width.\n"
+"[AtlasTexture] cannot be used in an [AnimatedTexture], cannot be tiled in "
+"nodes such as [TextureRect], and does not work properly if used inside of "
+"other [AtlasTexture] resources. Multiple [AtlasTexture] resources can be "
+"used to crop multiple textures from the atlas. Using a texture atlas helps "
+"to optimize video memory costs and render calls compared to using multiple "
+"small files.\n"
+"[b]Note:[/b] AtlasTextures don't support repetition. The [constant Texture."
+"FLAG_REPEAT] and [constant Texture.FLAG_MIRRORED_REPEAT] flags are ignored "
+"when using an AtlasTexture."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:17
+msgid "The texture that contains the atlas. Can be any [Texture] subtype."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:20
+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:24
+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:27
+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/AudioEffect.xml:10 doc/classes/AudioEffectRecord.xml:11
+#: doc/classes/AudioServer.xml:12 doc/classes/AudioStream.xml:12
+#: doc/classes/AudioStreamPlayer.xml:15
+msgid "https://godotengine.org/asset-library/asset/527"
+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/AudioEffectCapture.xml:4
+msgid "Captures audio from an audio bus in real-time."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:7
+msgid ""
+"AudioEffectCapture is an AudioEffect which copies all audio frames from the "
+"attached audio effect bus into its internal ring buffer.\n"
+"Application code should consume these audio frames from this ring buffer "
+"using [method get_buffer] and process it as needed, for example to capture "
+"data from a microphone, implement application defined effects, or to "
+"transmit audio over the network."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:17
+msgid ""
+"Returns [code]true[/code] if at least [code]frames[/code] audio frames are "
+"available to read in the internal ring buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:23
+msgid "Clears the internal ring buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:30
+msgid ""
+"Gets the next [code]frames[/code] audio samples from the internal ring "
+"buffer.\n"
+"Returns a [PoolVector2Array] containing exactly [code]frames[/code] audio "
+"samples if available, or an empty [PoolVector2Array] if insufficient data "
+"was available."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:37
+msgid "Returns the total size of the internal ring buffer in frames."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:43
+msgid ""
+"Returns the number of audio frames discarded from the audio bus due to full "
+"buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:49
+msgid ""
+"Returns the number of frames available to read using [method get_buffer]."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:55
+msgid "Returns the number of audio frames inserted from the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:61
+msgid ""
+"Length of the internal ring buffer, in seconds. Setting the buffer length "
+"will have no effect if already initialized."
+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:93
+msgid "The effect's raw signal."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:96 doc/classes/AudioEffectChorus.xml:114
+#: doc/classes/AudioEffectChorus.xml:132 doc/classes/AudioEffectChorus.xml:150
+msgid "The voice's cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:99 doc/classes/AudioEffectChorus.xml:117
+#: doc/classes/AudioEffectChorus.xml:135 doc/classes/AudioEffectChorus.xml:153
+msgid "The voice's signal delay."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:102 doc/classes/AudioEffectChorus.xml:120
+#: doc/classes/AudioEffectChorus.xml:138 doc/classes/AudioEffectChorus.xml:156
+msgid "The voice filter's depth."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:105 doc/classes/AudioEffectChorus.xml:123
+#: doc/classes/AudioEffectChorus.xml:141 doc/classes/AudioEffectChorus.xml:159
+msgid "The voice's volume."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:108 doc/classes/AudioEffectChorus.xml:126
+#: doc/classes/AudioEffectChorus.xml:144 doc/classes/AudioEffectChorus.xml:162
+msgid "The voice's pan level."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:111 doc/classes/AudioEffectChorus.xml:129
+#: doc/classes/AudioEffectChorus.xml:147 doc/classes/AudioEffectChorus.xml:165
+msgid "The voice's filter rate."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:168
+msgid "The amount of voices in the effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:171
+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 distorted."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:8
+msgid ""
+"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:12
+#: doc/classes/AudioEffectFilter.xml:10
+#: doc/classes/AudioEffectHighShelfFilter.xml:9
+#: doc/classes/AudioEffectLowShelfFilter.xml:9 doc/classes/AudioServer.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html"
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:18
+msgid "Distortion power. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:21
+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:24
+msgid "Distortion type."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:27
+msgid ""
+"Increases or decreases the volume after the effect. Value can range from -80 "
+"to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:30
+msgid ""
+"Increases or decreases the volume before the effect. Value can range from "
+"-60 to 60."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:35
+msgid ""
+"Digital distortion effect which cuts off peaks at the top and bottom of the "
+"waveform."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:40
+msgid ""
+"Low-resolution digital distortion effect. You can use it to emulate the "
+"sound of early digital audio devices."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:43
+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:46
+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:16
+msgid "Returns the number of bands of the equalizer."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:23
+msgid "Returns the band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:31
+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:16
+msgid "Threshold frequency for the filter, in Hz."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:21
+msgid "Gain amount of the frequencies after the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:24
+msgid "Amount of boost in the frequency range 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/AudioEffectHighShelfFilter.xml:4
+msgid "Reduces all frequencies above the [member AudioEffectFilter.cutoff_hz]."
+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/AudioEffectLowShelfFilter.xml:4
+msgid "Reduces all frequencies below the [member AudioEffectFilter.cutoff_hz]."
+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:16
+msgid ""
+"The size of the [url=https://en.wikipedia.org/wiki/"
+"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
+"smooth out the effect over time, but have greater latency. The effects of "
+"this higher latency are especially noticeable on sounds that have sudden "
+"amplitude changes."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:19
+msgid ""
+"The oversampling factor to use. Higher values result in better quality, but "
+"are more demanding on the CPU and may cause audio cracking if the CPU can't "
+"keep up."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:22
+msgid ""
+"The pitch scale to use. [code]1.0[/code] is the default pitch and plays "
+"sounds unaltered. [member pitch_scale] can range from [code]0.0[/code] "
+"(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than "
+"the initial pitch)."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:27
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:28
+msgid ""
+"Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, "
+"but least stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:30
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:31
+msgid ""
+"Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but "
+"less stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:33
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:34
+msgid ""
+"Use a buffer of 1024 samples for the Fast Fourier transform. This is a "
+"compromise between latency and stability over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:36
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:37
+msgid ""
+"Use a buffer of 2048 samples for the Fast Fourier transform. High latency, "
+"but stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:39
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:40
+msgid ""
+"Use a buffer of 4096 samples for the Fast Fourier transform. Highest "
+"latency, but most stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:42
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:43
+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/3.4/tutorials/audio/"
+"recording_with_microphone.html"
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:17
+msgid "Returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:23
+msgid "Returns whether the recording is active or not."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:30
+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:36
+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:17
+msgid ""
+"Defines how reflective the imaginary room's walls are. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:20
+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:23
+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:26
+msgid "Output percent of predelay. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:29
+msgid ""
+"Time between the original signal and the early reflections of the reverb "
+"signal, in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:32
+msgid ""
+"Dimensions of simulated room. Bigger means more echoes. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:35
+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:38
+msgid ""
+"Output percent of modified sound. At 0, only original sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:4
+msgid "Audio effect that can be used for real-time audio visualizations."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:7
+msgid ""
+"This audio effect does not affect sound output, but can be used for real-"
+"time audio visualizations.\n"
+"See also [AudioStreamGenerator] for procedurally generating sounds."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:11
+msgid "Audio Spectrum Demo"
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:12
+#: doc/classes/AudioStreamGenerator.xml:13
+#: doc/classes/AudioStreamGeneratorPlayback.xml:11
+msgid "Godot 3.2 will get new audio features"
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:18
+msgid ""
+"The length of the buffer to keep (in seconds). Higher values keep data "
+"around for longer, but require more memory."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:21
+msgid ""
+"The size of the [url=https://en.wikipedia.org/wiki/"
+"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
+"smooth out the spectrum analysis over time, but have greater latency. The "
+"effects of this higher latency are especially noticeable with sudden "
+"amplitude changes."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:21
+msgid "Use the average value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:24
+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:11 doc/classes/AudioStreamPlayer.xml:13
+msgid "https://godotengine.org/asset-library/asset/525"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:13 doc/classes/AudioStream.xml:13
+#: doc/classes/AudioStreamPlayer.xml:16 doc/classes/CanvasItem.xml:17
+msgid "https://godotengine.org/asset-library/asset/528"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:20
+msgid "Adds a bus at [code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:29
+msgid ""
+"Adds an [AudioEffect] effect to the bus [code]bus_idx[/code] at "
+"[code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:35
+msgid ""
+"Name of the current device for audio input (see [method "
+"capture_get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:41
+msgid "Returns the names of all audio input devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:48
+msgid "Sets which audio input device is used for audio capture."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:54
+msgid "Generates an [AudioBusLayout] using the available buses and effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:61
+msgid ""
+"Returns the amount of channels of the bus at index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:69
+msgid ""
+"Returns the [AudioEffect] at position [code]effect_idx[/code] in bus "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:76
+msgid "Returns the number of effects on the bus at [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:85
+msgid ""
+"Returns the [AudioEffectInstance] assigned to the given bus and effect "
+"indices (and optionally channel)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:92
+msgid "Returns the index of the bus with the name [code]bus_name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:99
+msgid "Returns the name of the bus with the index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:107
+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:115
+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:122
+msgid ""
+"Returns the name of the bus that the bus at index [code]bus_idx[/code] sends "
+"to."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:129
+msgid "Returns the volume of the bus at index [code]bus_idx[/code] in dB."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:135
+msgid "Returns the names of all audio devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:141
+msgid "Returns the sample rate at the output of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:147
+msgid "Returns the audio driver's output latency."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:153
+msgid "Returns the speaker configuration."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:159
+msgid "Returns the relative time since the last mix occurred."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:165
+msgid "Returns the relative time until the next mix occurs."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:172 doc/classes/AudioServer.xml:232
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is bypassing "
+"effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:180 doc/classes/AudioServer.xml:241
+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:187 doc/classes/AudioServer.xml:256
+msgid "If [code]true[/code], the bus at index [code]bus_idx[/code] is muted."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:194 doc/classes/AudioServer.xml:280
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is in solo mode."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:200
+msgid ""
+"Locks the audio driver's main loop.\n"
+"[b]Note:[/b] Remember to unlock it afterwards."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:209
+msgid ""
+"Moves the bus from index [code]index[/code] to index [code]to_index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:216
+msgid "Removes the bus at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:224
+msgid ""
+"Removes the effect at index [code]effect_idx[/code] from the bus at index "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:248
+msgid "Overwrites the currently used [AudioBusLayout]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:264
+msgid ""
+"Sets the name of the bus at index [code]bus_idx[/code] to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:272
+msgid ""
+"Connects the output of the bus at [code]bus_idx[/code] to the bus named "
+"[code]send[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:288
+msgid ""
+"Sets the volume of the bus at index [code]bus_idx[/code] to [code]volume_db[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:297
+msgid "Swaps the position of two effects in bus [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:303
+msgid ""
+"Unlocks the audio driver's main loop. (After locking it, you should always "
+"unlock it.)"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:309
+msgid "Number of available audio buses."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:312
+msgid ""
+"Name of the current device for audio output (see [method get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:315
+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:321
+msgid "Emitted when the [AudioBusLayout] changes."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:327
+msgid "Two or fewer speakers were detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:330
+msgid "A 3.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:333
+msgid "A 5.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:336
+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:11
+#: doc/classes/AudioStreamPlayer2D.xml:12
+#: doc/classes/AudioStreamPlayer3D.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:11 doc/classes/AudioStreamGenerator.xml:12
+#: doc/classes/AudioStreamGeneratorPlayback.xml:10
+#: doc/classes/AudioStreamPlayback.xml:10 doc/classes/AudioStreamPlayer.xml:14
+msgid "https://godotengine.org/asset-library/asset/526"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:19
+msgid "Returns the length of the audio stream in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:4
+msgid "Audio stream that generates sounds procedurally."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:7
+msgid ""
+"This audio stream does not play back sounds, but expects a script to "
+"generate audio data for it instead. See also "
+"[AudioStreamGeneratorPlayback].\n"
+"See also [AudioEffectSpectrumAnalyzer] for performing real-time audio "
+"spectrum analysis.\n"
+"[b]Note:[/b] Due to performance constraints, this class is best used from C# "
+"or from a compiled language via GDNative. If you still want to use this "
+"class from GDScript, consider using a lower [member mix_rate] such as 11,025 "
+"Hz or 22,050 Hz."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:19
+msgid ""
+"The length of the buffer to generate (in seconds). Lower values result in "
+"less latency, but require the script to generate audio data faster, "
+"resulting in increased CPU usage and more risk for audio cracking if the CPU "
+"can't keep up."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:22
+msgid ""
+"The sample rate to use (in Hz). Higher values are more demanding for the CPU "
+"to generate, but result in better quality.\n"
+"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
+"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
+"[code]48000[/code].\n"
+"According to the [url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], "
+"there is no quality difference to human hearing when going past 40,000 Hz "
+"(since most humans can only hear up to ~20,000 Hz, often less). If you are "
+"generating lower-pitched sounds such as voices, lower sample rates such as "
+"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
+"quality."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:4
+msgid "Plays back audio generated using [AudioStreamGenerator]."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:7
+msgid ""
+"This class is meant to be used with [AudioStreamGenerator] to play back the "
+"generated audio in real-time."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:18
+msgid ""
+"Returns [code]true[/code] if a buffer of the size [code]amount[/code] can be "
+"pushed to the audio sample data buffer without overflowing it, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:24
+msgid "Clears the audio sample data buffer."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:30
+msgid ""
+"Returns the number of audio data frames left to play. If this returned "
+"number reaches [code]0[/code], the audio will stop playing until frames are "
+"added again. Therefore, make sure your script can always generate and push "
+"new audio frames fast enough to avoid audio cracking."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:42
+msgid ""
+"Pushes several audio data frames to the buffer. This is usually more "
+"efficient than [method push_frame] in C# and compiled languages via "
+"GDNative, but [method push_buffer] may be [i]less[/i] efficient in GDScript."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:49
+msgid ""
+"Pushes a single audio data frame to the buffer. This is usually less "
+"efficient than [method push_buffer] in C# and compiled languages via "
+"GDNative, but [method push_frame] may be [i]more[/i] efficient in GDScript."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:4
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:7
+msgid "MP3 audio stream driver."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:15
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:15
+msgid "Contains the audio data in bytes."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:18
+#: 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/minimp3/doc_classes/AudioStreamMP3.xml:21
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:21
+msgid "Time in seconds at which the stream starts after being looped."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:4
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:7
+msgid "OGG Vorbis audio stream driver."
+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.\n"
+"To play audio positionally, use [AudioStreamPlayer2D] or "
+"[AudioStreamPlayer3D] instead of [AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:22
+msgid "Returns the position in the [AudioStream] in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:28
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:35
+msgid "Plays the audio from the given [code]from_position[/code], in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:42 doc/classes/AudioStreamPlayer2D.xml:38
+#: doc/classes/AudioStreamPlayer3D.xml:39
+msgid "Sets the position from which audio will be played, in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:48 doc/classes/AudioStreamPlayer2D.xml:44
+#: doc/classes/AudioStreamPlayer3D.xml:45
+msgid "Stops the audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:54 doc/classes/AudioStreamPlayer2D.xml:56
+msgid "If [code]true[/code], audio plays when added to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:57 doc/classes/AudioStreamPlayer2D.xml:59
+msgid "Bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:60
+msgid ""
+"If the audio configuration has more than two speakers, this sets the target "
+"channels. See [enum MixTarget] constants."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:63 doc/classes/AudioStreamPlayer2D.xml:65
+#: doc/classes/AudioStreamPlayer3D.xml:91
+msgid ""
+"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
+"sample rate."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:66 doc/classes/AudioStreamPlayer2D.xml:68
+#: doc/classes/AudioStreamPlayer3D.xml:94
+msgid "If [code]true[/code], audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:69 doc/classes/AudioStreamPlayer2D.xml:71
+msgid "The [AudioStream] object to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:72 doc/classes/AudioStreamPlayer2D.xml:74
+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:75
+msgid "Volume of sound, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:81 doc/classes/AudioStreamPlayer2D.xml:83
+#: doc/classes/AudioStreamPlayer3D.xml:112
+msgid "Emitted when the audio stops playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:87
+msgid "The audio will be played only on the first channel."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:90
+msgid "The audio will be played on all surround channels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:93
+msgid ""
+"The audio will be played on the second channel, which is usually the center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:4
+msgid "Plays positional sound in 2D space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:7
+msgid ""
+"Plays audio that dampens with distance from screen center.\n"
+"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
+"[b]Note:[/b] Hiding an [AudioStreamPlayer2D] node does not disable its audio "
+"output. To temporarily disable an [AudioStreamPlayer2D]'s audio output, set "
+"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
+"audible to human hearing)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:18
+#: doc/classes/AudioStreamPlayer3D.xml:19
+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:31
+#: doc/classes/AudioStreamPlayer3D.xml:32
+msgid ""
+"Plays the audio from the given position [code]from_position[/code], in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:50
+#: doc/classes/AudioStreamPlayer3D.xml:51
+msgid "Areas in which this sound plays."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:53
+msgid "Dampens audio over distance with this as an exponent."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:62
+msgid "Maximum distance from which audio is still hearable."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:77
+msgid "Base volume without dampening."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:4
+msgid "Plays positional 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. For greater realism, "
+"a low-pass filter is automatically applied to distant sounds. This can be "
+"disabled by setting [member attenuation_filter_cutoff_hz] to [code]20500[/"
+"code].\n"
+"By default, audio is heard from the camera position. This can be changed by "
+"adding a [Listener] node to the scene and enabling it by calling [method "
+"Listener.make_current] on it.\n"
+"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
+"[b]Note:[/b] Hiding an [AudioStreamPlayer3D] node does not disable its audio "
+"output. To temporarily disable an [AudioStreamPlayer3D]'s audio output, set "
+"[member unit_db] to a very low value like [code]-100[/code] (which isn't "
+"audible to human hearing)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:25
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer3D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:54
+msgid ""
+"Dampens audio using a low-pass filter above this frequency, in Hz. To "
+"disable the dampening effect entirely, set this to [code]20500[/code] as "
+"this frequency is above the human hearing limit."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:57
+msgid "Amount how much the filter affects the loudness, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:60
+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:63
+msgid ""
+"If [code]true[/code], audio plays when the AudioStreamPlayer3D node is added "
+"to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:66
+msgid "The bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:69
+msgid ""
+"Decides in which step the [url=https://en.wikipedia.org/wiki/"
+"Doppler_effect]Doppler effect[/url] should be calculated.\n"
+"[b]Note:[/b] Only effective if the current [Camera]'s [member Camera."
+"doppler_tracking] property is set to a value other than [constant Camera."
+"DOPPLER_TRACKING_DISABLED]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:73
+msgid "The angle in which the audio reaches cameras undampened."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:76
+msgid ""
+"If [code]true[/code], the audio should be dampened according to the "
+"direction of the sound."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:79
+msgid ""
+"Dampens audio if camera is outside of [member emission_angle_degrees] and "
+"[member emission_angle_enabled] is set by this factor, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:82
+msgid "Sets the absolute maximum of the soundlevel, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:85
+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:88
+msgid ""
+"Decides if audio should pause when source is outside of [member "
+"max_distance] range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:97
+msgid "The [AudioStream] resource to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:100
+msgid ""
+"If [code]true[/code], the playback is paused. You can resume it by setting "
+"[member stream_paused] to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:103
+msgid "The base sound level unaffected by dampening, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:106
+msgid ""
+"The factor for the attenuation effect. Higher values make the sound audible "
+"over a larger distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:118
+msgid "Linear dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:121
+msgid "Squared dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:124
+msgid "Logarithmic dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:127
+msgid ""
+"No dampening of loudness according to distance. The sound will still be "
+"heard positionally, unlike an [AudioStreamPlayer]. [constant "
+"ATTENUATION_DISABLED] can be combined with a [member max_distance] value "
+"greater than [code]0.0[/code] to achieve linear attenuation clamped to a "
+"sphere of a defined size."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:130
+msgid ""
+"Mix this audio in, even when it's out of range. This increases CPU usage, "
+"but keeps the sound playing at the correct position if the camera leaves and "
+"enters the [AudioStreamPlayer3D]'s [member max_distance] radius."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:133
+msgid ""
+"Pause this audio when it gets out of range. This decreases CPU usage, but "
+"will cause the sound to restart if the camera leaves and enters the "
+"[AudioStreamPlayer3D]'s [member max_distance] radius."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:136
+msgid "Disables doppler tracking."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:139
+msgid "Executes doppler tracking in idle step (every rendered frame)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:142
+msgid ""
+"Executes doppler tracking in physics step (every simulated physics frame)."
+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. "
+"See also [AudioStreamGenerator] for procedural audio generation."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:17
+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:24
+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:28
+msgid "Audio format. See [enum Format] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:31
+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:34
+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:37
+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:40
+msgid ""
+"The sample rate for mixing this audio. Higher values require more storage "
+"space, but result in better quality.\n"
+"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
+"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
+"[code]48000[/code].\n"
+"According to the [url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], "
+"there is no quality difference to human hearing when going past 40,000 Hz "
+"(since most humans can only hear up to ~20,000 Hz, often less). If you are "
+"using lower-pitched sounds such as voices, lower sample rates such as "
+"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
+"quality."
+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 buffered 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/BakedLightmap.xml:4
+msgid "Prerendered indirect light map for a scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:7
+msgid ""
+"Baked lightmaps are an alternative workflow for adding indirect (or baked) "
+"lighting to a scene. Unlike the [GIProbe] approach, baked lightmaps work "
+"fine on low-end PCs and mobile devices as they consume almost no resources "
+"in run-time.\n"
+"[b]Note:[/b] Due to how lightmaps work, most properties only have a visible "
+"effect once lightmaps are baked again."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:19
+msgid ""
+"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
+"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
+"[member light_data]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:25
+msgid ""
+"When enabled, the lightmapper will merge the textures for all meshes into a "
+"single large layered texture. Not supported in GLES2."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:28
+msgid ""
+"Maximum size of each lightmap layer, only used when [member atlas_generate] "
+"is enabled."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:31
+msgid ""
+"Raycasting bias used during baking to avoid floating point precision issues."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:34
+msgid ""
+"The energy multiplier for each bounce. Higher values will make indirect "
+"lighting brighter. A value of [code]1.0[/code] represents physically "
+"accurate behavior, but higher values can be used to make indirect lighting "
+"propagate more visibly when using a low number of bounces. This can be used "
+"to speed up bake times by lowering the number of [member bounces] then "
+"increasing [member bounce_indirect_energy]. Unlike [member BakedLightmapData."
+"energy], this property does not affect direct lighting emitted by light "
+"nodes, emissive materials and the environment.\n"
+"[b]Note:[/b] [member bounce_indirect_energy] only has an effect if [member "
+"bounces] is set to a value greater than or equal to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:38
+msgid ""
+"Number of light bounces that are taken into account during baking. See also "
+"[member bounce_indirect_energy]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:41
+msgid "Grid size used for real-time capture information on dynamic objects."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:44
+msgid ""
+"When enabled, an octree containing the scene's lighting information will be "
+"computed. This octree will then be used to light dynamic objects in the "
+"scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:47
+msgid ""
+"Bias value to reduce the amount of light proagation in the captured octree."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:50
+msgid "Bake quality of the capture data."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:53
+msgid ""
+"If a baked mesh doesn't have a UV2 size hint, this value will be used to "
+"roughly compute a suitable lightmap size."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:56
+msgid ""
+"The environment color when [member environment_mode] is set to [constant "
+"ENVIRONMENT_MODE_CUSTOM_COLOR]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:59
+msgid ""
+"The energy scaling factor when when [member environment_mode] is set to "
+"[constant ENVIRONMENT_MODE_CUSTOM_COLOR] or [constant "
+"ENVIRONMENT_MODE_CUSTOM_SKY]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:62
+msgid ""
+"The [Sky] resource to use when [member environment_mode] is set o [constant "
+"ENVIRONMENT_MODE_CUSTOM_SKY]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:65
+msgid "The rotation of the baked custom sky."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:68
+msgid ""
+"Minimum ambient light for all the lightmap texels. This doesn't take into "
+"account any occlusion from the scene's geometry, it simply ensures a minimum "
+"amount of light on all the lightmap texels. Can be used for artistic control "
+"on shadow color."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:71
+msgid "Decides which environment to use during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:74
+msgid ""
+"Size of the baked lightmap. Only meshes inside this region will be included "
+"in the baked lightmap, also used as the bounds of the captured region for "
+"dynamic lighting."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:77
+msgid ""
+"Deprecated, in previous versions it determined the location where lightmaps "
+"were be saved."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:80
+msgid "The calculated light data."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:83
+msgid ""
+"Determines the amount of samples per texel used in indrect light baking. The "
+"amount of samples for each quality level can be configured in the project "
+"settings."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:86
+msgid ""
+"Store full color values in the lightmap textures. When disabled, lightmap "
+"textures will store a single brightness channel. Can be disabled to reduce "
+"disk usage if the scene contains only white lights or you don't mind losing "
+"color information in indirect lighting."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:89
+msgid ""
+"When enabled, a lightmap denoiser will be used to reduce the noise inherent "
+"to Monte Carlo based global illumination."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:92
+msgid ""
+"If [code]true[/code], stores the lightmap textures in a high dynamic range "
+"format (EXR). If [code]false[/code], stores the lightmap texture in a low "
+"dynamic range PNG image. This can be set to [code]false[/code] to reduce "
+"disk usage, but light values over 1.0 will be clamped and you may see "
+"banding caused by the reduced precision.\n"
+"[b]Note:[/b] Setting [member use_hdr] to [code]true[/code] will decrease "
+"lightmap banding even when using the GLES2 backend or if [member "
+"ProjectSettings.rendering/quality/depth/hdr] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:98
+msgid "The lowest bake quality mode. Fastest to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:101
+msgid "The default bake quality mode."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:104
+msgid "A higher bake quality mode. Takes longer to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:107
+msgid "The highest bake quality mode. Takes the longest to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:110
+msgid "Baking was successful."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:113
+msgid ""
+"Returns if no viable save path is found. This can happen where an [member "
+"image_path] is not specified or when the save location is invalid."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:116 doc/classes/SpatialMaterial.xml:622
+msgid "Currently unused."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:119
+msgid "Returns when the baker cannot save per-mesh textures to file."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:122
+msgid "The size of the generated lightmaps is too large."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:125
+msgid "Some mesh contains UV2 values outside the [code][0,1][/code] range."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:128
+msgid "Returns if user cancels baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
+msgid "No environment is used during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:140
+msgid "The baked environment is automatically picked from the current scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:143
+msgid "A custom sky is used as environment during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:146
+msgid "A custom solid color is used as environment during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmapData.xml:56
+msgid ""
+"Global energy multiplier for baked and dynamic capture objects. This can be "
+"changed at run-time without having to bake lightmaps again.\n"
+"To adjust only the energy of indirect lighting (without affecting direct "
+"lighting or emissive materials), adjust [member BakedLightmap."
+"bounce_indirect_energy] and bake lightmaps again."
+msgstr ""
+
+#: doc/classes/BakedLightmapData.xml:60
+msgid ""
+"Controls whether dynamic capture objects receive environment lighting or not."
+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:15
+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:22
+msgid ""
+"Called when the button is toggled (only if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:28
+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:34
+msgid ""
+"Returns [code]true[/code] if the mouse has entered the button and has not "
+"left it yet."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:41
+msgid ""
+"Changes the [member pressed] state of the button, without emitting [signal "
+"toggled]. Use when you just want to change the state of the button without "
+"sending the pressed event (e.g. when initializing scene). Only works if "
+"[member toggle_mode] is [code]true[/code].\n"
+"[b]Note:[/b] This method doesn't unpress other buttons in its button [member "
+"group]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:48
+msgid ""
+"Determines when the button is considered clicked, one of the [enum "
+"ActionMode] constants."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:51
+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:55
+msgid ""
+"If [code]true[/code], the button is in disabled state and can't be clicked "
+"or toggled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:58
+msgid ""
+"[i]Deprecated.[/i] This property has been deprecated due to redundancy and "
+"will be removed in Godot 4.0. This property no longer has any effect when "
+"set. Please use [member Control.focus_mode] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:62
+msgid "[ButtonGroup] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:65
+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:69
+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). Only works if "
+"[member toggle_mode] is [code]true[/code].\n"
+"[b]Note:[/b] Setting [member pressed] will result in [signal toggled] to be "
+"emitted. If you want to change the pressed state without emitting that "
+"signal, use [method set_pressed_no_signal]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:73
+msgid "[ShortCut] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:76
+msgid ""
+"If [code]true[/code], the button will add information about its shortcut in "
+"the tooltip."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:79
+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:85
+msgid "Emitted when the button starts being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:90
+msgid "Emitted when the button stops being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:95
+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:102
+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:108
+msgid ""
+"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
+"buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:111
+msgid "The state of buttons are pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:114
+msgid "The state of buttons are hovered."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:117
+msgid "The state of buttons are disabled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:120
+msgid "The state of buttons are both hovered and pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:123
+msgid "Require just a press to consider the button clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:126
+msgid ""
+"Require a press and a subsequent release before considering the button "
+"clicked."
+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:14 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms."
+"html"
+msgstr ""
+
+#: doc/classes/Basis.xml:15 doc/classes/Transform.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:16 doc/classes/Line2D.xml:11
+#: doc/classes/Transform.xml:14 doc/classes/Transform2D.xml:13
+#: doc/classes/Vector2.xml:15 doc/classes/Vector3.xml:15
+msgid "https://godotengine.org/asset-library/asset/584"
+msgstr ""
+
+#: doc/classes/Basis.xml:18 doc/classes/CylinderShape.xml:12
+#: doc/classes/Dictionary.xml:88 doc/classes/DynamicFont.xml:18
+#: doc/classes/DynamicFontData.xml:10 doc/classes/File.xml:29
+#: doc/classes/Input.xml:12 doc/classes/InputEvent.xml:13
+#: doc/classes/InputEventAction.xml:12 doc/classes/InputEventMouseMotion.xml:12
+#: doc/classes/KinematicBody.xml:15 doc/classes/RayCast.xml:15
+#: doc/classes/StaticBody.xml:13 doc/classes/SurfaceTool.xml:22
+#: doc/classes/TextureButton.xml:12 doc/classes/TextureRect.xml:11
+#: doc/classes/Thread.xml:13 doc/classes/VBoxContainer.xml:10
+msgid "https://godotengine.org/asset-library/asset/676"
+msgstr ""
+
+#: doc/classes/Basis.xml:19 doc/classes/Line2D.xml:12
+#: doc/classes/Transform.xml:16 doc/classes/Transform2D.xml:14
+msgid "https://godotengine.org/asset-library/asset/583"
+msgstr ""
+
+#: doc/classes/Basis.xml:26
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr ""
+
+#: doc/classes/Basis.xml:33
+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:42
+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:51
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
+msgstr ""
+
+#: doc/classes/Basis.xml:57
+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:64
+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:71
+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:77
+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:83
+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:89
+msgid "Returns the inverse of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:97
+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.\n"
+"[b]Note:[/b] For complicated reasons, the epsilon argument is always "
+"discarded. Don't use the epsilon argument, it does nothing."
+msgstr ""
+
+#: doc/classes/Basis.xml:104
+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:112
+msgid ""
+"Introduce an additional rotation around the given axis by phi (radians). The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:119
+msgid ""
+"Introduce an additional scaling specified by the given 3D scaling factor."
+msgstr ""
+
+#: doc/classes/Basis.xml:127
+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:134
+msgid "Transposed dot product with the X axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:141
+msgid "Transposed dot product with the Y axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:148
+msgid "Transposed dot product with the Z axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:154
+msgid "Returns the transposed version of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:161
+msgid "Returns a vector transformed (multiplied) by the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:168
+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:175 doc/classes/Transform2D.xml:150
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:178 doc/classes/Transform2D.xml:153
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:181
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:186
+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:190
+msgid ""
+"The basis that will flip something along the X axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:193
+msgid ""
+"The basis that will flip something along the Y axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:196
+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:16
+msgid ""
+"Creates a bitmap with the specified size, filled with [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:24
+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:31
+msgid "Returns bitmap's value at the specified position."
+msgstr ""
+
+#: doc/classes/BitMap.xml:37
+msgid "Returns bitmap's dimensions."
+msgstr ""
+
+#: doc/classes/BitMap.xml:43
+msgid ""
+"Returns the amount of bitmap elements that are set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:51
+msgid ""
+"Applies morphological dilation to the bitmap. The first argument is the "
+"dilation amount, Rect2 is the area where the dilation will be applied."
+msgstr ""
+
+#: doc/classes/BitMap.xml:66
+msgid ""
+"Sets the bitmap's element at the specified position, to the specified value."
+msgstr ""
+
+#: doc/classes/BitMap.xml:74
+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:21
+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:30
+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:37
+msgid "Adds a texture to the [BitmapFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:43
+msgid "Clears all the font data and settings."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:50
+msgid ""
+"Creates a BitmapFont from the [code]*.fnt[/code] file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:58
+msgid "Returns a kerning pair as a difference."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:65
+msgid "Returns the font atlas texture at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:71
+msgid "Returns the number of textures in the BitmapFont atlas."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:77
+msgid "Ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:80
+msgid "If [code]true[/code], distance field hint is enabled."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:83
+msgid "The fallback font."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:86
+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:18
+msgid "Stores the node's current transforms in [member rest]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:24
+msgid ""
+"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:30
+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:36
+msgid ""
+"Length of the bone's representation drawn in the editor's viewport in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:39
+msgid ""
+"Rest transform of the bone. You can reset the node's transforms to this "
+"value using [method apply_rest]."
+msgstr ""
+
+#: doc/classes/BoneAttachment.xml:4
+msgid "A node that will attach to a bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment.xml:7
+msgid ""
+"This node must be the child of a [Skeleton] node. You can then select a bone "
+"for this node to attach to. The BoneAttachment node will copy the transform "
+"of the selected bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment.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 a 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:47
+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:54
+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:61
+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 controls vertically or horizontally, and rearranges the "
+"controls automatically when their minimum size changes."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:16
+msgid ""
+"Adds a control to the box as a spacer. If [code]true[/code], [code]begin[/"
+"code] will insert the spacer control in front of other children."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:22
+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:28
+msgid "Aligns children with the beginning of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:31
+msgid "Aligns children with the center of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:34
+msgid "Aligns children with the end of the container."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:4
+msgid "Box shape resource."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:7
+msgid "3D box shape that can be a child of a [PhysicsBody] or [Area]."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:10 doc/classes/CapsuleShape.xml:10
+#: doc/classes/ConcavePolygonShape.xml:11 doc/classes/ConvexPolygonShape.xml:10
+#: doc/classes/CylinderShape.xml:11 doc/classes/ProjectSettings.xml:13
+#: doc/classes/RigidBody.xml:16 doc/classes/SphereShape.xml:10
+#: doc/classes/StaticBody.xml:11
+msgid "https://godotengine.org/asset-library/asset/675"
+msgstr ""
+
+#: doc/classes/BoxShape.xml:11 doc/classes/CollisionShape.xml:11
+#: modules/gridmap/doc_classes/GridMap.xml:16 doc/classes/KinematicBody.xml:13
+#: doc/classes/Mesh.xml:11 doc/classes/MeshInstance.xml:11
+#: doc/classes/MeshLibrary.xml:10
+msgid "https://godotengine.org/asset-library/asset/126"
+msgstr ""
+
+#: doc/classes/BoxShape.xml:18
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node.\n"
+"[b]Note:[/b] Buttons do not interpret touch input and therefore don't "
+"support multitouch, since mouse emulation can only press one button at a "
+"given time. Use [TouchScreenButton] for buttons that trigger gameplay "
+"movement or actions, as [TouchScreenButton] supports multitouch."
+msgstr ""
+
+#: doc/classes/Button.xml:25 doc/classes/Dictionary.xml:89
+#: doc/classes/GridContainer.xml:12 doc/classes/OS.xml:10
+#: doc/classes/PoolStringArray.xml:11 doc/classes/ProjectSettings.xml:15
+#: doc/classes/ResourceLoader.xml:11 doc/classes/RichTextLabel.xml:17
+msgid "https://godotengine.org/asset-library/asset/677"
+msgstr ""
+
+#: doc/classes/Button.xml:31
+msgid ""
+"Text alignment policy for the button's text, use one of the [enum TextAlign] "
+"constants."
+msgstr ""
+
+#: doc/classes/Button.xml:34
+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:37
+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:40
+msgid "Flat buttons don't display decoration."
+msgstr ""
+
+#: doc/classes/Button.xml:43
+msgid ""
+"Button's icon, if text is present the icon will be placed before the text."
+msgstr ""
+
+#: doc/classes/Button.xml:46 doc/classes/LinkButton.xml:18
+msgid "The button's text that will be displayed inside the button's area."
+msgstr ""
+
+#: doc/classes/Button.xml:51
+msgid "Align the text to the left."
+msgstr ""
+
+#: doc/classes/Button.xml:54
+msgid "Align the text to the center."
+msgstr ""
+
+#: doc/classes/Button.xml:57
+msgid "Align the text to the right."
+msgstr ""
+
+#: doc/classes/Button.xml:62
+msgid "[StyleBox] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:65
+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:68
+msgid "[Font] of the [Button]'s text."
+msgstr ""
+
+#: doc/classes/Button.xml:71
+msgid "Default text [Color] of the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:74
+msgid "Text [Color] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:77
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/Button.xml:80
+msgid "Text [Color] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:83
+msgid "Text [Color] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/Button.xml:86
+msgid "[StyleBox] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:89
+msgid "The horizontal space between [Button]'s icon and text."
+msgstr ""
+
+#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
+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:16
+msgid ""
+"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
+"[member BaseButton.group])."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:22
+msgid "Returns the current pressed button."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:33
+msgid "Emitted when one of the buttons of the group is pressed."
+msgstr ""
+
+#: doc/classes/Camera.xml:4
+msgid "Camera node, displays from a point of view."
+msgstr ""
+
+#: doc/classes/Camera.xml:7
+msgid ""
+"Camera 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/Camera.xml:17
+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/Camera.xml:23
+msgid "Returns the camera's RID from the [VisualServer]."
+msgstr ""
+
+#: doc/classes/Camera.xml:29
+msgid ""
+"Returns the transform of the camera plus the vertical ([member v_offset]) "
+"and horizontal ([member h_offset]) offsets; and any other adjustments made "
+"to the position and orientation of the camera by subclassed cameras such as "
+"[ClippedCamera], [InterpolatedCamera] and [ARVRCamera]."
+msgstr ""
+
+#: doc/classes/Camera.xml:36
+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/Camera.xml:42
+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/Camera.xml:49
+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/Camera.xml:56
+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/Camera.xml:63
+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/Camera.xml:71
+msgid ""
+"Returns the 3D point in world space 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/Camera.xml:78
+msgid ""
+"Returns a normal vector in world space, 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/Camera.xml:85
+msgid ""
+"Returns a 3D position in world space, 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/Camera.xml:93
+msgid ""
+"Enables or disables the given [code]layer[/code] in the [member cull_mask]."
+msgstr ""
+
+#: doc/classes/Camera.xml:103
+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/Camera.xml:112
+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/Camera.xml:121
+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/Camera.xml:128
+msgid ""
+"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
+"3D point in world space.\n"
+"[b]Note:[/b] When using this to position GUI elements over a 3D viewport, "
+"use [method is_position_behind] to prevent them from appearing if the 3D "
+"point is behind the camera:\n"
+"[codeblock]\n"
+"# This code block is part of a script that inherits from Spatial.\n"
+"# `control` is a reference to a node inheriting from Control.\n"
+"control.visible = not get_viewport().get_camera()."
+"is_position_behind(global_transform.origin)\n"
+"control.rect_position = get_viewport().get_camera()."
+"unproject_position(global_transform.origin)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Camera.xml:141
+msgid ""
+"The culling mask that describes which 3D render layers are rendered by this "
+"camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:144
+msgid ""
+"If [code]true[/code], the ancestor [Viewport] is currently using this camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:147
+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. The Doppler "
+"effect is only simulated for [AudioStreamPlayer3D] nodes that have [member "
+"AudioStreamPlayer3D.doppler_tracking] set to a value other than [constant "
+"AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED].\n"
+"[b]Note:[/b] To toggle the Doppler effect preview in the editor, use the "
+"Perspective menu in the top-left corner of the 3D viewport and toggle "
+"[b]Enable Doppler[/b]."
+msgstr ""
+
+#: doc/classes/Camera.xml:151
+msgid "The [Environment] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:154
+msgid ""
+"The distance to the far culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera.xml:157
+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]70.0[/code]) "
+"is equivalent to a horizontal FOV of:\n"
+"- ~86.07 degrees in a 4:3 viewport\n"
+"- ~96.50 degrees in a 16:10 viewport\n"
+"- ~102.45 degrees in a 16:9 viewport\n"
+"- ~117.06 degrees in a 21:9 viewport"
+msgstr ""
+
+#: doc/classes/Camera.xml:165
+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/Camera.xml:168
+msgid "The horizontal (X) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera.xml:171
+msgid ""
+"The axis to lock during [member fov]/[member size] adjustments. Can be "
+"either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/Camera.xml:174
+msgid ""
+"The distance to the near culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera.xml:177
+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/Camera.xml:180
+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/Camera.xml:183
+msgid "The vertical (Y) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera.xml:188
+msgid ""
+"Perspective projection. Objects on the screen becomes smaller when they are "
+"far away."
+msgstr ""
+
+#: doc/classes/Camera.xml:191
+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/Camera.xml:194
+msgid ""
+"Frustum projection. This mode allows adjusting [member frustum_offset] to "
+"create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/Camera.xml:197
+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/Camera.xml:200
+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/Camera.xml:203
+msgid ""
+"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] simulation (default)."
+msgstr ""
+
+#: doc/classes/Camera.xml:206
+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/Camera.xml:209
+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/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, but "
+"more functionality may be desired to change how the camera works. To make "
+"your own custom camera node, inherit it 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:13 doc/classes/TileMap.xml:13
+#: doc/classes/TileSet.xml:13
+msgid "https://godotengine.org/asset-library/asset/112"
+msgstr ""
+
+#: doc/classes/Camera2D.xml:14 doc/classes/Environment.xml:18
+#: doc/classes/WorldEnvironment.xml:14
+msgid "https://godotengine.org/asset-library/asset/110"
+msgstr ""
+
+#: doc/classes/Camera2D.xml:20
+msgid "Aligns the camera to the tracked node."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:26
+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:38
+msgid "Returns the camera position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:44
+msgid ""
+"Returns the location of the [Camera2D]'s screen-center, relative to the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:51
+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:58
+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:64
+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:70
+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:79
+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:87
+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:93
+msgid "The Camera2D's anchor point. See [enum AnchorMode] constants."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:96
+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:99
+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:102
+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:105
+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:108
+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:111
+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:114
+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:117
+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:120
+msgid ""
+"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:123
+msgid ""
+"If [code]true[/code], draws the camera's limits rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:126
+msgid ""
+"If [code]true[/code], draws the camera's screen rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:129
+msgid ""
+"Bottom scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:132
+msgid ""
+"Left scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:135
+msgid ""
+"Right scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:138
+msgid ""
+"If [code]true[/code], the camera smoothly stops when reaches its limits.\n"
+"This has no effect if smoothing is disabled.\n"
+"[b]Note:[/b] To immediately update the camera's position to be within limits "
+"without smoothing, even with this setting enabled, invoke [method "
+"reset_smoothing]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:143
+msgid ""
+"Top scroll limit in pixels. The camera stops moving when reaching this value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:146
+msgid ""
+"The camera's offset, useful for looking around or camera shake animations."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:149
+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:153
+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:157
+msgid "The camera's process callback. See [enum Camera2DProcessMode]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:160
+msgid "If [code]true[/code], the camera rotates with the target."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:163
+msgid ""
+"If [code]true[/code], the camera smoothly moves towards the target at "
+"[member smoothing_speed]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:166
+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:169
+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:174
+msgid ""
+"The camera's position is fixed so that the top-left corner is always at the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:177
+msgid ""
+"The camera's position takes into account vertical/horizontal offsets and the "
+"screen size."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:180 doc/classes/ClippedCamera.xml:89
+msgid "The camera updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:183 doc/classes/ClippedCamera.xml:92
+msgid "The camera updates with the [code]_process[/code] callback."
+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.\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/CameraFeed.xml:16
+msgid "Returns the unique ID for this feed."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:22
+msgid "Returns the camera's name."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:28
+msgid "Returns the position of camera on the device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:34
+msgid "If [code]true[/code], the feed is active."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:37
+msgid "The transform applied to the camera's image."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:42
+msgid "No image set for the feed."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:45
+msgid "Feed supplies RGB images."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:48
+msgid "Feed supplies YCbCr images that need to be converted to RGB."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:51
+msgid ""
+"Feed supplies separate Y and CbCr images that need to be combined and "
+"converted to RGB."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:54
+msgid "Unspecified position."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:57
+msgid "Camera is mounted at the front of the device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:60
+msgid "Camera is mounted at the back of the device."
+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."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:17
+msgid "Adds a camera feed to the camera server."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:23
+msgid "Returns an array of [CameraFeed]s."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:30
+msgid "Returns the [CameraFeed] with this id."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:36
+msgid "Returns the number of [CameraFeed]s registered."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:43
+msgid "Removes a [CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:51
+msgid "Emitted when a [CameraFeed] is added (e.g. webcam is plugged in)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:57
+msgid "Emitted when a [CameraFeed] is removed (e.g. webcam is unplugged)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:63
+msgid "The RGBA camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:66
+msgid "The YCbCr camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:69
+msgid "The Y component camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:72
+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:23
+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/3.4/tutorials/2d/2d_transforms.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:18
+#: doc/classes/Node2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:37
+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:48
+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:57
+msgid "Draws a colored circle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:69
+msgid "Draws a colored polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:80
+msgid ""
+"Draws a line from a 2D point to another, with a given color and width. It "
+"can be optionally antialiased."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:91
+msgid ""
+"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
+"related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:101
+msgid ""
+"Draws multiple, parallel lines with a uniform [code]color[/code].\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
+"not implemented and have no effect."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:112
+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].\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
+"not implemented and have no effect."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:122
+msgid ""
+"Draws a [MultiMesh] in 2D with the provided texture. See "
+"[MultiMeshInstance2D] for related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:134
+msgid "Draws a polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:144
+msgid ""
+"Draws interconnected line segments with a uniform [code]color[/code] and "
+"[code]width[/code] and optional antialiasing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:154
+msgid ""
+"Draws interconnected line segments with a uniform [code]width[/code], "
+"segment-by-segment coloring, and optional antialiasing. Colors assigned to "
+"line segments match by index between [code]points[/code] and [code]colors[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:166
+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:177
+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. If "
+"[code]antialiased[/code] is [code]true[/code], the lines will be "
+"antialiased.\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are only "
+"effective if [code]filled[/code] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:187
+msgid ""
+"Sets a custom transform for drawing via components. Anything drawn "
+"afterwards will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:194
+msgid ""
+"Sets a custom transform for drawing via matrix. Anything drawn afterwards "
+"will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:205
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (bottom-left corner using the baseline of the font). "
+"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:222
+msgid "Draws a styled rectangle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:232
+msgid "Draws a texture at a given position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:244
+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:257
+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:263 doc/classes/Spatial.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:269
+msgid "Returns the [RID] of the [World2D] canvas where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:275
+msgid "Returns the canvas item RID used by [VisualServer] for this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:281
+msgid "Returns the transform matrix of this item's canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:287
+msgid "Returns the global position of the mouse."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:293
+msgid "Returns the global transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:299
+msgid ""
+"Returns the global transform matrix of this item in relation to the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:305
+msgid "Returns the mouse position relative to this item's position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:311
+msgid "Returns the transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:317
+msgid "Returns the viewport's boundaries as a [Rect2]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:323
+msgid "Returns this item's transform in relation to the viewport."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:329
+msgid "Returns the [World2D] where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:335
+msgid "Hide the [CanvasItem] if it's currently visible."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:341
+msgid ""
+"Returns [code]true[/code] if local transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:347
+msgid ""
+"Returns [code]true[/code] if the node is set as top-level. See [method "
+"set_as_toplevel]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:353
+msgid ""
+"Returns [code]true[/code] if global transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:359 doc/classes/Spatial.xml:89
+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:366
+msgid "Assigns [code]screen_point[/code] as this node's new local transform."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:373
+msgid ""
+"Transformations issued by [code]event[/code]'s inputs are applied in local "
+"space instead of global space."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:380
+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:387
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"local transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:394
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"global transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:400
+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:406
+msgid ""
+"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
+"called on idle time to request redraw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:412
+msgid ""
+"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:415
+msgid "The material applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:418
+msgid "The color applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:421
+msgid ""
+"The color applied to textures on this [CanvasItem]. This is not inherited by "
+"children [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:424
+msgid "If [code]true[/code], the object draws behind its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:427
+msgid "If [code]true[/code], the object draws on top of its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:430
+msgid ""
+"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
+"is used as this one's material."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:433
+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:440
+msgid ""
+"Emitted when the [CanvasItem] must redraw. This can only be connected "
+"realtime, as deferred will not allow drawing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:445
+msgid "Emitted when becoming hidden."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:450
+msgid ""
+"Emitted when the item's [Rect2] boundaries (position or size) have changed, "
+"or when an action is taking place that may have impacted these boundaries (e."
+"g. changing [member Sprite.texture])."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:455
+msgid "Emitted when the visibility (hidden/visible) changes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:461 doc/classes/CanvasItemMaterial.xml:39
+msgid ""
+"Mix blending mode. Colors are assumed to be independent of the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:464 doc/classes/CanvasItemMaterial.xml:42
+msgid "Additive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:467 doc/classes/CanvasItemMaterial.xml:45
+msgid "Subtractive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:470 doc/classes/CanvasItemMaterial.xml:48
+msgid "Multiplicative blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:473 doc/classes/CanvasItemMaterial.xml:51
+msgid ""
+"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:476
+msgid ""
+"Disables blending mode. Colors including alpha are written as-is. Only "
+"applicable for render targets with a transparent background. No lighting "
+"will be applied."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:479
+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:482
+msgid "The [CanvasItem] is requested to draw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:485
+msgid "The [CanvasItem]'s visibility has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:488
+msgid "The [CanvasItem] has entered the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:491
+msgid "The [CanvasItem] has exited the canvas."
+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 [Texture] for a "
+"[Particles2D] 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 [Texture] for a "
+"[Particles2D] 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 [Particles2D] 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: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/3.4/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 middle cylindrical part of the capsule (without the "
+"hemispherical ends).\n"
+"[b]Note:[/b] The capsule's total height is equal to [member mid_height] + 2 "
+"* [member radius]."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:19
+msgid "Number of radial segments on the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:22
+msgid "Radius of the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:25
+msgid "Number of rings along the height of the capsule."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:4 doc/classes/CapsuleShape.xml:7
+msgid "Capsule shape for collisions."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:16 doc/classes/CapsuleShape2D.xml:15
+msgid "The capsule's height."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:19 doc/classes/CapsuleShape2D.xml:18
+msgid "The capsule's radius."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:4 doc/classes/CapsuleShape2D.xml:7
+msgid "Capsule shape for 2D 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:15
+msgid ""
+"https://docs.godotengine.org/en/3.4/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 [RichTextLabel] is paused (see [member Node."
+"pause_mode]). Resets when the text in the [RichTextLabel] is changed.\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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:22
+msgid "The vertical offset used when rendering the check icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:25
+msgid "The check icon to display when the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:34
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is focused."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:37
+msgid "The [Font] to use for the [CheckBox] text."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:40
+msgid "The [CheckBox] text's font color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:43
+msgid "The [CheckBox] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
+msgid "The [CheckBox] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:52
+msgid "The [CheckBox] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:55
+msgid "The [CheckBox] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:58
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:61
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
+"pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:64
+msgid "The separation between the check icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
+msgid "The [StyleBox] to display as a background."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:70
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:73
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:78
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:83
+msgid "The check icon to display when the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:22
+msgid "The vertical offset used when rendering the toggle icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:25
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:28
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is focused."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:31
+msgid "The [Font] to use for the [CheckButton] text."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:34
+msgid "The [CheckButton] text's font color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:37
+msgid "The [CheckButton] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:40
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:43
+msgid "The [CheckButton] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:46
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:55
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered "
+"and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:58
+msgid "The separation between the toggle icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:64
+msgid "The icon to display when the [CheckButton] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:67
+msgid "The icon to display when the [CheckButton] is unchecked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:70
+msgid "The icon to display when the [CheckButton] is checked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:73
+msgid "The icon to display when the [CheckButton] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:76
+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:16
+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:23
+msgid "Returns whether the specified [code]class[/code] is available or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:30
+msgid ""
+"Returns a category associated with the class for use in documentation and "
+"the Asset Library. Debug mode required."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:39
+msgid ""
+"Returns an array with all the keys in [code]enum[/code] of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:47
+msgid ""
+"Returns an array with all the enums of [code]class[/code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:55
+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:64
+msgid ""
+"Returns which enum the integer constant [code]name[/code] of [code]class[/"
+"code] or its ancestry belongs to."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:72
+msgid ""
+"Returns an array with the names all the integer constants of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:80
+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].\n"
+"[b]Note:[/b] In exported release builds the debug info is not available, so "
+"the returned dictionaries will contain only method names."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:89
+msgid ""
+"Returns the value of [code]property[/code] of [code]class[/code] or its "
+"ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:97
+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:105
+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:122
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an enum called "
+"[code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:130
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an integer constant "
+"called [code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:139
+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:147
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has a signal called "
+"[code]signal[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:156
+msgid ""
+"Sets [code]property[/code] value of [code]class[/code] to [code]value[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:162
+msgid "Returns the names of all the classes available."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:169
+msgid ""
+"Returns the names of all the classes that directly or indirectly inherit "
+"from [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:176
+msgid "Returns the parent class of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:183
+msgid "Creates an instance of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:190
+msgid "Returns whether this [code]class[/code] is enabled or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:198
+msgid ""
+"Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] "
+"or not."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:4
+msgid "A [Camera] that includes collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:7
+msgid ""
+"This node extends [Camera] to add collisions with [Area] and/or "
+"[PhysicsBody] nodes. The camera cannot move through colliding objects."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:16
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"node."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:23
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"[RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:29
+msgid "Removes all collision exceptions."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:35
+msgid "Returns the distance the camera has been offset due to a collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:42
+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/ClippedCamera.xml:50
+msgid "Removes a collision exception with the specified node."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:57
+msgid "Removes a collision exception with the specified [RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:65
+msgid ""
+"Sets the specified bit index to the [code]value[/code].\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:72
+msgid "If [code]true[/code], the camera stops on contact with [Area]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:75
+msgid "If [code]true[/code], the camera stops on contact with [PhysicsBody]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:78
+msgid ""
+"The camera's collision mask. Only objects in at least one collision layer "
+"matching the mask will be detected. See [url=https://docs.godotengine.org/"
+"en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks]Collision layers and masks[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:81
+msgid ""
+"The camera's collision margin. The camera can't get closer than this "
+"distance to a colliding object."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:84
+msgid "The camera's process callback. See [enum ProcessMode]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:4
+msgid "Base node for collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:7
+msgid ""
+"CollisionObject is the base class for physics objects. It can hold any "
+"number of collision [Shape]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject 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/CollisionObject.xml:20
+msgid ""
+"Receives unhandled [InputEvent]s. [code]position[/code] is the location in "
+"world space of the mouse pointer on the surface of the shape with index "
+"[code]shape_idx[/code] and [code]normal[/code] is the normal vector of the "
+"surface at that point. Connect to the [signal input_event] signal to easily "
+"pick up these events."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:27 doc/classes/CollisionObject2D.xml:25
+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/CollisionObject.xml:34 doc/classes/CollisionObject2D.xml:32
+msgid ""
+"Returns whether or not the specified [code]bit[/code] of the [member "
+"collision_layer] is set."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:41 doc/classes/CollisionObject2D.xml:39
+msgid ""
+"Returns whether or not the specified [code]bit[/code] of the [member "
+"collision_mask] is set."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:47 doc/classes/CollisionObject2D.xml:45
+msgid "Returns the object's [RID]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:53 doc/classes/CollisionObject2D.xml:58
+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/CollisionObject.xml:60 doc/classes/CollisionObject2D.xml:65
+msgid "If [code]true[/code], the shape owner and its shapes are disabled."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:67 doc/classes/CollisionObject2D.xml:79
+msgid "Removes the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:75 doc/classes/CollisionObject2D.xml:87
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the the [member collision_layer].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the the [member collision_layer]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:84 doc/classes/CollisionObject2D.xml:96
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the the [member collision_mask].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the the [member collision_mask]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:92 doc/classes/CollisionObject2D.xml:104
+msgid "Returns the [code]owner_id[/code] of the given shape."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:100
+msgid "Adds a [Shape] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:107 doc/classes/CollisionObject2D.xml:119
+msgid "Removes all shapes from the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:114 doc/classes/CollisionObject2D.xml:126
+msgid "Returns the parent object of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:122
+msgid "Returns the [Shape] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:129 doc/classes/CollisionObject2D.xml:141
+msgid "Returns the number of shapes the given shape owner contains."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:137
+msgid ""
+"Returns the child index of the [Shape] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:144
+msgid "Returns the shape owner's [Transform]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:152 doc/classes/CollisionObject2D.xml:164
+msgid "Removes a shape from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:160 doc/classes/CollisionObject2D.xml:172
+msgid "If [code]true[/code], disables the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:168
+msgid "Sets the [Transform] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:174
+msgid ""
+"The physics layers this CollisionObject3D is in. Collision objects can exist "
+"in one or more of 32 different layers. See also [member collision_mask].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:178
+msgid ""
+"The physics layers this CollisionObject3D scans. Collision objects can scan "
+"one or more of 32 different layers. See also [member collision_layer].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:182
+msgid ""
+"If [code]true[/code], the [CollisionObject] will continue to receive input "
+"events as the mouse is dragged across its shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:185
+msgid ""
+"If [code]true[/code], the [CollisionObject]'s shapes will respond to "
+"[RayCast]s."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:196
+msgid ""
+"Emitted when the object receives an unhandled [InputEvent]. [code]position[/"
+"code] is the location in world space of the mouse pointer on the surface of "
+"the shape with index [code]shape_idx[/code] and [code]normal[/code] is the "
+"normal vector of the surface at that point."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:201
+msgid "Emitted when the mouse pointer enters any of this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:206
+msgid "Emitted when the mouse pointer exits all this object's shapes."
+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:18
+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:52
+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: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:112
+msgid "Adds a [Shape2D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:134
+msgid "Returns the [Shape2D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:149
+msgid ""
+"Returns the child index of the [Shape2D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:156
+msgid "Returns the shape owner's [Transform2D]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:180
+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:188
+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:196
+msgid "Sets the [Transform2D] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:202
+msgid ""
+"The physics layers this CollisionObject2D is in. Collision objects can exist "
+"in one or more of 32 different layers. See also [member collision_mask].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:206
+msgid ""
+"The physics layers this CollisionObject2D scans. Collision objects can scan "
+"one or more of 32 different layers. See also [member collision_layer].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:210
+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:219
+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:224
+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:229
+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/CollisionPolygon.xml:4
+msgid "Editor-only class for defining a collision polygon in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.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 [Shape] "
+"for gameplay. Properties modified during gameplay will have no effect."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:15
+msgid ""
+"Length that the resulting collision extends in either direction "
+"perpendicular to its polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:18
+msgid "If [code]true[/code], no collision will be produced."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:21
+msgid ""
+"The collision margin for the generated [Shape]. See [member Shape.margin] "
+"for more details."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:24
+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/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 [PoolVector2Array], 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/CollisionShape.xml:4
+msgid "Node that represents collision shape data in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionShape.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 [Area] to give it a detection shape, or add it to a "
+"[PhysicsBody] to create a solid object. [b]IMPORTANT[/b]: this is an Editor-"
+"only helper to create shapes, use [method CollisionObject."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:10 doc/classes/CollisionShape2D.xml:10
+#: doc/classes/Physics2DDirectBodyState.xml:10
+#: doc/classes/Physics2DDirectSpaceState.xml:10 doc/classes/PhysicsBody.xml:10
+#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsDirectBodyState.xml:10
+#: doc/classes/PhysicsDirectSpaceState.xml:10 doc/classes/RigidBody.xml:14
+#: doc/classes/Shape.xml:10 doc/classes/Shape2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html"
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:19
+msgid ""
+"Sets the collision shape's shape to the addition of all its convexed "
+"[MeshInstance] siblings geometry."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:26
+msgid ""
+"If this method exists within a script it will be called whenever the shape "
+"resource has been modified."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:32
+msgid "A disabled collision shape has no effect in the world."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:35 doc/classes/CollisionShape2D.xml:28
+msgid "The actual shape owned by this collision shape."
+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:13 doc/classes/KinematicBody2D.xml:14
+#: doc/classes/RectangleShape2D.xml:11 doc/classes/TileMap.xml:17
+#: doc/classes/TileSet.xml:17
+msgid "https://godotengine.org/asset-library/asset/113"
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:19
+msgid ""
+"A disabled collision shape has no effect in the world. This property should "
+"be changed with [method Object.set_deferred]."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:22
+msgid ""
+"Sets whether this collision shape should only detect collision on one side "
+"(top or bottom)."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:25
+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/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].\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"color_constants.png]Color constants cheatsheet[/url]"
+msgstr ""
+
+#: doc/classes/Color.xml:14 doc/classes/ColorPickerButton.xml:13
+msgid "https://godotengine.org/asset-library/asset/517"
+msgstr ""
+
+#: doc/classes/Color.xml:15 doc/classes/ColorPicker.xml:11
+msgid "https://godotengine.org/asset-library/asset/146"
+msgstr ""
+
+#: doc/classes/Color.xml:16 doc/classes/ColorPickerButton.xml:12
+msgid "https://godotengine.org/asset-library/asset/133"
+msgstr ""
+
+#: doc/classes/Color.xml:23
+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 in RGBA format (each byte "
+"represents a color channel).\n"
+"[codeblock]\n"
+"var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:49
+msgid ""
+"Constructs a color from RGB values, typically between 0 and 1. Alpha will be "
+"1.\n"
+"[codeblock]\n"
+"var color = Color(0.2, 1.0, 0.7) # Similar to Color8(51, 255, 178, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:62
+msgid ""
+"Constructs a color from RGBA values, typically between 0 and 1.\n"
+"[codeblock]\n"
+"var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to Color8(51, 255, 178, "
+"204)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:72
+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:83
+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:94
+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:108
+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:117
+msgid ""
+"Returns the color's grayscale representation.\n"
+"The gray value is calculated as [code](r + g + b) / 3[/code].\n"
+"[codeblock]\n"
+"var c = Color(0.2, 0.45, 0.82)\n"
+"var gray = c.gray() # A value of 0.466667\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:128
+msgid ""
+"Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
+"[codeblock]\n"
+"var color = Color(0.3, 0.4, 0.9)\n"
+"var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:139
+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:146
+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:158
+msgid ""
+"Returns the linear interpolation with another color. The interpolation "
+"factor [code]weight[/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.linear_interpolate(c2, 0.5) # Equivalent to Color(0.5, 0.5, "
+"0.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:169
+msgid ""
+"Returns the color converted to a 32-bit integer in ABGR format (each byte "
+"represents a color channel). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr32()) # Prints 4281565439\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:179
+msgid ""
+"Returns the color converted to a 64-bit integer in ABGR format (each word "
+"represents a color channel). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr64()) # Prints -225178692812801\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:189
+msgid ""
+"Returns the color converted to a 32-bit integer in ARGB format (each byte "
+"represents a color channel). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb32()) # Prints 4294934323\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:199
+msgid ""
+"Returns the color converted to a 64-bit integer in ARGB format (each word "
+"represents a color channel). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb64()) # Prints -2147470541\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:210
+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:222
+msgid ""
+"Returns the color converted to a 32-bit integer in RGBA format (each byte "
+"represents a color channel). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba32()) # Prints 4286526463\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:232
+msgid ""
+"Returns the color converted to a 64-bit integer in RGBA format (each word "
+"represents a color channel). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba64()) # Prints -140736629309441\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:242
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:245
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:248
+msgid "The color's blue component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:251
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:254
+msgid "The color's green component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:257
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:260
+msgid "The HSV hue of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:263
+msgid "The color's red component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:266
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:269
+msgid "The HSV saturation of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:272
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:277
+msgid "Alice blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:280
+msgid "Antique white color."
+msgstr ""
+
+#: doc/classes/Color.xml:283
+msgid "Aqua color."
+msgstr ""
+
+#: doc/classes/Color.xml:286
+msgid "Aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:289
+msgid "Azure color."
+msgstr ""
+
+#: doc/classes/Color.xml:292
+msgid "Beige color."
+msgstr ""
+
+#: doc/classes/Color.xml:295
+msgid "Bisque color."
+msgstr ""
+
+#: doc/classes/Color.xml:298
+msgid "Black color."
+msgstr ""
+
+#: doc/classes/Color.xml:301
+msgid "Blanche almond color."
+msgstr ""
+
+#: doc/classes/Color.xml:304
+msgid "Blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:307
+msgid "Blue violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:310
+msgid "Brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:313
+msgid "Burly wood color."
+msgstr ""
+
+#: doc/classes/Color.xml:316
+msgid "Cadet blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:319
+msgid "Chartreuse color."
+msgstr ""
+
+#: doc/classes/Color.xml:322
+msgid "Chocolate color."
+msgstr ""
+
+#: doc/classes/Color.xml:325
+msgid "Coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:328
+msgid "Cornflower color."
+msgstr ""
+
+#: doc/classes/Color.xml:331
+msgid "Corn silk color."
+msgstr ""
+
+#: doc/classes/Color.xml:334
+msgid "Crimson color."
+msgstr ""
+
+#: doc/classes/Color.xml:337
+msgid "Cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:340
+msgid "Dark blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:343
+msgid "Dark cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:346
+msgid "Dark goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:349
+msgid "Dark gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:352
+msgid "Dark green color."
+msgstr ""
+
+#: doc/classes/Color.xml:355
+msgid "Dark khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:358
+msgid "Dark magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:361
+msgid "Dark olive green color."
+msgstr ""
+
+#: doc/classes/Color.xml:364
+msgid "Dark orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:367
+msgid "Dark orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:370
+msgid "Dark red color."
+msgstr ""
+
+#: doc/classes/Color.xml:373
+msgid "Dark salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:376
+msgid "Dark sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:379
+msgid "Dark slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:382
+msgid "Dark slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:385
+msgid "Dark turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:388
+msgid "Dark violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:391
+msgid "Deep pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:394
+msgid "Deep sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:397
+msgid "Dim gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:400
+msgid "Dodger blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:403
+msgid "Firebrick color."
+msgstr ""
+
+#: doc/classes/Color.xml:406
+msgid "Floral white color."
+msgstr ""
+
+#: doc/classes/Color.xml:409
+msgid "Forest green color."
+msgstr ""
+
+#: doc/classes/Color.xml:412
+msgid "Fuchsia color."
+msgstr ""
+
+#: doc/classes/Color.xml:415
+msgid "Gainsboro color."
+msgstr ""
+
+#: doc/classes/Color.xml:418
+msgid "Ghost white color."
+msgstr ""
+
+#: doc/classes/Color.xml:421
+msgid "Gold color."
+msgstr ""
+
+#: doc/classes/Color.xml:424
+msgid "Goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:427
+msgid "Gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:430
+msgid "Green color."
+msgstr ""
+
+#: doc/classes/Color.xml:433
+msgid "Green yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:436
+msgid "Honeydew color."
+msgstr ""
+
+#: doc/classes/Color.xml:439
+msgid "Hot pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:442
+msgid "Indian red color."
+msgstr ""
+
+#: doc/classes/Color.xml:445
+msgid "Indigo color."
+msgstr ""
+
+#: doc/classes/Color.xml:448
+msgid "Ivory color."
+msgstr ""
+
+#: doc/classes/Color.xml:451
+msgid "Khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:454
+msgid "Lavender color."
+msgstr ""
+
+#: doc/classes/Color.xml:457
+msgid "Lavender blush color."
+msgstr ""
+
+#: doc/classes/Color.xml:460
+msgid "Lawn green color."
+msgstr ""
+
+#: doc/classes/Color.xml:463
+msgid "Lemon chiffon color."
+msgstr ""
+
+#: doc/classes/Color.xml:466
+msgid "Light blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:469
+msgid "Light coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:472
+msgid "Light cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:475
+msgid "Light goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:478
+msgid "Light gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:481
+msgid "Light green color."
+msgstr ""
+
+#: doc/classes/Color.xml:484
+msgid "Light pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:487
+msgid "Light salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:490
+msgid "Light sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:493
+msgid "Light sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:496
+msgid "Light slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:499
+msgid "Light steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:502
+msgid "Light yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:505
+msgid "Lime color."
+msgstr ""
+
+#: doc/classes/Color.xml:508
+msgid "Lime green color."
+msgstr ""
+
+#: doc/classes/Color.xml:511
+msgid "Linen color."
+msgstr ""
+
+#: doc/classes/Color.xml:514
+msgid "Magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:517
+msgid "Maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:520
+msgid "Medium aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:523
+msgid "Medium blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:526
+msgid "Medium orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:529
+msgid "Medium purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:532
+msgid "Medium sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:535
+msgid "Medium slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:538
+msgid "Medium spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:541
+msgid "Medium turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:544
+msgid "Medium violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:547
+msgid "Midnight blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:550
+msgid "Mint cream color."
+msgstr ""
+
+#: doc/classes/Color.xml:553
+msgid "Misty rose color."
+msgstr ""
+
+#: doc/classes/Color.xml:556
+msgid "Moccasin color."
+msgstr ""
+
+#: doc/classes/Color.xml:559
+msgid "Navajo white color."
+msgstr ""
+
+#: doc/classes/Color.xml:562
+msgid "Navy blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:565
+msgid "Old lace color."
+msgstr ""
+
+#: doc/classes/Color.xml:568
+msgid "Olive color."
+msgstr ""
+
+#: doc/classes/Color.xml:571
+msgid "Olive drab color."
+msgstr ""
+
+#: doc/classes/Color.xml:574
+msgid "Orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:577
+msgid "Orange red color."
+msgstr ""
+
+#: doc/classes/Color.xml:580
+msgid "Orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:583
+msgid "Pale goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:586
+msgid "Pale green color."
+msgstr ""
+
+#: doc/classes/Color.xml:589
+msgid "Pale turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:592
+msgid "Pale violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:595
+msgid "Papaya whip color."
+msgstr ""
+
+#: doc/classes/Color.xml:598
+msgid "Peach puff color."
+msgstr ""
+
+#: doc/classes/Color.xml:601
+msgid "Peru color."
+msgstr ""
+
+#: doc/classes/Color.xml:604
+msgid "Pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:607
+msgid "Plum color."
+msgstr ""
+
+#: doc/classes/Color.xml:610
+msgid "Powder blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:613
+msgid "Purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:616
+msgid "Rebecca purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:619
+msgid "Red color."
+msgstr ""
+
+#: doc/classes/Color.xml:622
+msgid "Rosy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:625
+msgid "Royal blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:628
+msgid "Saddle brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:631
+msgid "Salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:634
+msgid "Sandy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:637
+msgid "Sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:640
+msgid "Seashell color."
+msgstr ""
+
+#: doc/classes/Color.xml:643
+msgid "Sienna color."
+msgstr ""
+
+#: doc/classes/Color.xml:646
+msgid "Silver color."
+msgstr ""
+
+#: doc/classes/Color.xml:649
+msgid "Sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:652
+msgid "Slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:655
+msgid "Slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:658
+msgid "Snow color."
+msgstr ""
+
+#: doc/classes/Color.xml:661
+msgid "Spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:664
+msgid "Steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:667
+msgid "Tan color."
+msgstr ""
+
+#: doc/classes/Color.xml:670
+msgid "Teal color."
+msgstr ""
+
+#: doc/classes/Color.xml:673
+msgid "Thistle color."
+msgstr ""
+
+#: doc/classes/Color.xml:676
+msgid "Tomato color."
+msgstr ""
+
+#: doc/classes/Color.xml:679
+msgid "Transparent color (white with no alpha)."
+msgstr ""
+
+#: doc/classes/Color.xml:682
+msgid "Turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:685
+msgid "Violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:688
+msgid "Web gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:691
+msgid "Web green color."
+msgstr ""
+
+#: doc/classes/Color.xml:694
+msgid "Web maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:697
+msgid "Web purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:700
+msgid "Wheat color."
+msgstr ""
+
+#: doc/classes/Color.xml:703
+msgid "White color."
+msgstr ""
+
+#: doc/classes/Color.xml:706
+msgid "White smoke color."
+msgstr ""
+
+#: doc/classes/Color.xml:709
+msgid "Yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:712
+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.\n"
+"[b]Note:[/b] This control is the color picker widget itself. You can use a "
+"[ColorPickerButton] instead if you need a button that brings up a "
+"[ColorPicker] in a pop-up."
+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:26
+msgid ""
+"Removes the given color from the list of color presets of this color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:32
+msgid "Returns the list of colors in the presets of the color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:38 doc/classes/ColorPickerButton.xml:33
+msgid "The currently selected color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:41
+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:44
+msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:47
+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:51
+msgid "If [code]true[/code], the \"add preset\" button is enabled."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:54
+msgid "If [code]true[/code], saved color presets are visible."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:57
+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:65
+msgid "Emitted when the color is changed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:71
+msgid "Emitted when a preset is added."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:77
+msgid "Emitted when a preset is removed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:85
+msgid "The icon for the \"Add Preset\" button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:88
+msgid "Custom texture for the hue selection slider on the right."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:93
+msgid "The width of the hue selection slider."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:98
+msgid "The margin around the [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:101
+msgid ""
+"The indicator used to signalize that the color value is outside the 0-1 "
+"range."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:106
+msgid "The icon for the screen color picker button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:109
+msgid "The height of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:112
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node.\n"
+"[b]Note:[/b] By default, the button may not be wide enough for the color "
+"preview swatch to be visible. Make sure to set [member Control."
+"rect_min_size] to a big enough value to give the button enough space."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:19
+msgid ""
+"Returns the [ColorPicker] that this node toggles.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:26
+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.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:36
+msgid ""
+"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
+"be visible."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:44
+msgid "Emitted when the color changes."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:49
+msgid ""
+"Emitted when the [ColorPicker] is created (the button is pressed for the "
+"first time)."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:54
+msgid "Emitted when the [ColorPicker] is closed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:62
+msgid "The background of the color preview rect on the button."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:65
+msgid "[StyleBox] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:68
+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:71
+msgid "[Font] of the [ColorPickerButton]'s text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:74
+msgid "Default text [Color] of the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:77
+msgid "Text [Color] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:80
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:86
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:89
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:92
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
+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 rectangle filled with a solid [member color]. If you need to "
+"display the border alone, consider using [ReferenceRect] instead."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:16
+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/ConcavePolygonShape.xml:4
+msgid "Concave polygon shape."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:7
+msgid ""
+"Concave polygon shape resource, which can be set into a [PhysicsBody] or "
+"area. This shape is created by feeding a list of triangles.\n"
+"[b]Note:[/b] When used for collision, [ConcavePolygonShape] is intended to "
+"work with static [PhysicsBody] nodes like [StaticBody] and will not work "
+"with [KinematicBody] or [RigidBody] with a mode other than Static."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:17
+msgid "Returns the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:24
+msgid "Sets the faces (an array of triangles)."
+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/ConeTwistJoint.xml:4
+msgid "A twist joint between two 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:7
+msgid ""
+"The joint can rotate the bodies across an axis defined by the local x-axes "
+"of the [Joint].\n"
+"The twist axis is initiated as the X axis of the [Joint].\n"
+"Once the Bodies swing, the twist axis is calculated as the middle of the x-"
+"axes of the Joint in the local space of the two Bodies. See also "
+"[Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:30 doc/classes/ConeTwistJoint.xml:62
+#: doc/classes/PhysicsServer.xml:1076
+msgid ""
+"The speed with which the swing or twist will take place.\n"
+"The higher, the faster."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:34 doc/classes/ConeTwistJoint.xml:69
+#: doc/classes/PhysicsServer.xml:1083
+msgid ""
+"Defines, how fast the swing- and twist-speed-difference on both sides gets "
+"synced."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:37 doc/classes/ConeTwistJoint.xml:66
+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/ConeTwistJoint.xml:40 doc/classes/ConeTwistJoint.xml:52
+#: doc/classes/PhysicsServer.xml:1066
+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 [ConeTwistJoint].\n"
+"If below 0.05, this behavior is locked."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:46 doc/classes/ConeTwistJoint.xml:58
+#: doc/classes/PhysicsServer.xml:1072
+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/ConeTwistJoint.xml:72 doc/classes/Generic6DOFJoint.xml:384
+#: doc/classes/HingeJoint.xml:99 doc/classes/Light.xml:124
+#: doc/classes/SliderJoint.xml:165
+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 World!\"\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 create a simple [ConfigFile] and save it "
+"on disk:\n"
+"[codeblock]\n"
+"# Create new ConfigFile object.\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# Store some values.\n"
+"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
+"config.set_value(\"Player1\", \"best_score\", 10)\n"
+"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
+"config.set_value(\"Player2\", \"best_score\", 9001)\n"
+"\n"
+"# Save it to a file (overwrite if already exists).\n"
+"config.save(\"user://scores.cfg\")\n"
+"[/codeblock]\n"
+"This example shows how the above file could be loaded:\n"
+"[codeblock]\n"
+"var score_data = {}\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# Load data from a file.\n"
+"var err = config.load(\"user://scores.cfg\")\n"
+"\n"
+"# If the file didn't load, ignore it.\n"
+"if err != OK:\n"
+" return\n"
+"\n"
+"# Iterate over all sections.\n"
+"for player in config.get_sections():\n"
+" # Fetch the data for each section.\n"
+" var player_name = config.get_value(player, \"player_name\")\n"
+" var player_score = config.get_value(player, \"best_score\")\n"
+" score_data[player_name] = player_score\n"
+"[/codeblock]\n"
+"Any operation that mutates the ConfigFile such as [method set_value], "
+"[method clear], or [method erase_section], only changes what is loaded in "
+"memory. If you want to write the change to a file, you have to save the "
+"changes with [method save], [method save_encrypted], or [method "
+"save_encrypted_pass].\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.\n"
+"[b]Note:[/b] The file extension given to a ConfigFile does not have any "
+"impact on its formatting or behavior. By convention, the [code].cfg[/code] "
+"extension is used here, but any other extension such as [code].ini[/code] is "
+"also valid. Since neither [code].cfg[/code] nor [code].ini[/code] are "
+"standardized, Godot's ConfigFile formatting may differ from files written by "
+"other programs."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:59
+msgid "Removes the entire contents of the config."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:66
+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:74
+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:81
+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:87
+msgid "Returns an array of all defined section identifiers."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:96
+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:103
+msgid "Returns [code]true[/code] if the specified section exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:111
+msgid "Returns [code]true[/code] if the specified section-key pair exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:118
+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:127
+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:136
+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:144
+msgid ""
+"Parses 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:152
+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:161
+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:170
+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:180
+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:19
+msgid ""
+"Returns the cancel button.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+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:18
+msgid ""
+"Fit a child control in a given rect. This is mainly a helper for creating "
+"custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:24
+msgid ""
+"Queue resort of the contained children. This is called automatically anyway, "
+"but can be called upon request."
+msgstr ""
+
+#: doc/classes/Container.xml:31
+msgid "Emitted when sorting the children is needed."
+msgstr ""
+
+#: doc/classes/Container.xml:37
+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 "
+"[method MainLoop._input_event]. Call [method accept_event] so no other node "
+"receives the event. Once you accept 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_*_override[/code] methods, "
+"like [method add_font_override]. You can override the theme with the "
+"inspector.\n"
+"[b]Note:[/b] Theme items are [i]not[/i] [Object] properties. This means you "
+"can't access their values using [method Object.get] and [method Object.set]. "
+"Instead, use [method get_color], [method get_constant], [method get_font], "
+"[method get_icon], [method get_stylebox], and the [code]add_*_override[/"
+"code] methods provided by this class."
+msgstr ""
+
+#: doc/classes/Control.xml:17
+msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html"
+msgstr ""
+
+#: doc/classes/Control.xml:19
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html"
+msgstr ""
+
+#: doc/classes/Control.xml:20
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/gui"
+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:33
+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:41
+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 the parent's rectangle and the parent has either "
+"[member rect_clip_content] or [method _clips_input] enabled.\n"
+"[b]Note:[/b] Event position is relative to the control origin."
+msgstr ""
+
+#: doc/classes/Control.xml:62
+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. The [code]for_text[/"
+"code] includes the contents of the [member hint_tooltip] property.\n"
+"The returned node must be of type [Control] or Control-derived. It can have "
+"child nodes of any type. It is freed when the tooltip disappears, so make "
+"sure you always provide a new instance (if you want to use a pre-existing "
+"node from your scene tree, you can duplicate it and pass the duplicated "
+"instance). When [code]null[/code] or a non-Control node is returned, the "
+"default tooltip will be used instead.\n"
+"The returned node will be added as child to a [PopupPanel], so you should "
+"only provide the contents of that panel. That [PopupPanel] can be themed "
+"using [method Theme.set_stylebox] for the type [code]\"TooltipPanel\"[/code] "
+"(see [member hint_tooltip] for an example).\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 a 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 a custom scene instance:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var tooltip = preload(\"res://SomeTooltipScene.tscn\").instance()\n"
+" tooltip.get_node(\"Label\").text = for_text\n"
+" return tooltip\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:85
+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:93
+msgid ""
+"Creates a local override for a theme [Color] with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override cannot be removed, but it can be overridden with "
+"the corresponding default value.\n"
+"See also [method get_color].\n"
+"[b]Example of overriding a label's color and resetting it later:[/b]\n"
+"[codeblock]\n"
+"# Given the child Label node \"MyLabel\", override its font color with a "
+"custom value.\n"
+"$MyLabel.add_color_override(\"font_color\", Color(1, 0.5, 0))\n"
+"# Reset the font color of the child label.\n"
+"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", \"Label"
+"\"))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:109
+msgid ""
+"Creates a local override for a theme constant with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override cannot be removed, but it can be overridden with "
+"the corresponding default value.\n"
+"See also [method get_constant]."
+msgstr ""
+
+#: doc/classes/Control.xml:118
+msgid ""
+"Creates a local override for a theme [Font] with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value.\n"
+"See also [method get_font]."
+msgstr ""
+
+#: doc/classes/Control.xml:127
+msgid ""
+"Creates a local override for a theme icon with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value.\n"
+"See also [method get_icon]."
+msgstr ""
+
+#: doc/classes/Control.xml:136
+msgid ""
+"Creates a local override for a theme shader with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value."
+msgstr ""
+
+#: doc/classes/Control.xml:144
+msgid ""
+"Creates a local override for a theme [StyleBox] with the specified "
+"[code]name[/code]. Local overrides always take precedence when fetching "
+"theme items for the control. An override can be removed by assigning it a "
+"[code]null[/code] value.\n"
+"See also [method get_stylebox].\n"
+"[b]Example of modifying a property in a StyleBox by duplicating it:[/b]\n"
+"[codeblock]\n"
+"# The snippet below assumes the child node MyButton has a StyleBoxFlat "
+"assigned.\n"
+"# Resources are shared across instances, so we need to duplicate it\n"
+"# to avoid modifying the appearance of all other buttons.\n"
+"var new_stylebox_normal = $MyButton.get_stylebox(\"normal\").duplicate()\n"
+"new_stylebox_normal.border_width_top = 3\n"
+"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
+"$MyButton.add_stylebox_override(\"normal\", new_stylebox_normal)\n"
+"# Remove the stylebox override.\n"
+"$MyButton.add_stylebox_override(\"normal\", null)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:165
+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:180
+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:193
+msgid ""
+"Finds the next (below in the tree) [Control] that can receive the focus."
+msgstr ""
+
+#: doc/classes/Control.xml:199
+msgid ""
+"Finds the previous (above in the tree) [Control] that can receive the focus."
+msgstr ""
+
+#: doc/classes/Control.xml:207
+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:215
+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:221
+msgid ""
+"Returns [member margin_left] and [member margin_top]. See also [member "
+"rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:229
+msgid ""
+"Returns a [Color] from the first matching [Theme] in the tree if that "
+"[Theme] has a color item with the specified [code]name[/code] and "
+"[code]theme_type[/code]. If [code]theme_type[/code] is omitted the class "
+"name of the current control is used as the type. If the type is a class name "
+"its parent classes are also checked, in order of inheritance.\n"
+"For the current control its local overrides are considered first (see "
+"[method add_color_override]), then its assigned [member theme]. After the "
+"current control, each parent control and its assigned [member theme] are "
+"considered; controls without a [member theme] assigned are skipped. If no "
+"matching [Theme] is found in the tree, a custom project [Theme] (see [member "
+"ProjectSettings.gui/theme/custom]) and the default [Theme] are used.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Get the font color defined for the current Control's class, if it "
+"exists.\n"
+" modulate = get_color(\"font_color\")\n"
+" # Get the font color defined for the Button class.\n"
+" modulate = get_color(\"font_color\", \"Button\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:243
+msgid ""
+"Returns combined minimum size from [member rect_min_size] and [method "
+"get_minimum_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:251
+msgid ""
+"Returns a constant from the first matching [Theme] in the tree if that "
+"[Theme] has a constant item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:259
+msgid ""
+"Returns the mouse cursor shape the control displays on mouse hover. See "
+"[enum CursorShape]."
+msgstr ""
+
+#: doc/classes/Control.xml:266
+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:279
+msgid "Returns [member margin_right] and [member margin_bottom]."
+msgstr ""
+
+#: doc/classes/Control.xml:286
+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:292
+msgid ""
+"Returns the control that has the keyboard focus or [code]null[/code] if none."
+msgstr ""
+
+#: doc/classes/Control.xml:300
+msgid ""
+"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
+"has a font item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:307
+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:315
+msgid ""
+"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
+"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:323
+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:329
+msgid "Returns the minimum size for this control. See [member rect_min_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:335
+msgid "Returns the width/height occupied in the parent control."
+msgstr ""
+
+#: doc/classes/Control.xml:341
+msgid "Returns the parent control node."
+msgstr ""
+
+#: doc/classes/Control.xml:347
+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:353
+msgid "Returns the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:361
+msgid ""
+"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
+"[Theme] has a stylebox item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:368
+msgid ""
+"Returns the default font from the first matching [Theme] in the tree if that "
+"[Theme] has a valid [member Theme.default_font] value.\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:376
+msgid ""
+"Returns the tooltip, which will appear when the cursor is resting over this "
+"control. See [member hint_tooltip]."
+msgstr ""
+
+#: doc/classes/Control.xml:382
+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:392
+msgid ""
+"Steal the focus from another control and become the focused control (see "
+"[member focus_mode])."
+msgstr ""
+
+#: doc/classes/Control.xml:400
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a color item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:408
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme [Color] "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_color_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:417
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a constant item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:425
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme constant "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_constant_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:432
+msgid ""
+"Returns [code]true[/code] if this is the current focused control. See "
+"[member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:440
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a font item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:448
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme [Font] "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_font_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:457
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:465
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme icon with "
+"the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_icon_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:473
+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:482
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme shader "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_shader_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:491
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a stylebox item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:499
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme "
+"[StyleBox] with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_stylebox_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:506
+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:512
+msgid ""
+"Give up the focus. No other control will be able to receive keyboard input."
+msgstr ""
+
+#: doc/classes/Control.xml:522
+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:534
+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:543
+msgid ""
+"Sets both anchor preset and margin preset. See [method set_anchors_preset] "
+"and [method set_margins_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:551
+msgid ""
+"Sets the anchors to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is the code equivalent to using the Layout menu in the 2D "
+"editor.\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's position will "
+"also be updated."
+msgstr ""
+
+#: doc/classes/Control.xml:559
+msgid ""
+"Sets [member margin_left] and [member margin_top] at the same time. "
+"Equivalent of changing [member rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:566
+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:594
+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. You should not free the control, and you should not keep a reference "
+"to the control beyond the duration of the drag. It will be deleted "
+"automatically after the drag has ended.\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:612
+msgid "Sets [member margin_right] and [member margin_bottom] at the same time."
+msgstr ""
+
+#: doc/classes/Control.xml:620
+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:628
+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:637
+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:646
+msgid ""
+"Sets the margins to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is the code equivalent to using the Layout menu in the 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:656
+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:664
+msgid "Sets the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:672
+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:680
+msgid ""
+"Displays a control as modal. Control must be a subwindow. Modal controls "
+"capture the input signals until closed or the area outside them is accessed. "
+"When a modal control loses focus, or the ESC key is pressed, they "
+"automatically hide. Modal controls are used extensively for popup dialogs "
+"and menus.\n"
+"If [code]exclusive[/code] is [code]true[/code], other controls will not "
+"receive input and clicking outside this control will not close it."
+msgstr ""
+
+#: doc/classes/Control.xml:688
+msgid ""
+"Moves the mouse cursor to [code]to_position[/code], relative to [member "
+"rect_position] of this [Control]."
+msgstr ""
+
+#: doc/classes/Control.xml:694
+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:697
+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:700
+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:703
+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:706
+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:709
+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:712
+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:715
+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:718
+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:721
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"Tab 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:725
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"Shift+Tab 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:729
+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:732
+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:735
+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.\n"
+"The tooltip popup will use either a default implementation, or a custom one "
+"that you can provide by overriding [method _make_custom_tooltip]. The "
+"default tooltip includes a [PopupPanel] and [Label] whose theme properties "
+"can be customized using [Theme] methods with the [code]\"TooltipPanel\"[/"
+"code] and [code]\"TooltipLabel\"[/code] respectively. For example:\n"
+"[codeblock]\n"
+"var style_box = StyleBoxFlat.new()\n"
+"style_box.set_bg_color(Color(1, 1, 0))\n"
+"style_box.set_border_width_all(2)\n"
+"# We assume here that the `theme` property has been assigned a custom Theme "
+"beforehand.\n"
+"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
+"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:747
+msgid ""
+"Enables whether input should propagate when you close the control as modal.\n"
+"If [code]false[/code], stops event handling at the viewport input event "
+"handling. The viewport first hides the modal and after marks the input as "
+"handled."
+msgstr ""
+
+#: doc/classes/Control.xml:751
+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:755
+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:759
+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:763
+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:767
+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:771
+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:774
+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:777
+msgid ""
+"The node's global position, relative to the world (usually to the top-left "
+"corner of the window)."
+msgstr ""
+
+#: doc/classes/Control.xml:780
+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:783
+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:786
+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:789
+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:792
+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/3.4/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:797
+msgid ""
+"The size of the node's bounding rectangle, in pixels. [Container] nodes "
+"update this property automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:800
+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:803
+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:806
+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:809
+msgid ""
+"Changing this property replaces the current [Theme] resource this node and "
+"all its [Control] children use."
+msgstr ""
+
+#: doc/classes/Control.xml:815
+msgid "Emitted when the node gains keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:820
+msgid "Emitted when the node loses keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:826
+msgid "Emitted when the node receives an [InputEvent]."
+msgstr ""
+
+#: doc/classes/Control.xml:831
+msgid "Emitted when the node's minimum size changes."
+msgstr ""
+
+#: doc/classes/Control.xml:836
+msgid "Emitted when a modal [Control] is closed. See [method show_modal]."
+msgstr ""
+
+#: doc/classes/Control.xml:841
+msgid ""
+"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it.\n"
+"[b]Note:[/b] [signal mouse_entered] will not be emitted if the mouse enters "
+"a child [Control] node before entering the parent's [code]Rect[/code] area, "
+"at least until the mouse is moved to reach the parent's [code]Rect[/code] "
+"area."
+msgstr ""
+
+#: doc/classes/Control.xml:847
+msgid ""
+"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it.\n"
+"[b]Note:[/b] [signal mouse_exited] will be emitted if the mouse enters a "
+"child [Control] node, even if the mouse cursor is still inside the parent's "
+"[code]Rect[/code] area."
+msgstr ""
+
+#: doc/classes/Control.xml:853
+msgid "Emitted when the control changes size."
+msgstr ""
+
+#: doc/classes/Control.xml:858
+msgid ""
+"Emitted when one of the size flags changes. See [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:864
+msgid "The node cannot grab focus. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:867
+msgid ""
+"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:870
+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:873
+msgid ""
+"Sent when the node changes size. Use [member rect_size] to get the new size."
+msgstr ""
+
+#: doc/classes/Control.xml:876
+msgid "Sent when the mouse pointer enters the node."
+msgstr ""
+
+#: doc/classes/Control.xml:879
+msgid "Sent when the mouse pointer exits the node."
+msgstr ""
+
+#: doc/classes/Control.xml:882
+msgid "Sent when the node grabs focus."
+msgstr ""
+
+#: doc/classes/Control.xml:885
+msgid "Sent when the node loses focus."
+msgstr ""
+
+#: doc/classes/Control.xml:888
+msgid ""
+"Sent when the node's [member theme] changes, right before Godot redraws the "
+"control. Happens when you call one of the [code]add_*_override[/code] "
+"methods."
+msgstr ""
+
+#: doc/classes/Control.xml:891
+msgid "Sent when an open modal dialog closes. See [method show_modal]."
+msgstr ""
+
+#: doc/classes/Control.xml:894
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has begun being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:897
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has stopped being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:900
+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:903
+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:906
+msgid ""
+"Show the system's pointing hand mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:909
+msgid "Show the system's cross mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:912
+msgid ""
+"Show the system's wait mouse cursor, often an hourglass, when the user "
+"hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:915
+msgid ""
+"Show the system's busy mouse cursor when the user hovers the node. Often an "
+"hourglass."
+msgstr ""
+
+#: doc/classes/Control.xml:918
+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:921
+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:924
+msgid ""
+"Show the system's forbidden mouse cursor when the user hovers the node. "
+"Often a crossed circle."
+msgstr ""
+
+#: doc/classes/Control.xml:927
+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:930
+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:933
+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:936
+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:939
+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:942
+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:945
+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:948
+msgid ""
+"Show the system's help mouse cursor when the user hovers the node, a "
+"question mark."
+msgstr ""
+
+#: doc/classes/Control.xml:951
+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:954
+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:957
+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:960
+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:963
+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:966
+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:969
+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:972
+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:975
+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:978
+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:981
+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:984
+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:987
+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:990
+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:993
+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:996
+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:999
+msgid "The control will be resized to its minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:1002
+msgid "The control's width will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1005
+msgid "The control's height will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1008
+msgid "The control's size will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1011
+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:1014
+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:1017
+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:1020
+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:1023
+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:1026
+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:1029
+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:1032
+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:1035
+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:1038
+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:1041
+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:1044
+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:1047
+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/ConvexPolygonShape.xml:4
+msgid "Convex polygon shape for 3D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape.xml:7
+msgid ""
+"Convex polygon shape resource, which can be added to a [PhysicsBody] or area."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape.xml:16
+msgid "The list of 3D points forming the convex polygon shape."
+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:17
+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 Geometry.convex_hull_2d] for details."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:23
+msgid ""
+"The polygon's list of vertices. Can be in either clockwise or "
+"counterclockwise order."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:4
+msgid "CPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:7
+msgid ""
+"CPU-based 3D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [Particles], which provides the same functionality with hardware "
+"acceleration, but may not run on older devices.\n"
+"[b]Note:[/b] Unlike [Particles], the visibility rect is generated on-the-fly "
+"and doesn't need to be configured by the user."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:18
+msgid ""
+"Sets this node's properties to match a given [Particles] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:25 doc/classes/CPUParticles2D.xml:26
+msgid "Returns the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:32 doc/classes/CPUParticles2D.xml:33
+msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:39 doc/classes/CPUParticles2D.xml:40
+msgid ""
+"Returns the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:46 doc/classes/CPUParticles2D.xml:47
+msgid ""
+"Returns the enabled state of the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:52 doc/classes/CPUParticles2D.xml:53
+msgid "Restarts the particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:60 doc/classes/CPUParticles2D.xml:61
+msgid "Sets the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:68 doc/classes/CPUParticles2D.xml:69
+msgid "Sets the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:76 doc/classes/CPUParticles2D.xml:77
+msgid ""
+"Sets the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:84 doc/classes/CPUParticles2D.xml:85
+msgid "Enables or disables the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:90 doc/classes/CPUParticles2D.xml:91
+#: doc/classes/Particles.xml:47 doc/classes/Particles2D.xml:33
+msgid ""
+"The number of particles emitted in one emission cycle (corresponding to the "
+"[member lifetime]).\n"
+"[b]Note:[/b] Changing [member amount] will reset the particle emission, "
+"therefore removing all particles that were already emitted before changing "
+"[member amount]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:94 doc/classes/CPUParticles2D.xml:95
+msgid "Initial rotation applied to each particle, in degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:97 doc/classes/CPUParticles2D.xml:98
+msgid "Each particle's rotation will be animated along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:100 doc/classes/CPUParticles2D.xml:101
+#: doc/classes/ParticlesMaterial.xml:84
+msgid "Rotation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:103 doc/classes/CPUParticles2D.xml:104
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:106 doc/classes/CPUParticles2D.xml:107
+msgid "Each particle's angular velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:109 doc/classes/CPUParticles2D.xml:110
+#: doc/classes/ParticlesMaterial.xml:94
+msgid "Angular velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:112 doc/classes/CPUParticles2D.xml:113
+#: doc/classes/ParticlesMaterial.xml:97
+msgid "Particle animation offset."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:115 doc/classes/CPUParticles2D.xml:116
+msgid "Each particle's animation offset will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:118 doc/classes/CPUParticles2D.xml:119
+#: doc/classes/ParticlesMaterial.xml:103
+msgid "Animation offset randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:121 doc/classes/CPUParticles2D.xml:122
+#: doc/classes/ParticlesMaterial.xml:106
+msgid "Particle animation speed."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:124 doc/classes/CPUParticles2D.xml:125
+msgid "Each particle's animation speed will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:127 doc/classes/CPUParticles2D.xml:128
+#: doc/classes/ParticlesMaterial.xml:112
+msgid "Animation speed randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:130
+msgid ""
+"Each particle's initial color. To have particle display color in a "
+"[SpatialMaterial] make sure to set [member SpatialMaterial."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:133 doc/classes/ParticlesMaterial.xml:118
+msgid ""
+"Each particle's color will vary along this [GradientTexture] over its "
+"lifetime (multiplied with [member color])."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:136 doc/classes/CPUParticles2D.xml:137
+#: doc/classes/ParticlesMaterial.xml:121
+msgid "The rate at which particles lose velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:139 doc/classes/CPUParticles2D.xml:140
+msgid "Damping will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:142 doc/classes/CPUParticles2D.xml:143
+#: doc/classes/ParticlesMaterial.xml:127
+msgid "Damping randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:145 doc/classes/CPUParticles2D.xml:146
+#: doc/classes/ParticlesMaterial.xml:130
+msgid "Unit vector specifying the particles' emission direction."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:148 doc/classes/CPUParticles2D.xml:149
+#: doc/classes/Particles.xml:51 doc/classes/Particles2D.xml:37
+msgid "Particle draw order. Uses [enum DrawOrder] values."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:151
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:154 doc/classes/CPUParticles2D.xml:152
+msgid ""
+"Sets the [Color]s to modulate particles by when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:157 doc/classes/CPUParticles2D.xml:155
+msgid ""
+"Sets the direction the particles will be emitted in when using [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:160 doc/classes/CPUParticles2D.xml:158
+msgid ""
+"Sets the initial positions to spawn particles when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:163
+msgid ""
+"The axis for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:166
+msgid ""
+"The height for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:169
+msgid ""
+"The inner radius for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:172
+msgid ""
+"The radius for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:175 doc/classes/CPUParticles2D.xml:164
+msgid ""
+"Particles will be emitted inside this region. See [enum EmissionShape] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:178
+msgid ""
+"The sphere's radius if [enum EmissionShape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:181 doc/classes/CPUParticles2D.xml:170
+#: doc/classes/Particles.xml:69 doc/classes/Particles2D.xml:40
+msgid "If [code]true[/code], particles are being emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:184 doc/classes/CPUParticles2D.xml:173
+#: doc/classes/Particles2D.xml:43
+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/CPUParticles.xml:187
+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/CPUParticles.xml:190 doc/classes/CPUParticles2D.xml:179
+#: doc/classes/ParticlesMaterial.xml:166
+msgid "Align Y axis of particle with the direction of its velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:193 doc/classes/ParticlesMaterial.xml:169
+msgid "If [code]true[/code], particles will not move on the z axis."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:196 doc/classes/ParticlesMaterial.xml:172
+msgid "If [code]true[/code], particles rotate around Y axis by [member angle]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:199
+msgid ""
+"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
+"particles to X/Z plane."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:202 doc/classes/CPUParticles2D.xml:182
+#: doc/classes/Particles.xml:78 doc/classes/Particles2D.xml:49
+msgid ""
+"If [code]true[/code], results in fractional delta calculation which has a "
+"smoother particles display effect."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:205 doc/classes/CPUParticles2D.xml:185
+#: doc/classes/ParticlesMaterial.xml:178
+msgid "Gravity applied to every particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:208 doc/classes/CPUParticles2D.xml:188
+#: doc/classes/ParticlesMaterial.xml:181
+msgid "Initial hue variation applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:211 doc/classes/CPUParticles2D.xml:191
+msgid "Each particle's hue will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:214 doc/classes/CPUParticles2D.xml:194
+#: doc/classes/ParticlesMaterial.xml:187
+msgid "Hue variation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:217 doc/classes/CPUParticles2D.xml:197
+#: doc/classes/ParticlesMaterial.xml:190
+msgid ""
+"Initial velocity magnitude for each particle. Direction comes from [member "
+"spread] and the node's orientation."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:220 doc/classes/CPUParticles2D.xml:200
+#: doc/classes/ParticlesMaterial.xml:193
+msgid "Initial velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:223 doc/classes/CPUParticles2D.xml:203
+#: doc/classes/Particles.xml:81 doc/classes/Particles2D.xml:52
+msgid "The amount of time each particle will exist (in seconds)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:226 doc/classes/CPUParticles2D.xml:206
+#: doc/classes/ParticlesMaterial.xml:196
+msgid "Particle lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:229 doc/classes/CPUParticles2D.xml:209
+#: doc/classes/ParticlesMaterial.xml:199
+msgid ""
+"Linear acceleration applied to each particle in the direction of motion."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:232 doc/classes/CPUParticles2D.xml:212
+msgid "Each particle's linear acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:235 doc/classes/CPUParticles2D.xml:215
+#: doc/classes/ParticlesMaterial.xml:205
+msgid "Linear acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:238 doc/classes/CPUParticles2D.xml:218
+#: doc/classes/Particles.xml:84 doc/classes/Particles2D.xml:55
+msgid ""
+"If [code]true[/code], particles use the parent node's coordinate space. If "
+"[code]false[/code], they use global coordinates."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:241
+msgid ""
+"The [Mesh] used for each particle. If [code]null[/code], particles will be "
+"spheres."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:244 doc/classes/CPUParticles2D.xml:225
+#: doc/classes/Particles2D.xml:62
+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/CPUParticles.xml:247
+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/CPUParticles.xml:251 doc/classes/CPUParticles2D.xml:231
+msgid "Each particle's orbital velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:254 doc/classes/CPUParticles2D.xml:234
+#: doc/classes/ParticlesMaterial.xml:215
+msgid "Orbital velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:257 doc/classes/CPUParticles2D.xml:237
+#: doc/classes/Particles2D.xml:65
+msgid "Particle system starts as if it had already run for this many seconds."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:260 doc/classes/CPUParticles2D.xml:240
+#: doc/classes/ParticlesMaterial.xml:218
+msgid ""
+"Radial acceleration applied to each particle. Makes particle accelerate away "
+"from origin."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:263 doc/classes/CPUParticles2D.xml:243
+msgid "Each particle's radial acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:266 doc/classes/CPUParticles2D.xml:246
+#: doc/classes/ParticlesMaterial.xml:224
+msgid "Radial acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:269 doc/classes/CPUParticles2D.xml:249
+#: doc/classes/Particles2D.xml:71
+msgid "Emission lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:272 doc/classes/CPUParticles2D.xml:252
+#: doc/classes/ParticlesMaterial.xml:227
+msgid "Initial scale applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:275 doc/classes/CPUParticles2D.xml:255
+msgid "Each particle's scale will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:278 doc/classes/CPUParticles2D.xml:258
+#: doc/classes/ParticlesMaterial.xml:233
+msgid "Scale randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:281 doc/classes/CPUParticles2D.xml:261
+#: doc/classes/Particles2D.xml:74
+msgid ""
+"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
+"be used to pause the particles."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:284
+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/CPUParticles.xml:287 doc/classes/CPUParticles2D.xml:267
+#: doc/classes/ParticlesMaterial.xml:239
+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/CPUParticles.xml:290 doc/classes/CPUParticles2D.xml:270
+msgid "Each particle's tangential acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:293 doc/classes/CPUParticles2D.xml:273
+#: doc/classes/ParticlesMaterial.xml:245
+msgid "Tangential acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:298 doc/classes/CPUParticles2D.xml:281
+#: doc/classes/Particles.xml:109 doc/classes/Particles2D.xml:86
+msgid "Particles are drawn in the order emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:301 doc/classes/CPUParticles2D.xml:284
+#: doc/classes/Particles.xml:112 doc/classes/Particles2D.xml:89
+msgid "Particles are drawn in order of remaining lifetime."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:304 doc/classes/Particles.xml:115
+msgid "Particles are drawn in order of depth."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:307 doc/classes/CPUParticles2D.xml:287
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:310 doc/classes/CPUParticles2D.xml:290
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:313 doc/classes/CPUParticles2D.xml:293
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:316 doc/classes/CPUParticles2D.xml:296
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:319 doc/classes/CPUParticles2D.xml:299
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:322 doc/classes/CPUParticles2D.xml:302
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:325 doc/classes/CPUParticles2D.xml:305
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set damping properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:328 doc/classes/CPUParticles2D.xml:308
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angle properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:331 doc/classes/CPUParticles2D.xml:311
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set scale properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:334 doc/classes/CPUParticles2D.xml:314
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:337 doc/classes/CPUParticles2D.xml:317
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:340 doc/classes/CPUParticles2D.xml:320
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:343 doc/classes/CPUParticles2D.xml:323
+#: doc/classes/ParticlesMaterial.xml:295
+msgid "Represents the size of the [enum Parameter] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:346 doc/classes/CPUParticles2D.xml:326
+msgid "Use with [method set_particle_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:349
+msgid "Use with [method set_particle_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:352
+msgid "Use with [method set_particle_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:355 doc/classes/CPUParticles2D.xml:335
+#: doc/classes/GeometryInstance.xml:109 doc/classes/ParticlesMaterial.xml:307
+#: doc/classes/SpatialMaterial.xml:564
+msgid "Represents the size of the [enum Flags] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:358 doc/classes/CPUParticles2D.xml:338
+#: doc/classes/ParticlesMaterial.xml:310
+msgid "All particles will be emitted from a single point."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:361 doc/classes/ParticlesMaterial.xml:313
+msgid "Particles will be emitted in the volume of a sphere."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:364 doc/classes/ParticlesMaterial.xml:316
+msgid "Particles will be emitted in the volume of a box."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:367 doc/classes/CPUParticles2D.xml:347
+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/CPUParticles.xml:370 doc/classes/CPUParticles2D.xml:350
+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/CPUParticles.xml:373 doc/classes/ParticlesMaterial.xml:325
+msgid "Particles will be emitted in a ring or cylinder."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:376 doc/classes/CPUParticles2D.xml:353
+#: doc/classes/ParticlesMaterial.xml:328
+msgid "Represents the size of the [enum EmissionShape] enum."
+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 [Particles2D], which provides the same functionality with hardware "
+"acceleration, but may not run on older devices.\n"
+"[b]Note:[/b] Unlike [Particles2D], the visibility rect is generated on-the-"
+"fly and doesn't need to be configured by the user."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:12 doc/classes/Particles2D.xml:14
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html"
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:19
+msgid ""
+"Sets this node's properties to match a given [Particles2D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:131
+msgid ""
+"Each particle's initial color. If [member texture] is defined, it will be "
+"multiplied by this color."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:134
+msgid ""
+"Each particle's color will vary along this [Gradient] (multiplied with "
+"[member color])."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:161
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_RECTANGLE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:167
+msgid ""
+"The sphere's radius if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:176 doc/classes/Particles.xml:75
+#: doc/classes/Particles2D.xml:46
+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:221 doc/classes/Particles2D.xml:58
+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:228
+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:264 doc/classes/ParticlesMaterial.xml:236
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:276 doc/classes/Particles2D.xml:77
+msgid "Particle texture. If [code]null[/code], particles will be squares."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:329 doc/classes/CPUParticles2D.xml:332
+msgid "Present for consistency with 3D particle nodes, not used in 2D."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:341
+msgid ""
+"Particles will be emitted on the surface of a sphere flattened to two "
+"dimensions."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:344
+msgid "Particles will be emitted in the area of a rectangle."
+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:47
+msgid ""
+"Compares two [PoolByteArray]s for equality without leaking timing "
+"information in order to prevent timing attacks.\n"
+"See [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
+"string-comparison-with-double-hmac-strategy]this blog post[/url] for more "
+"information."
+msgstr ""
+
+#: doc/classes/Crypto.xml:56
+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:65
+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:73
+msgid ""
+"Generates a [PoolByteArray] of cryptographically secure random bytes with "
+"given [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:80
+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:90
+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:107
+msgid ""
+"Generates an [url=https://en.wikipedia.org/wiki/HMAC]HMAC[/url] digest of "
+"[code]msg[/code] using [code]key[/code]. The [code]hash_type[/code] "
+"parameter is the hashing algorithm that is used for the inner and outer "
+"hashes.\n"
+"Currently, only [constant HashingContext.HASH_SHA256] and [constant "
+"HashingContext.HASH_SHA1] are supported."
+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:127
+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:17
+msgid ""
+"Return [code]true[/code] if this CryptoKey only has the public part, and not "
+"the private one."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:25
+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 be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:34
+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:42
+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 be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:50
+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/CSGBox.xml:4
+msgid "A CSG Box shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:7
+msgid "This node allows you to create a box for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:15
+msgid "Depth of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:18
+msgid "Height of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:21
+msgid "The material used to render the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:24
+msgid "Width of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner.xml:4
+msgid "A CSG node that allows you to combine other CSG modifiers."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner.xml:7
+msgid ""
+"For complex arrangements of shapes, it is sometimes needed to add structure "
+"to your CSG nodes. The CSGCombiner 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 CSGCombiner node, and a set of separate operations on a "
+"second set of shapes that are children of a second CSGCombiner 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/CSGCylinder.xml:4
+msgid "A CSG Cylinder shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:7
+msgid ""
+"This node allows you to create a cylinder (or cone) for use with the CSG "
+"system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.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/CSGCylinder.xml:18
+msgid "The height of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:21
+msgid "The material used to render the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:24
+msgid "The radius of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.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/CSGCylinder.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/CSGMesh.xml:4
+msgid "A CSG Mesh shape that uses a mesh resource."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh.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/CSGMesh.xml:15
+msgid "The [Material] used in drawing the CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh.xml:18
+msgid ""
+"The [Mesh] resource to use as a CSG shape.\n"
+"[b]Note:[/b] When using an [ArrayMesh], avoid meshes with vertex normals "
+"unless a flat shader is required. By default, CSGMesh will ignore the mesh's "
+"vertex normals and use a smooth shader calculated using the faces' normals. "
+"If a flat shader is required, ensure that all faces' vertex normals are "
+"parallel."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:4
+msgid "Extrudes a 2D polygon shape to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:7
+msgid ""
+"An array of 2D points is extruded to quickly and easily create a variety of "
+"3D meshes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:15
+msgid ""
+"When [member mode] is [constant MODE_DEPTH], the depth of the extrusion."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:18
+msgid ""
+"Material to use for the resulting mesh. The UV maps the top half of the "
+"material to the extruded shape (U along the the length of the extrusions and "
+"V around the outline of the [member polygon]), the bottom-left quarter to "
+"the front end face, and the bottom-right quarter to the back end face."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:21
+msgid "The [member mode] used to extrude the [member polygon]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:24
+msgid ""
+"When [member mode] is [constant MODE_PATH], by default, the top half of the "
+"[member material] is stretched along the entire length of the extruded "
+"shape. If [code]false[/code] the top half of the material is repeated every "
+"step of the extrusion."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:27
+msgid ""
+"When [member mode] is [constant MODE_PATH], the path interval or ratio of "
+"path points to extrusions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:30
+msgid ""
+"When [member mode] is [constant MODE_PATH], this will determine if the "
+"interval should be by distance ([constant PATH_INTERVAL_DISTANCE]) or "
+"subdivision fractions ([constant PATH_INTERVAL_SUBDIVIDE])."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:33
+msgid ""
+"When [member mode] is [constant MODE_PATH], if [code]true[/code] the ends of "
+"the path are joined, by adding an extrusion between the last and first "
+"points of the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:36
+msgid ""
+"When [member mode] is [constant MODE_PATH], if [code]true[/code] the "
+"[Transform] of the [CSGPolygon] is used as the starting point for the "
+"extrusions, not the [Transform] of the [member path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:39
+msgid ""
+"When [member mode] is [constant MODE_PATH], the location of the [Path] "
+"object used to extrude the [member polygon]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:42
+msgid ""
+"When [member mode] is [constant MODE_PATH], the [enum PathRotation] method "
+"used to rotate the [member polygon] as it is extruded."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:45
+msgid ""
+"When [member mode] is [constant MODE_PATH], extrusions that are less than "
+"this angle, will be merged together to reduce polygon count."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:48
+msgid ""
+"When [member mode] is [constant MODE_PATH], this is the distance along the "
+"path, in meters, the texture coordinates will tile. When set to 0, texture "
+"coordinates will match geometry exactly with no tiling."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:51
+msgid "The point array that defines the 2D polygon that is extruded."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:54
+msgid "If [code]true[/code], applies smooth shading to the extrusions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:57
+msgid ""
+"When [member mode] is [constant MODE_SPIN], the total number of degrees the "
+"[member polygon] is rotated when extruding."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:60
+msgid ""
+"When [member mode] is [constant MODE_SPIN], the number of extrusions made."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:65
+msgid "The [member polygon] shape is extruded along the negative Z axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:68
+msgid ""
+"The [member polygon] shape is extruded by rotating it around the Y axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:71
+msgid ""
+"The [member polygon] shape is extruded along the [Path] specified in [member "
+"path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:74
+msgid ""
+"The [member polygon] shape is not rotated.\n"
+"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
+"ensure viable shapes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:78
+msgid ""
+"The [member polygon] shape is rotated along the path, but it is not rotated "
+"around the path axis.\n"
+"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
+"ensure viable shapes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:82
+msgid ""
+"The [member polygon] shape follows the path and its rotations around the "
+"path axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:85
+msgid ""
+"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
+"will determine the distance, in meters, each interval of the path will "
+"extrude."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:88
+msgid ""
+"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
+"will subdivide the polygons along the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive.xml:4
+msgid "Base class for CSG primitives."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive.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/CSGPrimitive.xml:15
+msgid "Invert the faces of the mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:4
+msgid "The CSG base class."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.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/CSGShape.xml:16
+#: modules/csg/doc_classes/CSGShape.xml:23 doc/classes/RayCast2D.xml:60
+#: doc/classes/SoftBody.xml:30 doc/classes/SoftBody.xml:37
+msgid "Returns an individual bit on the collision mask."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:29
+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/CSGShape.xml:35
+msgid ""
+"Returns [code]true[/code] if this is a root shape and is thus the object "
+"that is rendered."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:43 doc/classes/SoftBody.xml:66
+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/CSGShape.xml:51 doc/classes/SoftBody.xml:74
+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/CSGShape.xml:57
+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/CSGShape.xml:60
+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. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:65
+msgid ""
+"The physics layers this CSG shape scans for collisions. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:68
+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/CSGShape.xml:71
+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/CSGShape.xml:74
+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/CSGShape.xml:79
+msgid ""
+"Geometry of both primitives is merged, intersecting geometry is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:82
+msgid "Only intersecting geometry remains, the rest is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:85
+msgid ""
+"The second shape is subtracted from the first, leaving a dent with its shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:4
+msgid "A CSG Sphere shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:7
+msgid "This node allows you to create a sphere for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:15
+msgid "The material used to render the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:18
+msgid "Number of vertical slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:21
+msgid "Radius of the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:24
+msgid "Number of horizontal slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.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/CSGTorus.xml:4
+msgid "A CSG Torus shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:7
+msgid "This node allows you to create a torus for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:15
+msgid "The inner radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:18
+msgid "The material used to render the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:21
+msgid "The outer radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:24
+msgid "The number of edges each ring of the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:27
+msgid "The number of slices the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.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/3.4/getting_started/scripting/c_sharp/index."
+"html"
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:18
+#: modules/gdnative/doc_classes/PluginScript.xml:13
+msgid "Returns a new instance of the script."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:4
+msgid "A CubeMap is a 6-sided 3D texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:7
+msgid ""
+"A 6-sided 3D texture typically used for faking reflections. It can be used "
+"to make an object look as if it's reflecting its surroundings. This usually "
+"delivers much better performance than other reflection methods."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:15
+msgid "Returns the [CubeMap]'s height."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:22
+msgid ""
+"Returns an [Image] for a side of the [CubeMap] using one of the [enum Side] "
+"constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:28
+msgid "Returns the [CubeMap]'s width."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:36
+msgid ""
+"Sets an [Image] for a side of the [CubeMap] using one of the [enum Side] "
+"constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:42
+msgid ""
+"The render flags for the [CubeMap]. See the [enum Flags] constants for "
+"details."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:45
+msgid ""
+"The lossy storage quality of the [CubeMap] if the storage mode is set to "
+"[constant STORAGE_COMPRESS_LOSSY]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:48
+msgid "The [CubeMap]'s storage mode. See [enum Storage] constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:53
+msgid "Store the [CubeMap] without any compression."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:56
+msgid "Store the [CubeMap] with strong compression that reduces image quality."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:59
+msgid ""
+"Store the [CubeMap] with moderate compression that doesn't reduce image "
+"quality."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:62
+msgid "Identifier for the left face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:65
+msgid "Identifier for the right face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:68
+msgid "Identifier for the bottom face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:71
+msgid "Identifier for the top face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:74
+msgid "Identifier for the front face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:77
+msgid "Identifier for the back face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:80
+msgid "Generate mipmaps, to enable smooth zooming out of the texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:83
+msgid "Repeat (instead of clamp to edge)."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:86
+msgid "Turn on magnifying filter, to enable smooth zooming in of the texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:89
+msgid "Default flags. Generate mipmaps, repeat, and filter are enabled."
+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].\n"
+"[b]Note:[/b] When using a large textured [CubeMesh] (e.g. as a floor), you "
+"may stumble upon UV jittering issues depending on the camera angle. To solve "
+"this, increase [member subdivide_depth], [member subdivide_height] and "
+"[member subdivide_width] until you no longer notice UV jittering."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:17
+msgid "Size of the cuboid mesh."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:20
+msgid "Number of extra edge loops inserted along the Z axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:23
+msgid "Number of extra edge loops inserted along the Y axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:26
+msgid "Number of extra edge loops inserted along the X axis."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:4
+msgid "Parent of all nodes that can be culled by the Portal system."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:7
+msgid ""
+"Provides common functionality to nodes that can be culled by the [Portal] "
+"system.\n"
+"[code]Static[/code] and [code]Dynamic[/code] objects are the most "
+"efficiently managed objects in the system, but there are some caveats. They "
+"are expected to be present initially when [Room]s are converted using the "
+"[RoomManager] [code]rooms_convert[/code] function, and their lifetime should "
+"be the same as the game level (i.e. present until you call "
+"[code]rooms_clear[/code] on the [RoomManager]. Although you shouldn't "
+"create / delete these objects during gameplay, you can manage their "
+"visibility with the standard [code]hide[/code] and [code]show[/code] "
+"commands.\n"
+"[code]Roaming[/code] objects on the other hand, require extra processing to "
+"keep track of which [Room] they are within. This enables them to be culled "
+"effectively, wherever they are.\n"
+"[code]Global[/code] objects are not culled by the portal system, and use "
+"view frustum culling only.\n"
+"Objects that are not [code]Static[/code] or [code]Dynamic[/code] can be "
+"freely created and deleted during the lifetime of the game level."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:19
+msgid ""
+"When set to [code]0[/code], [CullInstance]s will be autoplaced in the [Room] "
+"with the highest priority.\n"
+"When set to a value other than [code]0[/code], the system will attempt to "
+"autoplace in a [Room] with the [code]autoplace_priority[/code], if it is "
+"present.\n"
+"This can be used to control autoplacement of building exteriors in an outer "
+"[RoomGroup]."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:24
+msgid ""
+"When a manual bound has not been explicitly specified for a [Room], the "
+"convex hull bound will be estimated from the geometry of the objects within "
+"the room. This setting determines whether the geometry of an object is "
+"included in this estimate of the room bound.\n"
+"[b]Note:[/b] This setting is only relevant when the object is set to "
+"[code]PORTAL_MODE_STATIC[/code] or [code]PORTAL_MODE_DYNAMIC[/code], and for "
+"[Portal]s."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:28
+msgid ""
+"When using [Room]s and [Portal]s, this specifies how the [CullInstance] is "
+"processed in the system."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:33
+msgid ""
+"Use for instances within [Room]s that will [b]not move[/b] - e.g. walls, "
+"floors.\n"
+"[b]Note:[/b] If you attempt to delete a [code]PORTAL_MODE_STATIC[/code] "
+"instance while the room graph is loaded (converted), it will unload the room "
+"graph and deactivate portal culling. This is because the [b]room graph[/b] "
+"data has been invalidated. You will need to reconvert the rooms using the "
+"[RoomManager] to activate the system again."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:37
+msgid ""
+"Use for instances within rooms that will move but [b]not change room[/b] - e."
+"g. moving platforms.\n"
+"[b]Note:[/b] If you attempt to delete a [code]PORTAL_MODE_DYNAMIC[/code] "
+"instance while the room graph is loaded (converted), it will unload the room "
+"graph and deactivate portal culling. This is because the [b]room graph[/b] "
+"data has been invalidated. You will need to reconvert the rooms using the "
+"[RoomManager] to activate the system again."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:41
+msgid "Use for instances that will move [b]between[/b] [Room]s - e.g. players."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:44
+msgid ""
+"Use for instances that will be frustum culled only - e.g. first person "
+"weapon, debug."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:47
+msgid ""
+"Use for instances that will not be shown at all - e.g. [b]manual room "
+"bounds[/b] (specified by prefix [i]'Bound_'[/i])."
+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:20
+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:26
+msgid "Recomputes the baked cache of points for the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:32
+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:38 doc/classes/Curve2D.xml:27
+#: doc/classes/Curve3D.xml:27
+msgid "Removes all points from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:44 doc/classes/Curve2D.xml:61
+#: doc/classes/Curve3D.xml:74
+msgid "Returns the number of points describing the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:51
+msgid ""
+"Returns the left [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:58
+msgid ""
+"Returns the left tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:65
+msgid "Returns the curve coordinates for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:72
+msgid ""
+"Returns the right [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:79
+msgid ""
+"Returns the right tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:86
+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:93
+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:100
+msgid "Removes the point at [code]index[/code] from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:108
+msgid ""
+"Sets the left [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:116
+msgid ""
+"Sets the left tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:124
+msgid "Sets the offset from [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:132
+msgid ""
+"Sets the right [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:140
+msgid ""
+"Sets the right tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:148
+msgid ""
+"Assigns the vertical position [code]y[/code] to the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:154
+msgid "The number of points to include in the baked (i.e. cached) curve data."
+msgstr ""
+
+#: doc/classes/Curve.xml:157
+msgid "The maximum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:160
+msgid "The minimum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:166
+msgid "Emitted when [member max_value] or [member min_value] is changed."
+msgstr ""
+
+#: doc/classes/Curve.xml:172
+msgid "The tangent on this side of the point is user-defined."
+msgstr ""
+
+#: doc/classes/Curve.xml:175
+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:178
+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:20 doc/classes/Curve3D.xml:20
+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:33 doc/classes/Curve3D.xml:33
+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:39
+msgid "Returns the cache of points as a [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:46
+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:54 doc/classes/Curve3D.xml:67
+msgid ""
+"Returns the closest baked 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:68
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. The returned position is relative 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:75
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. The returned position is relative 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:82
+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:90
+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:99
+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:108 doc/classes/Curve3D.xml:138
+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:115 doc/classes/Curve3D.xml:145
+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:123 doc/classes/Curve3D.xml:153
+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. The position is relative to the vertex."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:131 doc/classes/Curve3D.xml:161
+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. The position is relative to the vertex."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:139 doc/classes/Curve3D.xml:169
+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:147 doc/classes/Curve3D.xml:186
+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:156
+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 [Path], 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:39
+msgid "Returns the cache of points as a [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:45
+msgid "Returns the cache of tilts as a [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:51
+msgid ""
+"Returns the cache of up vectors as a [PoolVector3Array].\n"
+"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:59
+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:81
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. The returned position is relative 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:88
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. The returned position is relative 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:95
+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:102
+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:110
+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:119
+msgid ""
+"Returns a point 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 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/Curve3D.xml:129
+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:177
+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 [PathFollow], this "
+"tilt is an offset over the natural tilt the [PathFollow] calculates."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:195
+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:198
+msgid ""
+"If [code]true[/code], the curve will bake up vectors used for orientation. "
+"This is used when [member PathFollow.rotation_mode] is set to [constant "
+"PathFollow.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 [code]0.0[/code]."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:15
+msgid ""
+"Bottom radius of the cylinder. If set to [code]0.0[/code], the bottom faces "
+"will not be generated, resulting in a conic shape."
+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. Higher values result in a more "
+"detailed cylinder/cone at the cost of performance."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:24
+msgid ""
+"Number of edge rings along the height of the cylinder. Changing [member "
+"rings] does not have any visual impact unless a shader or procedural mesh "
+"tool is used to alter the vertex data. Higher values result in more "
+"subdivisions, which can be used to create smoother-looking effects with "
+"shaders or procedural mesh tools (at the cost of performance). When not "
+"altering the vertex data using a shader or procedural mesh tool, [member "
+"rings] should be kept to its default value."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:27
+msgid ""
+"Top radius of the cylinder. If set to [code]0.0[/code], the top faces will "
+"not be generated, resulting in a conic shape."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:4 doc/classes/CylinderShape.xml:7
+msgid "Cylinder shape for collisions."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:18
+msgid "The cylinder's height."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:21
+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/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 a 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_dict = {} # Creates an empty dictionary.\n"
+"\n"
+"var dict_variable_key = \"Another key name\"\n"
+"var dict_variable_value = \"value2\"\n"
+"var another_dict = {\n"
+" \"Some key name\": \"value1\",\n"
+" dict_variable_key: dict_variable_value,\n"
+"}\n"
+"\n"
+"var points_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"\n"
+"# Alternative Lua-style syntax.\n"
+"# Doesn't require quotes around keys, but only string constants can be used "
+"as key names.\n"
+"# Additionally, key names must start with a letter or an underscore.\n"
+"# Here, `some_key` is a string literal, not a variable!\n"
+"another_dict = {\n"
+" some_key = 42,\n"
+"}\n"
+"[/codeblock]\n"
+"You can access a dictionary's values by referencing the appropriate key. In "
+"the above example, [code]points_dict[\"White\"][/code] will return [code]50[/"
+"code]. You can also write [code]points_dict.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_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"func _ready():\n"
+" # We can't use dot syntax here as `my_color` is a variable.\n"
+" var points = points_dict[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_dict = {\"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_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"points_dict[\"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_dict.sub_dict."
+"sub_key` or `my_dict[\"sub_dict\"][\"sub_key\"]`.\n"
+"# Indexing styles can be mixed and matched depending on your needs.\n"
+"var my_dict = {\n"
+" \"String Key\": 5,\n"
+" 4: [1, 2, 3],\n"
+" 7: \"Hello\",\n"
+" \"sub_dict\": {\"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"
+"var dict1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"var dict2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dict1 == dict2) # 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"
+"var dict1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"var dict2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dict1.hash() == dict2.hash()) # Will print true.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] When declaring a dictionary with [code]const[/code], the "
+"dictionary itself can still be mutated by defining the values of individual "
+"keys. Using [code]const[/code] will only prevent assigning the constant with "
+"another value after it was initialized."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:87
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:94
+msgid "Clear the dictionary, removing all key/value pairs."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:101
+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:107
+msgid "Returns [code]true[/code] if the dictionary is empty."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:114
+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.\n"
+"[b]Note:[/b] Don't erase elements while iterating over the dictionary. You "
+"can iterate over the [method keys] array instead."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:123
+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:130
+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 the keys in the given "
+"array."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:150
+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:163
+msgid "Returns the list of keys in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:169
+msgid "Returns the number of keys in the dictionary."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:175
+msgid "Returns the list of values in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:4
+msgid "Directional light from a distance, as from the Sun."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:7
+msgid ""
+"A directional light is a type of [Light] 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 DirectionalLight transform "
+"(origin) is ignored. Only the basis is used to determine light direction."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:10 doc/classes/Light.xml:10
+#: doc/classes/OmniLight.xml:11 doc/classes/SpotLight.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html"
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:16
+msgid ""
+"Amount of extra bias for shadow splits that are far away. If self-shadowing "
+"occurs only on the splits far away, increasing this value can fix them."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:19
+msgid ""
+"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
+"transitions between splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:22
+msgid ""
+"Optimizes shadow rendering for detail versus movement. See [enum "
+"ShadowDepthRange]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:25
+msgid "The maximum distance for shadow splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:28
+msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:31
+msgid ""
+"Can be used to fix special cases of self shadowing when objects are "
+"perpendicular to the light."
+msgstr ""
+
+#: doc/classes/DirectionalLight.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/DirectionalLight.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/DirectionalLight.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/DirectionalLight.xml:46
+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/DirectionalLight.xml:49
+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/DirectionalLight.xml:52
+msgid ""
+"Splits the view frustum in 4 areas, each with its own shadow map. This is "
+"the slowest directional shadow mode."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:55
+msgid ""
+"Keeps the shadow stable when the camera moves, at the cost of lower "
+"effective shadow resolution."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:58
+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], 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"
+"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
+"files), and their source asset will not be included in the exported game, as "
+"only the imported version is used. Use [ResourceLoader] to access imported "
+"resources.\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:28 doc/classes/File.xml:28
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem."
+"html"
+msgstr ""
+
+#: doc/classes/Directory.xml:35
+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:44
+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:51
+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:58
+msgid ""
+"Returns whether the target directory exists. The argument can be relative to "
+"the current directory, or an absolute path."
+msgstr ""
+
+#: doc/classes/Directory.xml:65
+msgid ""
+"Returns whether the target file exists. The argument can be relative to the "
+"current directory, or an absolute path."
+msgstr ""
+
+#: doc/classes/Directory.xml:71
+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:77
+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:84
+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 exist, the method returns an empty String."
+msgstr ""
+
+#: doc/classes/Directory.xml:90
+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:96
+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:103
+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:111
+msgid ""
+"Initializes the stream used to list all files and directories using the "
+"[method get_next] function, closing the currently 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:119
+msgid ""
+"Closes the current stream opened with [method list_dir_begin] (whether it "
+"has been fully processed with [method get_next] does not matter)."
+msgstr ""
+
+#: doc/classes/Directory.xml:126
+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:134
+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:142
+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:150
+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:159
+msgid ""
+"Renames (move) the [code]from[/code] file or directory to the [code]to[/"
+"code] destination. Both arguments should be paths to files or directories, "
+"either relative or absolute. If the destination file or directory 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/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:70
+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:77
+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 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 fallback "
+"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. Supported formats are TrueType ([code].ttf[/code]), "
+"OpenType ([code].otf[/code]) and Web Open Font Format 1 ([code].woff[/"
+"code]). Web Open Font Format 2 ([code].woff2[/code]) is [i]not[/i] "
+"supported.\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 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 > Generate Fonts[/b], click [b]Options[/b], choose "
+"the desired features then generate the font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:25
+msgid "Adds a fallback font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:31
+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:39
+msgid "Returns the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:45
+msgid "Returns the number of fallback fonts."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:52
+msgid ""
+"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:59
+msgid "Removes the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:67
+msgid "Sets the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:75
+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:81
+msgid "Extra spacing at the bottom in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:84
+msgid ""
+"Extra spacing for each character in pixels.\n"
+"This can be a negative number to make the distance between characters "
+"smaller."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:88
+msgid ""
+"Extra spacing for the space character (in addition to [member "
+"extra_spacing_char]) in pixels.\n"
+"This can be a negative number to make the distance between words smaller."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:92
+msgid "Extra spacing at the top in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:95
+msgid "The font data."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:98
+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:102
+msgid "The font outline's thickness in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:105
+msgid "The font size in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:108
+msgid ""
+"If [code]true[/code], filtering is used. This makes the font blurry instead "
+"of pixelated when scaling it if font oversampling is disabled or "
+"ineffective. It's recommended to enable this when using the font in a "
+"control whose size changes over time, unless a pixel art aesthetic is "
+"desired."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:111
+msgid ""
+"If [code]true[/code], mipmapping is used. This improves the font's "
+"appearance when downscaling it if font oversampling is disabled or "
+"ineffective."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:116
+msgid "Spacing at the top."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:119
+msgid "Spacing at the bottom."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:122
+msgid "Spacing for each character."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:125
+msgid "Spacing for the space character."
+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:16
+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:19
+msgid "The path to the vector font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:22
+msgid "The font hinting mode used by FreeType. See [enum Hinting] for options."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:27
+msgid "Disables font hinting (smoother but less crisp)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:30
+msgid "Use the light font hinting mode."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:33
+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 the project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:7
+msgid ""
+"Editor export plugins are automatically activated whenever the user exports "
+"the project. Their most common use is to determine what files are being "
+"included in the exported project. For each plugin, [method _export_begin] is "
+"called at the beginning of the export process and then [method _export_file] "
+"is called for each exported file."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:19
+msgid ""
+"Virtual method to be overridden by the user. It is called when the export "
+"starts and provides all information about the export. [code]features[/code] "
+"is the list of features for the export, [code]is_debug[/code] is [code]true[/"
+"code] for debug builds, [code]path[/code] is the target path for the "
+"exported project. [code]flags[/code] is only used when running a runnable "
+"profile, e.g. when using native run on Android."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:25
+msgid ""
+"Virtual method to be overridden by the user. Called when the export is "
+"finished."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:34
+msgid ""
+"Virtual method to be overridden by the user. Called for each exported file, "
+"providing arguments that can be used to identify the file. [code]path[/code] "
+"is the path of the file, [code]type[/code] is the [Resource] represented by "
+"the file (e.g. [PackedScene]) and [code]features[/code] is the list of "
+"features for the export.\n"
+"Calling [method skip] inside this callback will make the file not included "
+"in the export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:44
+msgid ""
+"Adds a custom file to be exported. [code]path[/code] is the virtual path "
+"that can be used to load the file, [code]file[/code] is the binary data of "
+"the file. If [code]remap[/code] is [code]true[/code], file will not be "
+"exported, but instead remapped to the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:51
+msgid ""
+"Adds an iOS bundle file from the given [code]path[/code] to the exported "
+"project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:58
+msgid ""
+"Adds a C++ code to the iOS export. The final code is created from the code "
+"appended by each active export plugin."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:65
+msgid ""
+"Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's "
+"Xcode project and embeds it into resulting binary.\n"
+"[b]Note:[/b] For static libraries (*.a) works in same way as [method "
+"add_ios_framework].\n"
+"This method should not be used for System libraries as they are already "
+"present on the device."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:74
+msgid ""
+"Adds a static library (*.a) or dynamic library (*.dylib, *.framework) to "
+"Linking Phase in iOS's Xcode project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:81
+msgid "Adds linker flags for the iOS export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:88
+msgid "Adds content for iOS Property List files."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:95
+msgid "Adds a static lib from the given [code]path[/code] to the iOS project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:103
+msgid ""
+"Adds a shared object with the given [code]tags[/code] and destination "
+"[code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:109
+msgid ""
+"To be called inside [method _export_file]. Skips the current file, so it's "
+"not included in the export."
+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:17
+msgid "Returns the specified [code]feature[/code]'s human-readable name."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:24
+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:31
+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:39
+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:46
+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:53
+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:60
+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:68
+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:76
+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:85
+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:93
+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:99
+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:102
+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:105
+msgid ""
+"The AssetLib tab. If this feature is disabled, the AssetLib tab won't "
+"display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:108
+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:111
+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:114
+msgid ""
+"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
+"be visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:117
+msgid ""
+"The Import dock. If this feature is disabled, the Import dock won't be "
+"visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:120 doc/classes/SpatialMaterial.xml:471
+msgid "Represents the size of the [enum Feature] enum."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:4
+msgid "A modified version of [FileDialog] used by the editor."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:15
+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:22
+msgid "Removes all filters except for \"All Files (*)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:28
+msgid ""
+"Returns the [code]VBoxContainer[/code] used to display the file system.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:35
+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:41
+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:44
+msgid "The currently occupied directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:47
+msgid "The currently selected file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:50
+msgid "The file system path in the address bar."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:54
+msgid ""
+"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
+"overwriting files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:57
+msgid ""
+"The view format in which the [EditorFileDialog] displays resources to the "
+"user."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:60
+msgid ""
+"The purpose of the [EditorFileDialog], which defines the allowed behaviors."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:64
+msgid ""
+"If [code]true[/code], hidden files and directories will be visible in the "
+"[EditorFileDialog]."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:72
+msgid "Emitted when a directory is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:78
+msgid "Emitted when a file is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:84
+msgid "Emitted when multiple files are selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:90
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"open the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:93
+msgid ""
+"The [EditorFileDialog] can select multiple files. Accepting the window will "
+"open all files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:96
+msgid ""
+"The [EditorFileDialog] can select only one directory. Accepting the window "
+"will open the directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:99
+msgid ""
+"The [EditorFileDialog] can select a file or directory. Accepting the window "
+"will open it."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:102
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"save the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:105
+msgid ""
+"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:108
+msgid ""
+"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:111
+msgid "The [EditorFileDialog] can view the entire local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:114
+msgid "The [EditorFileDialog] displays resources as thumbnails."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:117
+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:17
+msgid ""
+"Returns the resource type of the file, given the full path. This returns a "
+"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
+"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:23
+msgid "Gets the root directory object."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:30
+msgid "Returns a view into the filesystem at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:36
+msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:42
+msgid "Returns [code]true[/code] of the filesystem is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:48
+msgid "Scan the filesystem for changes."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:54
+msgid "Check if the source of any imported resource changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:61
+msgid ""
+"Update a file information. Call this if an external program (not Godot) "
+"modified the file."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:67
+msgid "Scans the script files and updates the list of custom class names."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:74
+msgid "Emitted if the filesystem changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:80
+msgid "Emitted if a resource is reimported."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:86
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:92
+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:16
+msgid ""
+"Returns the index of the directory with name [code]name[/code] or [code]-1[/"
+"code] if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:23
+msgid ""
+"Returns the index of the file with name [code]name[/code] or [code]-1[/code] "
+"if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:30
+msgid "Returns the name of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:36
+msgid "Returns the number of files in this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:43
+msgid ""
+"Returns [code]true[/code] if the file at index [code]idx[/code] imported "
+"properly."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:50
+msgid "Returns the path to the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:57
+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:64
+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:71
+msgid ""
+"Returns the resource type of the file at index [code]idx[/code]. This "
+"returns a string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/"
+"code], [i]not[/i] a file extension such as [code]\".gd\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:77
+msgid "Returns the name of this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:83
+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:89
+msgid "Returns the path to this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:96
+msgid "Returns the subdirectory at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:102
+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 (see "
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_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\"\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"
+" return ResourceSaver.save(filename, mesh)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:51 doc/classes/ResourceImporter.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins."
+"html"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:58
+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:64
+msgid ""
+"Gets the order of this importer to be run when importing resources. "
+"Importers with [i]lower[/i] import orders will be called first, and higher "
+"values will be called later. Use this to ensure the importer runs after the "
+"dependencies are already imported. The default import order is [code]0[/"
+"code] unless overridden by a specific importer. See [enum ResourceImporter."
+"ImportOrder] for some predefined values."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:70
+msgid "Gets the unique name of the importer."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:78
+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:93
+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:100
+msgid "Gets the name of the options preset at this index."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:106
+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:112
+msgid ""
+"Gets the list of file extensions to associate with this loader (case-"
+"insensitive). e.g. [code][\"obj\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:118
+msgid ""
+"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
+"\"[/code] or [code]\"Animation\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:124
+msgid ""
+"Gets the extension used to save this resource in the [code].import[/code] "
+"directory (see [member ProjectSettings.application/config/"
+"use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:130
+msgid ""
+"Gets the name to display in the import window. You should choose this name "
+"as a continuation to \"Import as\", e.g. \"Import as Special Mesh\"."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:141
+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 [Sprite] 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:16
+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:28
+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:34
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:40
+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:46
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:53
+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:61
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:66
+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 ""
+"These plugins allow 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:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
+"inspector_plugins.html"
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:23
+msgid "Adds a custom control, which is not necessarily a property editor."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:31
+msgid ""
+"Adds a property editor for an individual property. The [code]editor[/code] "
+"control must extend [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:40
+msgid ""
+"Adds an editor that allows modifying multiple properties. The [code]editor[/"
+"code] control must extend [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:47
+msgid "Returns [code]true[/code] if this object can be handled by this plugin."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:54
+msgid "Called to allow adding controls at the beginning of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:62
+msgid "Called to allow adding controls at the beginning of the category."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:68
+msgid "Called to allow adding controls at the end of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:80
+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:17
+msgid ""
+"Edits the given [Node]. The node will be also selected if it's inside the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:24
+msgid "Edits the given [Resource]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:30
+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.\n"
+"[b]Warning:[/b] Removing and freeing this node will render the editor "
+"useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:37
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:43
+msgid "Returns the edited (current) scene's root [Node]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:49
+msgid ""
+"Returns the actual scale of the editor UI ([code]1.0[/code] being 100% "
+"scale). This can be used to adjust position and dimensions of the UI added "
+"by plugins.\n"
+"[b]Note:[/b] This value is set via the [code]interface/editor/display_scale[/"
+"code] and [code]interface/editor/custom_display_scale[/code] editor "
+"settings. Editor must be restarted for changes to be properly applied."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:56
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+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.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:70
+msgid ""
+"Returns the editor's [FileSystemDock] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:77
+msgid ""
+"Returns the editor's [EditorInspector] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:84
+msgid "Returns an [Array] with the file paths of the currently opened scenes."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+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:96
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:102
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:108
+msgid ""
+"Returns the editor's [ScriptEditor] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:115
+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:121
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:130
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
+"Inspector dock. If [code]inspector_only[/code] is [code]true[/code], plugins "
+"will not attempt to edit [code]object[/code]."
+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:143
+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:151
+msgid ""
+"Returns mesh previews rendered at the given size as an [Array] of [Texture]s."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:158
+msgid "Opens the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:164
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:171
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:177
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:184
+msgid "Reloads the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:190
+msgid ""
+"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
+"code] (see [@GlobalScope] constants)."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:198
+msgid "Saves the scene as a file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:205
+msgid ""
+"Selects the file, with the path provided by [code]file[/code], in the "
+"FileSystem dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:212
+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:220
+msgid ""
+"Sets the enabled status of a plugin. The plugin name is the same as its "
+"directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:226
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:232
+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/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/3.4/tutorials/plugins/editor/index.html"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:18
+msgid ""
+"Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:26
+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:34
+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:44
+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:56
+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 "
+"(ie, \"Spatial\", \"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:66
+msgid ""
+"Registers a new [EditorExportPlugin]. Export plugins are used to perform "
+"tasks when the project is being exported.\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:74
+msgid ""
+"Registers a new [EditorImportPlugin]. Import plugins are used to import "
+"custom and unsupported assets as a custom [Resource] type.\n"
+"[b]Note:[/b] If you want to import custom 3D asset formats use [method "
+"add_scene_import_plugin] instead.\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:83
+msgid ""
+"Registers a new [EditorInspectorPlugin]. Inspector plugins are used to "
+"extend [EditorInspector] and provide custom configuration tools for your "
+"object's properties.\n"
+"[b]Note:[/b] Always use [method remove_inspector_plugin] to remove the "
+"registered [EditorInspectorPlugin] when your [EditorPlugin] is disabled to "
+"prevent leaks and an unexpected behavior.\n"
+"[codeblock]\n"
+"const MyInspectorPlugin = preload(\"res://addons/your_addon/path/to/your/"
+"script.gd\")\n"
+"var inspector_plugin = MyInspectorPlugin.new()\n"
+"\n"
+"func _enter_tree():\n"
+" add_inspector_plugin(inspector_plugin)\n"
+"\n"
+"func _exit_tree():\n"
+" remove_inspector_plugin(inspector_plugin)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:101
+msgid ""
+"Registers a new [EditorSceneImporter]. Scene importers are used to import "
+"custom 3D asset formats as scenes."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:108
+msgid ""
+"Registers a new [EditorSpatialGizmoPlugin]. Gizmo plugins are used to add "
+"custom gizmos to the 3D preview viewport for a [Spatial].\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:119
+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:127
+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:133
+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:140
+msgid ""
+"This method is called when the editor is about to run the project. The "
+"plugin can then perform required operations before the project runs.\n"
+"This method must return a boolean. If this method returns [code]false[/"
+"code], the project will not run. The run is aborted immediately, so this "
+"also prevents all other plugins' [method build] methods from running."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:147
+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:153
+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:160
+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:166
+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:173
+msgid ""
+"Called by the engine when the 2D editor's viewport is updated. Use the "
+"[code]overlay[/code] [Control] for drawing. You can update the viewport "
+"manually by calling [method update_overlays].\n"
+"[codeblock]\n"
+"func forward_canvas_draw_over_viewport(overlay):\n"
+" # Draw a circle at cursor position.\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64, Color."
+"white)\n"
+"\n"
+"func forward_canvas_gui_input(event):\n"
+" if event is InputEventMouseMotion:\n"
+" # Redraw viewport when cursor is moved.\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:192
+msgid ""
+"This method is the same as [method forward_canvas_draw_over_viewport], "
+"except it draws on top of everything. Useful when you need an extra layer "
+"that shows over anything else.\n"
+"You need to enable calling of this method by using [method "
+"set_force_draw_over_forwarding_enabled]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:200
+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:222
+msgid ""
+"Called by the engine when the 3D editor's viewport is updated. Use the "
+"[code]overlay[/code] [Control] for drawing. You can update the viewport "
+"manually by calling [method update_overlays].\n"
+"[codeblock]\n"
+"func forward_spatial_draw_over_viewport(overlay):\n"
+" # Draw a circle at cursor position.\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64)\n"
+"\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" if event is InputEventMouseMotion:\n"
+" # Redraw viewport when cursor is moved.\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:241
+msgid ""
+"This method is the same as [method forward_spatial_draw_over_viewport], "
+"except it draws on top of everything. Useful when you need an extra layer "
+"that shows over anything else.\n"
+"You need to enable calling of this method by using [method "
+"set_force_draw_over_forwarding_enabled]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:250
+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:271
+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:277
+msgid ""
+"Returns the [EditorInterface] object that gives you control over Godot "
+"editor's window and its functionalities."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:283
+msgid ""
+"Override this method in your plugin to return a [Texture] 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:305
+msgid ""
+"Gets the Editor's dialogue used for making scripts.\n"
+"[b]Note:[/b] Users can configure it before use.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:313
+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:319
+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:326
+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:333
+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:339
+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:345
+msgid "Minimizes the bottom panel."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:352
+msgid "Makes a specific item in the bottom panel visible."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:359
+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:366
+msgid "Queue save the project's editor layout."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:373
+msgid "Removes an Autoload [code]name[/code] from the list."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:380
+msgid ""
+"Removes the control from the bottom panel. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:388
+msgid ""
+"Removes the control from the specified container. You have to manually "
+"[method Node.queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:395
+msgid ""
+"Removes the control from the dock. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:402
+msgid "Removes a custom type added by [method add_custom_type]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:409
+msgid "Removes an export plugin registered by [method add_export_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:416
+msgid "Removes an import plugin registered by [method add_import_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:423
+msgid "Removes an inspector plugin registered by [method add_import_plugin]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:430
+msgid ""
+"Removes a scene importer registered by [method add_scene_import_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:437
+msgid "Removes a gizmo plugin registered by [method add_spatial_gizmo_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:444
+msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:450
+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:456
+msgid ""
+"Enables calling of [method forward_canvas_force_draw_over_viewport] for the "
+"2D editor and [method forward_spatial_force_draw_over_viewport] for the 3D "
+"editor when their viewports are updated. You need to call this method only "
+"once and it will work permanently for this plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:462
+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:469
+msgid "Restore the state saved by [method get_state]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:476
+msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:482
+msgid ""
+"Updates the overlays of the 2D and 3D editor viewport. Causes methods "
+"[method forward_canvas_draw_over_viewport], [method "
+"forward_canvas_force_draw_over_viewport], [method "
+"forward_spatial_draw_over_viewport] and [method "
+"forward_spatial_force_draw_over_viewport] to be called."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:490
+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:501
+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:507
+msgid ""
+"Emitted when user closes a scene. The argument is file path to a closed "
+"scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:553
+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:16
+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:26
+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:32
+msgid "Gets the edited object."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:38
+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:44
+msgid "Must be implemented to provide a custom tooltip to the property editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:51
+msgid ""
+"Puts the [code]editor[/code] control below the property label. The control "
+"must be previously added using [method Node.add_child]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:57
+msgid "When this virtual function is called, you must update your editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:63
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:66
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:69
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is drawn "
+"with the editor theme's warning color. This is used for editable children's "
+"properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:72
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:75
+msgid "Set this property to change the label (if you want to show one)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:78
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:86
+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:93
+msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:100
+msgid ""
+"Do not emit this manually, use the [method emit_changed] method instead."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:107
+msgid "Emitted when a property was checked. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:113
+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:120
+msgid "Emit it if you want to key a property with a single value."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:127
+msgid ""
+"If you want a sub-resource to be edited, emit this signal with the resource."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:134
+msgid "Emitted when selected. Used internally."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:4
+msgid "Godot editor's control for selecting [Resource] type properties."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:7
+msgid ""
+"This [Control] node is used in the editor's Inspector dock to allow editing "
+"of [Resource] type properties. It provides options for creating, loading, "
+"saving and converting resources. Can be used with [EditorInspectorPlugin] to "
+"recreate the same behavior.\n"
+"[b]Note:[/b] This [Control] does not include any editor for the resource, as "
+"editing is controlled by the Inspector dock itself or sub-Inspectors."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:32
+msgid ""
+"Returns a list of all allowed types and subtypes corresponding to the "
+"[member base_type]. If the [member base_type] is empty, an empty list is "
+"returned."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:46
+msgid ""
+"This virtual method can be implemented to handle context menu items not "
+"handled by default. See [method set_create_options]."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:53
+msgid ""
+"This virtual method is called when updating the context menu of "
+"[EditorResourcePicker]. Implement this method to override the \"New ...\" "
+"items with your own options. [code]menu_node[/code] is a reference to the "
+"[PopupMenu] node.\n"
+"[b]Note:[/b] Implement [method handle_menu_selected] to handle these custom "
+"items."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:61
+msgid ""
+"Sets the toggle mode state for the main button. Works only if [member "
+"toggle_mode] is set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:67
+msgid ""
+"The base type of allowed resource types. Can be a comma-separated list of "
+"several options."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:70
+msgid "If [code]true[/code], the value can be selected and edited."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:73
+msgid "The edited resource value."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:76
+msgid ""
+"If [code]true[/code], the main button with the resource preview works in the "
+"toggle mode. Use [method set_toggle_pressed] to manually set the state."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:83
+msgid "Emitted when the value of the edited resource was changed."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+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:17
+msgid "Create an own, custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:24
+msgid ""
+"Check if the resource changed, if so, it will be invalidated and the "
+"corresponding signal emitted."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:34
+msgid ""
+"Queue the [code]resource[/code] being edited for preview. Once the preview "
+"is ready, the [code]receiver[/code]'s [code]receiver_func[/code] will be "
+"called. The [code]receiver_func[/code] must take the following four "
+"arguments: [String] path, [Texture] preview, [Texture] thumbnail_preview, "
+"[Variant] userdata. [code]userdata[/code] can be anything, and will be "
+"returned when [code]receiver_func[/code] is called.\n"
+"[b]Note:[/b] If it was not possible to create the preview the "
+"[code]receiver_func[/code] will still be called, but the preview will be "
+"null."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:45
+msgid ""
+"Queue a resource file located at [code]path[/code] for preview. Once the "
+"preview is ready, the [code]receiver[/code]'s [code]receiver_func[/code] "
+"will be called. The [code]receiver_func[/code] must take the following four "
+"arguments: [String] path, [Texture] preview, [Texture] thumbnail_preview, "
+"[Variant] userdata. [code]userdata[/code] can be anything, and will be "
+"returned when [code]receiver_func[/code] is called.\n"
+"[b]Note:[/b] If it was not possible to create the preview the "
+"[code]receiver_func[/code] will still be called, but the preview will be "
+"null."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:53
+msgid "Removes a custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:61
+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:15
+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:24
+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:34
+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:42
+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:50
+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 ""
+
+#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:4
+msgid "FBX 3D asset importer."
+msgstr ""
+
+#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:7
+msgid ""
+"This is an FBX 3D asset importer with full support for most FBX features.\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/3.4/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:35
+msgid ""
+"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:41
+msgid "Returns the resource folder the imported scene file is located in."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:48
+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 [code]Ctrl+Shift+X[/code]) 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:25
+msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:32
+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:39
+msgid "Returns the [EditorInterface] singleton instance."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:45
+msgid "Returns the Editor's currently active scene."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:4
+msgid ""
+"Godot editor's control for selecting the [code]script[/code] property of a "
+"[Node]."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:7
+msgid ""
+"Similar to [EditorResourcePicker] this [Control] node is used in the "
+"editor's Inspector dock, but only to edit the [code]script[/code] property "
+"of a [Node]. Default options for creating new resources of all possible "
+"subtypes are replaced with dedicated buttons that open the \"Attach Node "
+"Script\" dialog. Can be used with [EditorInspectorPlugin] to recreate the "
+"same behavior.\n"
+"[b]Note:[/b] You must set the [member script_owner] for the custom context "
+"menu items to work."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:16
+msgid "The owner [Node] of the script property that holds the edited resource."
+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:17
+msgid ""
+"Adds a node to the selection.\n"
+"[b]Note:[/b] The newly selected node will not be automatically edited in the "
+"inspector. If you want to edit a node, use [method EditorInterface."
+"edit_node]."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:24
+msgid "Clear the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:30
+msgid "Gets the list of selected nodes."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:36
+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:43
+msgid "Removes a node from the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:50
+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:28
+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:51
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:57
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:66
+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:72
+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:78
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:85
+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:91
+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:100
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:107
+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:114
+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:121
+msgid "Sets the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:130
+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:139
+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:146
+msgid ""
+"Sets the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:154
+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:161
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:167
+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/EditorSpatialGizmo.xml:4
+msgid "Custom gizmo for editing Spatial objects."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:7
+msgid ""
+"Custom gizmo that is used for providing custom visualization and editing "
+"(handles) for 3D Spatial objects. See [EditorSpatialGizmoPlugin] for more "
+"information."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:16
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:23
+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/EditorSpatialGizmo.xml:33
+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/EditorSpatialGizmo.xml:44
+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/EditorSpatialGizmo.xml:54
+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/EditorSpatialGizmo.xml:63
+msgid ""
+"Adds an unscaled billboard for visualization. Call this function during "
+"[method redraw]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:69
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:78
+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/EditorSpatialGizmo.xml:86
+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/EditorSpatialGizmo.xml:94
+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/EditorSpatialGizmo.xml:100
+msgid ""
+"Returns the [EditorSpatialGizmoPlugin] that owns this gizmo. It's useful to "
+"retrieve materials using [method EditorSpatialGizmoPlugin.get_material]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:106
+msgid "Returns the Spatial node associated with this gizmo."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:113
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:119
+msgid ""
+"This function is called when the [Spatial] this gizmo refers to changes (the "
+"[method Spatial.update_gizmo] is called)."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:128
+msgid ""
+"This function is used when the user drags a gizmo handle (previously added "
+"with [method add_handles]) in screen coordinates.\n"
+"The [Camera] is also provided so screen coordinates can be converted to "
+"raycasts."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:136
+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/EditorSpatialGizmo.xml:143
+msgid ""
+"Sets the reference [Spatial] node for the gizmo. [code]node[/code] must "
+"inherit from [Spatial]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:4
+msgid "Used by the editor to define Spatial gizmo types."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:7
+msgid ""
+"EditorSpatialGizmoPlugin allows you to define a new type of Gizmo. There are "
+"two main ways to do so: extending [EditorSpatialGizmoPlugin] for the simpler "
+"gizmos, or creating a new [EditorSpatialGizmo] type. See the tutorial in the "
+"documentation for more info."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos."
+"html"
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:18
+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/EditorSpatialGizmoPlugin.xml:24
+msgid ""
+"Override this method to define whether the gizmo can be hidden or not. "
+"Returns [code]true[/code] if not overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:34
+msgid ""
+"Override this method to commit gizmo handles. Called for this plugin's "
+"active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:41
+msgid ""
+"Override this method to return a custom [EditorSpatialGizmo] for the spatial "
+"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
+"also [method has_gizmo]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:50
+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 EditorSpatialGizmo.add_handles]. "
+"Should not be overridden.\n"
+"You can optionally provide a texture to use instead of the default icon."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:61
+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 EditorSpatialGizmo."
+"add_unscaled_billboard]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:72
+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 EditorSpatialGizmo.add_mesh] and "
+"[method EditorSpatialGizmo.add_lines]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:80
+msgid ""
+"Override this method to provide gizmo's handle names. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:88
+msgid ""
+"Gets actual value of a handle from gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:96
+msgid ""
+"Gets material from the internal list of materials. If an "
+"[EditorSpatialGizmo] is provided, it will try to get the corresponding "
+"variant (selected and/or editable)."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:102
+msgid ""
+"Override this method to provide the name that will appear in the gizmo "
+"visibility menu."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:108
+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/EditorSpatialGizmoPlugin.xml:116
+msgid ""
+"Override this method to define which Spatial nodes have a gizmo from this "
+"plugin. Whenever a [Spatial] node is added to a scene this method is called, "
+"if it returns [code]true[/code] the node gets a generic [EditorSpatialGizmo] "
+"assigned and is added to this plugin's list of active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:124
+msgid ""
+"Gets whether a handle is highlighted or not. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:130
+msgid ""
+"Override this method to define whether a Spatial with this gizmo should be "
+"selectable even when the gizmo is hidden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:137
+msgid ""
+"Callback to redraw the provided gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:147
+msgid ""
+"Update the value of a handle after it has been updated. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpinSlider.xml:4
+msgid "Godot editor's control for editing numeric values."
+msgstr ""
+
+#: doc/classes/EditorSpinSlider.xml:7
+msgid ""
+"This [Control] node is used in the editor's Inspector dock to allow editing "
+"of numeric values. Can be used with [EditorInspectorPlugin] to recreate the "
+"same behavior."
+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:16
+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:23
+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:36
+msgid ""
+"Returns a [Dictionary] containing the path of the detected file change "
+"mapped to an integer signifying what kind of 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:48
+msgid "Returns the project name of the VCS working directory."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:54
+msgid ""
+"Returns the name of the VCS if the VCS has been initialized, else return an "
+"empty string."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:61
+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:67
+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:73
+msgid ""
+"Returns [code]true[/code] if the VCS addon has been initialized, else "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:79
+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:86
+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:93
+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:15
+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:25
+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:33
+msgid ""
+"Returns a Dictionary of Arrays of donor names.\n"
+"{[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]}"
+msgstr ""
+
+#: doc/classes/Engine.xml:40
+msgid ""
+"Returns the total number of frames drawn. On headless platforms, or if the "
+"render loop is disabled with [code]--disable-render-loop[/code] via command "
+"line, [method get_frames_drawn] always returns [code]0[/code]. See [method "
+"get_idle_frames]."
+msgstr ""
+
+#: doc/classes/Engine.xml:46
+msgid "Returns the frames per second of the running game."
+msgstr ""
+
+#: doc/classes/Engine.xml:52
+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] and [method "
+"get_physics_frames].\n"
+"[method get_idle_frames] can be used to run expensive logic less often "
+"without relying on a [Timer]:\n"
+"[codeblock]\n"
+"func _process(_delta):\n"
+" if Engine.get_idle_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 idle (render) frames "
+"here.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:64
+msgid ""
+"Returns Dictionary of licenses used by Godot and included third party "
+"components."
+msgstr ""
+
+#: doc/classes/Engine.xml:70
+msgid "Returns Godot license text."
+msgstr ""
+
+#: doc/classes/Engine.xml:76
+msgid "Returns the main loop object (see [MainLoop] and [SceneTree])."
+msgstr ""
+
+#: doc/classes/Engine.xml:82
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]physics frame[/b]. See also [method "
+"get_idle_frames].\n"
+"[method get_physics_frames] can be used to run expensive logic less often "
+"without relying on a [Timer]:\n"
+"[codeblock]\n"
+"func _physics_process(_delta):\n"
+" if Engine.get_physics_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 physics frames here.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:94
+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:101
+msgid ""
+"Returns a global singleton with given [code]name[/code]. Often used for "
+"plugins, e.g. [code]GodotPayment[/code] on Android."
+msgstr ""
+
+#: doc/classes/Engine.xml:107
+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:130
+msgid ""
+"Returns [code]true[/code] if a singleton with given [code]name[/code] exists "
+"in global scope."
+msgstr ""
+
+#: doc/classes/Engine.xml:136
+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:142
+msgid ""
+"If [code]true[/code], the script is currently running inside the editor. "
+"This is useful for [code]tool[/code] scripts to conditionally draw editor "
+"helpers, or prevent accidentally running \"game\" code that would affect the "
+"scene state while in the editor:\n"
+"[codeblock]\n"
+"if Engine.editor_hint:\n"
+" draw_gizmos()\n"
+"else:\n"
+" simulate_physics()\n"
+"[/codeblock]\n"
+"See [url=https://docs.godotengine.org/en/3.4/tutorials/misc/"
+"running_code_in_the_editor.html]Running code in the editor[/url] in the "
+"documentation for more information.\n"
+"[b]Note:[/b] To detect whether the script is run from an editor [i]build[/i] "
+"(e.g. when pressing [code]F5[/code]), use [method OS.has_feature] with the "
+"[code]\"editor\"[/code] argument instead. [code]OS.has_feature(\"editor\")[/"
+"code] will evaluate to [code]true[/code] both when the code is running in "
+"the editor and when running the project from the editor, but it will "
+"evaluate to [code]false[/code] when the code is run from an exported project."
+msgstr ""
+
+#: doc/classes/Engine.xml:153
+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:156
+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 the in-game clock and real clock but 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.\n"
+"[b]Note:[/b] For best results, when using a custom physics interpolation "
+"solution, the physics jitter fix should be disabled by setting [member "
+"physics_jitter_fix] to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Engine.xml:160
+msgid ""
+"If [code]false[/code], stops printing error and warning messages to the "
+"console and editor Output log. This can be used to hide error and warning "
+"messages during unit test suite runs. This property is equivalent to the "
+"[member ProjectSettings.application/run/disable_stderr] project setting.\n"
+"[b]Warning:[/b] If you set this to [code]false[/code] anywhere in the "
+"project, important error messages may be hidden even if they are emitted "
+"from other scripts. If this is set to [code]false[/code] in a [code]@tool[/"
+"code] script, this will also impact the editor itself. Do [i]not[/i] report "
+"bugs before ensuring error messages are enabled (as they are by default).\n"
+"[b]Note:[/b] This property does not impact the editor's Errors tab when "
+"running a project from the editor."
+msgstr ""
+
+#: doc/classes/Engine.xml:165
+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:168
+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\n"
+"These effects will only apply when the [Viewport]'s intended usage is \"3D\" "
+"or \"3D Without Effects\". This can be configured for the root Viewport with "
+"[member ProjectSettings.rendering/quality/intended_usage/"
+"framebuffer_allocation], or for specific Viewports via the [member Viewport."
+"usage] property."
+msgstr ""
+
+#: doc/classes/Environment.xml:15 doc/classes/WorldEnvironment.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/"
+"environment_and_post_processing.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:17 doc/classes/Material.xml:10
+#: doc/classes/Mesh.xml:10 doc/classes/MeshInstance.xml:10
+#: doc/classes/WorldEnvironment.xml:13
+msgid "https://godotengine.org/asset-library/asset/123"
+msgstr ""
+
+#: doc/classes/Environment.xml:26
+msgid ""
+"Returns [code]true[/code] if the glow level [code]idx[/code] is specified, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Environment.xml:34
+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:40
+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:43
+msgid ""
+"Applies the provided [Texture] 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:46
+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:49
+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:52
+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:55
+msgid "The ambient light's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:58
+msgid ""
+"The ambient light's energy. The higher the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Environment.xml:61
+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:64
+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:67
+msgid "The maximum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:70
+msgid "The minimum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:73
+msgid ""
+"The scale of the auto exposure effect. Affects the intensity of auto "
+"exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:76
+msgid ""
+"The speed of the auto exposure effect. Affects the time needed for the "
+"camera to perform auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:79
+msgid "The ID of the camera feed to show in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:82
+msgid ""
+"The maximum layer ID to display. Only effective when using the [constant "
+"BG_CANVAS] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:85
+msgid ""
+"The [Color] displayed for clear areas of the scene. Only effective when "
+"using the [constant BG_COLOR] or [constant BG_COLOR_SKY] background modes)."
+msgstr ""
+
+#: doc/classes/Environment.xml:88
+msgid "The power of the light emitted by the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:91
+msgid "The background mode. See [enum BGMode] for possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:94
+msgid "The [Sky] resource defined as background."
+msgstr ""
+
+#: doc/classes/Environment.xml:97
+msgid "The [Sky] resource's custom field of view."
+msgstr ""
+
+#: doc/classes/Environment.xml:100
+msgid "The [Sky] resource's rotation expressed as a [Basis]."
+msgstr ""
+
+#: doc/classes/Environment.xml:103
+msgid "The [Sky] resource's rotation expressed as Euler angles in radians."
+msgstr ""
+
+#: doc/classes/Environment.xml:106
+msgid "The [Sky] resource's rotation expressed as Euler angles in degrees."
+msgstr ""
+
+#: doc/classes/Environment.xml:109
+msgid "The amount of far blur for the depth-of-field effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:112
+msgid ""
+"The distance from the camera where the far blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:115
+msgid "If [code]true[/code], enables the depth-of-field far blur effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:118
+msgid ""
+"The depth-of-field far blur's quality. Higher values can mitigate the "
+"visible banding effect seen at higher strengths, but are much slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:121
+msgid "The length of the transition between the no-blur area and far blur."
+msgstr ""
+
+#: doc/classes/Environment.xml:124
+msgid "The amount of near blur for the depth-of-field effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:127
+msgid ""
+"Distance from the camera where the near blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:130
+msgid "If [code]true[/code], enables the depth-of-field near blur effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:133
+msgid ""
+"The depth-of-field near blur's quality. Higher values can mitigate the "
+"visible banding effect seen at higher strengths, but are much slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:136
+msgid "The length of the transition between the near blur and no-blur area."
+msgstr ""
+
+#: doc/classes/Environment.xml:139
+msgid "The fog's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:142
+msgid "The fog's depth starting distance from the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:145
+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:148
+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:151
+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 Camera.far] value."
+msgstr ""
+
+#: doc/classes/Environment.xml:154
+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:157
+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:160
+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:163
+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:166
+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:169
+msgid ""
+"The intensity of the depth fog color transition when looking towards the "
+"sun. The sun's direction is determined automatically using the "
+"DirectionalLight node in the scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:172
+msgid "The depth fog's [Color] when looking towards the sun."
+msgstr ""
+
+#: doc/classes/Environment.xml:175
+msgid ""
+"The intensity of the fog light transmittance effect. Amount of light that "
+"the fog transmits."
+msgstr ""
+
+#: doc/classes/Environment.xml:178
+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:181
+msgid ""
+"Smooths out the blockiness created by sampling higher levels, at the cost of "
+"performance.\n"
+"[b]Note:[/b] When using the GLES2 renderer, this is only available if the "
+"GPU supports the [code]GL_EXT_gpu_shader4[/code] extension."
+msgstr ""
+
+#: doc/classes/Environment.xml:185
+msgid "The glow blending mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:188
+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:191
+msgid "If [code]true[/code], the glow effect is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:194
+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:197
+msgid "The bleed scale of the HDR glow."
+msgstr ""
+
+#: doc/classes/Environment.xml:200
+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:203
+msgid ""
+"Takes more samples during downsample pass of glow. This ensures that single "
+"pixels are captured by glow which makes the glow look smoother and more "
+"stable during movement. However, it is very expensive and makes the glow "
+"post process take twice as long."
+msgstr ""
+
+#: doc/classes/Environment.xml:206
+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:209
+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:212
+msgid "If [code]true[/code], the 2th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:215
+msgid "If [code]true[/code], the 3th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:218
+msgid "If [code]true[/code], the 4th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:221
+msgid "If [code]true[/code], the 5th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:224
+msgid "If [code]true[/code], the 6th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:227
+msgid ""
+"If [code]true[/code], the 7th level of glow is enabled. This is the most "
+"\"global\" level (blurriest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:230
+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:233
+msgid "The depth tolerance for screen-space reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:236
+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:239
+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:242
+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:245
+msgid ""
+"The maximum number of steps for screen-space reflections. Higher values are "
+"slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:248
+msgid ""
+"If [code]true[/code], screen-space reflections will take the material "
+"roughness into account."
+msgstr ""
+
+#: doc/classes/Environment.xml:251
+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:254
+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:257
+msgid ""
+"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:260
+msgid "The screen-space ambient occlusion color."
+msgstr ""
+
+#: doc/classes/Environment.xml:263
+msgid "The screen-space ambient occlusion edge sharpness."
+msgstr ""
+
+#: doc/classes/Environment.xml:266
+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:269
+msgid ""
+"The primary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius]."
+msgstr ""
+
+#: doc/classes/Environment.xml:272
+msgid ""
+"The secondary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius2]."
+msgstr ""
+
+#: doc/classes/Environment.xml:275
+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:278
+msgid ""
+"The screen-space ambient occlusion quality. Higher qualities will make "
+"better use of small objects for ambient occlusion, but are slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:281
+msgid "The primary screen-space ambient occlusion radius."
+msgstr ""
+
+#: doc/classes/Environment.xml:284
+msgid ""
+"The secondary screen-space ambient occlusion radius. If set to a value "
+"higher than [code]0[/code], enables the secondary screen-space ambient "
+"occlusion effect which can be used to improve the effect's appearance (at "
+"the cost of performance)."
+msgstr ""
+
+#: doc/classes/Environment.xml:287
+msgid "The default exposure used for tonemapping."
+msgstr ""
+
+#: doc/classes/Environment.xml:290
+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:293
+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:298
+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:301
+msgid ""
+"Clears the background using the clear color defined in [member "
+"ProjectSettings.rendering/environment/default_clear_color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:304
+msgid "Clears the background using a custom clear color."
+msgstr ""
+
+#: doc/classes/Environment.xml:307
+msgid "Displays a user-defined sky in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:310
+msgid ""
+"Clears the background using a custom clear color and allows defining a sky "
+"for shading and reflection. This mode is slightly faster than [constant "
+"BG_SKY] and should be preferred in scenes where reflections can be visible, "
+"but the sky itself never is (e.g. top-down camera)."
+msgstr ""
+
+#: doc/classes/Environment.xml:313
+msgid "Displays a [CanvasLayer] in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid "Displays a camera feed in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Represents the size of the [enum BGMode] enum."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid ""
+"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
+"flare, bright sources."
+msgstr ""
+
+#: doc/classes/Environment.xml:325
+msgid ""
+"Screen glow blending mode. Increases brightness, used frequently with bloom."
+msgstr ""
+
+#: doc/classes/Environment.xml:328
+msgid ""
+"Soft light glow blending mode. Modifies contrast, exposes shadows and "
+"highlights (vivid bloom)."
+msgstr ""
+
+#: doc/classes/Environment.xml:331
+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:334
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:337
+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:340
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:343
+msgid ""
+"Academy Color Encoding System tonemapper operator. Performs an aproximation "
+"of the ACES tonemapping curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:346
+msgid ""
+"High quality Academy Color Encoding System tonemapper operator that matches "
+"the industry standard. Performs a more physically accurate curve fit which "
+"better simulates how light works in the real world. The color of lights and "
+"emissive materials will become lighter as the emissive energy increases, and "
+"will eventually become white if the light is bright enough to saturate the "
+"camera sensor."
+msgstr ""
+
+#: doc/classes/Environment.xml:349
+msgid "Low depth-of-field blur quality (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:352
+msgid "Medium depth-of-field blur quality."
+msgstr ""
+
+#: doc/classes/Environment.xml:355
+msgid "High depth-of-field blur quality (slowest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:358
+msgid "No blur for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:361
+msgid "1×1 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:364
+msgid "2×2 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:367
+msgid "3×3 blur for the screen-space ambient occlusion effect (slowest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:370
+msgid "Low quality for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:373
+msgid "Low quality for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:376
+msgid "Low quality for the screen-space ambient occlusion effect (slowest)."
+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:35
+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:42
+msgid "Returns the error text if [method parse] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:48
+msgid "Returns [code]true[/code] if [method execute] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:56
+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/ExternalTexture.xml:4
+msgid "Enable OpenGL ES external texture extension."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:7
+msgid ""
+"Enable support for the OpenGL ES external texture extension as defined by "
+"[url=https://www.khronos.org/registry/OpenGL/extensions/OES/"
+"OES_EGL_image_external.txt]OES_EGL_image_external[/url].\n"
+"[b]Note:[/b] This is only supported for Android platforms."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:16
+msgid "Returns the external texture name."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:23
+msgid "External texture size."
+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/3.4/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation.\n"
+"[b]Note:[/b] To access project resources once exported, it is recommended to "
+"use [ResourceLoader] instead of the [File] API, as some files are converted "
+"to engine-specific formats and their original source files might not be "
+"present in the exported PCK package.\n"
+"[b]Note:[/b] Files are automatically closed only if the process exits "
+"\"normally\" (such as by clicking the window manager's close button or "
+"pressing [b]Alt + F4[/b]). If you stop the project execution by pressing "
+"[b]F8[/b] while the project is running, the file won't be closed as the game "
+"process will be killed. You can work around this by calling [method flush] "
+"at regular intervals."
+msgstr ""
+
+#: doc/classes/File.xml:35
+msgid ""
+"Closes the currently opened file and prevents subsequent read/write "
+"operations. Use [method flush] to persist the data to disk without closing "
+"the file."
+msgstr ""
+
+#: doc/classes/File.xml:41
+msgid ""
+"Returns [code]true[/code] if the file cursor has already read past the end "
+"of the file.\n"
+"[b]Note:[/b] [code]eof_reached() == false[/code] cannot be used to check "
+"whether there is more data available. To loop while there is more data "
+"available, use:\n"
+"[codeblock]\n"
+"while file.get_position() < file.get_len():\n"
+" # Read data\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/File.xml:53
+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 their source asset will not be included in the exported game, as "
+"only the imported version is used. See [method ResourceLoader.exists] for an "
+"alternative approach that takes resource remapping into account."
+msgstr ""
+
+#: doc/classes/File.xml:60
+msgid ""
+"Writes the file's buffer to disk. Flushing is automatically performed when "
+"the file is closed. This means you don't need to call [method flush] "
+"manually before closing a file using [method close]. Still, calling [method "
+"flush] can be used to ensure the data is safe even if the project crashes "
+"instead of being closed gracefully.\n"
+"[b]Note:[/b] Only call [method flush] when you actually need it. Otherwise, "
+"it will decrease performance due to constant disk writes."
+msgstr ""
+
+#: doc/classes/File.xml:67
+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:73
+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:79
+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:85
+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:91
+msgid ""
+"Returns the whole file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:99
+msgid "Returns next [code]len[/code] bytes of the file as a [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/File.xml:106
+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, and cannot be a double quotation mark.\n"
+"Text is interpreted as being UTF-8 encoded. Text values must be enclosed in "
+"double quotes if they include the delimiter character. Double quotes within "
+"a text value can be escaped by doubling their occurrence.\n"
+"For example, the following CSV lines are valid and will be properly parsed "
+"as two strings each:\n"
+"[codeblock]\n"
+"Alice,\"Hello, Bob!\"\n"
+"Bob,Alice! What a surprise!\n"
+"Alice,\"I thought you'd reply with \"\"Hello, world\"\".\"\n"
+"[/codeblock]\n"
+"Note how the second line can omit the enclosing quotes as it does not "
+"include the delimiter. However it [i]could[/i] very well use quotes, it was "
+"only written without for demonstration purposes. The third line must use "
+"[code]\"\"[/code] for each quotation mark that needs to be interpreted as "
+"such instead of the end of a text value."
+msgstr ""
+
+#: doc/classes/File.xml:120
+msgid "Returns the next 64 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:126
+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:132
+msgid "Returns the next 32 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:138
+msgid "Returns the size of the file in bytes."
+msgstr ""
+
+#: doc/classes/File.xml:144
+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:152
+msgid ""
+"Returns an MD5 String representing the file at the given path or an empty "
+"[String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:159
+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:165
+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:172
+msgid "Returns the path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:178
+msgid "Returns the absolute path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:184
+msgid "Returns the file cursor's position."
+msgstr ""
+
+#: doc/classes/File.xml:190
+msgid "Returns the next bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:197
+msgid ""
+"Returns a SHA-256 [String] representing the file at the given path or an "
+"empty [String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:204
+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:211
+msgid "Returns [code]true[/code] if the file is currently opened."
+msgstr ""
+
+#: doc/classes/File.xml:219
+msgid "Opens the file for writing or reading, depending on the flags."
+msgstr ""
+
+#: doc/classes/File.xml:228
+msgid ""
+"Opens a compressed file for reading or writing.\n"
+"[b]Note:[/b] [method open_compressed] can only read files that were saved by "
+"Godot, not third-party compression formats. See [url=https://github.com/"
+"godotengine/godot/issues/28999]GitHub issue #28999[/url] for a workaround."
+msgstr ""
+
+#: doc/classes/File.xml:238
+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:248
+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:255
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the beginning of the file)."
+msgstr ""
+
+#: doc/classes/File.xml:262
+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:270
+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:297
+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:306
+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:314
+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:323
+msgid "Stores the given array of bytes in the file."
+msgstr ""
+
+#: doc/classes/File.xml:331
+msgid ""
+"Store the given [PoolStringArray] 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:339
+msgid "Stores a floating-point number as 64 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:346
+msgid "Stores a floating-point number as 32 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:353
+msgid ""
+"Appends [code]line[/code] to the file followed by a line return character "
+"([code]\\n[/code]), encoding the text as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:360
+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:368
+msgid "Stores a floating-point number in the file."
+msgstr ""
+
+#: doc/classes/File.xml:375
+msgid ""
+"Appends [code]string[/code] to the file without a line return, encoding the "
+"text as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:383
+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).\n"
+"[b]Note:[/b] Not all properties are included. Only properties that are "
+"configured with the [constant PROPERTY_USAGE_STORAGE] flag set will be "
+"serialized. You can add a new usage flag to a property by overriding the "
+"[method Object._get_property_list] method in your class. You can also check "
+"how property usage is configured by calling [method Object."
+"_get_property_list]. See [enum PropertyUsageFlags] for the possible usage "
+"flags."
+msgstr ""
+
+#: doc/classes/File.xml:390
+msgid ""
+"If [code]true[/code], the file is read with big-endian [url=https://en."
+"wikipedia.org/wiki/Endianness]endianness[/url]. If [code]false[/code], the "
+"file is read with little-endian endianness. If in doubt, leave this to "
+"[code]false[/code] as most files are written with little-endian endianness.\n"
+"[b]Note:[/b] [member endian_swap] is only about the file format, not the CPU "
+"type. The CPU endianness doesn't affect the default endianness for files "
+"written.\n"
+"[b]Note:[/b] This is always reset to [code]false[/code] whenever you open "
+"the file. Therefore, you must set [member endian_swap] [i]after[/i] opening "
+"the file, not before."
+msgstr ""
+
+#: doc/classes/File.xml:397
+msgid ""
+"Opens the file for read operations. The cursor is positioned at the "
+"beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:400
+msgid ""
+"Opens the file for write operations. The file is created if it does not "
+"exist, and truncated if it does."
+msgstr ""
+
+#: doc/classes/File.xml:403
+msgid ""
+"Opens the file for read and write operations. Does not truncate the file. "
+"The cursor is positioned at the beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:406
+msgid ""
+"Opens the file for read and write operations. The file is created if it does "
+"not exist, and truncated if it does. The cursor is positioned at the "
+"beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:409
+msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
+msgstr ""
+
+#: doc/classes/File.xml:412
+msgid ""
+"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
+"compression method."
+msgstr ""
+
+#: doc/classes/File.xml:415
+msgid ""
+"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
+"method."
+msgstr ""
+
+#: doc/classes/File.xml:418
+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 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:16
+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:22
+msgid "Clear all the added filters in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:28
+msgid "Clear currently selected items in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:34
+msgid ""
+"Returns the LineEdit for the selected file.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:41
+msgid ""
+"Returns the vertical box container of the dialog, custom controls can be "
+"added to it.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:48
+msgid "Invalidate and update the current dialog content list."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:54
+msgid ""
+"The file system access scope. See enum [code]Access[/code] constants.\n"
+"[b]Warning:[/b] Currently, in sandboxed environments such as HTML5 builds or "
+"sandboxed macOS apps, FileDialog cannot access the host file system. See "
+"[url=https://github.com/godotengine/godot-proposals/issues/1123]godot-"
+"proposals#1123[/url]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:58
+msgid "The current working directory of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:61
+msgid "The currently selected file of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:64
+msgid "The currently selected file path of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:68
+msgid ""
+"The available file type filters. For example, this shows only [code].png[/"
+"code] and [code].gd[/code] files: [code]set_filters(PoolStringArray([\"*."
+"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:71
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"enum [code]Mode[/code] constants."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:74
+msgid ""
+"If [code]true[/code], changing the [code]Mode[/code] property will set the "
+"window title accordingly (e.g. setting mode to [constant MODE_OPEN_FILE] "
+"will change the window title to \"Open a File\")."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:77
+msgid "If [code]true[/code], the dialog will show hidden files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:85
+msgid "Emitted when the user selects a directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:91
+msgid ""
+"Emitted when the user selects a file by double-clicking it or pressing the "
+"[b]OK[/b] button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:97
+msgid "Emitted when the user selects multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:103
+msgid "The dialog allows selecting one, and only one file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:106
+msgid "The dialog allows selecting multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:109
+msgid ""
+"The dialog only allows selecting a directory, disallowing the selection of "
+"any file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:112
+msgid "The dialog allows selecting one file or directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:115
+msgid "The dialog will warn when a file exists."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:118
+msgid ""
+"The dialog only allows accessing files under the [Resource] path "
+"([code]res://[/code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:121
+msgid ""
+"The dialog only allows accessing files under user data path ([code]user://[/"
+"code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:124
+msgid "The dialog allows accessing files on the whole file system."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:129
+msgid "Custom icon for files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:132
+msgid "The color modulation applied to the file icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:135
+msgid ""
+"The color tint for disabled files (when the [FileDialog] is used in open "
+"folder mode)."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:138
+msgid "Custom icon for folders."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:141
+msgid "The color modulation applied to the folder icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:144
+msgid "Custom icon for the parent folder arrow."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:147
+msgid "Custom icon for the reload button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:150
+msgid "Custom icon for the toggle hidden button."
+msgstr ""
+
+#: doc/classes/float.xml:4
+msgid "Float built-in type."
+msgstr ""
+
+#: doc/classes/float.xml:7
+msgid ""
+"The [float] built-in type is a 64-bit double-precision floating-point "
+"number, equivalent to [code]double[/code] in C++. This type has 14 reliable "
+"decimal digits of precision. The [float] type can be stored in [Variant], "
+"which is the generic type used by the engine. The maximum value of [float] "
+"is approximately [code]1.79769e308[/code], and the minimum is approximately "
+"[code]-1.79769e308[/code].\n"
+"Most methods and properties in the engine use 32-bit single-precision "
+"floating-point numbers instead, equivalent to [code]float[/code] in C++, "
+"which have 6 reliable decimal digits of precision. For data structures such "
+"as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers.\n"
+"Math done using the [float] type is not guaranteed to be exact or "
+"deterministic, and will often result in small errors. You should usually use "
+"the [method @GDScript.is_equal_approx] and [method @GDScript.is_zero_approx] "
+"methods instead of [code]==[/code] to compare [float] values for equality."
+msgstr ""
+
+#: doc/classes/float.xml:12
+msgid "https://en.wikipedia.org/wiki/Double-precision_floating-point_format"
+msgstr ""
+
+#: doc/classes/float.xml:13
+msgid "https://en.wikipedia.org/wiki/Single-precision_floating-point_format"
+msgstr ""
+
+#: doc/classes/float.xml:20
+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:34
+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.\n"
+"[b]Note:[/b] If a [DynamicFont] doesn't contain a character used in a "
+"string, the character in question will be replaced with codepoint "
+"[code]0xfffd[/code] if it's available in the [DynamicFont]. If this "
+"replacement character isn't available in the DynamicFont, the character will "
+"be hidden without displaying any replacement character in the string.\n"
+"[b]Note:[/b] If a [BitmapFont] doesn't contain a character used in a string, "
+"the character in question will be hidden without displaying any replacement "
+"character in the string.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Font.xml:24
+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:37
+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:43
+msgid "Returns the font ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:51
+msgid ""
+"Returns the size of a character, optionally taking kerning into account if "
+"the next character is provided. Note that the height returned is the font "
+"height (see [method get_height]) and has no relation to the glyph height."
+msgstr ""
+
+#: doc/classes/Font.xml:57
+msgid "Returns the font descent (number of pixels below the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:63
+msgid "Returns the total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Font.xml:70
+msgid ""
+"Returns the size of a string, taking kerning and advance into account. Note "
+"that the height returned is the font height (see [method get_height]) and "
+"has no relation to the string."
+msgstr ""
+
+#: doc/classes/Font.xml:78
+msgid ""
+"Returns the size that the string would have with word wrapping enabled with "
+"a fixed [code]width[/code]."
+msgstr ""
+
+#: doc/classes/Font.xml:84
+msgid "Returns [code]true[/code] if the font has an outline."
+msgstr ""
+
+#: doc/classes/Font.xml:95
+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:16
+msgid ""
+"Calls the referenced function previously set in [member function] or [method "
+"@GDScript.funcref]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:23
+msgid ""
+"Calls the referenced function previously set in [member 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:29
+msgid "Returns whether the object still exists and has the function assigned."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:36
+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 ""
+
+#: doc/classes/FuncRef.xml:42
+msgid "The name of the referenced function."
+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 [ARVRInterfaceGDNative]. 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/3.4/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:17
+msgid ""
+"Returns paths to all dependency libraries for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:23
+msgid ""
+"Returns the path to the dynamic library file for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:29
+msgid ""
+"This resource in INI-style [ConfigFile] format, as in [code].gdnlib[/code] "
+"files."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:32
+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:36
+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:40
+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:44
+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/3.4/getting_started/scripting/gdscript/index."
+"html"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:17
+msgid "Returns byte code for the script source code."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:23
+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 ""
+"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 "
+"function call can then be resumed later by calling [method resume] on this "
+"state object."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:16
+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:24
+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"
+"This function returns what the resumed function call returns, possibly "
+"another function state if yielded again."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.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/Generic6DOFJoint.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/Generic6DOFJoint.xml:93
+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/Generic6DOFJoint.xml:97
+msgid "If [code]true[/code], rotation across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:100
+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/Generic6DOFJoint.xml:103
+msgid ""
+"The maximum amount of force that can occur, when rotating around the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:106
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:109
+msgid ""
+"The amount of rotational restitution across the X axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:112
+msgid "The speed of all rotations across the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:115
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:118
+msgid ""
+"The amount of rotational damping across the Y axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:121
+msgid "If [code]true[/code], rotation across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:124
+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/Generic6DOFJoint.xml:127
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:130
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:133
+msgid ""
+"The amount of rotational restitution across the Y axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:136
+msgid "The speed of all rotations across the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:139
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:142
+msgid ""
+"The amount of rotational damping across the Z axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:145
+msgid "If [code]true[/code], rotation across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:148
+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/Generic6DOFJoint.xml:151
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:154
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:157
+msgid ""
+"The amount of rotational restitution across the Z axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:160
+msgid "The speed of all rotations across the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:163
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:166
+msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:169
+msgid "Maximum acceleration for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:172
+msgid "Target speed for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:175
+msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:178
+msgid "Maximum acceleration for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:181
+msgid "Target speed for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:184
+msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:187
+msgid "Maximum acceleration for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:190
+msgid "Target speed for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:217
+msgid "The amount of damping that happens at the X motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:220
+msgid "If [code]true[/code], the linear motion across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:223
+msgid "The minimum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:226
+msgid ""
+"The amount of restitution on the X axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:229
+msgid ""
+"A factor applied to the movement across the X axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:232
+msgid "The maximum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:235
+msgid "The amount of damping that happens at the Y motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:238
+msgid "If [code]true[/code], the linear motion across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:241
+msgid "The minimum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:244
+msgid ""
+"The amount of restitution on the Y axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:247
+msgid ""
+"A factor applied to the movement across the Y axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:250
+msgid "The maximum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:253
+msgid "The amount of damping that happens at the Z motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:256
+msgid "If [code]true[/code], the linear motion across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:259
+msgid "The minimum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:262
+msgid ""
+"The amount of restitution on the Z axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:265
+msgid ""
+"A factor applied to the movement across the Z axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:268
+msgid "The maximum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:271
+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/Generic6DOFJoint.xml:274
+msgid ""
+"The maximum force the linear motor can apply on the X axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:277
+msgid "The speed that the linear motor will attempt to reach on the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:280
+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/Generic6DOFJoint.xml:283
+msgid ""
+"The maximum force the linear motor can apply on the Y axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:286
+msgid "The speed that the linear motor will attempt to reach on the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:289
+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/Generic6DOFJoint.xml:292
+msgid ""
+"The maximum force the linear motor can apply on the Z axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:295
+msgid "The speed that the linear motor will attempt to reach on the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:324 doc/classes/PhysicsServer.xml:1086
+msgid "The minimum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:327 doc/classes/PhysicsServer.xml:1089
+msgid "The maximum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:330
+msgid ""
+"A factor applied to the movement across the axes. The lower, the slower the "
+"movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:333
+msgid ""
+"The amount of restitution on the axes' movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:336 doc/classes/PhysicsServer.xml:1098
+msgid ""
+"The amount of damping that happens at the linear motion across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:339
+msgid "The velocity the linear motor will try to reach."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:342
+msgid ""
+"The maximum force the linear motor will apply while trying to reach the "
+"velocity target."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:351 doc/classes/PhysicsServer.xml:1107
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:354 doc/classes/PhysicsServer.xml:1110
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:357
+msgid "The speed of all rotations across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:360 doc/classes/PhysicsServer.xml:1116
+msgid ""
+"The amount of rotational damping across the axes. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:363 doc/classes/PhysicsServer.xml:1119
+msgid ""
+"The amount of rotational restitution across the axes. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:366 doc/classes/PhysicsServer.xml:1122
+msgid ""
+"The maximum amount of force that can occur, when rotating around the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:369
+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/Generic6DOFJoint.xml:372 doc/classes/PhysicsServer.xml:1128
+msgid "Target speed for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:375 doc/classes/PhysicsServer.xml:1131
+msgid "Maximum acceleration for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:387
+msgid "If enabled, linear motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:390
+msgid "If enabled, rotational motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:397
+msgid "If enabled, there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:400
+msgid "If enabled, there is a linear motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:403 doc/classes/HingeJoint.xml:108
+msgid "Represents the size of the [enum Flag] enum."
+msgstr ""
+
+#: doc/classes/Geometry.xml:4
+msgid "Helper node to calculate generic geometry operations."
+msgstr ""
+
+#: doc/classes/Geometry.xml:7
+msgid ""
+"Geometry 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/Geometry.xml:16
+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/Geometry.xml:27
+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/Geometry.xml:37
+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/Geometry.xml:45
+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/Geometry.xml:53
+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/Geometry.xml:62
+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/Geometry.xml:69
+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/Geometry.xml:77
+msgid ""
+"Mutually excludes common area defined by intersection of [code]polygon_a[/"
+"code] and [code]polygon_b[/code] (see [method intersect_polygons_2d]) 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/Geometry.xml:87
+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/Geometry.xml:96
+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/Geometry.xml:105
+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/Geometry.xml:114
+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/Geometry.xml:124
+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 [PoolVector3Array] 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/Geometry.xml:134
+msgid ""
+"Given the two 2D segments ([code]p1[/code], [code]q1[/code]) and ([code]p2[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PoolVector2Array] that contains this point "
+"on ([code]p1[/code], [code]q1[/code]) as well the accompanying point on "
+"([code]p2[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry.xml:141
+msgid "Used internally by the engine."
+msgstr ""
+
+#: doc/classes/Geometry.xml:149
+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/Geometry.xml:158
+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/Geometry.xml:167
+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/Geometry.xml:175
+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/Geometry.xml:182
+msgid ""
+"Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in "
+"clockwise order, otherwise returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:192
+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/Geometry.xml:200
+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/Geometry.xml:208
+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 multiple inner "
+"polygons (holes) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:218
+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 = PoolVector2Array([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/Geometry.xml:237
+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/Geometry.xml:250
+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/Geometry.xml:261
+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/Geometry.xml:271
+msgid ""
+"Given the 2D segment ([code]segment_from[/code], [code]segment_to[/code]), "
+"returns the position on the segment (as a number between 0 and 1) at which "
+"the segment hits the circle that is located at position "
+"[code]circle_position[/code] and has radius [code]circle_radius[/code]. If "
+"the segment does not intersect the circle, -1 is returned (this is also the "
+"case if the line extending the segment would intersect the circle, but the "
+"segment does not)."
+msgstr ""
+
+#: doc/classes/Geometry.xml:280
+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 [PoolVector3Array] "
+"containing the point the intersection and the hull's normal. If no "
+"intersecion is found, an the returned array is empty."
+msgstr ""
+
+#: doc/classes/Geometry.xml:290
+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 [PoolVector3Array]. "
+"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/Geometry.xml:300
+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/Geometry.xml:310
+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 [PoolVector3Array]. If "
+"yes, returns a [PoolVector3Array] containing the point of intersection and "
+"the sphere's normal at the point of intersection."
+msgstr ""
+
+#: doc/classes/Geometry.xml:321
+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/Geometry.xml:328
+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 [PoolIntArray] 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 [PoolIntArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Geometry.xml:335
+msgid ""
+"Triangulates the polygon specified by the points in [code]polygon[/code]. "
+"Returns a [PoolIntArray] 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 [PoolIntArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Geometry.xml:341
+msgid ""
+"Create regions where either subject or clip polygons (or both) are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:344
+msgid ""
+"Create regions where subject polygons are filled except where clip polygons "
+"are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:347
+msgid "Create regions where both subject and clip polygons are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:350
+msgid ""
+"Create regions where either subject or clip polygons are filled but not "
+"where both are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:353
+msgid ""
+"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:356
+msgid ""
+"While flattened paths can never perfectly trace an arc, they are "
+"approximated by a series of arc chords."
+msgstr ""
+
+#: doc/classes/Geometry.xml:359
+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/Geometry.xml:362
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polygon."
+msgstr ""
+
+#: doc/classes/Geometry.xml:365
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polyline."
+msgstr ""
+
+#: doc/classes/Geometry.xml:368
+msgid "Endpoints are squared off with no extension."
+msgstr ""
+
+#: doc/classes/Geometry.xml:371
+msgid "Endpoints are squared off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry.xml:374
+msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:4
+msgid "Base node for geometry-based visual instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:7
+msgid ""
+"Base node for geometry-based visual instances. Shares some common "
+"functionality like visibility and custom materials."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:16
+msgid ""
+"Returns the [enum GeometryInstance.Flags] that have been set for this object."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:23
+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/GeometryInstance.xml:31
+msgid ""
+"Sets the [enum GeometryInstance.Flags] specified. See [enum GeometryInstance."
+"Flags] for options."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:37
+msgid ""
+"The selected shadow casting flag. See [enum ShadowCastingSetting] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:40
+msgid ""
+"The extra distance added to the GeometryInstance's bounding box ([AABB]) to "
+"increase its cull box."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:43
+msgid ""
+"When disabled, the mesh will be taken into account when computing indirect "
+"lighting, but the resulting lightmap will not be saved. Useful for emissive "
+"only materials or shadow casters."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:46
+msgid ""
+"Scale factor for the generated baked lightmap. Useful for adding detail to "
+"certain mesh instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:49
+msgid ""
+"The GeometryInstance's max LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:53
+msgid ""
+"The GeometryInstance's max LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:57
+msgid ""
+"The GeometryInstance's min LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:61
+msgid ""
+"The GeometryInstance's min LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:65
+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/GeometryInstance.xml:69
+msgid ""
+"If [code]true[/code], this GeometryInstance will be used when baking lights "
+"using a [GIProbe] or [BakedLightmap]."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:74
+msgid "The generated lightmap texture will have the original size."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:77
+msgid "The generated lightmap texture will be twice as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:80
+msgid "The generated lightmap texture will be 4 times as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:83
+msgid "The generated lightmap texture will be 8 times as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:88
+msgid "Will not cast any shadows."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:91
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance.\n"
+"Will take culling into account, so faces not being rendered will not be "
+"taken into account when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:95
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance.\n"
+"Will not take culling into account, so all faces will be taken into account "
+"when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:99
+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/GeometryInstance.xml:103
+msgid ""
+"Will allow the GeometryInstance to be used when baking lights using a "
+"[GIProbe] or [BakedLightmap]."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:106
+msgid ""
+"Unused in this class, exposed for consistency with [enum VisualServer."
+"InstanceFlags]."
+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/voxel_cone_tracing/"
+"high_quality].\n"
+"[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light "
+"leaks (avoid one-sided walls). For interior levels, enclose your level "
+"geometry in a sufficiently large box and bridge the loops to close the "
+"mesh.\n"
+"[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot "
+"emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can "
+"emit light in a [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html"
+msgstr ""
+
+#: doc/classes/GIProbe.xml:22
+msgid ""
+"Bakes the effect from all [GeometryInstance]s marked with [member "
+"GeometryInstance.use_in_baked_light] and [Light]s marked with either "
+"[constant Light.BAKE_INDIRECT] or [constant Light.BAKE_ALL]. 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:28
+msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:34
+msgid ""
+"Offsets the lookup of the light contribution from the [GIProbe]. This can be "
+"used to avoid self-shadowing, but may introduce light leaking at higher "
+"values. This and [member normal_bias] should be played around with to "
+"minimize self-shadowing and light leaking.\n"
+"[b]Note:[/b] [code]bias[/code] should usually be above 1.0 as that is the "
+"size of the voxels."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:38
+msgid ""
+"[i]Deprecated.[/i] This property has been deprecated due to known bugs and "
+"no longer has any effect when enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:41
+msgid "The [GIProbeData] resource that holds the data for this [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:44
+msgid ""
+"The maximum brightness that the [GIProbe] will recognize. Brightness will be "
+"scaled within this range."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:47
+msgid ""
+"Energy multiplier. Makes the lighting contribution from the [GIProbe] "
+"brighter."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:50
+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:53
+msgid ""
+"If [code]true[/code], ignores the sky contribution when calculating lighting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:56
+msgid ""
+"Offsets the lookup into the [GIProbe] based on the object's normal "
+"direction. Can be used to reduce some self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:59
+msgid ""
+"How much light propagates through the probe internally. A higher value "
+"allows light to spread further."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:62
+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:67
+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:70
+msgid "Use 128 subdivisions. This is the default quality setting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:73
+msgid "Use 256 subdivisions."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:76
+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:79
+msgid "Represents the size of the [enum Subdiv] enum."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:13
+msgid ""
+"The [Color] of the light. Defaults to white. A black color causes the light "
+"to have no effect."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:16
+msgid ""
+"The inner angle of the cone in a spotlight. Must be less than or equal to "
+"the outer cone angle.\n"
+"Within this angle, the light is at full brightness. Between the inner and "
+"outer cone angles, there is a transition from full brightness to zero "
+"brightness. When creating a Godot [SpotLight], the ratio between the inner "
+"and outer cone angles is used to calculate the attenuation of the light."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:20
+msgid ""
+"The intensity of the light. This is expressed in candelas (lumens per "
+"steradian) for point and spot lights, and lux (lumens per m²) for "
+"directional lights. When creating a Godot light, this value is converted to "
+"a unitless multiplier."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:23
+msgid ""
+"The outer angle of the cone in a spotlight. Must be greater than or equal to "
+"the inner angle.\n"
+"At this angle, the light drops off to zero brightness. Between the inner and "
+"outer cone angles, there is a transition from full brightness to zero "
+"brightness. If this angle is a half turn, then the spotlight emits in all "
+"directions. When creating a Godot [SpotLight], the outer cone angle is used "
+"as the angle of the spotlight."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:27
+msgid ""
+"The range of the light, beyond which the light has no effect. GLTF lights "
+"with no range defined behave like physical lights (which have infinite "
+"range). When creating a Godot light, the range is clamped to 4096."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:30
+msgid ""
+"The type of the light. The values accepted by Godot are \"point\", \"spot\", "
+"and \"directional\", which correspond to Godot's [OmniLight], [SpotLight], "
+"and [DirectionalLight] respectively."
+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/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:17
+msgid ""
+"Adds the specified color to the end of the ramp, with the specified offset."
+msgstr ""
+
+#: doc/classes/Gradient.xml:24
+msgid "Returns the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:31
+msgid "Returns the offset of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:37
+msgid "Returns the number of colors in the ramp."
+msgstr ""
+
+#: doc/classes/Gradient.xml:44
+msgid "Returns the interpolated color specified by [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:51
+msgid "Removes the color at the index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:59
+msgid "Sets the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:67
+msgid "Sets the offset for the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:73
+msgid "Gradient's colors returned as a [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:76
+msgid "Gradient's offsets returned as a [PoolRealArray]."
+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:18
+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:25
+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:32
+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:38
+msgid "Removes all connections between nodes."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:48
+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:58
+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:64
+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:70
+msgid ""
+"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
+"the top left of the graph. You can use this method to reposition the toolbar "
+"or to add your own custom controls to it.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:81
+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:89
+msgid "Returns whether it's possible to connect slots of the specified types."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:97
+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:104
+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:111
+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:122
+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:129
+msgid "Sets the specified [code]node[/code] as the one selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:136
+msgid "If [code]true[/code], the minimap is visible."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:139
+msgid "The opacity of the minimap rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:142
+msgid ""
+"The size of the minimap rectangle. The map itself is based on the size of "
+"the grid area and is scaled to fit this rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:146
+msgid ""
+"If [code]true[/code], enables disconnection of existing connections in the "
+"GraphEdit by dragging the right end."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:149
+msgid "The scroll offset."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:152
+msgid ""
+"If [code]true[/code], makes a label with the current zoom level visible. The "
+"zoom value is displayed in percents."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:155
+msgid "The snapping distance in pixels."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:158
+msgid "If [code]true[/code], enables snapping."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:161
+msgid "The current zoom value."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:164
+msgid "The upper zoom limit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:167
+msgid "The lower zoom limit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:170
+msgid "The step of each zoom level."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:176
+msgid "Emitted at the beginning of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:181
+msgid "Emitted at the end of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:189
+msgid ""
+"Emitted when user dragging connection from input port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:198
+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:206
+msgid ""
+"Emitted when user dragging connection from output port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:211
+msgid "Emitted when the user presses [code]Ctrl + C[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:216
+msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:225
+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:230
+msgid ""
+"Emitted when a GraphNode is attempted to be duplicated in the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:236
+msgid "Emitted when a GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:246
+msgid "Emitted when the user presses [code]Ctrl + V[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:252
+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:258
+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:272
+msgid "The background drawn under the grid."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:275
+msgid "Color of major grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:278
+msgid "Color of minor grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:283
+msgid "The icon for the zoom out button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:286
+msgid "The icon for the zoom in button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:289
+msgid ""
+"The horizontal range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:292
+msgid "The vertical range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:295
+msgid "The icon for the zoom reset button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:298
+msgid "The fill color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:301
+msgid "The outline color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:304
+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:17
+msgid "Disables all input and output slots of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:24
+msgid "Disables input and output slot whose index is [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:31
+msgid "Returns the [Color] of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:37
+msgid ""
+"Returns the number of enabled input slots (connections) to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:44
+msgid "Returns the position of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:51
+msgid "Returns the type of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:58
+msgid "Returns the [Color] of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:64
+msgid ""
+"Returns the number of enabled output slots (connections) of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:71
+msgid "Returns the position of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:78
+msgid "Returns the type of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:85
+msgid "Returns the left (input) [Color] of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:92
+msgid "Returns the right (output) [Color] of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:99
+msgid "Returns the left (input) type of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:106
+msgid "Returns the right (output) type of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:113
+msgid ""
+"Returns [code]true[/code] if left (input) side of the slot [code]idx[/code] "
+"is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:120
+msgid ""
+"Returns [code]true[/code] if right (output) side of the slot [code]idx[/"
+"code] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:135
+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.\n"
+"Individual properties can be set using one of the [code]set_slot_*[/code] "
+"methods. You must enable at least one side of the slot to do so."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:149
+msgid ""
+"Sets the [Color] of the left (input) side of the slot [code]idx[/code] to "
+"[code]color_left[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:157
+msgid ""
+"Sets the [Color] of the right (output) side of the slot [code]idx[/code] to "
+"[code]color_right[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:165
+msgid ""
+"Toggles the left (input) side of the slot [code]idx[/code]. If "
+"[code]enable_left[/code] is [code]true[/code], a port will appear on the "
+"left side and the slot will be able to be connected from this side."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:173
+msgid ""
+"Toggles the right (output) side of the slot [code]idx[/code]. If "
+"[code]enable_right[/code] is [code]true[/code], a port will appear on the "
+"right side and the slot will be able to be connected from this side."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:181
+msgid ""
+"Sets the left (input) type of the slot [code]idx[/code] to [code]type_left[/"
+"code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:189
+msgid ""
+"Sets the right (output) type of the slot [code]idx[/code] to "
+"[code]type_right[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:195
+msgid "If [code]true[/code], the GraphNode is a comment node."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:198
+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:202
+msgid "Sets the overlay shown above the GraphNode. See [enum Overlay]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:205
+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:209
+msgid "If [code]true[/code], the GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:212
+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:216
+msgid "The text displayed in the GraphNode's title bar."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:222
+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:229
+msgid "Emitted when the GraphNode is dragged."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:234
+msgid "Emitted when the GraphNode is moved."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:239
+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:245
+msgid ""
+"Emitted when the GraphNode is requested to be resized. Happens on dragging "
+"the resizer handle (see [member resizable])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:251
+msgid "Emitted when any GraphNode's slot is updated."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:257
+msgid "No overlay is shown."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:260
+msgid "Show overlay set in the [code]breakpoint[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:263
+msgid "Show overlay set in the [code]position[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:268
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_BREAKPOINT]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:271
+msgid ""
+"The icon for the close button, visible when [member show_close] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:274
+msgid "The color modulation applied to the close button icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:277 doc/classes/WindowDialog.xml:41
+msgid "The vertical offset of the close button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:280
+msgid "The [StyleBox] used when [member comment] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:283
+msgid ""
+"The [StyleBox] used when [member comment] is enabled and the [GraphNode] is "
+"focused."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:290
+msgid "The default background for [GraphNode]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:293
+msgid "The icon used for representing ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:296
+msgid "Horizontal offset for the ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:299
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_POSITION]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:302
+msgid "The icon used for resizer, visible when [member resizable] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:305
+msgid "The color modulation applied to the resizer icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:308
+msgid "The background used when the [GraphNode] is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:311
+msgid "The vertical distance between ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:314
+msgid "Color of the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:317
+msgid "Font used for the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:320
+msgid "Vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:4
+msgid ""
+"Grid container used to arrange Control-derived children in a grid like "
+"layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:7
+msgid ""
+"GridContainer will arrange its Control-derived 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.\n"
+"[b]Note:[/b] GridContainer only works with child nodes inheriting from "
+"Control. It won't rearrange child nodes inheriting from Node2D."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:18
+msgid ""
+"The number of columns in the [GridContainer]. If modified, [GridContainer] "
+"reorders its Control-derived children to accommodate the new layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:26
+msgid "The horizontal separation of children nodes."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:29
+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.\n"
+"[b]Note:[/b] GridMap doesn't extend [VisualInstance] and therefore can't be "
+"hidden or cull masked based on [member VisualInstance.layers]. If you make a "
+"light not affect the first layer, the whole GridMap won't be lit by the "
+"light in question."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:14
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html"
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:22
+msgid "Clear all cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:39
+msgid ""
+"Returns an array of [ArrayMesh]es and [Transform] references of all bake "
+"meshes that exist within the current GridMap."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:48
+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."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:57
+msgid ""
+"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
+"returned if the cell is empty."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:64
+msgid "Returns an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:71
+msgid "Returns an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:77
+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:83
+msgid ""
+"Returns an array of [Vector3] with the non-empty cell coordinates in the "
+"grid map."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:99
+msgid ""
+"Returns the position of a grid cell in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:116
+msgid ""
+"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
+"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:135
+msgid "Sets an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:143
+msgid "Sets an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:150
+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:157
+msgid "If [code]true[/code], grid items are centered on the X axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:160
+msgid "If [code]true[/code], grid items are centered on the Y axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:163
+msgid "If [code]true[/code], grid items are centered on the Z axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:166
+msgid ""
+"The size of each octant measured in number of cells. This applies to all "
+"three axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:169
+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:173
+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:177
+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:181
+msgid ""
+"The physics layers this GridMap detects collisions in. See [url=https://docs."
+"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-"
+"layers-and-masks]Collision layers and masks[/url] in the documentation for "
+"more information."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:184
+msgid "The assigned [MeshLibrary]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:187
+msgid ""
+"Controls whether this GridMap will be baked in a [BakedLightmap] or not."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:194
+msgid "Emitted when [member cell_size] changes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:200
+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:38
+msgid "Closes the current context, and return the computed hash."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:45
+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:52
+msgid "Updates the computation with the given [code]chunk[/code] of data."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:58
+msgid "Hashing algorithm: MD5."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:61
+msgid "Hashing algorithm: SHA-1."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:64
+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/HeightMapShape.xml:4
+msgid "Height map shape for 3D physics."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:7
+msgid ""
+"Height map shape resource, which can be added to a [PhysicsBody] or [Area]."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:15
+msgid ""
+"Height map data, pool array must be of [member map_width] * [member "
+"map_depth] size."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:18
+msgid ""
+"Depth of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:21
+msgid ""
+"Width of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:4
+msgid "A hinge between two 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:7
+msgid ""
+"A HingeJoint normally uses the Z axis of body A as the hinge axis, another "
+"axis can be specified when adding it manually though. See also "
+"[Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:16 doc/classes/SpriteBase3D.xml:21
+msgid "Returns the value of the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:23 doc/classes/ParticlesMaterial.xml:25
+#: doc/classes/PinJoint.xml:16
+msgid "Returns the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:31
+msgid "If [code]true[/code], enables the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:39 doc/classes/PinJoint.xml:24
+msgid "Sets the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:45 doc/classes/HingeJoint.xml:85
+#: doc/classes/PhysicsServer.xml:977
+msgid ""
+"The speed with which the rotation across the axis perpendicular to the hinge "
+"gets corrected."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:48 doc/classes/HingeJoint.xml:102
+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/HingeJoint.xml:51 doc/classes/HingeJoint.xml:82
+msgid ""
+"The minimum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:54 doc/classes/HingeJoint.xml:90
+#: doc/classes/PhysicsServer.xml:982
+msgid "The lower this value, the more the rotation gets slowed down."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:59 doc/classes/HingeJoint.xml:79
+msgid ""
+"The maximum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:62 doc/classes/HingeJoint.xml:105
+msgid "When activated, a motor turns the hinge."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:65 doc/classes/HingeJoint.xml:96
+#: doc/classes/PhysicsServer.xml:988
+msgid "Maximum acceleration for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:68 doc/classes/HingeJoint.xml:93
+#: doc/classes/PhysicsServer.xml:985
+msgid "Target speed for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:71 doc/classes/HingeJoint.xml:76
+#: doc/classes/PhysicsServer.xml:968
+msgid ""
+"The speed with which the two bodies get pulled together when they move in "
+"different directions."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:4
+msgid "Used to create an HMAC for a message using a key."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:7
+msgid ""
+"The HMACContext class is useful for advanced HMAC use cases, such as "
+"streaming the message as it supports creating the message over time rather "
+"than providing it all at once.\n"
+"[codeblock]\n"
+"extends Node\n"
+"var ctx = HMACContext.new()\n"
+"\n"
+"func _ready():\n"
+" var key = \"supersecret\".to_utf8()\n"
+" var err = ctx.start(HashingContext.HASH_SHA256, key)\n"
+" assert(err == OK)\n"
+" var msg1 = \"this is \".to_utf8()\n"
+" var msg2 = \"vewy vewy secret\".to_utf8()\n"
+" err = ctx.update(msg1)\n"
+" assert(err == OK)\n"
+" err = ctx.update(msg2)\n"
+" assert(err == OK)\n"
+" var hmac = ctx.finish()\n"
+" print(hmac.hex_encode())\n"
+"[/codeblock]\n"
+"And in C# we can use the following.\n"
+"[codeblock]\n"
+"using Godot;\n"
+"using System;\n"
+"using System.Diagnostics;\n"
+"\n"
+"public class CryptoNode : Node\n"
+"{\n"
+" private HMACContext ctx = new HMACContext();\n"
+" public override void _Ready()\n"
+" {\n"
+" PoolByteArray key = String(\"supersecret\").to_utf8();\n"
+" Error err = ctx.Start(HashingContext.HASH_SHA256, key);\n"
+" GD.Assert(err == OK);\n"
+" PoolByteArray msg1 = String(\"this is \").to_utf8();\n"
+" PoolByteArray msg2 = String(\"vewy vew secret\").to_utf8();\n"
+" err = ctx.Update(msg1);\n"
+" GD.Assert(err == OK);\n"
+" err = ctx.Update(msg2);\n"
+" GD.Assert(err == OK);\n"
+" PoolByteArray hmac = ctx.Finish();\n"
+" GD.Print(hmac.HexEncode());\n"
+" }\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:58
+msgid ""
+"Returns the resulting HMAC. If the HMAC failed, an empty [PoolByteArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:66
+msgid ""
+"Initializes the HMACContext. This method cannot be called again on the same "
+"HMACContext until [method finish] has been called."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:73
+msgid ""
+"Updates the message to be HMACed. This can be called multiple times before "
+"[method finish] is called to append [code]data[/code] to the message, but "
+"cannot be called until [method start] has been called."
+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 "Displayed when the decrement button is being pressed."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30
+msgid ""
+"Used as texture for the grabber, the draggable element representing current "
+"scroll."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:29 doc/classes/VScrollBar.xml:33
+msgid "Used when the mouse hovers over the grabber."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:32 doc/classes/VScrollBar.xml:36
+msgid "Used when the grabber is being dragged."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:35
+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:38 doc/classes/VScrollBar.xml:42
+msgid "Displayed when the mouse cursor hovers over the increment button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45
+msgid "Displayed when the increment button is being pressed."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:44 doc/classes/VScrollBar.xml:48
+msgid "Used as background of this [ScrollBar]."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:47 doc/classes/VScrollBar.xml:51
+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).\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/HSlider.xml:18 doc/classes/VSlider.xml:22
+msgid "The texture for the grabber (the draggable element)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:21
+msgid "The background of the area to the left of the grabber."
+msgstr ""
+
+#: doc/classes/HSlider.xml:26 doc/classes/VSlider.xml:30
+msgid "The texture for the grabber when it's disabled."
+msgstr ""
+
+#: doc/classes/HSlider.xml:29 doc/classes/VSlider.xml:33
+msgid "The texture for the grabber when it's focused."
+msgstr ""
+
+#: doc/classes/HSlider.xml:32
+msgid ""
+"The background for the whole slider. Determines the height of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:35 doc/classes/VSlider.xml:39
+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 "Low-level 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. [b]See the "
+"[HTTPRequest] node for a higher-level alternative.[/b]\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.\n"
+"[b]Note:[/b] SSL/TLS support is currently limited to TLS 1.0, TLS 1.1, and "
+"TLS 1.2. Attempting to connect to a TLS 1.3-only server will return an "
+"error.\n"
+"[b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are "
+"currently not supported. Revoked certificates are accepted as long as they "
+"are otherwise valid. If this is a concern, you may want to use automatically "
+"managed certificates with a short validity period."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:17 doc/classes/HTTPRequest.xml:71
+#: doc/classes/StreamPeerSSL.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:23
+msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:33
+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:42
+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:49
+msgid "Returns the response's HTTP status code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:55
+msgid "Returns the response headers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:61
+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:74
+msgid ""
+"Returns a [enum Status] constant. Need to call [method poll] in order to get "
+"status updates."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:80
+msgid "If [code]true[/code], this [HTTPClient] has a response available."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:86
+msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:92
+msgid ""
+"This needs to be called in order to have any request processed. Check "
+"results with [method get_status]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:99
+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:116
+msgid "Reads one chunk from the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:126
+msgid ""
+"Sends a request to the connected host.\n"
+"The URL parameter is usually just the part after the host, so for "
+"[code]http://somehost.com/index.php[/code], it is [code]/index.php[/code]. "
+"When sending requests to an HTTP proxy server, it should be an absolute URL. "
+"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
+"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
+"authority component ([code]host:port[/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]\n"
+"[b]Note:[/b] The [code]request_data[/code] parameter is ignored if "
+"[code]method[/code] is [constant HTTPClient.METHOD_GET]. This is because GET "
+"methods can't contain request data. As a workaround, you can pass request "
+"data as a query string in the URL. See [method String.http_escape] for an "
+"example."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:146
+msgid ""
+"Sends a raw request to the connected host.\n"
+"The URL parameter is usually just the part after the host, so for "
+"[code]http://somehost.com/index.php[/code], it is [code]/index.php[/code]. "
+"When sending requests to an HTTP proxy server, it should be an absolute URL. "
+"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
+"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
+"authority component ([code]host:port[/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:155
+msgid ""
+"If [code]true[/code], execution will block until all data is read from the "
+"response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:158
+msgid "The connection to use for this client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:161
+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:166
+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:169
+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:172
+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:175
+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:178
+msgid ""
+"HTTP DELETE method. The DELETE method requests to delete the specified "
+"resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:181
+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:184
+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:187
+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:190
+msgid ""
+"HTTP PATCH method. The PATCH method is used to apply partial modifications "
+"to a resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:193
+msgid "Represents the size of the [enum Method] enum."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:196
+msgid "Status: Disconnected from the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:199
+msgid "Status: Currently resolving the hostname for the given URL into an IP."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:202
+msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:205
+msgid "Status: Currently connecting to server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:208
+msgid "Status: Can't connect to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:211
+msgid "Status: Connection established."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:214
+msgid "Status: Currently sending request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:217
+msgid "Status: HTTP body received."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:220
+msgid "Status: Error in HTTP connection."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:223
+msgid "Status: Error in SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:226
+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:229
+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:232
+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:235
+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:238
+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:241
+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:244
+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:247
+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:250
+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:253
+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:256
+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:259
+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:262
+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:265
+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:268
+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:271
+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:274
+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:277
+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:280
+msgid ""
+"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:283
+msgid ""
+"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
+"i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:286
+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:289
+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:292
+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:295
+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:298
+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:301
+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:304
+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:307
+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:310
+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:313
+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:316
+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:319
+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:322
+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:325
+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:328
+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:331
+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:334
+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:337
+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:340
+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:343
+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:346
+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:349
+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:352
+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:355
+msgid ""
+"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
+"resource of a method is locked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:358
+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:361
+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:364
+msgid ""
+"HTTP status code [code]428 Precondition Required[/code]. The origin server "
+"requires the request to be conditional."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:367
+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:370
+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:373
+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:376
+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:379
+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:382
+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:385
+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:388
+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:391
+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:394
+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:397
+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:400
+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:403
+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:406
+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]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, "
+"especially regarding SSL security.\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"
+" 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]"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:70
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:77
+msgid "Cancels the current request."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:83
+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:90
+msgid "Returns the amount of bytes this HTTPRequest downloaded."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:96
+msgid ""
+"Returns the current status of the underlying [HTTPClient]. See [enum "
+"HTTPClient.Status]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:107
+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.\n"
+"[b]Note:[/b] When [code]method[/code] is [constant HTTPClient.METHOD_GET], "
+"the payload sent via [code]request_data[/code] might be ignored by the "
+"server or even cause the server to reject the request (check [url=https://"
+"datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 section 4.3.1[/"
+"url] for more details). As a workaround, you can send data as a query string "
+"in the URL. See [method String.http_escape] for an example."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:120
+msgid ""
+"Creates request on the underlying [HTTPClient] using a raw array of bytes "
+"for the request body. 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:127
+msgid "Maximum allowed size for response bodies."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:130
+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 lower value (e.g. 4096 for 4 KiB) when downloading small files "
+"to decrease memory usage at the cost of download speeds."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:134
+msgid "The file to download into. Will output any received file into it."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:137
+msgid "Maximum number of allowed redirects."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:142
+msgid "If [code]true[/code], multithreading is used to improve performance."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:152
+msgid "Emitted when a request is completed."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:158
+msgid "Request successful."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:163
+msgid "Request failed while connecting."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:166
+msgid "Request failed while resolving."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:169
+msgid "Request failed due to connection (read/write) error."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:172
+msgid "Request failed on SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:175
+msgid "Request does not have a response (yet)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:178
+msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:181
+msgid "Request failed (currently unused)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:184
+msgid "HTTPRequest couldn't open the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:187
+msgid "HTTPRequest couldn't write to the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:190
+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 an "
+"[ImageTexture] and provides commonly used [i]image processing[/i] methods. "
+"The maximum width and height for an [Image] are [constant MAX_WIDTH] and "
+"[constant MAX_HEIGHT].\n"
+"An [Image] cannot be assigned to a [code]texture[/code] property of an "
+"object directly (such as [Sprite]), and has to be converted manually to an "
+"[ImageTexture] first.\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images may fail to import."
+msgstr ""
+
+#: doc/classes/Image.xml:12 doc/classes/ImageTexture.xml:31
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
+"importing_images.html"
+msgstr ""
+
+#: doc/classes/Image.xml:21
+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:31
+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:40
+msgid ""
+"Copies [code]src_rect[/code] from [code]src[/code] image to this image at "
+"coordinates [code]dst[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:50
+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:57
+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:63
+msgid "Removes the image's mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:72
+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:79
+msgid "Converts the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:86
+msgid "Copies [code]src[/code] image to this image."
+msgstr ""
+
+#: doc/classes/Image.xml:96
+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:107
+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:115
+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:121
+msgid ""
+"Decompresses the image if it is compressed. Returns an error if decompress "
+"function is not available."
+msgstr ""
+
+#: doc/classes/Image.xml:127
+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:133
+msgid ""
+"Stretches the image and enlarges it by a factor of 2. No interpolation is "
+"done."
+msgstr ""
+
+#: doc/classes/Image.xml:140
+msgid "Fills the image with a given [Color]."
+msgstr ""
+
+#: doc/classes/Image.xml:146
+msgid "Blends low-alpha pixels with nearby pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:152
+msgid "Flips the image horizontally."
+msgstr ""
+
+#: doc/classes/Image.xml:158
+msgid "Flips the image vertically."
+msgstr ""
+
+#: doc/classes/Image.xml:165
+msgid ""
+"Generates mipmaps for the image. Mipmaps are precalculated lower-resolution "
+"copies of the image that are automatically used if the image needs to be "
+"scaled down when rendered. They help improve image quality and performance "
+"when rendering. This method returns an error if the image is compressed, in "
+"a custom format, or if the image's width/height is [code]0[/code].\n"
+"[b]Note:[/b] Mipmap generation is done on the CPU, is single-threaded and is "
+"[i]always[/i] done on the main thread. This means generating mipmaps will "
+"result in noticeable stuttering during gameplay, even if [method "
+"generate_mipmaps] is called from a [Thread]."
+msgstr ""
+
+#: doc/classes/Image.xml:172
+msgid "Returns a copy of the image's raw data."
+msgstr ""
+
+#: doc/classes/Image.xml:178
+msgid "Returns the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:184
+msgid "Returns the image's height."
+msgstr ""
+
+#: doc/classes/Image.xml:191
+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:199
+msgid ""
+"Returns the color of the pixel at [code](x, y)[/code] if the image is "
+"locked. If the image is unlocked, it always returns a [Color] with the value "
+"[code](0, 0, 0, 1.0)[/code]. This is the same as [method get_pixelv], but "
+"two integer arguments instead of a Vector2 argument."
+msgstr ""
+
+#: doc/classes/Image.xml:206
+msgid ""
+"Returns the color of the pixel at [code]src[/code] if the image is locked. "
+"If the image is unlocked, it always returns a [Color] with the value [code]"
+"(0, 0, 0, 1.0)[/code]. This is the same as [method get_pixel], but with a "
+"Vector2 argument instead of two integer arguments."
+msgstr ""
+
+#: doc/classes/Image.xml:213
+msgid ""
+"Returns a new image that is a copy of the image's area specified with "
+"[code]rect[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:219
+msgid "Returns the image's size (width and height)."
+msgstr ""
+
+#: doc/classes/Image.xml:225
+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:231
+msgid "Returns the image's width."
+msgstr ""
+
+#: doc/classes/Image.xml:237
+msgid "Returns [code]true[/code] if the image has generated mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:243
+msgid "Returns [code]true[/code] if the image is compressed."
+msgstr ""
+
+#: doc/classes/Image.xml:249
+msgid "Returns [code]true[/code] if the image has no data."
+msgstr ""
+
+#: doc/classes/Image.xml:255
+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:262
+msgid ""
+"Loads an image from file [code]path[/code]. See [url=https://docs."
+"godotengine.org/en/3.4/getting_started/workflow/assets/importing_images."
+"html#supported-image-formats]Supported image formats[/url] for a list of "
+"supported image formats and limitations.\n"
+"[b]Warning:[/b] This method should only be used in the editor or in cases "
+"when you need to load external images at run-time, such as images located at "
+"the [code]user://[/code] directory, and may not work in exported projects.\n"
+"See also [ImageTexture] description for usage examples."
+msgstr ""
+
+#: doc/classes/Image.xml:271
+msgid ""
+"Loads an image from the binary contents of a BMP file.\n"
+"[b]Note:[/b] Godot's BMP module doesn't support 16-bit per pixel images. "
+"Only 1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel images are supported."
+msgstr ""
+
+#: doc/classes/Image.xml:279
+msgid "Loads an image from the binary contents of a JPEG file."
+msgstr ""
+
+#: doc/classes/Image.xml:286
+msgid "Loads an image from the binary contents of a PNG file."
+msgstr ""
+
+#: doc/classes/Image.xml:293
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:300
+msgid "Loads an image from the binary contents of a WebP file."
+msgstr ""
+
+#: doc/classes/Image.xml:306
+msgid ""
+"Locks the data for reading and writing access. Sends an error to the console "
+"if the image is not locked when reading or writing a pixel."
+msgstr ""
+
+#: doc/classes/Image.xml:312
+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:318
+msgid ""
+"Multiplies color values with alpha values. Resulting color values for a "
+"pixel are [code](color * alpha)/256[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:327
+msgid ""
+"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
+"New pixels are calculated using the [code]interpolation[/code] mode defined "
+"via [enum Interpolation] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:335
+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. New pixels are calculated using the [code]interpolation[/code] mode "
+"defined via [enum Interpolation] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:341
+msgid ""
+"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
+msgstr ""
+
+#: doc/classes/Image.xml:349
+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.\n"
+"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which "
+"means [method save_exr] will return [constant ERR_UNAVAILABLE] when it is "
+"called from an exported project."
+msgstr ""
+
+#: doc/classes/Image.xml:357
+msgid "Saves the image as a PNG file to [code]path[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:371
+msgid ""
+"Sets the [Color] of the pixel at [code](x, y)[/code] if the image is locked. "
+"Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.lock()\n"
+"img.set_pixel(x, y, color) # Works\n"
+"img.unlock()\n"
+"img.set_pixel(x, y, color) # Does not have an effect\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:387
+msgid ""
+"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code] if the image is "
+"locked. 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.lock()\n"
+"img.set_pixelv(Vector2(x, y), color) # Works\n"
+"img.unlock()\n"
+"img.set_pixelv(Vector2(x, y), color) # Does not have an effect\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:401
+msgid "Shrinks the image by a factor of 2."
+msgstr ""
+
+#: doc/classes/Image.xml:407
+msgid "Converts the raw data from the sRGB colorspace to a linear scale."
+msgstr ""
+
+#: doc/classes/Image.xml:413
+msgid "Unlocks the data and prevents changes."
+msgstr ""
+
+#: doc/classes/Image.xml:419
+msgid ""
+"Holds all the image's color data in a given format. See [enum Format] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:424
+msgid "The maximal width allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:427
+msgid "The maximal height allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:430
+msgid "Texture format with a single 8-bit depth representing luminance."
+msgstr ""
+
+#: doc/classes/Image.xml:433
+msgid ""
+"OpenGL texture format with two values, luminance and alpha each stored with "
+"8 bits."
+msgstr ""
+
+#: doc/classes/Image.xml:436
+msgid ""
+"OpenGL texture format [code]RED[/code] with a single component and a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
+msgstr ""
+
+#: doc/classes/Image.xml:440
+msgid ""
+"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
+"8 for each."
+msgstr ""
+
+#: doc/classes/Image.xml:443
+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:447
+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:451
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 4."
+msgstr ""
+
+#: doc/classes/Image.xml:454
+msgid ""
+"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
+"component of RGB and one bit for alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:457
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
+"bit floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:460
+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:463
+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:466
+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:469
+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:472
+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:475
+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:478
+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:481
+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:484
+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:488
+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:492
+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:496
+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:499
+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:502
+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:506
+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:509
+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:512
+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:516
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:519
+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:522
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:525
+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:528
+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:531
+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:534
+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:537
+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:540
+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:544
+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:548
+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:552
+msgid "Represents the size of the [enum Format] enum."
+msgstr ""
+
+#: doc/classes/Image.xml:555
+msgid ""
+"Performs nearest-neighbor interpolation. If the image is resized, it will be "
+"pixelated."
+msgstr ""
+
+#: doc/classes/Image.xml:558
+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:561
+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:564
+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 far fewer 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:571
+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:574
+msgid "Image does not have alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:577
+msgid "Image stores alpha in a single bit."
+msgstr ""
+
+#: doc/classes/Image.xml:580
+msgid "Image uses alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:583
+msgid "Use S3TC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:586
+msgid "Use PVRTC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:589
+msgid "Use PVRTC4 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:592
+msgid "Use ETC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:595
+msgid "Use ETC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:598
+msgid ""
+"Source texture (before compression) is a regular texture. Default for all "
+"textures."
+msgstr ""
+
+#: doc/classes/Image.xml:601
+msgid "Source texture (before compression) is in sRGB space."
+msgstr ""
+
+#: doc/classes/Image.xml:604
+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 [Texture] based on an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:7
+msgid ""
+"A [Texture] based on an [Image]. For an image to be displayed, an "
+"[ImageTexture] has to be created from it using the [method "
+"create_from_image] method:\n"
+"[codeblock]\n"
+"var texture = ImageTexture.new()\n"
+"var image = Image.new()\n"
+"image.load(\"res://icon.png\")\n"
+"texture.create_from_image(image)\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"This way, textures can be created at run-time by loading images both from "
+"within the editor and externally.\n"
+"[b]Warning:[/b] Prefer to load imported textures with [method @GDScript."
+"load] over loading them from within the filesystem dynamically with [method "
+"Image.load], as it may not work in exported projects:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"This is because images have to be imported as [StreamTexture] first to be "
+"loaded with [method @GDScript.load]. If you'd still like to load an image "
+"file just like any other [Resource], import it as an [Image] resource "
+"instead, and then load it normally using the [method @GDScript.load] "
+"method.\n"
+"But do note that the image data can still be retrieved from an imported "
+"texture as well using the [method Texture.get_data] method, which returns a "
+"copy of the data:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"var image : Image = texture.get_data()\n"
+"[/codeblock]\n"
+"An [ImageTexture] is not meant to be operated from within the editor "
+"interface directly, and is mostly useful for rendering images on screen "
+"dynamically via code. If you need to generate images procedurally from "
+"within the editor, consider saving and importing images as custom texture "
+"resources implementing a new [EditorImportPlugin].\n"
+"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
+"hardware limitations."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:41
+msgid ""
+"Create a new [ImageTexture] with [code]width[/code] and [code]height[/"
+"code].\n"
+"[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] "
+"is any combination of [enum Texture.Flags]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:50
+msgid ""
+"Initializes the texture by allocating and setting the data from an [Image] "
+"with [code]flags[/code] from [enum Texture.Flags]. An sRGB to linear color "
+"space conversion can take place, according to [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:56
+msgid "Returns the format of the texture, one of [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:63
+msgid ""
+"Loads an image from a file path and creates a texture from it.\n"
+"[b]Note:[/b] This method is deprecated and will be removed in Godot 4.0, use "
+"[method Image.load] and [method create_from_image] instead."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:71
+msgid ""
+"Replaces the texture's data with a new [Image].\n"
+"[b]Note:[/b] The texture has to be initialized first with the [method "
+"create_from_image] method before it can be updated. The new image "
+"dimensions, format, and mipmaps configuration should match the existing "
+"texture's image configuration, otherwise it has to be re-created with the "
+"[method create_from_image] method.\n"
+"Use this method over [method create_from_image] if you need to update the "
+"texture frequently, which is faster than allocating additional memory for a "
+"new texture each time."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:80 doc/classes/VisualServer.xml:2837
+msgid "Resizes the texture to the specified dimensions."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:87
+msgid "The storage quality for [constant STORAGE_COMPRESS_LOSSY]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:90
+msgid "The storage type (raw, lossy, or compressed)."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:95
+msgid "[Image] data is stored raw and unaltered."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:98
+msgid ""
+"[Image] data is compressed with a lossy algorithm. You can set the storage "
+"quality with [member lossy_quality]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:101
+msgid "[Image] data is compressed with a lossless algorithm."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:4
+msgid "Draws simple geometry from code."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.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.\n"
+"[b]Note:[/b] In case of missing points when handling large amounts of mesh "
+"data, try increasing its buffer size limit under [member ProjectSettings."
+"rendering/limits/buffers/immediate_buffer_size_kb]."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:23
+msgid ""
+"Simple helper to draw an UV sphere with given latitude, longitude and radius."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:30
+msgid ""
+"Adds a vertex in local coordinate space with the currently set color/uv/etc."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:38
+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/ImmediateGeometry.xml:45
+msgid "Clears everything that was drawn using begin/end."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:51
+msgid "Ends a drawing context and displays the results."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:58
+msgid "The current drawing color."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:65
+msgid "The next vertex's normal."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:72
+msgid "The next vertex's tangent (and binormal facing)."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:79
+msgid "The next vertex's UV."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:86
+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/3.4/tutorials/inputs/index.html"
+msgstr ""
+
+#: doc/classes/Input.xml:20
+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:29
+msgid "If the specified action is already pressed, this will release it."
+msgstr ""
+
+#: doc/classes/Input.xml:37
+msgid ""
+"Adds a new mapping entry (in SDL2 format) to the mapping database. "
+"Optionally update already connected devices."
+msgstr ""
+
+#: doc/classes/Input.xml:43
+msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
+"Returns the acceleration of the device's accelerometer sensor, if the device "
+"has one. Otherwise, the method returns [constant Vector3.ZERO].\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.\n"
+"[b]Note:[/b] This method only works on iOS, Android, and UWP. On other "
+"platforms, it always returns [constant Vector3.ZERO]. On Android the unit of "
+"measurement for each axis is m/s² while on iOS and UWP it's a multiple of "
+"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
+msgstr ""
+
+#: doc/classes/Input.xml:60
+msgid ""
+"Returns a value between 0 and 1 representing the raw intensity of the given "
+"action, ignoring the action's deadzone. In most cases, you should use "
+"[method get_action_strength] instead.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:69
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:78
+msgid ""
+"Get axis input by specifying two actions, one negative and one positive.\n"
+"This is a shorthand for writing [code]Input."
+"get_action_strength(\"positive_action\") - Input."
+"get_action_strength(\"negative_action\")[/code]."
+msgstr ""
+
+#: doc/classes/Input.xml:85
+msgid ""
+"Returns an [Array] containing the device IDs of all currently connected "
+"joypads."
+msgstr ""
+
+#: doc/classes/Input.xml:91
+msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
+msgstr ""
+
+#: doc/classes/Input.xml:97
+msgid ""
+"Returns the gravity of the device's accelerometer sensor, if the device has "
+"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
+"it always returns [constant Vector3.ZERO]. On Android the unit of "
+"measurement for each axis is m/s² while on iOS it's a multiple of the "
+"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
+msgstr ""
+
+#: doc/classes/Input.xml:104
+msgid ""
+"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
+"gyroscope sensor, if the device has one. Otherwise, the method returns "
+"[constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
+"it always returns [constant Vector3.ZERO]."
+msgstr ""
+
+#: doc/classes/Input.xml:113
+msgid ""
+"Returns the current value of the joypad axis at given index (see [enum "
+"JoystickList])."
+msgstr ""
+
+#: doc/classes/Input.xml:120
+msgid "Returns the index of the provided axis name."
+msgstr ""
+
+#: doc/classes/Input.xml:127
+msgid ""
+"Receives a [enum JoystickList] axis and returns its equivalent name as a "
+"string."
+msgstr ""
+
+#: doc/classes/Input.xml:134
+msgid "Returns the index of the provided button name."
+msgstr ""
+
+#: doc/classes/Input.xml:141
+msgid ""
+"Receives a gamepad button from [enum JoystickList] and returns its "
+"equivalent name as a string."
+msgstr ""
+
+#: doc/classes/Input.xml:148
+msgid ""
+"Returns a SDL2-compatible device GUID on platforms that use gamepad "
+"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Input.xml:155
+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:169
+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:175
+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:181
+msgid ""
+"Returns the magnetic field strength in micro-Tesla for all axes of the "
+"device's magnetometer sensor, if the device has one. Otherwise, the method "
+"returns [constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android, iOS and UWP. On other "
+"platforms, it always returns [constant Vector3.ZERO]."
+msgstr ""
+
+#: doc/classes/Input.xml:188
+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:194
+msgid "Returns the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:205
+msgid ""
+"Gets an input vector by specifying four actions for the positive and "
+"negative X and Y axes.\n"
+"This method is useful when getting vector input, such as from a joystick, "
+"directional pad, arrows, or WASD. The vector has its length limited to 1 and "
+"has a circular deadzone, which is useful for using vector input as "
+"movement.\n"
+"By default, the deadzone is automatically calculated from the average of the "
+"action deadzones. However, you can override the deadzone to be whatever you "
+"want (on the range of 0 to 1)."
+msgstr ""
+
+#: doc/classes/Input.xml:215
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:225
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:234
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:243
+msgid ""
+"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
+"JoystickList])."
+msgstr ""
+
+#: doc/classes/Input.xml:250
+msgid ""
+"Returns [code]true[/code] if the system knows the specified device. This "
+"means that it sets all button and axis indices exactly as defined in [enum "
+"JoystickList]. Unknown joypads are not expected to match these constants, "
+"but you can still retrieve events from them."
+msgstr ""
+
+#: doc/classes/Input.xml:257
+msgid ""
+"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
+"KeyList] constant."
+msgstr ""
+
+#: doc/classes/Input.xml:264
+msgid ""
+"Returns [code]true[/code] if you are pressing the mouse button specified "
+"with [enum ButtonList]."
+msgstr ""
+
+#: doc/classes/Input.xml:274
+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:282
+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:296
+msgid ""
+"Removes all mappings from the internal database that match the given GUID."
+msgstr ""
+
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
+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:324
+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:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
+msgid "Sets the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:364
+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:375
+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:383
+msgid "Stops the vibration of the joypad."
+msgstr ""
+
+#: doc/classes/Input.xml:390
+msgid ""
+"Vibrate Android and iOS devices.\n"
+"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
+"settings. iOS does not support duration."
+msgstr ""
+
+#: doc/classes/Input.xml:398
+msgid "Sets the mouse position to the specified vector."
+msgstr ""
+
+#: doc/classes/Input.xml:407
+msgid "Emitted when a joypad device has been connected or disconnected."
+msgstr ""
+
+#: doc/classes/Input.xml:413
+msgid "Makes the mouse cursor visible if it is hidden."
+msgstr ""
+
+#: doc/classes/Input.xml:416
+msgid "Makes the mouse cursor hidden if it is visible."
+msgstr ""
+
+#: doc/classes/Input.xml:419
+msgid ""
+"Captures the mouse. The mouse will be hidden and its position locked at the "
+"center of the screen.\n"
+"[b]Note:[/b] If you want to process the mouse's movement in this mode, you "
+"need to use [member InputEventMouseMotion.relative]."
+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/3.4/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:27
+msgid "Returns a [String] representation of the event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:35
+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].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:44
+msgid ""
+"Returns [code]true[/code] if this input event matches a pre-defined action "
+"of any type.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:54
+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].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:63
+msgid ""
+"Returns [code]true[/code] if the given action is released (i.e. not "
+"pressed). Not relevant for events of type [InputEventMouseMotion] or "
+"[InputEventScreenDrag].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:70
+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:76
+msgid ""
+"Returns [code]true[/code] if this input event is an echo event (only for "
+"events of type [InputEventKey])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:82
+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:90
+msgid ""
+"Returns [code]true[/code] if the specified [code]event[/code] matches this "
+"event. Only valid for action events i.e key ([InputEventKey]), button "
+"([InputEventMouseButton] or [InputEventJoypadButton]), axis "
+"[InputEventJoypadMotion] or action ([InputEventAction]) events.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:99
+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:105
+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/3.4/tutorials/inputs/inputevent.html#actions"
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:18
+msgid "The action's name. Actions are accessed via this [String]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:21
+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:24
+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 specifying how strongly the joypad axis is 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 JoystickList] 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 JoystickList] 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:16
+msgid ""
+"Returns the physical scancode combined with modifier keys such as "
+"[code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_scancode_string(event."
+"get_physical_scancode_with_modifiers())[/code] where [code]event[/code] is "
+"the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:23
+msgid ""
+"Returns the scancode combined with modifier keys such as [code]Shift[/code] "
+"or [code]Alt[/code]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_scancode_string(event."
+"get_scancode_with_modifiers())[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:30
+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:33
+msgid ""
+"Key physical scancode, 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_scancode_string(event.physical_scancode)[/code] where [code]event[/code] "
+"is the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:37
+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:40
+msgid ""
+"The key scancode, 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_scancode_string(event.scancode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:44
+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 OS.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/3.4/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:18
+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:21
+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:25
+msgid "The mouse speed in pixels per second."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:28
+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 [code]Shift[/"
+"code] or [code]Alt[/code]. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:16
+msgid "State of the [code]Alt[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:19
+msgid "State of the [code]Command[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:22
+msgid "State of the [code]Ctrl[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:25
+msgid "State of the [code]Meta[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:28
+msgid "State of the [code]Shift[/code] 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/3.4/tutorials/inputs/inputevent.html#inputmap"
+msgstr ""
+
+#: doc/classes/InputMap.xml:18
+msgid ""
+"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:26
+msgid "Removes an [InputEvent] from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:33
+msgid "Removes all events from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:40
+msgid "Returns a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:48
+msgid ""
+"Returns [code]true[/code] if the action has the given [InputEvent] "
+"associated with it."
+msgstr ""
+
+#: doc/classes/InputMap.xml:56
+msgid "Sets a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:64
+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:72
+msgid "Removes an action from the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:81
+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.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputMap.xml:89
+msgid "Returns an array of [InputEvent]s associated with a given action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:95
+msgid "Returns an array of all actions in the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:102
+msgid ""
+"Returns [code]true[/code] if the [InputMap] has a registered action with the "
+"given name."
+msgstr ""
+
+#: doc/classes/InputMap.xml:108
+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 replace_by_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:18
+msgid ""
+"Not thread-safe. Use [method Object.call_deferred] if calling from a thread."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:24
+msgid ""
+"Gets the path to the [PackedScene] resource file that is loaded by default "
+"when calling [method replace_by_instance]. Not thread-safe. Use [method "
+"Object.call_deferred] if calling from a thread."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:37
+msgid ""
+"Replaces this placeholder by the scene handed as an argument, or the "
+"original scene if no argument is given. As for all resources, the scene is "
+"loaded only if it's not loaded already. By manually loading the scene "
+"beforehand, delays caused by this function can be avoided."
+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:30
+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:37
+msgid ""
+"Cast a float value to an integer value, this method simply removes the "
+"number fractions (i.e. rounds [code]from[/code] towards zero), so for "
+"example [code]int(2.7)[/code] will be equals to 2, [code]int(0.1)[/code] "
+"will be equals to 0 and [code]int(-2.7)[/code] will be equals to -2. This "
+"operation is also called truncation."
+msgstr ""
+
+#: doc/classes/int.xml:44
+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/InterpolatedCamera.xml:4
+msgid "[i]Deprecated.[/i] Camera which moves toward another node."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:7
+msgid ""
+"[i]Deprecated (will be removed in Godot 4.0).[/i] InterpolatedCamera is a "
+"[Camera] which smoothly moves to match a target node's position and "
+"rotation.\n"
+"If it is not [member enabled] or does not have a valid target set, "
+"InterpolatedCamera acts like a normal Camera."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:17
+msgid "Sets the node to move toward and orient with."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:23
+msgid ""
+"If [code]true[/code], and a target is set, the camera will move "
+"automatically."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:26
+msgid ""
+"How quickly the camera moves toward its target. Higher values will result in "
+"tighter camera motion."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:29
+msgid "The target's [NodePath]."
+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:16
+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:23
+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:29
+msgid "Returns all the user's current IPv4 and IPv6 addresses as an array."
+msgstr ""
+
+#: doc/classes/IP.xml:35
+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:51
+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:58
+msgid ""
+"Return resolved addresses, or an empty array if an error happened or "
+"resolution didn't happen yet (see [method get_resolve_item_status])."
+msgstr ""
+
+#: doc/classes/IP.xml:65
+msgid ""
+"Returns a queued hostname's status as a [enum ResolverStatus] constant, "
+"given its queue [code]id[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:73
+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:81
+msgid ""
+"Resolves a given hostname in a blocking way. Addresses are returned as an "
+"[Array] of IPv4 or IPv6 depending on [code]ip_type[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:89
+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:95
+msgid "DNS hostname resolver status: No status."
+msgstr ""
+
+#: doc/classes/IP.xml:98
+msgid "DNS hostname resolver status: Waiting."
+msgstr ""
+
+#: doc/classes/IP.xml:101
+msgid "DNS hostname resolver status: Done."
+msgstr ""
+
+#: doc/classes/IP.xml:104
+msgid "DNS hostname resolver status: Error."
+msgstr ""
+
+#: doc/classes/IP.xml:107
+msgid ""
+"Maximum number of concurrent DNS resolver queries allowed, [constant "
+"RESOLVER_INVALID_ID] is returned if exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:110
+msgid ""
+"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:113
+msgid "Address type: None."
+msgstr ""
+
+#: doc/classes/IP.xml:116
+msgid "Address type: Internet protocol version 4 (IPv4)."
+msgstr ""
+
+#: doc/classes/IP.xml:119
+msgid "Address type: Internet protocol version 6 (IPv6)."
+msgstr ""
+
+#: doc/classes/IP.xml:122
+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 Enter.\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:19
+msgid "Adds an item to the item list with no text, only an icon."
+msgstr ""
+
+#: doc/classes/ItemList.xml:28
+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:35
+msgid "Removes all items from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:41
+msgid ""
+"Ensure current selection is visible, adjusting the scroll position as "
+"necessary."
+msgstr ""
+
+#: doc/classes/ItemList.xml:49
+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:56
+msgid "Returns the number of items currently in the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:63
+msgid ""
+"Returns the custom background color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:70
+msgid ""
+"Returns the custom foreground color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:77
+msgid "Returns the icon associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:84
+msgid "Returns a [Color] modulating item's icon at the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:91
+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:98
+msgid "Returns the metadata value of the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:105
+msgid "Returns the text associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:112
+msgid "Returns the tooltip hint associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:118
+msgid "Returns an array with the indexes of the selected items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:124
+msgid ""
+"Returns the [Object] ID associated with the list.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ItemList.xml:131
+msgid "Returns [code]true[/code] if one or more items are selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:138
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is disabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:145
+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:152
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:159
+msgid ""
+"Returns [code]true[/code] if the tooltip is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:166
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is currently "
+"selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:174
+msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:181
+msgid "Removes the item specified by [code]idx[/code] index from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:189
+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:198
+msgid ""
+"Sets the background color of the item specified by [code]idx[/code] index to "
+"the specified [Color]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:206
+msgid ""
+"Sets the foreground color of the item specified by [code]idx[/code] index to "
+"the specified [Color]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:214
+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 Enter)."
+msgstr ""
+
+#: doc/classes/ItemList.xml:223
+msgid ""
+"Sets (or replaces) the icon's [Texture] associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:231
+msgid ""
+"Sets a modulating [Color] of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:239
+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:247
+msgid "Sets whether the item icon will be drawn transposed."
+msgstr ""
+
+#: doc/classes/ItemList.xml:255
+msgid ""
+"Sets a value (of any type) to be stored with the item associated with the "
+"specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:263
+msgid ""
+"Allows or disallows selection of the item associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:271
+msgid "Sets text of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:279
+msgid "Sets the tooltip hint for the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:287
+msgid "Sets whether the tooltip hint is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:293
+msgid "Sorts items in the list by their text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:300
+msgid "Ensures the item associated with the specified index is not selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:306
+msgid "Ensures there are no items selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:312
+msgid ""
+"If [code]true[/code], the currently selected item can be selected again."
+msgstr ""
+
+#: doc/classes/ItemList.xml:315
+msgid "If [code]true[/code], right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:318
+msgid ""
+"If [code]true[/code], the control will automatically resize the height to "
+"fit its content."
+msgstr ""
+
+#: doc/classes/ItemList.xml:321
+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:325
+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:330
+msgid ""
+"The icon position, whether above or to the left of the text. See the [enum "
+"IconMode] constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:333
+msgid ""
+"The scale of icon applied after [member fixed_icon_size] and transposing "
+"takes effect."
+msgstr ""
+
+#: doc/classes/ItemList.xml:336
+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:341
+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:346
+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:350
+msgid ""
+"Allows single or multiple item selection. See the [enum SelectMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:357
+msgid ""
+"Triggered when specified list item is activated via double-clicking or by "
+"pressing Enter."
+msgstr ""
+
+#: doc/classes/ItemList.xml:364
+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:372
+msgid ""
+"Triggered when specified item has been selected.\n"
+"[member allow_reselect] must be enabled to reselect an item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:380
+msgid ""
+"Triggered when a multiple selection is altered on a list allowing multiple "
+"selection."
+msgstr ""
+
+#: doc/classes/ItemList.xml:385
+msgid ""
+"Triggered when a left mouse click is issued within the rect of the list but "
+"on empty space."
+msgstr ""
+
+#: doc/classes/ItemList.xml:391
+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:398
+msgid "Icon is drawn above the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:401
+msgid "Icon is drawn to the left of the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:404
+msgid "Only allow selecting a single item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:407
+msgid "Allows selecting multiple items by holding Ctrl or Shift."
+msgstr ""
+
+#: doc/classes/ItemList.xml:412
+msgid ""
+"Default [StyleBox] for the [ItemList], i.e. used when the control is not "
+"being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:415
+msgid "[StyleBox] used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:418
+msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:421
+msgid ""
+"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:424 doc/classes/Tree.xml:407
+msgid "[Font] of the item's text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:427 doc/classes/Tree.xml:410
+msgid "Default text [Color] of the item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:430 doc/classes/Tree.xml:413
+msgid "Text [Color] used when the item is selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:433
+msgid ""
+"[Color] of the guideline. The guideline is a line drawn between each row of "
+"items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:436
+msgid "The horizontal spacing between items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:439
+msgid "The spacing between item's icon and text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:442
+msgid "The vertical spacing between each line of text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:445
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:448
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:451
+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.\n"
+"[b]Note:[/b] This singleton can be disabled at build-time to improve "
+"security. By default, the JavaScript singleton is enabled. Official export "
+"templates also have the JavaScript singleton enabled. See [url=https://docs."
+"godotengine.org/en/3.4/development/compiling/compiling_for_web."
+"html]Compiling for the Web[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
+msgstr ""
+
+#: doc/classes/JavaScript.xml:19
+msgid ""
+"Creates a reference to a script function that can be used as a callback by "
+"JavaScript. The reference must be kept until the callback happens, or it "
+"won't be called at all. See [JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:26
+msgid ""
+"Creates a new JavaScript object using the [code]new[/code] constructor. The "
+"[code]object[/code] must a valid property of the JavaScript [code]window[/"
+"code]. See [JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:35
+msgid ""
+"Prompts the user to download a file containing the specified [code]buffer[/"
+"code]. The file will have the given [code]name[/code] and [code]mime[/code] "
+"type.\n"
+"[b]Note:[/b] The browser may override the [url=https://en.wikipedia.org/wiki/"
+"Media_type]MIME type[/url] provided based on the file [code]name[/code]'s "
+"extension.\n"
+"[b]Note:[/b] Browsers might block the download if [method download_buffer] "
+"is not being called from a user interaction (e.g. button click).\n"
+"[b]Note:[/b] Browsers might ask the user for permission or block the "
+"download if multiple download requests are made in a quick succession."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:46
+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/JavaScript.xml:54
+msgid ""
+"Returns an interface to a JavaScript object that can be used by scripts. The "
+"[code]interface[/code] must be a valid property of the JavaScript "
+"[code]window[/code]. The callback must accept a single [Array] argument, "
+"which will contain the JavaScript [code]arguments[/code]. See "
+"[JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScriptObject.xml:4
+msgid "A wrapper class for native JavaScript objects."
+msgstr ""
+
+#: doc/classes/JavaScriptObject.xml:7
+msgid ""
+"JavaScriptObject is used to interact with JavaScript objects retrieved or "
+"created via [method JavaScript.get_interface], [method JavaScript."
+"create_object], or [method JavaScript.create_callback].\n"
+"Example:\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var _my_js_callback = JavaScript.create_callback(self, \"myCallback\") # "
+"This reference must be kept\n"
+"var console = JavaScript.get_interface(\"console\")\n"
+"\n"
+"func _init():\n"
+" var buf = JavaScript.create_object(\"ArrayBuffer\", 10) # new "
+"ArrayBuffer(10)\n"
+" print(buf) # prints [JavaScriptObject:OBJECT_ID]\n"
+" var uint8arr = JavaScript.create_object(\"Uint8Array\", buf) # new "
+"Uint8Array(buf)\n"
+" uint8arr[1] = 255\n"
+" prints(uint8arr[1], uint8arr.byteLength) # prints 255 10\n"
+" console.log(uint8arr) # prints in browser console \"Uint8Array(10) [ 0, "
+"255, 0, 0, 0, 0, 0, 0, 0, 0 ]\"\n"
+"\n"
+" # Equivalent of JavaScript: Array.from(uint8arr).forEach(myCallback)\n"
+" JavaScript.get_interface(\"Array\").from(uint8arr)."
+"forEach(_my_js_callback)\n"
+"\n"
+"func myCallback(args):\n"
+" # Will be called with the parameters passed to the \"forEach\" callback\n"
+" # [0, 0, [JavaScriptObject:1173]]\n"
+" # [255, 1, [JavaScriptObject:1173]]\n"
+" # ...\n"
+" # [0, 9, [JavaScriptObject:1180]]\n"
+" print(args)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Only available in the HTML5 platform."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:4
+msgid ""
+"Singleton that connects the engine with Android plugins to interface with "
+"native Android code."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:7
+msgid ""
+"The JNISingleton is implemented only in the Android export. It's used to "
+"call methods and connect signals from an Android plugin written in Java or "
+"Kotlin. Methods and signals can be called and connected to the JNISingleton "
+"as if it is a Node. See [url=https://en.wikipedia.org/wiki/"
+"Java_Native_Interface]Java Native Interface - Wikipedia[/url] for more "
+"information."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin."
+"html"
+msgstr ""
+
+#: doc/classes/Joint.xml:4
+msgid "Base class for all 3D joints."
+msgstr ""
+
+#: doc/classes/Joint.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/Joint.xml:10 doc/classes/RigidBody.xml:15
+#: doc/classes/VehicleBody.xml:12 doc/classes/VehicleWheel.xml:11
+msgid "https://godotengine.org/asset-library/asset/524"
+msgstr ""
+
+#: doc/classes/Joint.xml:16
+msgid ""
+"If [code]true[/code], the two bodies of the nodes are not able to collide "
+"with each other."
+msgstr ""
+
+#: doc/classes/Joint.xml:19
+msgid "The node attached to the first side (A) of the joint."
+msgstr ""
+
+#: doc/classes/Joint.xml:22
+msgid "The node attached to the second side (B) of the joint."
+msgstr ""
+
+#: doc/classes/Joint.xml:25
+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/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/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:16
+msgid ""
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
+"result."
+msgstr ""
+
+#: doc/classes/JSON.xml:25
+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.\n"
+"Use [code]indent[/code] parameter to pretty print the output.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+"## JSON.print(my_dictionary)\n"
+"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
+"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":"
+"\"value_1\"}]}\n"
+"\n"
+"## JSON.print(my_dictionary, \"\\t\")\n"
+"{\n"
+" \"name\": \"my_dictionary\",\n"
+" \"version\": \"1.0.0\",\n"
+" \"entities\": [\n"
+" {\n"
+" \"name\": \"entity_0\",\n"
+" \"value\": \"value_0\"\n"
+" },\n"
+" {\n"
+" \"name\": \"entity_1\",\n"
+" \"value\": \"value_1\"\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+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/JSONRPC.xml:4
+msgid "A helper to handle dictionaries which look like JSONRPC documents."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:7
+msgid ""
+"[url=https://www.jsonrpc.org/]JSON-RPC[/url] is a standard which wraps a "
+"method call in a [JSON] object. The object has a particular structure and "
+"identifies which method is called, the parameters to that function, and "
+"carries an ID to keep track of responses. This class implements that "
+"standard on top of [Dictionary]; you will have to convert between a "
+"[Dictionary] and [JSON] with other functions."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:17
+msgid ""
+"Returns a dictionary in the form of a JSON-RPC notification. Notifications "
+"are one-shot messages which do not expect a response.\n"
+"- [code]method[/code]: Name of the method being called.\n"
+"- [code]params[/code]: An array or dictionary of parameters being passed to "
+"the method."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:28
+msgid ""
+"Returns a dictionary in the form of a JSON-RPC request. Requests are sent to "
+"a server with the expectation of a response. The ID field is used for the "
+"server to specify which exact request it is responding to.\n"
+"- [code]method[/code]: Name of the method being called.\n"
+"- [code]params[/code]: An array or dictionary of parameters being passed to "
+"the method.\n"
+"- [code]id[/code]: Uniquely identifies this request. The server is expected "
+"to send a response with the same ID."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:39
+msgid ""
+"When a server has received and processed a request, it is expected to send a "
+"response. If you did not want a response then you need to have sent a "
+"Notification instead.\n"
+"- [code]result[/code]: The return value of the function which was called.\n"
+"- [code]id[/code]: The ID of the request this response is targeted to."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:50
+msgid ""
+"Creates a response which indicates a previous reply has failed in some way.\n"
+"- [code]code[/code]: The error code corresponding to what kind of error this "
+"is. See the [enum ErrorCode] constants.\n"
+"- [code]message[/code]: A custom message about this error.\n"
+"- [code]id[/code]: The request this error is a response to."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:61
+msgid ""
+"Given a Dictionary which takes the form of a JSON-RPC request: unpack the "
+"request and run it. Methods are resolved by looking at the field called "
+"\"method\" and looking for an equivalently named function in the JSONRPC "
+"object. If one is found that method is called.\n"
+"To add new supported methods extend the JSONRPC class and call [method "
+"process_action] on your subclass.\n"
+"[code]action[/code]: The action to be run, as a Dictionary in the form of a "
+"JSON-RPC request or notification."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:86
+msgid ""
+"A method call was requested but no function of that name existed in the "
+"JSONRPC subclass."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:4
+msgid "Kinematic body 3D node."
+msgstr ""
+
+#: doc/classes/KinematicBody.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] KinematicBody 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 don't require advanced physics."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:12 doc/classes/KinematicBody2D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d."
+"html"
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:23
+msgid ""
+"Returns [code]true[/code] if the specified [code]axis[/code] is locked. See "
+"also [member move_lock_x], [member move_lock_y] and [member move_lock_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:30
+msgid ""
+"Returns the floor's collision angle at the last collision point according to "
+"[code]up_direction[/code], which is [code]Vector3.UP[/code] by default. This "
+"value is always positive and only valid after calling [method "
+"move_and_slide] and when [method is_on_floor] returns [code]true[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:36 doc/classes/KinematicBody2D.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/KinematicBody.xml:42 doc/classes/KinematicBody2D.xml:34
+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/KinematicBody.xml:48
+msgid ""
+"Returns a [KinematicCollision], which contains information about the latest "
+"collision that occurred during the last call to [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:55
+msgid ""
+"Returns a [KinematicCollision], which contains information about a collision "
+"that occurred during the last call to [method move_and_slide] or [method "
+"move_and_slide_with_snap]. 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/KinematicBody.xml:61 doc/classes/KinematicBody2D.xml:59
+msgid ""
+"Returns the number of times the body collided and changed direction during "
+"the last call to [method move_and_slide] or [method "
+"move_and_slide_with_snap]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:67 doc/classes/KinematicBody2D.xml:65
+msgid ""
+"Returns [code]true[/code] if the body collided with the ceiling on the last "
+"call of [method move_and_slide] or [method move_and_slide_with_snap]. "
+"Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:73 doc/classes/KinematicBody2D.xml:71
+msgid ""
+"Returns [code]true[/code] if the body collided with the floor on the last "
+"call of [method move_and_slide] or [method move_and_slide_with_snap]. "
+"Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:79 doc/classes/KinematicBody2D.xml:77
+msgid ""
+"Returns [code]true[/code] if the body collided with a wall on the last call "
+"of [method move_and_slide] or [method move_and_slide_with_snap]. Otherwise, "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:89
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision], 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/KinematicBody.xml:102
+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 [KinematicBody] or [RigidBody], it will also be affected by the motion "
+"of the other body. You can use this to make moving and 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 [RigidBody] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody] nodes like with "
+"[StaticBody].\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].\n"
+"When the body touches a moving platform, the platform's velocity is "
+"automatically added to the body motion. If a collision occurs due to the "
+"platform's motion, it will always be first in the slide collisions."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:124
+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/KinematicBody.xml:133
+msgid ""
+"Locks or unlocks the specified [code]axis[/code] depending on the value of "
+"[code]lock[/code]. See also [member move_lock_x], [member move_lock_y] and "
+"[member move_lock_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:142
+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/KinematicBody.xml:148
+msgid "Lock the body's X axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:151
+msgid "Lock the body's Y axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:154
+msgid "Lock the body's Z axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:157 doc/classes/KinematicBody2D.xml:138
+msgid ""
+"Extra margin used for collision recovery in motion functions (see [method "
+"move_and_collide], [method move_and_slide], [method "
+"move_and_slide_with_snap]).\n"
+"If the body is at least this close to another body, it will consider them to "
+"be colliding and will be pushed away before performing the actual motion.\n"
+"A higher value means it's more flexible for detecting collision, which helps "
+"with consistently detecting walls and floors.\n"
+"A lower value forces the collision algorithm to use more exact detection, so "
+"it can be used in cases that specifically require precision, e.g at very low "
+"scale to avoid visible jittering, or for stability with a stack of kinematic "
+"bodies."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:163 doc/classes/KinematicBody2D.xml:144
+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/KinematicBody.xml:166
+msgid ""
+"Lock the body's X axis movement. Deprecated alias for [member "
+"axis_lock_motion_x]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:169
+msgid ""
+"Lock the body's Y axis movement. Deprecated alias for [member "
+"axis_lock_motion_y]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:172
+msgid ""
+"Lock the body's Z axis movement. Deprecated alias for [member "
+"axis_lock_motion_z]."
+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 don't require advanced physics."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"using_kinematic_body_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:22
+msgid ""
+"Returns the floor's collision angle at the last collision point according to "
+"[code]up_direction[/code], which is [code]Vector2.UP[/code] by default. This "
+"value is always positive and only valid after calling [method "
+"move_and_slide] and when [method is_on_floor] returns [code]true[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:40
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about the "
+"latest collision that occurred during the last call to [method "
+"move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:47
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about a "
+"collision that occurred during the last call to [method move_and_slide] or "
+"[method move_and_slide_with_snap]. 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:87
+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:100
+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 and 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].\n"
+"When the body touches a moving platform, the platform's velocity is "
+"automatically added to the body motion. If a collision occurs due to the "
+"platform's motion, it will always be first in the slide collisions."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:122
+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:132
+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/KinematicCollision.xml:4
+msgid "Collision data for [KinematicBody] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:7
+msgid ""
+"Contains collision data for [KinematicBody] collisions. When a "
+"[KinematicBody] is moved using [method KinematicBody.move_and_collide], it "
+"stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision 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/KinematicCollision.xml:17
+msgid ""
+"The collision angle according to [code]up_direction[/code], which is "
+"[code]Vector3.UP[/code] by default. This value is always positive."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:23
+#: doc/classes/KinematicCollision2D.xml:23
+msgid "The colliding body."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:26
+#: doc/classes/KinematicCollision2D.xml:26
+msgid ""
+"The colliding body's unique instance ID. See [method Object.get_instance_id]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:29
+#: doc/classes/KinematicCollision2D.xml:29
+msgid "The colliding body's metadata. See [Object]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:32
+msgid "The colliding body's [RID] used by the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:35
+#: doc/classes/KinematicCollision2D.xml:35
+msgid "The colliding body's shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:38
+msgid "The colliding shape's index. See [CollisionObject]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:41
+#: doc/classes/KinematicCollision2D.xml:41
+msgid "The colliding object's velocity."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:44
+#: doc/classes/KinematicCollision2D.xml:44
+msgid "The moving object's colliding shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:47
+#: doc/classes/KinematicCollision2D.xml:47
+msgid "The colliding body's shape's normal at the point of collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:50
+#: doc/classes/KinematicCollision2D.xml:50
+msgid "The point of collision, in global coordinates."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:53
+#: doc/classes/KinematicCollision2D.xml:53
+msgid "The moving object's remaining movement vector."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:56
+#: doc/classes/KinematicCollision2D.xml:56
+msgid "The distance the moving object traveled before collision."
+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:17
+msgid ""
+"The collision angle according to [code]up_direction[/code], which is "
+"[code]Vector2.UP[/code] by default. This value is always positive."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:32
+msgid "The colliding body's [RID] used by the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:38
+msgid "The colliding shape's index. See [CollisionObject2D]."
+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.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Label.xml:18
+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:30
+msgid ""
+"Returns the total number of printable characters in the text (excluding "
+"spaces and newlines)."
+msgstr ""
+
+#: doc/classes/Label.xml:36
+msgid ""
+"Returns the number of lines shown. Useful if the [Label]'s height cannot "
+"currently display all lines."
+msgstr ""
+
+#: doc/classes/Label.xml:42
+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:45
+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:48
+msgid ""
+"If [code]true[/code], the Label only shows the text that fits inside its "
+"bounding rectangle and will clip text horizontally."
+msgstr ""
+
+#: doc/classes/Label.xml:51
+msgid ""
+"The node ignores the first [code]lines_skipped[/code] lines before it starts "
+"to display text."
+msgstr ""
+
+#: doc/classes/Label.xml:54
+msgid "Limits the lines of text the node shows on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:58
+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:62
+msgid "The text to display on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:65
+msgid "If [code]true[/code], all the text displays as UPPERCASE."
+msgstr ""
+
+#: doc/classes/Label.xml:68
+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:71
+msgid "Restricts the number of characters to display. Set to -1 to disable."
+msgstr ""
+
+#: doc/classes/Label.xml:76
+msgid "Align rows to the left (default)."
+msgstr ""
+
+#: doc/classes/Label.xml:79
+msgid "Align rows centered."
+msgstr ""
+
+#: doc/classes/Label.xml:82
+msgid "Align rows to the right."
+msgstr ""
+
+#: doc/classes/Label.xml:85
+msgid "Expand row whitespaces to fit the width."
+msgstr ""
+
+#: doc/classes/Label.xml:88
+msgid "Align the whole text to the top."
+msgstr ""
+
+#: doc/classes/Label.xml:91
+msgid "Align the whole text to the center."
+msgstr ""
+
+#: doc/classes/Label.xml:94
+msgid "Align the whole text to the bottom."
+msgstr ""
+
+#: doc/classes/Label.xml:97
+msgid "Align the whole text by spreading the rows."
+msgstr ""
+
+#: doc/classes/Label.xml:102
+msgid "[Font] used for the [Label]'s text."
+msgstr ""
+
+#: doc/classes/Label.xml:105
+msgid "Default text [Color] of the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:108
+msgid "[Color] of the text's shadow effect."
+msgstr ""
+
+#: doc/classes/Label.xml:111
+msgid "The tint of [Font]'s outline. See [member DynamicFont.outline_color]."
+msgstr ""
+
+#: doc/classes/Label.xml:114
+msgid "Vertical space between lines in multiline [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:117
+msgid "Background [StyleBox] for the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:120
+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:123
+msgid "The horizontal offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/Label.xml:126
+msgid "The vertical offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:4
+msgid ""
+"[i]Deprecated.[/i] A [Texture] capable of storing many smaller textures with "
+"offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:7
+msgid ""
+"[i]Deprecated (will be removed in Godot 4.0).[/i] A [Texture] capable of "
+"storing many smaller textures with offsets.\n"
+"You can dynamically add pieces ([Texture]s) to this [LargeTexture] using "
+"different offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:18
+msgid ""
+"Adds [code]texture[/code] to this [LargeTexture], starting on offset "
+"[code]ofs[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:24
+msgid "Clears the [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:30
+msgid "Returns the number of pieces currently in this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:37
+msgid "Returns the offset of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:44
+msgid "Returns the [Texture] of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:52
+msgid ""
+"Sets the offset of the piece with the index [code]idx[/code] to [code]ofs[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:60
+msgid ""
+"Sets the [Texture] of the piece with index [code]idx[/code] to "
+"[code]texture[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:67
+msgid "Sets the size of this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/Light.xml:4
+msgid "Provides a base class for different kinds of light nodes."
+msgstr ""
+
+#: doc/classes/Light.xml:7
+msgid ""
+"Light 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. Light contains the common variables and parameters used for "
+"lighting."
+msgstr ""
+
+#: doc/classes/Light.xml:18
+msgid "Returns the value of the specified [enum Light.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light.xml:26
+msgid "Sets the value of the specified [enum Light.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light.xml:32
+msgid ""
+"If [code]true[/code], the light only appears in the editor and will not be "
+"visible at runtime."
+msgstr ""
+
+#: doc/classes/Light.xml:35
+msgid "The light's bake mode. See [enum BakeMode]."
+msgstr ""
+
+#: doc/classes/Light.xml:38
+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/Light.xml:41
+msgid "The light will affect objects in the selected layers."
+msgstr ""
+
+#: doc/classes/Light.xml:44
+msgid ""
+"The light's strength multiplier (this is not a physical unit). For "
+"[OmniLight] and [SpotLight], changing this value will only change the light "
+"color's intensity, not the light's radius."
+msgstr ""
+
+#: doc/classes/Light.xml:47
+msgid ""
+"Secondary multiplier used with indirect light (light bounces). This works on "
+"both [BakedLightmap] and [GIProbe]."
+msgstr ""
+
+#: doc/classes/Light.xml:50
+msgid ""
+"If [code]true[/code], the light's effect is reversed, darkening areas and "
+"casting bright shadows."
+msgstr ""
+
+#: doc/classes/Light.xml:53
+msgid ""
+"The size of the light in Godot units. Only considered in baked lightmaps and "
+"only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing "
+"this value will make the shadows appear blurrier. This can be used to "
+"simulate area lights to an extent."
+msgstr ""
+
+#: doc/classes/Light.xml:56
+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/Light.xml:59
+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/Light.xml:62
+msgid "The color of shadows cast by this light."
+msgstr ""
+
+#: doc/classes/Light.xml:65
+msgid "Attempts to reduce [member shadow_bias] gap."
+msgstr ""
+
+#: doc/classes/Light.xml:68
+msgid "If [code]true[/code], the light will cast shadows."
+msgstr ""
+
+#: doc/classes/Light.xml:71
+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 GeometryInstance.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
+msgstr ""
+
+#: doc/classes/Light.xml:76
+msgid "Constant for accessing [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light.xml:79
+msgid "Constant for accessing [member light_indirect_energy]."
+msgstr ""
+
+#: doc/classes/Light.xml:82
+msgid "Constant for accessing [member light_size]."
+msgstr ""
+
+#: doc/classes/Light.xml:85
+msgid "Constant for accessing [member light_specular]."
+msgstr ""
+
+#: doc/classes/Light.xml:88
+msgid ""
+"Constant for accessing [member OmniLight.omni_range] or [member SpotLight."
+"spot_range]."
+msgstr ""
+
+#: doc/classes/Light.xml:91
+msgid ""
+"Constant for accessing [member OmniLight.omni_attenuation] or [member "
+"SpotLight.spot_attenuation]."
+msgstr ""
+
+#: doc/classes/Light.xml:94
+msgid "Constant for accessing [member SpotLight.spot_angle]."
+msgstr ""
+
+#: doc/classes/Light.xml:97
+msgid "Constant for accessing [member SpotLight.spot_angle_attenuation]."
+msgstr ""
+
+#: doc/classes/Light.xml:100
+msgid "Constant for accessing [member shadow_contact]."
+msgstr ""
+
+#: doc/classes/Light.xml:103
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_max_distance]."
+msgstr ""
+
+#: doc/classes/Light.xml:106
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_1]."
+msgstr ""
+
+#: doc/classes/Light.xml:109
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_2]."
+msgstr ""
+
+#: doc/classes/Light.xml:112
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_3]."
+msgstr ""
+
+#: doc/classes/Light.xml:115
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_normal_bias]."
+msgstr ""
+
+#: doc/classes/Light.xml:118
+msgid "Constant for accessing [member shadow_bias]."
+msgstr ""
+
+#: doc/classes/Light.xml:121
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_bias_split_scale]."
+msgstr ""
+
+#: doc/classes/Light.xml:127
+msgid ""
+"Light is ignored when baking.\n"
+"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
+msgstr ""
+
+#: doc/classes/Light.xml:131
+msgid "Only indirect lighting will be baked (default)."
+msgstr ""
+
+#: doc/classes/Light.xml:134
+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/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/3.4/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 "Smooth shadow gradient length."
+msgstr ""
+
+#: doc/classes/Light2D.xml:71
+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:74
+msgid "[Texture] used for the Light2D's appearance."
+msgstr ""
+
+#: doc/classes/Light2D.xml:77
+msgid "The [code]texture[/code]'s scale factor."
+msgstr ""
+
+#: doc/classes/Light2D.xml:82
+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:85
+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:88
+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:91
+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:94
+msgid "No filter applies to the shadow map. See [member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:97
+msgid ""
+"Percentage closer filtering (3 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:100
+msgid ""
+"Percentage closer filtering (5 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:103
+msgid ""
+"Percentage closer filtering (7 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:106
+msgid ""
+"Percentage closer filtering (9 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:109
+msgid ""
+"Percentage closer filtering (13 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+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.\n"
+"[b]Note:[/b] By default, Godot can only draw up to 4,096 polygon points at a "
+"time. To increase this limit, open the Project Settings and increase [member "
+"ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb] and "
+"[member ProjectSettings.rendering/limits/buffers/"
+"canvas_polygon_index_buffer_size_kb]."
+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:27
+msgid "Removes all points from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:33
+msgid "Returns the Line2D's amount of points."
+msgstr ""
+
+#: doc/classes/Line2D.xml:40
+msgid "Returns point [code]i[/code]'s position."
+msgstr ""
+
+#: doc/classes/Line2D.xml:47
+msgid "Removes the point at index [code]i[/code] from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:55
+msgid ""
+"Overwrites the position in point [code]i[/code] with the supplied "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:61
+msgid ""
+"If [code]true[/code], the line's border will be anti-aliased.\n"
+"[b]Note:[/b] Line2D is not accelerated by batching when being anti-aliased."
+msgstr ""
+
+#: doc/classes/Line2D.xml:65
+msgid ""
+"Controls the style of the line's first point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:68
+msgid "The line's color. Will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:71
+msgid ""
+"Controls the style of the line's last point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:74
+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:77
+msgid "The style for the points between the start and the end."
+msgstr ""
+
+#: doc/classes/Line2D.xml:80
+msgid ""
+"The points that form the lines. The line is drawn between every point set in "
+"this array. Points are interpreted as local vectors."
+msgstr ""
+
+#: doc/classes/Line2D.xml:83
+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:86
+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:89
+msgid ""
+"The texture used for the line's texture. Uses [code]texture_mode[/code] for "
+"drawing style."
+msgstr ""
+
+#: doc/classes/Line2D.xml:92
+msgid ""
+"The style to render the [code]texture[/code] on the line. Use [enum "
+"LineTextureMode] constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:95
+msgid "The line's width."
+msgstr ""
+
+#: doc/classes/Line2D.xml:98
+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:103
+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:106
+msgid "The line's joints will be bevelled/chamfered."
+msgstr ""
+
+#: doc/classes/Line2D.xml:109
+msgid "The line's joints will be rounded."
+msgstr ""
+
+#: doc/classes/Line2D.xml:112
+msgid "Don't draw a line cap."
+msgstr ""
+
+#: doc/classes/Line2D.xml:115
+msgid "Draws the line cap as a box."
+msgstr ""
+
+#: doc/classes/Line2D.xml:118
+msgid "Draws the line cap as a circle."
+msgstr ""
+
+#: doc/classes/Line2D.xml:121
+msgid ""
+"Takes the left pixels of the texture and renders it over the whole line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:124
+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:127
+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 "
+"([code]Ctrl[/code] here maps to [code]Command[/code] on macOS):\n"
+"- Ctrl + C: Copy\n"
+"- Ctrl + X: Cut\n"
+"- Ctrl + V or Ctrl + Y: Paste/\"yank\"\n"
+"- Ctrl + Z: Undo\n"
+"- Ctrl + Shift + Z: Redo\n"
+"- Ctrl + U: Delete text from the cursor position to the beginning of the "
+"line\n"
+"- Ctrl + K: Delete text from the cursor position to the end of the line\n"
+"- Ctrl + A: Select all text\n"
+"- Up/Down arrow: Move the cursor to the beginning/end of the line\n"
+"On macOS, some extra keyboard shortcuts are available:\n"
+"- Ctrl + F: Like the right arrow key, move the cursor one character right\n"
+"- Ctrl + B: Like the left arrow key, move the cursor one character left\n"
+"- Ctrl + P: Like the up arrow key, move the cursor to the previous line\n"
+"- Ctrl + N: Like the down arrow key, move the cursor to the next line\n"
+"- Ctrl + D: Like the Delete key, delete the character on the right side of "
+"cursor\n"
+"- Ctrl + H: Like the Backspace key, delete the character on the left side of "
+"the cursor\n"
+"- Command + Left arrow: Like the Home key, move the cursor to the beginning "
+"of the line\n"
+"- Command + Right arrow: Like the End key, move the cursor to the end of the "
+"line"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:35
+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:41
+msgid "Erases the [LineEdit]'s [member text]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:47
+msgid ""
+"Deletes one character at the cursor's current position (equivalent to "
+"pressing the [code]Delete[/code] key)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:55
+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:61
+msgid "Clears the current selection."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:67
+msgid ""
+"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
+"displayed when right-clicking on the [LineEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:74
+msgid ""
+"Returns the scroll offset due to [member caret_position], as a number of "
+"characters."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:81
+msgid "Executes a given action as defined in the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:89
+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:101
+msgid "Selects the whole [String]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:107
+msgid "Text alignment as defined in the [enum Align] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:110 doc/classes/TextEdit.xml:391
+msgid "If [code]true[/code], the caret (visual cursor) blinks."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:113 doc/classes/TextEdit.xml:394
+msgid "Duration (in seconds) of a caret's blinking cycle."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:116
+msgid ""
+"The cursor's position inside the [LineEdit]. When set, the text may scroll "
+"to accommodate it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:119
+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:122
+msgid "If [code]true[/code], the context menu will appear when right-clicked."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:125
+msgid ""
+"If [code]false[/code], existing text cannot be modified and new text cannot "
+"be added."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:128
+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:132
+msgid ""
+"Maximum amount of characters that can be entered inside the [LineEdit]. If "
+"[code]0[/code], there is no limit.\n"
+"When a limit is defined, characters that would exceed [member max_length] "
+"are truncated. This happens both for existing [member text] contents when "
+"setting the max length, or for new text inserted in the [LineEdit], "
+"including pasting. If any input text is truncated, the [signal "
+"text_change_rejected] signal is emitted with the truncated substring as "
+"parameter.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"text = \"Hello world\"\n"
+"max_length = 5\n"
+"# `text` becomes \"Hello\".\n"
+"max_length = 10\n"
+"text += \" goodbye\"\n"
+"# `text` becomes \"Hello good\".\n"
+"# `text_change_rejected` is emitted with \"bye\" as parameter.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:147
+msgid ""
+"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:150
+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:153
+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:156
+msgid ""
+"If [code]true[/code], every character is replaced with the secret character "
+"(see [member secret_character])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:159
+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:162
+msgid ""
+"If [code]false[/code], it's impossible to select the text using mouse nor "
+"keyboard."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:165
+msgid "If [code]false[/code], using shortcuts will be disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:168
+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:172 doc/classes/TextEdit.xml:468
+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 appending text that overflows the [member max_length]. The "
+"appended text is truncated to fit [member max_length], and the part that "
+"couldn't fit is passed as the [code]rejected_substring[/code] argument."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:185 doc/classes/TextEdit.xml:506
+msgid "Emitted when the text changes."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:191
+msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:197
+msgid "Aligns the text on the left-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:200
+msgid "Centers the text in the middle of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:203
+msgid "Aligns the text on the right-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:206
+msgid "Stretches whitespaces to fit the [LineEdit]'s width."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:527
+msgid "Cuts (copies and clears) the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:212 doc/classes/TextEdit.xml:530
+msgid "Copies the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:215
+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:219
+msgid "Erases the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:222
+msgid "Selects the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:225 doc/classes/TextEdit.xml:542
+msgid "Undoes the previous action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:228
+msgid "Reverse the last undo action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:231 doc/classes/TextEdit.xml:548
+msgid "Represents the size of the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:236
+msgid "Texture for the clear button. See [member clear_button_enabled]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:239
+msgid "Color used as default tint for the clear button."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:242
+msgid "Color used for the clear button when it's pressed."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:245
+msgid "Color of the [LineEdit]'s visual cursor (caret)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:248
+msgid "Background used when [LineEdit] has GUI focus."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:251
+msgid "Font used for the text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:254
+msgid "Default font color."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:257
+msgid "Font color for selected text (inside the selection rectangle)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:260
+msgid "Font color when editing is disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:263
+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:266
+msgid "Default background for the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:269
+msgid ""
+"Background used when [LineEdit] is in read-only mode ([member editable] is "
+"set to [code]false[/code])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:272
+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).\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+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 focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
+msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
+msgid "The vertical space between the baseline of text and the underline."
+msgstr ""
+
+#: doc/classes/Listener.xml:4 doc/classes/Listener2D.xml:4
+msgid "Overrides the location sounds are heard from."
+msgstr ""
+
+#: doc/classes/Listener.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 [Camera]."
+msgstr ""
+
+#: doc/classes/Listener.xml:15
+msgid "Disables the listener to use the current camera's listener instead."
+msgstr ""
+
+#: doc/classes/Listener.xml:21
+msgid "Returns the listener's global orthonormalized [Transform]."
+msgstr ""
+
+#: doc/classes/Listener.xml:27
+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 Listener marked as \"current\" in "
+"the scene tree, but only the one that was made current last will be used."
+msgstr ""
+
+#: doc/classes/Listener.xml:34
+msgid "Enables the listener. This will override the current camera's listener."
+msgstr ""
+
+#: doc/classes/Listener2D.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. Only one [Listener2D] "
+"can be current. Using [method make_current] will disable the previous "
+"[Listener2D].\n"
+"If there is no active [Listener2D] in the current [Viewport], center of the "
+"screen will be used as a hearing point for the audio. [Listener2D] needs to "
+"be inside [SceneTree] to function."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:16
+msgid ""
+"Disables the [Listener2D]. If it's not set as current, this method will have "
+"no effect."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:22
+msgid "Returns [code]true[/code] if this [Listener2D] is currently active."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:28
+msgid ""
+"Makes the [Listener2D] active, setting it as the hearing point for the "
+"sounds. If there is already another active [Listener2D], it will be "
+"disabled.\n"
+"This method will have no effect if the [Listener2D] is not added to "
+"[SceneTree]."
+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"
+"[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_scancode_string(event.scancode))\n"
+" # Quit on Escape press.\n"
+" if event.scancode == 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 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/MainLoop.xml:57
+msgid "Called before the program exits."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:65
+msgid ""
+"Called when the user performs an action in the system global menu (e.g. the "
+"Mac OS menu bar)."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:72
+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:79
+msgid "Called once during initialization."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:86
+msgid "Called whenever an [InputEvent] is received by the main loop."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:93
+msgid ""
+"Deprecated callback, does not do anything. Use [method _input_event] to "
+"parse text input. Will be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:100
+msgid ""
+"Called each physics frame with the time since the last physics frame as "
+"argument ([code]delta[/code], 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:107
+msgid ""
+"Should not be called manually, override [method _finalize] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:114
+msgid ""
+"Should not be called manually, override [method _idle] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:120
+msgid ""
+"Should not be called manually, override [method _initialize] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:127
+msgid ""
+"Should not be called manually, override [method _input_event] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:134
+msgid ""
+"Should not be called manually, override [method _input_text] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:141
+msgid ""
+"Should not be called manually, override [method _iteration] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:150
+msgid "Emitted when a user responds to a permission request."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:156 doc/classes/Node.xml:791
+msgid ""
+"Notification received from the OS when the mouse enters the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:160 doc/classes/Node.xml:795
+msgid ""
+"Notification received from the OS when the mouse leaves the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:164 doc/classes/Node.xml:799
+msgid ""
+"Notification received from the OS when the game window is focused.\n"
+"Implemented on all platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:168 doc/classes/Node.xml:803
+msgid ""
+"Notification received from the OS when the game window is unfocused.\n"
+"Implemented on all platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:172 doc/classes/Node.xml:807
+msgid ""
+"Notification received from the OS when a quit request is sent (e.g. closing "
+"the window with a \"Close\" button or Alt+F4).\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:176 doc/classes/Node.xml:811
+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/MainLoop.xml:180 doc/classes/Node.xml:815
+msgid ""
+"Notification received from the OS when an unfocus request is sent (e.g. "
+"another OS window wants to take the focus).\n"
+"No supported platforms currently send this notification."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:184 doc/classes/Node.xml:819
+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:188 doc/classes/Node.xml:823
+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:191 doc/classes/Node.xml:826
+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:195 doc/classes/Node.xml:830
+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:199 doc/classes/Node.xml:834
+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:203 doc/classes/Node.xml:838
+msgid ""
+"Notification received from the OS when the app is resumed.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:207 doc/classes/Node.xml:842
+msgid ""
+"Notification received from the OS when the app is paused.\n"
+"Specific to the Android platform."
+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"
+"# This code sample assumes the current script is extending MarginContainer.\n"
+"var margin_value = 100\n"
+"add_constant_override(\"margin_top\", margin_value)\n"
+"add_constant_override(\"margin_left\", margin_value)\n"
+"add_constant_override(\"margin_bottom\", margin_value)\n"
+"add_constant_override(\"margin_right\", margin_value)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:26
+msgid ""
+"All direct children of [MarginContainer] will have a bottom margin of "
+"[code]margin_bottom[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:29
+msgid ""
+"All direct children of [MarginContainer] will have a left margin of "
+"[code]margin_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:32
+msgid ""
+"All direct children of [MarginContainer] will have a right margin of "
+"[code]margin_right[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:35
+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:16
+msgid ""
+"Returns a decoded [PoolByteArray] corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:23
+msgid ""
+"Returns a decoded string corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:31
+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:39
+msgid "Returns a Base64-encoded string of a given [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:46
+msgid ""
+"Returns a Base64-encoded string of the UTF-8 string [code]utf8_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:54
+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 [VisualInstance] 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:17
+msgid ""
+"Sets the [Material] to be used for the next pass. This renders the object "
+"again using a different material.\n"
+"[b]Note:[/b] This only applies to [SpatialMaterial]s and [ShaderMaterial]s "
+"with type \"Spatial\"."
+msgstr ""
+
+#: doc/classes/Material.xml:21
+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:27
+msgid "Maximum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/Material.xml:30
+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 item new properties.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:86
+msgid ""
+"Returns the [PopupMenu] contained in this button.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:25
+msgid ""
+"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
+"the button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:34
+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:41
+msgid "Emitted when [PopupMenu] of this MenuButton is about to show."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:49
+msgid "[StyleBox] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:52
+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:55
+msgid "[Font] of the [MenuButton]'s text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:58
+msgid "Default text [Color] of the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:61
+msgid "Text [Color] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:64
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:67
+msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:70
+msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:73
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:76
+msgid "The horizontal space between [MenuButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
+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:21
+msgid ""
+"Calculate a [ConvexPolygonShape] from the mesh.\n"
+"If [code]clean[/code] is [code]true[/code] (default), duplicate and interior "
+"vertices are removed automatically. You can set it to [code]false[/code] to "
+"make the process faster if not needed.\n"
+"If [code]simplify[/code] is [code]true[/code], the geometry can be further "
+"simplified to reduce the amount of vertices. Disabled by default."
+msgstr ""
+
+#: doc/classes/Mesh.xml:30
+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:37
+msgid "Calculate a [ConcavePolygonShape] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:43
+msgid "Generate a [TriangleMesh] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:49
+msgid ""
+"Returns the smallest [AABB] enclosing this mesh in local space. Not affected "
+"by [code]custom_aabb[/code]. See also [method VisualInstance."
+"get_transformed_aabb].\n"
+"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:56
+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:69
+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:76
+msgid "Returns the blend shape arrays for the requested surface."
+msgstr ""
+
+#: doc/classes/Mesh.xml:83
+msgid ""
+"Returns a [Material] in a given surface. Surface is rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:91
+msgid ""
+"Sets a [Material] for a given surface. Surface will be rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:97
+msgid ""
+"Sets a hint to be used for lightmap resolution in [BakedLightmap]. Overrides "
+"[member BakedLightmap.default_texels_per_unit]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:102
+msgid "Render array as points (one vertex equals one point)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:105
+msgid "Render array as lines (every two vertices a line is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:108
+msgid "Render array as line strip."
+msgstr ""
+
+#: doc/classes/Mesh.xml:111
+msgid "Render array as line loop (like line strip, but closed)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:114
+msgid "Render array as triangles (every three vertices a triangle is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:117
+msgid "Render array as triangle strips."
+msgstr ""
+
+#: doc/classes/Mesh.xml:120
+msgid "Render array as triangle fans."
+msgstr ""
+
+#: doc/classes/Mesh.xml:123 doc/classes/VisualServer.xml:3363
+msgid "Blend shapes are normalized."
+msgstr ""
+
+#: doc/classes/Mesh.xml:126 doc/classes/VisualServer.xml:3366
+msgid "Blend shapes are relative to base weight."
+msgstr ""
+
+#: doc/classes/Mesh.xml:129
+msgid ""
+"Mesh array contains vertices. All meshes require a vertex array so this "
+"should always be present."
+msgstr ""
+
+#: doc/classes/Mesh.xml:132
+msgid "Mesh array contains normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:135
+msgid "Mesh array contains tangents."
+msgstr ""
+
+#: doc/classes/Mesh.xml:138
+msgid "Mesh array contains colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:141
+msgid "Mesh array contains UVs."
+msgstr ""
+
+#: doc/classes/Mesh.xml:144
+msgid "Mesh array contains second UV."
+msgstr ""
+
+#: doc/classes/Mesh.xml:147
+msgid "Mesh array contains bones."
+msgstr ""
+
+#: doc/classes/Mesh.xml:150
+msgid "Mesh array contains bone weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:153
+msgid "Mesh array uses indices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:156
+msgid ""
+"Used internally to calculate other [code]ARRAY_COMPRESS_*[/code] enum "
+"values. Do not use."
+msgstr ""
+
+#: doc/classes/Mesh.xml:159 doc/classes/VisualServer.xml:3300
+msgid "Flag used to mark a compressed (half float) vertex array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:162 doc/classes/VisualServer.xml:3303
+msgid "Flag used to mark a compressed (half float) normal array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:165 doc/classes/VisualServer.xml:3306
+msgid "Flag used to mark a compressed (half float) tangent array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:168 doc/classes/VisualServer.xml:3309
+msgid "Flag used to mark a compressed (half float) color array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:171 doc/classes/VisualServer.xml:3312
+msgid "Flag used to mark a compressed (half float) UV coordinates array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:174 doc/classes/VisualServer.xml:3315
+msgid ""
+"Flag used to mark a compressed (half float) UV coordinates array for the "
+"second UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:177 doc/classes/VisualServer.xml:3318
+msgid "Flag used to mark a compressed bone array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:180 doc/classes/VisualServer.xml:3321
+msgid "Flag used to mark a compressed (half float) weight array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:183 doc/classes/VisualServer.xml:3324
+msgid "Flag used to mark a compressed index array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:186 doc/classes/VisualServer.xml:3327
+msgid "Flag used to mark that the array contains 2D vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:189 doc/classes/VisualServer.xml:3330
+msgid "Flag used to mark that the array uses 16-bit bones instead of 8-bit."
+msgstr ""
+
+#: doc/classes/Mesh.xml:192 doc/classes/VisualServer.xml:3333
+msgid ""
+"Flag used to mark that the array uses an octahedral representation of normal "
+"and tangent vectors rather than cartesian."
+msgstr ""
+
+#: doc/classes/Mesh.xml:195
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_VERTEX], [constant "
+"ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant "
+"ARRAY_COMPRESS_COLOR], [constant ARRAY_COMPRESS_TEX_UV], [constant "
+"ARRAY_COMPRESS_TEX_UV2], [constant ARRAY_COMPRESS_WEIGHTS], and [constant "
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+msgstr ""
+
+#: doc/classes/Mesh.xml:198
+msgid "Array of vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:201
+msgid "Array of normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:204
+msgid "Array of tangents as an array of floats, 4 floats per tangent."
+msgstr ""
+
+#: doc/classes/Mesh.xml:207
+msgid "Array of colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:210
+msgid "Array of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:213
+msgid "Array of second set of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:216
+msgid "Array of bone data."
+msgstr ""
+
+#: doc/classes/Mesh.xml:219
+msgid "Array of weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:222
+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 mesh = ArrayMesh.new()\n"
+"mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, CubeMesh.new()."
+"get_mesh_arrays())\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"
+" # In this example we extend the mesh by one unit, which results in "
+"separated faces as it is flat shaded.\n"
+" vertex += mdt.get_vertex_normal(i)\n"
+" # Save your change.\n"
+" mdt.set_vertex(i, vertex)\n"
+"mesh.surface_remove(0)\n"
+"mdt.commit_to_surface(mesh)\n"
+"var mi = MeshInstance.new()\n"
+"mi.mesh = mesh\n"
+"add_child(mi)\n"
+"[/codeblock]\n"
+"See also [ArrayMesh], [ImmediateGeometry] 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:36
+msgid "Clears all data currently in MeshDataTool."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:43
+msgid "Adds a new surface to specified [Mesh] with edited data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:51
+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:65
+msgid "Returns array of faces that touch given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:72
+msgid "Returns meta information assigned to given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:80
+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:87
+msgid "Returns the number of faces in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:95
+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:103
+msgid "Returns the metadata associated with the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:110
+msgid "Calculates and returns the face normal of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:118
+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:125
+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:132
+msgid "Returns the material assigned to the [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:139
+msgid "Returns the vertex at given index."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:146
+msgid "Returns the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:153
+msgid "Returns the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:159
+msgid "Returns the total number of vertices in [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:166
+msgid "Returns an array of edges that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:173
+msgid "Returns an array of faces that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:180
+msgid "Returns the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:187
+msgid "Returns the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:194
+msgid "Returns the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:201
+msgid "Returns the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:208
+msgid "Returns the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:215
+msgid "Returns bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:223
+msgid "Sets the metadata of the given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:231
+msgid "Sets the metadata of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:238
+msgid "Sets the material to be used by newly-constructed [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:246
+msgid "Sets the position of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:254
+msgid "Sets the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:262
+msgid "Sets the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:270
+msgid "Sets the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:278
+msgid "Sets the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:286
+msgid "Sets the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:294
+msgid "Sets the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:302
+msgid "Sets the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:310
+msgid "Sets the bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:4
+msgid "Node that instances meshes into a scenario."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:7
+msgid ""
+"MeshInstance 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 to get 3D geometry rendered and can be used to instance a single [Mesh] "
+"in many places. This allows to reuse geometry and save on resources. When a "
+"[Mesh] has to be instanced more than thousands of times at close proximity, "
+"consider using a [MultiMesh] in a [MultiMeshInstance] instead."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:21
+msgid ""
+"This helper creates a [StaticBody] child node with a [ConvexPolygonShape] "
+"collision shape calculated from the mesh geometry. It's mainly used for "
+"testing.\n"
+"If [code]clean[/code] is [code]true[/code] (default), duplicate and interior "
+"vertices are removed automatically. You can set it to [code]false[/code] to "
+"make the process faster if not needed.\n"
+"If [code]simplify[/code] is [code]true[/code], the geometry can be further "
+"simplified to reduce the amount of vertices. Disabled by default."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:29
+msgid ""
+"This helper creates a [MeshInstance] child node with gizmos at every vertex "
+"calculated from the mesh geometry. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:35
+msgid ""
+"This helper creates a [StaticBody] child node with multiple "
+"[ConvexPolygonShape] collision shapes calculated from the mesh geometry via "
+"convex decomposition. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:41
+msgid ""
+"This helper creates a [StaticBody] child node with a [ConcavePolygonShape] "
+"collision shape calculated from the mesh geometry. It's mainly used for "
+"testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:48
+msgid ""
+"Returns the [Material] that will be used by the [Mesh] when drawing. This "
+"can return the [member GeometryInstance.material_override], the surface "
+"override [Material] defined in this [MeshInstance], or the surface "
+"[Material] defined in the [Mesh]. For example, if [member GeometryInstance."
+"material_override] is used, all surfaces will return the override material."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:55
+msgid "Returns the [Material] for a surface of the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:61
+msgid "Returns the number of surface materials."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:69
+msgid "Sets the [Material] for a surface of the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:75
+msgid "The [Mesh] resource for the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:78
+msgid "[NodePath] to the [Skeleton] associated with the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:81
+msgid "Sets the skin to be used by this instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:84
+msgid ""
+"If [code]true[/code], normals are transformed when software skinning is "
+"used. Set to [code]false[/code] when normals are not needed for better "
+"performance.\n"
+"See [member ProjectSettings.rendering/quality/skinning/"
+"software_skinning_fallback] for details about how software skinning is "
+"enabled."
+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 "
+"[Sprite] via a tool in the editor toolbar. Select \"Sprite\" then \"Convert "
+"to Mesh2D\", select settings in popup and press \"Create Mesh2D\"."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:10
+msgid "https://docs.godotengine.org/en/3.4/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 [Texture] 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/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:17
+msgid "Clears the library."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:24
+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:32
+msgid "Returns the first item with the given name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:38
+msgid "Returns the list of item IDs in use."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:45
+msgid "Returns the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:52
+msgid "Returns the transform applied to the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:59
+msgid "Returns the item's name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:66
+msgid "Returns the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:73
+msgid "Returns the transform applied to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:80
+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 [Texture] if no preview was manually set "
+"in a running project."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:87
+msgid ""
+"Returns an item's collision shapes.\n"
+"The array consists of each [Shape] followed by its [Transform]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:94
+msgid "Gets an unused ID for a new item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:101
+msgid "Removes the item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:109
+msgid "Sets the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:117
+msgid "Sets the transform to apply to the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:125
+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:134
+msgid "Sets the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:142
+msgid "Sets the transform to apply to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:150
+msgid "Sets a texture to use as the item's preview icon in the editor."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:158
+msgid ""
+"Sets an item's collision shapes.\n"
+"The array should consist of [Shape] 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:19
+msgid "Sets the size of the image, needed for reference."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:22
+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 = ARVRServer.find_interface(\"Native mobile\")\n"
+"if interface and interface.initialize():\n"
+" get_viewport().arvr = 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. "
+"[ARVROrigin] 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 "
+"[MeshInstance] 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 from each other, "
+"performance may be reduced as every single instance will always render (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/MultiMeshInstance.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh."
+"html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:20
+msgid ""
+"Returns the visibility axis-aligned bounding box in local space. See also "
+"[method VisualInstance.get_transformed_aabb]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:27
+msgid "Gets a specific instance's color."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:34
+msgid "Returns the custom data that has been set for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:41
+msgid "Returns the [Transform] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:48
+msgid "Returns the [Transform2D] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:55
+msgid ""
+"Sets all data related to the instances in one go. This is especially useful "
+"when loading the data from disk or preparing the data from GDNative.\n"
+"All data is packed in one large float array. An array may look like this: "
+"Transform for instance 1, color data for instance 1, custom data for "
+"instance 1, transform for instance 2, color data for instance 2, etc...\n"
+"[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, "
+"[code]COLOR_8BIT[/code] / [code]CUSTOM_DATA_8BIT[/code] is stored as 1 float "
+"(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/"
+"code] is stored as 4 floats."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:65
+msgid ""
+"Sets the color of a specific instance by [i]multiplying[/i] the mesh's "
+"existing vertex colors.\n"
+"For the color to take effect, ensure that [member color_format] is non-"
+"[code]null[/code] on the [MultiMesh] and [member SpatialMaterial."
+"vertex_color_use_as_albedo] is [code]true[/code] on the material."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:74
+msgid ""
+"Sets custom data for a specific instance. Although [Color] is used, it is "
+"just a container for 4 floating point numbers. The format of the number can "
+"change depending on the [enum CustomDataFormat] used."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:82
+msgid "Sets the [Transform] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:90
+msgid "Sets the [Transform2D] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:96
+msgid "Format of colors in color array that gets passed to shader."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:99
+msgid "Format of custom data in custom data array that gets passed to shader."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:102
+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:105
+msgid "Mesh to be drawn."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:108
+msgid "Format of transform used to transform mesh, either 2D or 3D."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:111
+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:116
+msgid "Use this when using 2D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:119
+msgid "Use this when using 3D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:122
+msgid "Use when you are not using per-instance [Color]s."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:125
+msgid ""
+"Compress [Color] data into 8 bits when passing to shader. This uses less "
+"memory and can be faster, but the [Color] loses precision."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:128
+msgid ""
+"The [Color] passed into [method set_instance_color] will use 4 floats. Use "
+"this for highest precision [Color]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:131
+msgid "Use when you are not using per-instance custom data."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:134
+msgid ""
+"Compress custom_data into 8 bits when passing to shader. This uses less "
+"memory and can be faster, but loses precision and range. Floats packed into "
+"8 bits can only represent values between 0 and 1, numbers outside that range "
+"will be clamped."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:137
+msgid ""
+"The [Color] passed into [method set_instance_custom_data] will use 4 floats. "
+"Use this for highest precision."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:4
+msgid "Node that instances a [MultiMesh]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:7
+msgid ""
+"[MultiMeshInstance] is a specialized node to instance [GeometryInstance]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/MultiMeshInstance.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance."
+"html"
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:19
+msgid ""
+"The [MultiMesh] resource that will be used and shared among all instances of "
+"the [MultiMeshInstance]."
+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 [MultiMeshInstance]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:16
+msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
+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. See also [NetworkedMultiplayerPeer].\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.\n"
+"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
+"detail and isn't meant to be used by non-Godot servers. It may change "
+"without notice."
+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:24
+msgid ""
+"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:30
+msgid ""
+"Returns the unique peer ID of this MultiplayerAPI's [member network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:36
+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:43 doc/classes/SceneTree.xml:123
+msgid "Returns [code]true[/code] if there is a [member network_peer] set."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:49
+msgid ""
+"Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is "
+"in server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:55
+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:65
+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:71
+msgid ""
+"If [code]true[/code] (or if the [member network_peer] has [member PacketPeer."
+"allow_object_decoding] set to [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:75
+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:78
+msgid ""
+"If [code]true[/code], the MultiplayerAPI's [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:81
+msgid ""
+"The 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:88
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:93
+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:99
+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:105
+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:112
+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:117
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:123
+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:126
+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:129
+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:132
+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:135
+msgid ""
+"[i]Deprecated.[/i] Use [constant RPC_MODE_PUPPET] instead. Analogous to the "
+"[code]slave[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:138
+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:141
+msgid ""
+"[i]Deprecated.[/i] Use [constant RPC_MODE_REMOTESYNC] instead. Analogous to "
+"the [code]sync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:144
+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:147
+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:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads."
+"html"
+msgstr ""
+
+#: doc/classes/Mutex.xml:16
+msgid ""
+"Locks this [Mutex], blocks until it is unlocked by the current owner.\n"
+"[b]Note:[/b] This function returns without blocking if the thread already "
+"has ownership of the mutex."
+msgstr ""
+
+#: doc/classes/Mutex.xml:23
+msgid ""
+"Tries locking this [Mutex], but does not block. Returns [constant OK] on "
+"success, [constant ERR_BUSY] otherwise.\n"
+"[b]Note:[/b] This function returns [constant OK] if the thread already has "
+"ownership of the mutex."
+msgstr ""
+
+#: doc/classes/Mutex.xml:30
+msgid ""
+"Unlocks this [Mutex], leaving it to other threads.\n"
+"[b]Note:[/b] If a thread called [method lock] or [method try_lock] multiple "
+"times while already having ownership of the mutex, it must also call [method "
+"unlock] the same number of times in order to unlock it correctly."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:13
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_class_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:20
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_method_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:27
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_property_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:34
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_signal_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:40
+msgid ""
+"Constructs a new object of the base type with a script of this type already "
+"attached.\n"
+"[b]Note:[/b] 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/Navigation.xml:4
+msgid "Mesh-based navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation.xml:7
+msgid ""
+"Provides navigation and pathfinding within a collection of "
+"[NavigationMesh]es. By default, these will be automatically collected from "
+"child [NavigationMeshInstance] nodes, but they can also be added on the fly "
+"with [method navmesh_add]. In addition to basic pathfinding, this class also "
+"assists with aligning navigation agents with the meshes they are navigating "
+"on.\n"
+"[b]Note:[/b] The current navigation system has many known issues and will "
+"not always return optimal paths as expected. These issues will be fixed in "
+"Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation.xml:11 doc/classes/NavigationMesh.xml:10
+msgid "https://godotengine.org/asset-library/asset/124"
+msgstr ""
+
+#: doc/classes/Navigation.xml:18 doc/classes/Navigation2D.xml:18
+msgid ""
+"Returns the navigation point closest to the point given. Points are in local "
+"coordinate space."
+msgstr ""
+
+#: doc/classes/Navigation.xml:25
+msgid ""
+"Returns the surface normal at the navigation point closest to the point "
+"given. Useful for rotating a navigation agent according to the navigation "
+"mesh it moves on."
+msgstr ""
+
+#: doc/classes/Navigation.xml:32
+msgid ""
+"Returns the owner of the [NavigationMesh] which contains the navigation "
+"point closest to the point given. This is usually a "
+"[NavigationMeshInstance]. For meshes added via [method navmesh_add], returns "
+"the owner that was given (or [code]null[/code] if the [code]owner[/code] "
+"parameter was omitted)."
+msgstr ""
+
+#: doc/classes/Navigation.xml:41
+msgid ""
+"Returns the navigation point closest to the given line segment. When "
+"enabling [code]use_collision[/code], only considers intersection points "
+"between segment and navigation meshes. If multiple intersection points are "
+"found, the one closest to the segment start point is returned."
+msgstr ""
+
+#: doc/classes/Navigation.xml:50
+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.\n"
+"[b]Note:[/b] This method has known issues and will often return non-optimal "
+"paths. These issues will be fixed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation.xml:60
+msgid ""
+"Adds a [NavigationMesh]. Returns an ID for use with [method navmesh_remove] "
+"or [method navmesh_set_transform]. If given, a [Transform2D] is applied to "
+"the polygon. The optional [code]owner[/code] is used as return value for "
+"[method get_closest_point_owner]."
+msgstr ""
+
+#: doc/classes/Navigation.xml:67
+msgid "Removes the [NavigationMesh] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation.xml:75
+msgid "Sets the transform applied to the [NavigationMesh] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation.xml:81
+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/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. By default, these are "
+"automatically collected from child [NavigationPolygonInstance] nodes, but "
+"they can also be added on the fly with [method navpoly_add].\n"
+"[b]Note:[/b] The current navigation system has many known issues and will "
+"not always return optimal paths as expected. These issues will be fixed in "
+"Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:11 doc/classes/NavigationPolygon.xml:27
+msgid "https://godotengine.org/asset-library/asset/117"
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:25
+msgid ""
+"Returns the owner of the [NavigationPolygon] which contains the navigation "
+"point closest to the point given. This is usually a "
+"[NavigationPolygonInstance]. For polygons added via [method navpoly_add], "
+"returns the owner that was given (or [code]null[/code] if the [code]owner[/"
+"code] parameter was omitted)."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:34
+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.\n"
+"[b]Note:[/b] This method has known issues and will often return non-optimal "
+"paths. These issues will be fixed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:44
+msgid ""
+"Adds a [NavigationPolygon]. Returns an ID for use with [method "
+"navpoly_remove] or [method navpoly_set_transform]. If given, a [Transform2D] "
+"is applied to the polygon. The optional [code]owner[/code] is used as return "
+"value for [method get_closest_point_owner]."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:51
+msgid "Removes the [NavigationPolygon] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:59
+msgid ""
+"Sets the transform applied to the [NavigationPolygon] with the given ID."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:4
+msgid "A mesh to approximate the walkable areas and obstacles."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:7
+msgid ""
+"A navigation mesh is a collection of polygons that define which areas of an "
+"environment are traversable to aid agents in pathfinding through complicated "
+"spaces."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:17 doc/classes/NavigationPolygon.xml:49
+msgid ""
+"Adds a polygon using the indices of the vertices you get when calling "
+"[method get_vertices]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:23
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of vertices."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:30
+msgid ""
+"Initializes the navigation mesh by setting the vertices and indices "
+"according to a [Mesh]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:37
+msgid ""
+"Returns whether the specified [code]bit[/code] of the [member geometry/"
+"collision_mask] is set."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:44 doc/classes/NavigationPolygon.xml:81
+msgid ""
+"Returns a [PoolIntArray] containing the indices of the vertices of a created "
+"polygon."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:50
+msgid "Returns the number of polygons in the navigation mesh."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:56
+msgid ""
+"Returns a [PoolVector3Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:64
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the [member geometry/collision_mask].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the [member geometry/collision_mask]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:72 doc/classes/NavigationPolygon.xml:121
+msgid ""
+"Sets the vertices that can be then indexed to create polygons with the "
+"[method add_polygon] method."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:78
+msgid ""
+"The minimum floor to ceiling height that will still allow the floor area to "
+"be considered walkable.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:82
+msgid ""
+"The minimum ledge height that is considered to still be traversable.\n"
+"[b]Note:[/b] While baking, this value will be rounded down to the nearest "
+"multiple of [member cell/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:86
+msgid "The maximum slope that is considered walkable, in degrees."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:89
+msgid ""
+"The distance to erode/shrink the walkable area of the heightfield away from "
+"obstructions.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/size]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:93
+msgid "The Y axis cell size to use for fields."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:96
+msgid "The XZ plane cell size to use for fields."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:99
+msgid ""
+"The sampling distance to use when generating the detail mesh, in cell unit."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:102
+msgid ""
+"The maximum distance the detail mesh surface should deviate from "
+"heightfield, in cell unit."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:105
+msgid ""
+"The maximum distance a simplfied contour's border edges should deviate the "
+"original raw contour."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:108
+msgid ""
+"The maximum allowed length for contour edges along the border of the mesh.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/size]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:112
+msgid ""
+"If [code]true[/code], marks walkable spans as not walkable if the clearance "
+"above the span is less than [member agent/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:115
+msgid "If [code]true[/code], marks spans that are ledges as non-walkable."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:118
+msgid ""
+"If [code]true[/code], marks non-walkable spans as walkable if their maximum "
+"is within [member agent/max_climb] of a walkable neighbor."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:121
+msgid ""
+"The physics layers to scan for static colliders.\n"
+"Only used when [member geometry/parsed_geometry_type] is [constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:125
+msgid ""
+"Determines which type of nodes will be parsed as geometry. See [enum "
+"ParsedGeometryType] for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:128
+msgid ""
+"The source of the geometry used when baking. See [enum SourceGeometryMode] "
+"for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:131
+msgid ""
+"The name of the group to scan for geometry.\n"
+"Only used when [member geometry/source_geometry_mode] is [constant "
+"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
+"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:135
+msgid ""
+"The maximum number of vertices allowed for polygons generated during the "
+"contour to polygon conversion process."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:138
+msgid ""
+"Any regions with a size smaller than this will be merged with larger regions "
+"if possible.\n"
+"[b]Note:[/b] This value will be squared to calculate the number of cells. "
+"For example, a value of 20 will set the number of cells to 400."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:142
+msgid ""
+"The minimum size of a region for it to be created.\n"
+"[b]Note:[/b] This value will be squared to calculate the minimum number of "
+"cells allowed to form isolated island areas. For example, a value of 8 will "
+"set the number of cells to 64."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:146
+msgid ""
+"Partitioning algorithm for creating the navigation mesh polys. See [enum "
+"SamplePartitionType] for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:151
+msgid ""
+"Watershed partitioning. Generally the best choice if you precompute the "
+"navigation mesh, use this if you have large open areas."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:154
+msgid ""
+"Monotone partitioning. Use this if you want fast navigation mesh generation."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:157
+msgid ""
+"Layer partitioning. Good choice to use for tiled navigation mesh with medium "
+"and small sized tiles."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:160
+msgid "Represents the size of the [enum SamplePartitionType] enum."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:163
+msgid ""
+"Parses mesh instances as geometry. This includes [MeshInstance], [CSGShape], "
+"and [GridMap] nodes."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:166
+msgid ""
+"Parses [StaticBody] colliders as geometry. The collider should be in any of "
+"the layers specified by [member geometry/collision_mask]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:169
+msgid ""
+"Both [constant PARSED_GEOMETRY_MESH_INSTANCES] and [constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:172
+msgid "Represents the size of the [enum ParsedGeometryType] enum."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:175
+msgid ""
+"Scans the child nodes of [NavigationMeshInstance] recursively for geometry."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:178
+msgid ""
+"Scans nodes in a group and their child nodes recursively for geometry. The "
+"group is specified by [member geometry/source_group_name]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:181
+msgid ""
+"Uses nodes in a group for geometry. The group is specified by [member "
+"geometry/source_group_name]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:184
+msgid "Represents the size of the [enum SourceGeometryMode] enum."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:4
+msgid "Node that instances navigation meshes into a scenario."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:7
+msgid ""
+"NavigationMeshInstance is a node that takes a [NavigationMesh] resource and "
+"adds it to the current scenario by creating an instance of it."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:15
+msgid "If [code]true[/code], the navigation mesh will be used by [Navigation]."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:18
+msgid "The [NavigationMesh] resource for the instance."
+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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.add_outline(outline)\n"
+"polygon.make_polygons_from_outlines()\n"
+"$NavigationPolygonInstance.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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.set_vertices(vertices)\n"
+"var indices = PoolIntArray(0, 3, 1)\n"
+"polygon.add_polygon(indices)\n"
+"$NavigationPolygonInstance.navpoly = polygon\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:34
+msgid ""
+"Appends a [PoolVector2Array] 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:42
+msgid ""
+"Adds a [PoolVector2Array] 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 ""
+"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:61
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of outlines and "
+"vertices."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:68
+msgid ""
+"Returns a [PoolVector2Array] containing the vertices of an outline that was "
+"created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:74
+msgid ""
+"Returns the number of outlines that were created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:87
+msgid "Returns the count of all polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:93
+msgid ""
+"Returns a [PoolVector2Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:99
+msgid "Creates polygons from the outlines added in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:106
+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:114
+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 ""
+
+#: 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.\n"
+"ENet's purpose is to provide a relatively thin, simple and robust network "
+"communication layer on top of UDP (User Datagram Protocol).\n"
+"[b]Note:[/b] ENet only uses UDP, not TCP. When forwarding the server port to "
+"make your server accessible on the public Internet, you only need to forward "
+"the server port in UDP. You can use the [UPNP] class to try to forward the "
+"server port automatically when starting the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:12
+#: doc/classes/NetworkedMultiplayerPeer.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/"
+"high_level_multiplayer.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:13
+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:31
+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:41
+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:49
+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:55
+msgid ""
+"Returns the channel of the last packet fetched via [method PacketPeer."
+"get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:61
+msgid ""
+"Returns the channel of the next packet that will be retrieved via [method "
+"PacketPeer.get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:68
+#: modules/websocket/doc_classes/WebSocketServer.xml:27
+msgid "Returns the IP address of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:75
+#: modules/websocket/doc_classes/WebSocketServer.xml:34
+msgid "Returns the remote port of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:82
+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:89
+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:96
+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:106
+msgid ""
+"Sets the timeout parameters for a peer.The timeout parameters control how "
+"and when a peer will timeout from a failure to acknowledge reliable traffic. "
+"Timeout values are expressed in milliseconds.\n"
+"The [code]timeout_limit[/code] is a factor that, multiplied by a value based "
+"on the average round trip time, will determine the timeout limit for a "
+"reliable packet. When that limit is reached, the timeout will be doubled, "
+"and the peer will be disconnected if that limit has reached "
+"[code]timeout_min[/code]. The [code]timeout_max[/code] parameter, on the "
+"other hand, defines a fixed timeout for which any packet must be "
+"acknowledged or the peer will be dropped."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
+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:116
+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:119
+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.\n"
+"[b]Note:[/b] Most games' network design involve sending many small packets "
+"frequently (smaller than 4 KB each). If in doubt, it is recommended to keep "
+"the default compression algorithm as it works best on these small packets.\n"
+"[b]Note:[/b] [member compression_mode] must be set to the same value on both "
+"the server and all its clients. Clients will fail to connect if the [member "
+"compression_mode] set on the client differs from the one set on the server. "
+"Prior to Godot 3.4, the default [member compression_mode] was [constant "
+"COMPRESS_NONE]. Nonetheless, mixing engine versions between clients and "
+"server is not recommended and not officially supported."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:124
+msgid ""
+"The hostname used for DTLS verification, to be compared against the \"CN\" "
+"value in the certificate provided by the server.\n"
+"When set to an empty string, the [code]address[/code] parameter passed to "
+"[method create_client] is used instead."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
+msgid ""
+"Enable or disable certificate verification when [member use_dtls] "
+"[code]true[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:132
+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:135
+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:139
+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"
+"[b]Note:[/b] 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:145
+msgid ""
+"No compression. This uses the most bandwidth, but has the upside of "
+"requiring the fewest CPU resources. This option may also be used to make "
+"network debugging using tools like Wireshark easier."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
+msgid ""
+"ENet's built-in range encoding. Works well on small packets, but is not the "
+"most efficient algorithm on packets larger than 4 KB."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:151
+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:154
+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. Note that this algorithm is not very efficient on "
+"packets smaller than 4 KB. Therefore, it's recommended to use other "
+"compression algorithms in most cases."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157
+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. See also [MultiplayerAPI].\n"
+"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
+"detail and isn't meant to be used by non-Godot servers. It may change "
+"without notice."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:12
+msgid "https://godotengine.org/asset-library/asset/537"
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:18
+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:30
+msgid "Returns the ID of this [NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:36
+msgid "Waits up to 1 second to receive a new network event."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:43
+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:50
+msgid ""
+"If [code]true[/code], this [NetworkedMultiplayerPeer] refuses new "
+"connections."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:53
+msgid ""
+"The manner in which to send packets to the [code]target_peer[/code]. See "
+"[enum TransferMode]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:59
+msgid "Emitted when a connection attempt fails."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:64
+msgid "Emitted when a connection attempt succeeds."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:70
+msgid "Emitted by the server when a client connects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:76
+msgid "Emitted by the server when a client disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:81
+msgid "Emitted by clients when the server disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:87
+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:90
+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:93
+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:96
+msgid "The ongoing connection disconnected."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:99
+msgid "A connection attempt is ongoing."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:102
+msgid "The connection attempt succeeded."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:105
+msgid "Packets are sent to the server and then redistributed to other peers."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:108
+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:16
+msgid ""
+"Returns the size of the margin identified by the given [enum Margin] "
+"constant."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:24
+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:30
+msgid ""
+"The stretch mode to use for horizontal stretching/tiling. See [enum "
+"NinePatchRect.AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:33
+msgid ""
+"The stretch mode to use for vertical stretching/tiling. See [enum "
+"NinePatchRect.AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:36
+msgid ""
+"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
+"borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:40
+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:43
+msgid ""
+"The width of the 9-slice's left column. A margin of 16 means the 9-slice's "
+"left corners and side will have a width of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:46
+msgid ""
+"The width of the 9-slice's right column. A margin of 16 means the 9-slice's "
+"right corners and side will have a width of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:49
+msgid ""
+"The height of the 9-slice's top row. A margin of 16 means the 9-slice's top "
+"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:52
+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:55
+msgid "The node's texture resource."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:61
+msgid "Emitted when the node's texture changes."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:67
+msgid ""
+"Stretches the center texture across the NinePatchRect. This may cause the "
+"texture to be distorted."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:70
+msgid ""
+"Repeats the center texture across the NinePatchRect. This won't cause any "
+"visible distortion. The texture must be seamless for this to work without "
+"displaying artifacts between edges.\n"
+"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
+"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:74
+msgid ""
+"Repeats the center texture across the NinePatchRect, but will also stretch "
+"the texture to make sure each tile is visible in full. This may cause the "
+"texture to be distorted, but less than [constant AXIS_STRETCH_MODE_STRETCH]. "
+"The texture must be seamless for this to work without displaying artifacts "
+"between edges.\n"
+"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
+"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
+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] (in seconds) 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/3.4/getting_started/step_by_step/"
+"scenes_and_nodes.html"
+msgstr ""
+
+#: doc/classes/Node.xml:21
+msgid "https://github.com/godotengine/godot-demo-projects/"
+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:34
+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:41
+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:50
+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 SceneTree.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:61
+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. [code]delta[/code] is in "
+"seconds.\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:71
+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. [code]delta[/code] is in seconds.\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:80
+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:90
+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 SceneTree.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:101
+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 SceneTree.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:113
+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 a 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"
+"[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/3.2/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:130
+msgid ""
+"Adds [code]child_node[/code] as a child. The child is placed below the given "
+"[code]node[/code] in the list of children.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have a human-readable name based on the name of the node being "
+"instanced instead of its type."
+msgstr ""
+
+#: doc/classes/Node.xml:139
+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.\n"
+"[b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] "
+"guaranteed. The order of node groups should not be relied upon as it can "
+"vary across project runs."
+msgstr ""
+
+#: doc/classes/Node.xml:147
+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:154
+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:165
+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.\n"
+"[b]Note:[/b] As this method walks through all the descendants of the node, "
+"it is the slowest way to get a reference to another node. Whenever possible, "
+"consider using [method get_node] instead. To avoid using [method find_node] "
+"too often, consider caching the node reference into a variable."
+msgstr ""
+
+#: doc/classes/Node.xml:175
+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.\n"
+"[b]Note:[/b] As this method walks upwards in the scene tree, it can be slow "
+"in large, deeply nested scene trees. Whenever possible, consider using "
+"[method get_node] instead. To avoid using [method find_parent] too often, "
+"consider caching the node reference into a variable."
+msgstr ""
+
+#: doc/classes/Node.xml:184
+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:191
+msgid "Returns the number of child nodes."
+msgstr ""
+
+#: doc/classes/Node.xml:197
+msgid "Returns an array of references to node's children."
+msgstr ""
+
+#: doc/classes/Node.xml:203
+msgid ""
+"Returns an array listing the groups that the node is a member of.\n"
+"[b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] "
+"guaranteed. The order of node groups should not be relied upon as it can "
+"vary across project runs."
+msgstr ""
+
+#: doc/classes/Node.xml:210
+msgid ""
+"Returns the node's index, i.e. its position among the siblings of its parent."
+msgstr ""
+
+#: doc/classes/Node.xml:216
+msgid ""
+"Returns the peer ID of the network master for this node. See [method "
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/Node.xml:223
+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:249
+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:263
+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:269
+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:275
+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:282
+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:288
+msgid ""
+"Returns the time elapsed (in seconds) 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:294
+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:300
+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:306
+msgid ""
+"Returns [code]true[/code] if this is an instance load placeholder. See "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:312
+msgid "Returns the [SceneTree] that contains this node."
+msgstr ""
+
+#: doc/classes/Node.xml:318
+msgid "Returns the node's [Viewport]."
+msgstr ""
+
+#: doc/classes/Node.xml:325
+msgid ""
+"Returns [code]true[/code] if the node that the [NodePath] points to exists."
+msgstr ""
+
+#: doc/classes/Node.xml:332
+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:339
+msgid ""
+"Returns [code]true[/code] if the given node is a direct or indirect child of "
+"the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:345
+msgid ""
+"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
+"dock."
+msgstr ""
+
+#: doc/classes/Node.xml:352
+msgid ""
+"Returns [code]true[/code] if the given node occurs later in the scene "
+"hierarchy than the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:359
+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:365
+msgid ""
+"Returns [code]true[/code] if this node is currently inside a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:371
+msgid ""
+"Returns [code]true[/code] if the local system is the master of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:377
+msgid ""
+"Returns [code]true[/code] if physics processing is enabled (see [method "
+"set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:383
+msgid ""
+"Returns [code]true[/code] if internal physics processing is enabled (see "
+"[method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:389
+msgid ""
+"Returns [code]true[/code] if processing is enabled (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:395
+msgid ""
+"Returns [code]true[/code] if the node is processing input (see [method "
+"set_process_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:401
+msgid ""
+"Returns [code]true[/code] if internal processing is enabled (see [method "
+"set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:407
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled input (see "
+"[method set_process_unhandled_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:413
+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:421
+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:427
+msgid ""
+"Prints all stray nodes (nodes outside the [SceneTree]). Used for debugging. "
+"Works only in debug builds."
+msgstr ""
+
+#: doc/classes/Node.xml:433
+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:448
+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:466
+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:473
+msgid ""
+"Notifies the current node and all its children recursively by calling "
+"[method Object.notification] on all of them."
+msgstr ""
+
+#: doc/classes/Node.xml:479
+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.\n"
+"[b]Important:[/b] If you have a variable pointing to a node, it will [i]not[/"
+"i] be assigned to [code]null[/code] once the node is freed. Instead, it will "
+"point to a [i]previously freed instance[/i] and you should validate it with "
+"[method @GDScript.is_instance_valid] before attempting to call its methods "
+"or access its properties."
+msgstr ""
+
+#: doc/classes/Node.xml:486
+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. The top Node is drawn first, then any "
+"siblings below the top Node in the hierarchy are successively drawn on top "
+"of it. After using [code]raise[/code], a Control will be drawn on top of its "
+"siblings."
+msgstr ""
+
+#: doc/classes/Node.xml:492
+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:499
+msgid ""
+"Removes a child node. The node is NOT deleted and must be deleted manually.\n"
+"[b]Note:[/b] This function may set the [member owner] of the removed Node "
+"(or its descendants) to be [code]null[/code], if that [member owner] is no "
+"longer a parent or ancestor."
+msgstr ""
+
+#: doc/classes/Node.xml:507
+msgid ""
+"Removes a node from a group. See notes in the description, and the group "
+"methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:515
+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:521
+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:528
+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:537
+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:545
+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:552
+msgid ""
+"Sends a [method rpc] using an unreliable protocol. Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:560
+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:568
+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:576
+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:585
+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:593
+msgid ""
+"Remotely changes the property's value on other peers (and locally) using an "
+"unreliable protocol."
+msgstr ""
+
+#: doc/classes/Node.xml:602
+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:609
+msgid "Sets the folded state of the node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Node.xml:617
+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:624
+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:631
+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' behavior.\n"
+"[b]Warning:[/b] Built-in Nodes rely on the internal processing for their own "
+"logic, so changing this value from your code may lead to unexpected "
+"behavior. Script access to this internal logic is provided for specific "
+"advanced uses, but is unsafe and not supported."
+msgstr ""
+
+#: doc/classes/Node.xml:639
+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:646
+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:653
+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' behavior.\n"
+"[b]Warning:[/b] Built-in Nodes rely on the internal processing for their own "
+"logic, so changing this value from your code may lead to unexpected "
+"behavior. Script access to this internal logic is provided for specific "
+"advanced uses, but is unsafe and not supported."
+msgstr ""
+
+#: doc/classes/Node.xml:661
+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:668
+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:675
+msgid ""
+"Sets whether this is an instance load placeholder. See [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:681
+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:688
+msgid ""
+"The override to the default [MultiplayerAPI]. Set to [code]null[/code] to "
+"use the default [SceneTree] one."
+msgstr ""
+
+#: doc/classes/Node.xml:691
+msgid ""
+"If a scene is instantiated from a file, its topmost node contains the "
+"absolute file path from which it was loaded in [member filename] (e.g. "
+"[code]res://levels/1.tscn[/code]). Otherwise, [member filename] is set to an "
+"empty string."
+msgstr ""
+
+#: doc/classes/Node.xml:694
+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:697
+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.\n"
+"[b]Note:[/b] Auto-generated names might include the [code]@[/code] "
+"character, which is reserved for unique names when using [method add_child]. "
+"When setting the name manually, any [code]@[/code] will be removed."
+msgstr ""
+
+#: doc/classes/Node.xml:701
+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:704
+msgid "Pause mode. How the node will behave if the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:707
+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:713
+msgid "Emitted when the node is ready."
+msgstr ""
+
+#: doc/classes/Node.xml:718
+msgid "Emitted when the node is renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:723
+msgid "Emitted when the node enters the tree."
+msgstr ""
+
+#: doc/classes/Node.xml:728
+msgid "Emitted after the node exits the tree and is no longer active."
+msgstr ""
+
+#: doc/classes/Node.xml:733
+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:739
+msgid "Notification received when the node enters a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:742
+msgid "Notification received when the node is about to exit a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:745
+msgid "Notification received when the node is moved in the parent."
+msgstr ""
+
+#: doc/classes/Node.xml:748
+msgid "Notification received when the node is ready. See [method _ready]."
+msgstr ""
+
+#: doc/classes/Node.xml:751
+msgid "Notification received when the node is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:754
+msgid "Notification received when the node is unpaused."
+msgstr ""
+
+#: doc/classes/Node.xml:757
+msgid ""
+"Notification received every frame when the physics process flag is set (see "
+"[method set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:760
+msgid ""
+"Notification received every frame when the process flag is set (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:763
+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:767
+msgid ""
+"Notification received when a node is unparented (parent removed it from the "
+"list of children)."
+msgstr ""
+
+#: doc/classes/Node.xml:770
+msgid "Notification received when the node is instanced."
+msgstr ""
+
+#: doc/classes/Node.xml:773
+msgid "Notification received when a drag begins."
+msgstr ""
+
+#: doc/classes/Node.xml:776
+msgid "Notification received when a drag ends."
+msgstr ""
+
+#: doc/classes/Node.xml:779
+msgid "Notification received when the node's [NodePath] changed."
+msgstr ""
+
+#: doc/classes/Node.xml:782
+msgid ""
+"Notification received every frame when the internal process flag is set (see "
+"[method set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:785
+msgid ""
+"Notification received every frame when the internal physics process flag is "
+"set (see [method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:788
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Node.xml:846
+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:849
+msgid "Stops processing when the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:852
+msgid "Continue to process regardless of the [SceneTree] pause state."
+msgstr ""
+
+#: doc/classes/Node.xml:855
+msgid "Duplicate the node's signals."
+msgstr ""
+
+#: doc/classes/Node.xml:858
+msgid "Duplicate the node's groups."
+msgstr ""
+
+#: doc/classes/Node.xml:861
+msgid "Duplicate the node's scripts."
+msgstr ""
+
+#: doc/classes/Node.xml:864
+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:11 doc/classes/Vector2.xml:16
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/2d"
+msgstr ""
+
+#: doc/classes/Node2D.xml:18
+msgid "Multiplies the current scale by the [code]ratio[/code] vector."
+msgstr ""
+
+#: doc/classes/Node2D.xml:25
+msgid ""
+"Returns the angle between the node and the [code]point[/code] in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"node2d_get_angle_to.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Node2D.xml:33
+msgid "Returns the [Transform2D] relative to this node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:40
+msgid "Adds the [code]offset[/code] vector to the node's global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:47
+msgid ""
+"Rotates the node so it points towards the [code]point[/code], which is "
+"expected to use global coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:55
+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:63
+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:70
+msgid ""
+"Applies a rotation to the node, in radians, starting from its current "
+"rotation."
+msgstr ""
+
+#: doc/classes/Node2D.xml:77
+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:84
+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:91
+msgid ""
+"Translates the node by the given [code]offset[/code] in local coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:97
+msgid "Global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:100
+msgid "Global rotation in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:103
+msgid "Global rotation in degrees."
+msgstr ""
+
+#: doc/classes/Node2D.xml:106
+msgid "Global scale."
+msgstr ""
+
+#: doc/classes/Node2D.xml:109
+msgid "Global [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:112
+msgid "Position, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:115
+msgid "Rotation in radians, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:118
+msgid "Rotation in degrees, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:121
+msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:124
+msgid "Local [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:127
+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:130
+msgid ""
+"Z index. Controls the order in which the nodes render. A node with a higher "
+"Z index will display in front of others. Must be between [constant "
+"VisualServer.CANVAS_ITEM_Z_MIN] and [constant VisualServer."
+"CANVAS_ITEM_Z_MAX] (inclusive)."
+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/Sprite:texture:size\"[/code] would refer to the "
+"[code]size[/code] property of the [code]texture[/code] resource on the node "
+"named [code]\"Sprite\"[/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]\n"
+"[b]Note:[/b] In the editor, [NodePath] properties are automatically updated "
+"when moving, renaming or deleting a node in the scene tree, but they are "
+"never updated at runtime."
+msgstr ""
+
+#: doc/classes/NodePath.xml:26 doc/classes/PackedScene.xml:41
+#: doc/classes/Panel.xml:10 doc/classes/PanelContainer.xml:10
+#: doc/classes/TileMap.xml:16 doc/classes/TileSet.xml:16
+msgid "https://godotengine.org/asset-library/asset/520"
+msgstr ""
+
+#: doc/classes/NodePath.xml:33
+msgid ""
+"Creates a NodePath from a string, e.g. [code]\"Path2D/PathFollow2D/Sprite:"
+"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 Sprite node\n"
+"\"Path2D/PathFollow2D/Sprite\"\n"
+"# Points to the Sprite node and its \"texture\" resource.\n"
+"# get_node() would retrieve \"Sprite\", while get_node_and_resource()\n"
+"# would retrieve both the Sprite node and the \"texture\" resource.\n"
+"\"Path2D/PathFollow2D/Sprite:texture\"\n"
+"# Points to the Sprite node and its \"position\" property.\n"
+"\"Path2D/PathFollow2D/Sprite:position\"\n"
+"# Points to the Sprite node and the \"x\" component of its \"position\" "
+"property.\n"
+"\"Path2D/PathFollow2D/Sprite:position:x\"\n"
+"# Absolute path (from \"root\")\n"
+"\"/root/Level/Path2D\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:55
+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:68
+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/Sprite:texture:load_path\")\n"
+"print(nodepath.get_concatenated_subnames()) # texture:load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:79
+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/Sprite\")\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:91
+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/Sprite\"[/code] has 3 names."
+msgstr ""
+
+#: doc/classes/NodePath.xml:99
+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/Sprite: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:110
+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/Sprite:texture:load_path\"[/code] "
+"has 2 subnames."
+msgstr ""
+
+#: doc/classes/NodePath.xml:117
+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:123
+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 "
+"Texture.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:29
+msgid "Height of the generated texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:32
+msgid "The [OpenSimplexNoise] instance used to generate the noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:35
+msgid ""
+"An offset used to specify the noise space coordinate of the top left corner "
+"of the generated noise. This value is ignored if [member seamless] is "
+"enabled."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:38
+msgid ""
+"Whether the texture can be tiled without visible seams or not. Seamless "
+"textures take longer to generate.\n"
+"[b]Note:[/b] Seamless noise has a lower contrast compared to non-seamless "
+"noise. This is due to the way noise uses higher dimensions for generating "
+"seamless noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:42
+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].\n"
+"[b]Note:[/b] Due to a bug, you can't create a \"plain\" Object using "
+"[code]Object.new()[/code]. Instead, use [code]ClassDB.instance(\"Object\")[/"
+"code]. This bug only applies to Object itself, not any of its descendents "
+"like [Reference]."
+msgstr ""
+
+#: doc/classes/Object.xml:24 doc/classes/Reference.xml:13
+#: doc/classes/Resource.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/"
+"node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:25
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_exports.html#advanced-exports"
+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:39
+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:47
+msgid "Called when the object is initialized."
+msgstr ""
+
+#: doc/classes/Object.xml:54
+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:62
+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:69
+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:78
+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:85
+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:96
+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:108
+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:117
+msgid ""
+"Returns [code]true[/code] if the object can translate strings. See [method "
+"set_message_translation] and [method tr]."
+msgstr ""
+
+#: doc/classes/Object.xml:128
+msgid ""
+"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:152
+msgid ""
+"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:160
+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:170
+msgid ""
+"Deletes the object from memory immediately. For [Node]s, you may want to use "
+"[method Node.queue_free] to queue the node for safe deletion at the end of "
+"the current frame.\n"
+"[b]Important:[/b] If you have a variable pointing to an object, it will "
+"[i]not[/i] be assigned to [code]null[/code] once the object is freed. "
+"Instead, it will point to a [i]previously freed instance[/i] and you should "
+"validate it with [method @GDScript.is_instance_valid] before attempting to "
+"call its methods or access its properties."
+msgstr ""
+
+#: doc/classes/Object.xml:178
+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:185
+msgid ""
+"Returns the object's class as a [String]. See also [method is_class].\n"
+"[b]Note:[/b] [method get_class] does not take [code]class_name[/code] "
+"declarations into account. If the object has a [code]class_name[/code] "
+"defined, the base class name will be returned instead."
+msgstr ""
+
+#: doc/classes/Object.xml:192
+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:203
+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:209
+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:217
+msgid "Returns the object's metadata entry for the given [code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:223
+msgid "Returns the object's metadata as a [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/Object.xml:229
+msgid "Returns the object's methods and their signatures as an [Array]."
+msgstr ""
+
+#: doc/classes/Object.xml:235
+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:242
+msgid ""
+"Returns the object's [Script] instance, or [code]null[/code] if none is "
+"assigned."
+msgstr ""
+
+#: doc/classes/Object.xml:249
+msgid "Returns an [Array] of connections for the given [code]signal[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:255
+msgid "Returns the list of signals as an [Array] of dictionaries."
+msgstr ""
+
+#: doc/classes/Object.xml:262
+msgid ""
+"Returns [code]true[/code] if a metadata entry is found with the given "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:269
+msgid ""
+"Returns [code]true[/code] if the object contains the given [code]method[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:276
+msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
+msgstr ""
+
+#: doc/classes/Object.xml:283
+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:289
+msgid "Returns [code]true[/code] if signal emission blocking is enabled."
+msgstr ""
+
+#: doc/classes/Object.xml:296
+msgid ""
+"Returns [code]true[/code] if the object inherits from the given [code]class[/"
+"code]. See also [method get_class].\n"
+"[b]Note:[/b] [method is_class] does not take [code]class_name[/code] "
+"declarations into account. If the object has a [code]class_name[/code] "
+"defined, [method is_class] will return [code]false[/code] for that name."
+msgstr ""
+
+#: doc/classes/Object.xml:306
+msgid ""
+"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:312
+msgid ""
+"Returns [code]true[/code] if the [method Node.queue_free] method was called "
+"for the object."
+msgstr ""
+
+#: doc/classes/Object.xml:320
+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:327
+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:334
+msgid ""
+"Removes a given entry from the object's metadata. See also [method set_meta]."
+msgstr ""
+
+#: doc/classes/Object.xml:342
+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:350
+msgid "If set to [code]true[/code], signal emission is blocked."
+msgstr ""
+
+#: doc/classes/Object.xml:358
+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:367
+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:379
+msgid ""
+"Defines whether the object can translate strings (with calls to [method "
+"tr]). Enabled by default."
+msgstr ""
+
+#: doc/classes/Object.xml:387
+msgid ""
+"Adds, changes or removes a given entry in the object's metadata. Metadata "
+"are serialized and can take any [Variant] value.\n"
+"To remove a given entry from the object's metadata, use [method "
+"remove_meta]. Metadata is also removed if its value is set to [code]null[/"
+"code]. This means you can also use [code]set_meta(\"name\", null)[/code] to "
+"remove metadata for [code]\"name\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:395
+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:402
+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:410
+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:418
+msgid "Emitted whenever the object's script is changed."
+msgstr ""
+
+#: doc/classes/Object.xml:424
+msgid "Called right when the object is initialized. Not available in script."
+msgstr ""
+
+#: doc/classes/Object.xml:427
+msgid "Called before the object is about to be deleted."
+msgstr ""
+
+#: doc/classes/Object.xml:430
+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:433
+msgid "Persisting connections are saved when the object is serialized to file."
+msgstr ""
+
+#: doc/classes/Object.xml:436
+msgid "One-shot connections disconnect themselves after emission."
+msgstr ""
+
+#: doc/classes/Object.xml:439
+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/Occluder.xml:4
+msgid "Allows [OccluderShape]s to be used for occlusion culling."
+msgstr ""
+
+#: doc/classes/Occluder.xml:7
+msgid ""
+"[Occluder]s that are placed within your scene will automatically cull "
+"objects that are hidden from view by the occluder. This can increase "
+"performance by decreasing the amount of objects drawn.\n"
+"[Occluder]s are totally dynamic, you can move them as you wish. This means "
+"you can for example, place occluders on a moving spaceship, and have it "
+"occlude objects as it flies past.\n"
+"You can place a large number of [Occluder]s within a scene. As it would be "
+"counterproductive to cull against hundreds of occluders, the system will "
+"automatically choose a selection of these for active use during any given "
+"frame, based a screen space metric. Larger occluders are favored, as well as "
+"those close to the camera. Note that a small occluder close to the camera "
+"may be a better occluder in terms of screen space than a large occluder far "
+"in the distance.\n"
+"The type of occlusion primitive is determined by the [OccluderShape] that "
+"you add to the [Occluder]. Some [OccluderShape]s may allow more than one "
+"primitive in a single, node, for greater efficiency.\n"
+"Although [Occluder]s work in general use, they also become even more "
+"powerful when used in conjunction with the portal system. Occluders are "
+"placed in rooms (based on their origin), and can block portals (and thus "
+"entire rooms) as well as objects from rendering."
+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/OccluderShape.xml:4
+msgid ""
+"Base class for shapes used for occlusion culling by the [Occluder] node."
+msgstr ""
+
+#: doc/classes/OccluderShape.xml:7
+msgid "[Occluder]s can use any primitive shape derived from [OccluderShape]."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:4
+msgid "Spherical occlusion primitive for use with the [Occluder] node."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:7
+msgid ""
+"[OccluderShape]s are resources used by [Occluder] nodes, allowing geometric "
+"occlusion culling.\n"
+"This shape can include multiple spheres. These can be created and deleted "
+"either in the Editor inspector or by calling [code]set_spheres[/code]. The "
+"sphere positions can be set by dragging the handle in the Editor viewport. "
+"The radius can be set with the smaller handle."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:18
+msgid "Sets an individual sphere's position."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:26
+msgid "Sets an individual sphere's radius."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:32
+msgid ""
+"The sphere data can be accessed as an array of [Plane]s. The position of "
+"each sphere is stored in the [code]normal[/code], and the radius is stored "
+"in the [code]d[/code] value of the plane."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:4
+msgid "Omnidirectional light, such as a light bulb or a candle."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:7
+msgid ""
+"An Omnidirectional light is a type of [Light] 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.\n"
+"[b]Note:[/b] By default, only 32 OmniLights may affect a single mesh "
+"[i]resource[/i] at once. Consider splitting your level into several meshes "
+"to decrease the likelihood that more than 32 lights will affect the same "
+"mesh resource. Splitting the level mesh will also improve frustum culling "
+"effectiveness, leading to greater performance. If you need to use more "
+"lights per mesh, you can increase [member ProjectSettings.rendering/limits/"
+"rendering/max_lights_per_object] at the cost of shader compilation times."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:17
+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/OmniLight.xml:20
+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/OmniLight.xml:23
+msgid "See [enum ShadowDetail]."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:26
+msgid "See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:31
+msgid ""
+"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
+"SHADOW_CUBE], but lower-quality."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:34
+msgid ""
+"Shadows are rendered to a cubemap. Slower than [constant "
+"SHADOW_DUAL_PARABOLOID], but higher-quality."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:37
+msgid "Use more detail vertically when computing the shadow."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:40
+msgid "Use more detail horizontally when computing the shadow."
+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:33
+msgid ""
+"Generate a noise image in [constant Image.FORMAT_L8] format with the "
+"requested [code]width[/code] and [code]height[/code], based on the current "
+"noise parameters. If [code]noise_offset[/code] is specified, then the offset "
+"value is used as the coordinates of the top-left corner of the generated "
+"noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:40
+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:49
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:56
+msgid "Returns the 2D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:65
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:72
+msgid "Returns the 3D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:82
+msgid "Returns the 4D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:89
+msgid ""
+"Generate a tileable noise image in [constant Image.FORMAT_L8] format, based "
+"on the current noise parameters. Generated seamless images are always square "
+"([code]size[/code] × [code]size[/code]).\n"
+"[b]Note:[/b] Seamless noise has a lower contrast compared to non-seamless "
+"noise. This is due to the way noise uses higher dimensions for generating "
+"seamless noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:96
+msgid "Difference in period between [member octaves]."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:99
+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:103
+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:106
+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:109
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:19
+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:27
+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:33
+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:39
+msgid "Clears all the items in the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:45
+msgid "Returns the amount of items in the OptionButton, including separators."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:52 doc/classes/PopupMenu.xml:203
+msgid "Returns the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:59
+msgid "Returns the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:66
+msgid "Returns the index of the item with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:73
+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:80 doc/classes/PopupMenu.xml:245
+msgid "Returns the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:93
+msgid ""
+"Returns the ID of the selected item, or [code]0[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:99
+msgid ""
+"Gets the metadata of the selected item. Metadata for items can be set using "
+"[method set_item_metadata]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:106
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:113
+msgid "Removes the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:120
+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:128
+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:137
+msgid "Sets the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:145
+msgid "Sets the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:153
+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:161 doc/classes/PopupMenu.xml:432
+msgid "Sets the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:169
+msgid ""
+"The index of the currently selected item, or [code]-1[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:177
+msgid ""
+"Emitted when the 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:183
+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:191
+msgid "The arrow icon to be drawn on the right end of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:194
+msgid ""
+"The horizontal space between the arrow icon and the right edge of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:197
+msgid "[StyleBox] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:200
+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:203
+msgid "[Font] of the [OptionButton]'s text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:206
+msgid "Default text [Color] of the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:209
+msgid "Text [Color] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:212
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:215
+msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:218
+msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:221
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:224
+msgid "The horizontal space between [OptionButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
+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:18
+msgid ""
+"Displays a modal dialog box using the host OS' facilities. Execution is "
+"blocked until the dialog is closed."
+msgstr ""
+
+#: doc/classes/OS.xml:24
+msgid "Returns [code]true[/code] if the host OS allows drawing."
+msgstr ""
+
+#: doc/classes/OS.xml:30
+msgid ""
+"Returns [code]true[/code] if the current host platform is using multiple "
+"threads."
+msgstr ""
+
+#: doc/classes/OS.xml:36
+msgid "Centers the window on the screen if in windowed mode."
+msgstr ""
+
+#: doc/classes/OS.xml:42
+msgid ""
+"Shuts down system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:50
+msgid ""
+"Delays execution of the current thread by [code]msec[/code] milliseconds. "
+"[code]msec[/code] must be greater than or equal to [code]0[/code]. "
+"Otherwise, [method delay_msec] will do nothing and will print an error "
+"message.\n"
+"[b]Note:[/b] [method delay_msec] is a [i]blocking[/i] way to delay code "
+"execution. To delay code execution in a non-blocking way, see [method "
+"SceneTree.create_timer]. Yielding with [method SceneTree.create_timer] will "
+"delay the execution of code placed below the [code]yield[/code] without "
+"affecting the rest of the project (or editor, for [EditorPlugin]s and "
+"[EditorScript]s).\n"
+"[b]Note:[/b] When [method delay_msec] is called on the main thread, it will "
+"freeze the project and will prevent it from redrawing and registering input "
+"until the delay has passed. When using [method delay_msec] as part of an "
+"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
+"the project if it is currently running (since the project is an independent "
+"child process)."
+msgstr ""
+
+#: doc/classes/OS.xml:59
+msgid ""
+"Delays execution of the current thread by [code]usec[/code] microseconds. "
+"[code]usec[/code] must be greater than or equal to [code]0[/code]. "
+"Otherwise, [method delay_usec] will do nothing and will print an error "
+"message.\n"
+"[b]Note:[/b] [method delay_usec] is a [i]blocking[/i] way to delay code "
+"execution. To delay code execution in a non-blocking way, see [method "
+"SceneTree.create_timer]. Yielding with [method SceneTree.create_timer] will "
+"delay the execution of code placed below the [code]yield[/code] without "
+"affecting the rest of the project (or editor, for [EditorPlugin]s and "
+"[EditorScript]s).\n"
+"[b]Note:[/b] When [method delay_usec] is called on the main thread, it will "
+"freeze the project and will prevent it from redrawing and registering input "
+"until the delay has passed. When using [method delay_usec] as part of an "
+"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
+"the project if it is currently running (since the project is an independent "
+"child process)."
+msgstr ""
+
+#: doc/classes/OS.xml:68
+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:76
+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:89
+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:115
+msgid "Returns the scancode of the given string (e.g. \"Escape\")."
+msgstr ""
+
+#: doc/classes/OS.xml:121
+msgid "Returns the total number of available audio drivers."
+msgstr ""
+
+#: doc/classes/OS.xml:128
+msgid "Returns the audio driver name for the given index."
+msgstr ""
+
+#: doc/classes/OS.xml:134
+msgid ""
+"Returns the [i]global[/i] cache data directory according to the operating "
+"system's standards. On desktop platforms, this path can be overridden by "
+"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting "
+"the project. See [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] in the documentation for "
+"more information. See also [method get_config_dir] and [method "
+"get_data_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:141
+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 [member ProjectSettings.editor/main_run_args] 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:158
+msgid ""
+"Returns the [i]global[/i] user configuration directory according to the "
+"operating system's standards. On desktop platforms, this path can be "
+"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable "
+"before starting the project. See [url=https://docs.godotengine.org/en/latest/"
+"tutorials/io/data_paths.html]File paths in Godot projects[/url] in the "
+"documentation for more information. See also [method get_cache_dir] and "
+"[method get_data_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:165
+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:173
+msgid ""
+"Returns the currently used video driver, using one of the values from [enum "
+"VideoDriver]."
+msgstr ""
+
+#: doc/classes/OS.xml:179
+msgid ""
+"Returns the [i]global[/i] user data directory according to the operating "
+"system's standards. On desktop platforms, this path can be overridden by "
+"setting the [code]XDG_DATA_HOME[/code] environment variable before starting "
+"the project. See [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] in the documentation for "
+"more information. See also [method get_cache_dir] and [method "
+"get_config_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:187
+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:194
+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:201
+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:208
+msgid "Returns the total amount of dynamic memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:215
+msgid ""
+"Returns the value of an environment variable. Returns an empty string if the "
+"environment variable doesn't exist.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:222
+msgid "Returns the path to the current engine executable."
+msgstr ""
+
+#: doc/classes/OS.xml:228
+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:235
+msgid ""
+"Returns the IME cursor position (the currently-edited portion of the string) "
+"relative to the characters in the composition string.\n"
+"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to "
+"notify it of changes to the IME cursor position.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:243
+msgid ""
+"Returns the IME intermediate composition string.\n"
+"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to "
+"notify it of changes to the IME composition string.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:251
+msgid ""
+"Returns the current latin keyboard variant as a String.\n"
+"Possible return values are: [code]\"QWERTY\"[/code], [code]\"AZERTY\"[/"
+"code], [code]\"QZERTY\"[/code], [code]\"DVORAK\"[/code], [code]\"NEO\"[/"
+"code], [code]\"COLEMAK\"[/code] or [code]\"ERROR\"[/code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows. Returns "
+"[code]\"QWERTY\"[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:259
+msgid ""
+"Returns the host OS locale as a string of the form "
+"[code]language_Script_COUNTRY_VARIANT@extra[/code]. If you want only the "
+"language code and not the fully specified locale from the OS, you can use "
+"[method get_locale_language].\n"
+"[code]language[/code] - 2 or 3-letter [url=https://en.wikipedia.org/wiki/"
+"List_of_ISO_639-1_codes]language code[/url], in lower case.\n"
+"[code]Script[/code] - optional, 4-letter [url=https://en.wikipedia.org/wiki/"
+"ISO_15924]script code[/url], in title case.\n"
+"[code]COUNTRY[/code] - optional, 2 or 3-letter [url=https://en.wikipedia.org/"
+"wiki/ISO_3166-1]country code[/url], in upper case.\n"
+"[code]VARIANT[/code] - optional, language variant, region and sort order. "
+"Variant can have any number of underscored keywords.\n"
+"[code]extra[/code] - optional, semicolon separated list of additional key "
+"words. Currency, calendar, sort order and numbering system information."
+msgstr ""
+
+#: doc/classes/OS.xml:270
+msgid ""
+"Returns the host OS locale's 2 or 3-letter [url=https://en.wikipedia.org/"
+"wiki/List_of_ISO_639-1_codes]language code[/url] as a string which should be "
+"consistent on all platforms. This is equivalent to extracting the "
+"[code]language[/code] part of the [method get_locale] string.\n"
+"This can be used to narrow down fully specified locale strings to only the "
+"\"common\" language code, when you don't need the additional information "
+"about country code or variants. For example, for a French Canadian user with "
+"[code]fr_CA[/code] locale, this would return [code]fr[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:277
+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:284
+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:291
+msgid ""
+"Returns internal structure pointers for use in GDNative plugins.\n"
+"[b]Note:[/b] This method is implemented on Linux and Windows (other OSs will "
+"soon be supported)."
+msgstr ""
+
+#: doc/classes/OS.xml:298
+msgid ""
+"Returns the amount of battery left in the device as a percentage. Returns "
+"[code]-1[/code] if power state is unknown.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:305
+msgid ""
+"Returns an estimate of the time left in seconds before the device runs out "
+"of battery. Returns [code]-1[/code] if power state is unknown.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:312
+msgid ""
+"Returns the current state of the device regarding battery and power. See "
+"[enum PowerState] constants.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:319
+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:326
+msgid "Returns the number of threads available on the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:332
+msgid "Returns the window size including decorations like window borders."
+msgstr ""
+
+#: doc/classes/OS.xml:339
+msgid ""
+"Returns the given scancode as a string (e.g. Return values: [code]\"Escape"
+"\"[/code], [code]\"Shift+Escape\"[/code]).\n"
+"See also [member InputEventKey.scancode] and [method InputEventKey."
+"get_scancode_with_modifiers]."
+msgstr ""
+
+#: doc/classes/OS.xml:346
+msgid "Returns the number of displays attached to the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:353
+msgid ""
+"Returns the dots per inch density of the specified screen. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used.\n"
+"[b]Note:[/b] On macOS, returned value is inaccurate if fractional display "
+"scaling mode is used.\n"
+"[b]Note:[/b] On Android devices, the actual screen densities are grouped "
+"into six generalized densities:\n"
+"[codeblock]\n"
+" ldpi - 120 dpi\n"
+" mdpi - 160 dpi\n"
+" hdpi - 240 dpi\n"
+" xhdpi - 320 dpi\n"
+" xxhdpi - 480 dpi\n"
+"xxxhdpi - 640 dpi\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is implemented on Android, Linux, macOS and "
+"Windows. Returns [code]72[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:370
+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/OS.xml:379
+msgid ""
+"Returns the position of the specified screen by index. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used."
+msgstr ""
+
+#: doc/classes/OS.xml:386
+msgid ""
+"Return the scale factor of the specified screen by index. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used.\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/OS.xml:395
+msgid ""
+"Returns the dimensions in pixels of the specified screen. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used."
+msgstr ""
+
+#: doc/classes/OS.xml:401
+msgid ""
+"Returns the amount of time in milliseconds it took for the boot logo to "
+"appear."
+msgstr ""
+
+#: doc/classes/OS.xml:407
+msgid "Returns the maximum amount of static memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:413
+msgid "Returns the amount of static memory being used by the program in bytes."
+msgstr ""
+
+#: doc/classes/OS.xml:421
+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.\n"
+"[b]Note:[/b] Shared storage is implemented on Android and allows to "
+"differentiate between app specific and shared directories. Shared "
+"directories have additional restrictions on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:429
+msgid "Returns the epoch time of the operating system in milliseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:435
+msgid "Returns the epoch time of the operating system in seconds."
+msgstr ""
+
+#: doc/classes/OS.xml:441
+msgid ""
+"Returns the total number of available tablet drivers.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:449
+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:456
+msgid ""
+"Returns the ID of the current thread. This can be used in logs to ease "
+"debugging of multi-threaded applications.\n"
+"[b]Note:[/b] Thread IDs are not deterministic and may be reused across "
+"application restarts."
+msgstr ""
+
+#: doc/classes/OS.xml:463
+msgid ""
+"Returns the amount of time passed in milliseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:469
+msgid ""
+"Returns the amount of time passed in microseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:476
+msgid "Returns current time as a dictionary of keys: hour, minute, second."
+msgstr ""
+
+#: doc/classes/OS.xml:482
+msgid ""
+"Returns the current time zone as a dictionary with the keys: bias and name."
+msgstr ""
+
+#: doc/classes/OS.xml:488
+msgid ""
+"Returns a string that is unique to the device.\n"
+"[b]Note:[/b] This string may change without notice if the user reinstalls/"
+"upgrades their operating system or changes their hardware. This means it "
+"should generally not be used to encrypt persistent data as the data saved "
+"before an unexpected ID change would become inaccessible. The returned "
+"string may also be falsified using external programs, so do not rely on the "
+"string returned by [method get_unique_id] for security purposes.\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:496
+msgid ""
+"Returns the current UNIX epoch timestamp in seconds.\n"
+"[b]Important:[/b] This is the system clock that the user can manually set. "
+"[b]Never use[/b] this method for precise time calculation since its results "
+"are also subject to automatic adjustments by the operating system. [b]Always "
+"use[/b] [method get_ticks_usec] or [method get_ticks_msec] for precise time "
+"calculation instead, since they are guaranteed to be monotonic (i.e. never "
+"decrease)."
+msgstr ""
+
+#: doc/classes/OS.xml:504
+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"
+"If the dictionary is empty [code]0[/code] is returned. If some keys are "
+"omitted, they default to the equivalent values for the UNIX epoch timestamp "
+"0 (1970-01-01 at 00:00:00 UTC).\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:513
+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].\n"
+"Not to be confused with [method get_data_dir], which returns the [i]global[/"
+"i] (non-project-specific) user data directory."
+msgstr ""
+
+#: doc/classes/OS.xml:524
+msgid "Returns the number of video drivers supported on the current platform."
+msgstr ""
+
+#: doc/classes/OS.xml:531
+msgid ""
+"Returns the name of the video driver matching the given [code]driver[/code] "
+"index. This index is a value from [enum VideoDriver], and you can use "
+"[method get_current_video_driver] to get the current backend's index."
+msgstr ""
+
+#: doc/classes/OS.xml:537
+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/OS.xml:543
+msgid ""
+"Returns unobscured area of the window where interactive controls should be "
+"rendered."
+msgstr ""
+
+#: doc/classes/OS.xml:553
+msgid ""
+"Add a new item with text \"label\" to global menu. Use \"_dock\" menu to add "
+"item to the macOS dock icon menu.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:561
+msgid ""
+"Add a separator between items. Separators also occupy an index.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:569
+msgid ""
+"Clear the global menu, in effect removing all items.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:578
+msgid ""
+"Removes the item at index \"idx\" from the global menu. Note that the "
+"indexes of items after the removed item are going to be shifted by one.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:586
+msgid ""
+"Returns [code]true[/code] if the environment variable with the name "
+"[code]variable[/code] exists.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:594
+msgid ""
+"Returns [code]true[/code] if the feature for the given feature tag is "
+"supported in the currently running instance, depending on the 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/3.4/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:601
+msgid ""
+"Returns [code]true[/code] if the device has a touchscreen or emulates one."
+msgstr ""
+
+#: doc/classes/OS.xml:607
+msgid ""
+"Returns [code]true[/code] if the platform has a virtual keyboard, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/OS.xml:613
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/OS.xml:619
+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:627
+msgid ""
+"Returns [code]true[/code] if the [b]OK[/b] button should appear on the left "
+"and [b]Cancel[/b] on the right."
+msgstr ""
+
+#: doc/classes/OS.xml:634
+msgid ""
+"Returns [code]true[/code] if the input scancode corresponds to a Unicode "
+"character."
+msgstr ""
+
+#: doc/classes/OS.xml:640
+msgid ""
+"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
+"(verbose stdout)."
+msgstr ""
+
+#: doc/classes/OS.xml:646
+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:652
+msgid ""
+"Returns [code]true[/code] if the window should always be on top of other "
+"windows."
+msgstr ""
+
+#: doc/classes/OS.xml:658
+msgid ""
+"Returns [code]true[/code] if the window is currently focused.\n"
+"[b]Note:[/b] Only implemented on desktop platforms. On other platforms, it "
+"will always return [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:665
+msgid ""
+"Returns active keyboard layout index.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:672
+msgid ""
+"Returns the number of keyboard layouts.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:680
+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/OS.xml:688
+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/OS.xml:696
+msgid ""
+"Sets active keyboard layout.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:704
+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:712
+msgid ""
+"Moves the window to the front.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:719
+msgid ""
+"Returns [code]true[/code] if native video is playing.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:726
+msgid ""
+"Pauses native video playback.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:737
+msgid ""
+"Plays native video from the specified path, at the given volume and with "
+"audio and subtitle tracks.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:744
+msgid ""
+"Stops native video playback.\n"
+"[b]Note:[/b] This method is implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:751
+msgid ""
+"Resumes native video playback.\n"
+"[b]Note:[/b] This method is implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:758
+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:766
+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:772
+msgid "Shows the list of loaded textures sorted by size in memory."
+msgstr ""
+
+#: doc/classes/OS.xml:779
+msgid "Shows the number of resources loaded by the game of the given types."
+msgstr ""
+
+#: doc/classes/OS.xml:786
+msgid "Shows all resources currently used by the game."
+msgstr ""
+
+#: doc/classes/OS.xml:792
+msgid ""
+"Request the user attention to the window. It'll flash the taskbar button on "
+"Windows or bounce the dock icon on OSX.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:800
+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:806
+msgid ""
+"With this function, you can request dangerous permissions since normal "
+"permissions are automatically granted at install time in Android "
+"applications.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:815
+msgid ""
+"Sets the value of the environment variable [code]variable[/code] to "
+"[code]value[/code]. The environment variable will be set for the Godot "
+"process and any process executed with [method execute] after running [method "
+"set_environment]. The environment variable will [i]not[/i] persist to "
+"processes run after the Godot process was terminated.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:823
+msgid ""
+"Sets the game's icon using an [Image] resource.\n"
+"The same image is used for window caption, taskbar/dock and window selection "
+"dialog. Image is scaled as needed.\n"
+"[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:832
+msgid ""
+"Sets whether IME input mode should be enabled.\n"
+"If active IME handles key events before the application and creates an "
+"composition string and suggestion list.\n"
+"Application can retrieve the composition status by using [method "
+"get_ime_selection] and [method get_ime_text] functions.\n"
+"Completed composition string is committed when input is finished.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:843
+msgid ""
+"Sets position of IME suggestion list popup (in window coordinates).\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:851
+msgid ""
+"Sets the game's icon using a multi-size platform-specific icon file ([code]*."
+"ico[/code] on Windows and [code]*.icns[/code] on macOS).\n"
+"Appropriate size sub-icons are used for window caption, taskbar/dock and "
+"window selection dialog.\n"
+"[b]Note:[/b] This method is implemented on macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:860
+msgid "Sets the name of the current thread."
+msgstr ""
+
+#: doc/classes/OS.xml:867
+msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:874
+msgid ""
+"Sets whether the window should always be on top.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:882
+msgid ""
+"Sets a polygonal region of the window which accepts mouse events. Mouse "
+"events outside the region will be passed through.\n"
+"Passing an empty array will disable passthrough support (all mouse events "
+"will be intercepted by the window, which is the default behavior).\n"
+"[codeblock]\n"
+"# Set region, using Path2D node.\n"
+"OS.set_window_mouse_passthrough($Path2D.curve.get_baked_points())\n"
+"\n"
+"# Set region, using Polygon2D node.\n"
+"OS.set_window_mouse_passthrough($Polygon2D.polygon)\n"
+"\n"
+"# Reset region to default.\n"
+"OS.set_window_mouse_passthrough([])\n"
+"[/codeblock]\n"
+"[b]Note:[/b] On Windows, the portion of a window that lies outside the "
+"region is not drawn, while on Linux and macOS it is.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:902
+msgid ""
+"Sets the window title to the specified string.\n"
+"[b]Note:[/b] This should be used sporadically. Don't set this every frame, "
+"as that will negatively affect performance on some window managers.\n"
+"[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:911
+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:924
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"The [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"
+"The [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"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
+#: doc/classes/OS.xml:933
+msgid "The clipboard from the host OS. Might be unavailable on some platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:936
+msgid "The current screen index (starting from 0)."
+msgstr ""
+
+#: doc/classes/OS.xml:939
+msgid ""
+"If [code]true[/code], the engine filters the time delta measured between "
+"each frame, and attempts to compensate for random variation. This will only "
+"operate on systems where V-Sync is active."
+msgstr ""
+
+#: doc/classes/OS.xml:942
+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:946
+msgid ""
+"If [code]true[/code], the engine tries to keep the screen on while the game "
+"is running. Useful on mobile."
+msgstr ""
+
+#: doc/classes/OS.xml:949
+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:952
+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:955
+msgid ""
+"The maximum size of the window (without counting window manager "
+"decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to "
+"reset to the system default value."
+msgstr ""
+
+#: doc/classes/OS.xml:958
+msgid ""
+"The minimum size of the window in pixels (without counting window manager "
+"decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to "
+"reset to the system's default value.\n"
+"[b]Note:[/b] By default, the project window has a minimum size of "
+"[code]Vector2(64, 64)[/code]. This prevents issues that can arise when the "
+"window is resized to a near-zero size."
+msgstr ""
+
+#: doc/classes/OS.xml:962
+msgid "The current screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:965
+msgid "The current tablet driver in use."
+msgstr ""
+
+#: doc/classes/OS.xml:968
+msgid "If [code]true[/code], vertical synchronization (Vsync) is enabled."
+msgstr ""
+
+#: doc/classes/OS.xml:971
+msgid ""
+"If [code]true[/code] and [code]vsync_enabled[/code] is true, the operating "
+"system's window compositor will be used for vsync when the compositor is "
+"enabled and the game is in windowed mode.\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.\n"
+"[b]Note:[/b] This property is only implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:976
+msgid ""
+"If [code]true[/code], removes the window frame.\n"
+"[b]Note:[/b] Setting [code]window_borderless[/code] to [code]false[/code] "
+"disables per-pixel transparency."
+msgstr ""
+
+#: doc/classes/OS.xml:980
+msgid "If [code]true[/code], the window is fullscreen."
+msgstr ""
+
+#: doc/classes/OS.xml:983
+msgid "If [code]true[/code], the window is maximized."
+msgstr ""
+
+#: doc/classes/OS.xml:986
+msgid "If [code]true[/code], the window is minimized."
+msgstr ""
+
+#: doc/classes/OS.xml:989
+msgid ""
+"If [code]true[/code], the window background is transparent and the window "
+"frame is removed.\n"
+"Use [code]get_tree().get_root().set_transparent_background(true)[/code] to "
+"disable main viewport background rendering.\n"
+"[b]Note:[/b] This property has no effect if [member ProjectSettings.display/"
+"window/per_pixel_transparency/allowed] setting is disabled.\n"
+"[b]Note:[/b] This property is implemented on HTML5, Linux, macOS, Windows, "
+"and Android. It can't be changed at runtime for Android. Use [member "
+"ProjectSettings.display/window/per_pixel_transparency/enabled] to set it at "
+"startup instead."
+msgstr ""
+
+#: doc/classes/OS.xml:995
+msgid ""
+"The window position relative to the screen, the origin is the top left "
+"corner, +Y axis goes to the bottom and +X axis goes to the right."
+msgstr ""
+
+#: doc/classes/OS.xml:998
+msgid "If [code]true[/code], the window is resizable by the user."
+msgstr ""
+
+#: doc/classes/OS.xml:1001
+msgid "The size of the window (without counting window manager decorations)."
+msgstr ""
+
+#: doc/classes/OS.xml:1006
+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:1009
+msgid ""
+"The GLES3 rendering backend. It uses OpenGL ES 3.0 on mobile devices, OpenGL "
+"3.3 on desktop platforms and WebGL 2.0 on the web."
+msgstr ""
+
+#: doc/classes/OS.xml:1012
+msgid "Sunday."
+msgstr ""
+
+#: doc/classes/OS.xml:1015
+msgid "Monday."
+msgstr ""
+
+#: doc/classes/OS.xml:1018
+msgid "Tuesday."
+msgstr ""
+
+#: doc/classes/OS.xml:1021
+msgid "Wednesday."
+msgstr ""
+
+#: doc/classes/OS.xml:1024
+msgid "Thursday."
+msgstr ""
+
+#: doc/classes/OS.xml:1027
+msgid "Friday."
+msgstr ""
+
+#: doc/classes/OS.xml:1030
+msgid "Saturday."
+msgstr ""
+
+#: doc/classes/OS.xml:1033
+msgid "January."
+msgstr ""
+
+#: doc/classes/OS.xml:1036
+msgid "February."
+msgstr ""
+
+#: doc/classes/OS.xml:1039
+msgid "March."
+msgstr ""
+
+#: doc/classes/OS.xml:1042
+msgid "April."
+msgstr ""
+
+#: doc/classes/OS.xml:1045
+msgid "May."
+msgstr ""
+
+#: doc/classes/OS.xml:1048
+msgid "June."
+msgstr ""
+
+#: doc/classes/OS.xml:1051
+msgid "July."
+msgstr ""
+
+#: doc/classes/OS.xml:1054
+msgid "August."
+msgstr ""
+
+#: doc/classes/OS.xml:1057
+msgid "September."
+msgstr ""
+
+#: doc/classes/OS.xml:1060
+msgid "October."
+msgstr ""
+
+#: doc/classes/OS.xml:1063
+msgid "November."
+msgstr ""
+
+#: doc/classes/OS.xml:1066
+msgid "December."
+msgstr ""
+
+#: doc/classes/OS.xml:1069
+msgid ""
+"Application handle:\n"
+"- Windows: [code]HINSTANCE[/code] of the application\n"
+"- MacOS: [code]NSApplication*[/code] of the application (not yet "
+"implemented)\n"
+"- Android: [code]JNIEnv*[/code] of the application (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1075
+msgid ""
+"Display handle:\n"
+"- Linux: [code]X11::Display*[/code] for the display"
+msgstr ""
+
+#: doc/classes/OS.xml:1079
+msgid ""
+"Window handle:\n"
+"- Windows: [code]HWND[/code] of the main window\n"
+"- Linux: [code]X11::Window*[/code] of the main window\n"
+"- MacOS: [code]NSWindow*[/code] of the main window (not yet implemented)\n"
+"- Android: [code]jObject[/code] the main android activity (not yet "
+"implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1086
+msgid ""
+"Window view:\n"
+"- Windows: [code]HDC[/code] of the main window drawing context\n"
+"- MacOS: [code]NSView*[/code] of the main windows view (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1091
+msgid ""
+"OpenGL Context:\n"
+"- Windows: [code]HGLRC[/code]\n"
+"- Linux: [code]X11::GLXContext[/code]\n"
+"- MacOS: [code]NSOpenGLContext*[/code] (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1097
+msgid "Landscape screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1100
+msgid "Portrait screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1103
+msgid "Reverse landscape screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1106
+msgid "Reverse portrait screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1109
+msgid "Uses landscape or reverse landscape based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1112
+msgid "Uses portrait or reverse portrait based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1115
+msgid "Uses most suitable orientation based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1118
+msgid "Desktop directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1121
+msgid "DCIM (Digital Camera Images) directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1124
+msgid "Documents directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1127
+msgid "Downloads directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1130
+msgid "Movies directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1133
+msgid "Music directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1136
+msgid "Pictures directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1139
+msgid "Ringtones directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1142
+msgid "Unknown powerstate."
+msgstr ""
+
+#: doc/classes/OS.xml:1145
+msgid "Unplugged, running on battery."
+msgstr ""
+
+#: doc/classes/OS.xml:1148
+msgid "Plugged in, no battery available."
+msgstr ""
+
+#: doc/classes/OS.xml:1151
+msgid "Plugged in, battery charging."
+msgstr ""
+
+#: doc/classes/OS.xml:1154
+msgid "Plugged in, battery fully charged."
+msgstr ""
+
+#: doc/classes/PackedDataContainerRef.xml:4
+msgid "Reference version of [PackedDataContainer]."
+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 nodes 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:53
+msgid ""
+"Returns the [code]SceneState[/code] representing the scene file contents."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:60
+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:67
+msgid ""
+"Pack will ignore any sub-nodes not owned by given node. See [member Node."
+"owner]."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:73
+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:79
+msgid "If passed to [method instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:82
+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:86
+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/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:15
+msgid "Returns the number of packets currently available in the ring-buffer."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:21
+msgid "Gets a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:27
+msgid ""
+"Returns the error state of the last packet received (via [method get_packet] "
+"and [method get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:34
+msgid ""
+"Gets a Variant. If [code]allow_objects[/code] (or [member "
+"allow_object_decoding]) 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:42
+msgid "Sends a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:50
+msgid ""
+"Sends a [Variant] as a packet. If [code]full_objects[/code] (or [member "
+"allow_object_decoding]) is [code]true[/code], encoding objects is allowed "
+"(and can potentially include code)."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:56
+msgid ""
+"[i]Deprecated.[/i] Use [code]get_var[/code] and [code]put_var[/code] "
+"parameters instead.\n"
+"If [code]true[/code], the PacketPeer will allow encoding and decoding of "
+"object via [method get_var] and [method put_var].\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:61
+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].\n"
+"[b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are "
+"currently not supported. Revoked certificates are accepted as long as they "
+"are otherwise valid. If this is a concern, you may want to use automatically "
+"managed certificates with a short validity period."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:20
+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:26
+msgid "Disconnects this peer, terminating the DTLS session."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:32 doc/classes/StreamPeerSSL.xml:43
+msgid "Returns the status of the connection. See [enum Status] for values."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:38
+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:44
+msgid "A status representing a [PacketPeerDTLS] that is disconnected."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:47
+msgid ""
+"A status representing a [PacketPeerDTLS] that is currently performing the "
+"handshake with a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:50
+msgid ""
+"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:53
+msgid "A status representing a [PacketPeerDTLS] in a generic error state."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:56
+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:15
+msgid "Closes the UDP socket the [PacketPeerUDP] is currently listening on."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:23
+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"
+"[b]Note:[/b] 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:30
+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:36
+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:42
+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:48
+msgid "Returns whether this [PacketPeerUDP] is listening."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:56
+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"
+"[b]Note:[/b] Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:66
+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:75
+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:85
+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"
+"[b]Note:[/b] 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:94
+msgid ""
+"Sets the destination address and port for sending packets and variables. A "
+"hostname will be resolved using DNS if needed.\n"
+"[b]Note:[/b] [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:101
+msgid ""
+"Waits for a packet to arrive on the listening port. See [method listen].\n"
+"[b]Note:[/b] [method wait] can't be interrupted once it has been called. "
+"This can be worked around by allowing the other party to send a specific "
+"\"death pill\" packet like this:\n"
+"[codeblock]\n"
+"# Server\n"
+"socket.set_dest_address(\"127.0.0.1\", 789)\n"
+"socket.put_packet(\"Time to stop\".to_ascii())\n"
+"\n"
+"# Client\n"
+"while socket.wait() == OK:\n"
+" var data = socket.get_packet().get_string_from_ascii()\n"
+" if data == \"Time to stop\":\n"
+" return\n"
+"[/codeblock]"
+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:11
+msgid "https://godotengine.org/asset-library/asset/516"
+msgstr ""
+
+#: doc/classes/Panel.xml:12 doc/classes/Skeleton.xml:12
+#: doc/classes/SkeletonIK.xml:29
+msgid "https://godotengine.org/asset-library/asset/523"
+msgstr ""
+
+#: doc/classes/Panel.xml:20
+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:18
+msgid "The style of [PanelContainer]'s background."
+msgstr ""
+
+#: doc/classes/PanoramaSky.xml:4
+msgid "A type of [Sky] used to draw a background texture."
+msgstr ""
+
+#: doc/classes/PanoramaSky.xml:7
+msgid ""
+"A resource referenced in an [Environment] that is used to draw a background. "
+"The Panorama sky 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/PanoramaSky.xml:17
+msgid "[Texture] to be applied to the PanoramaSky."
+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 [Texture] mirroring. Useful for creating an infinite "
+"scrolling background. If an axis is set to [code]0[/code], the [Texture] "
+"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/Particles.xml:4
+msgid "GPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/Particles.xml:7
+msgid ""
+"3D particle node used to create a variety of particle systems and effects. "
+"[Particles] 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.\n"
+"[b]Note:[/b] [Particles] only work when using the GLES3 renderer. If using "
+"the GLES2 renderer, use [CPUParticles] instead. You can convert [Particles] "
+"to [CPUParticles] by selecting the node, clicking the [b]Particles[/b] menu "
+"at the top of the 3D editor viewport then choosing [b]Convert to "
+"CPUParticles[/b].\n"
+"[b]Note:[/b] After working on a Particles node, remember to update its "
+"[member visibility_aabb] by selecting it, clicking the [b]Particles[/b] menu "
+"at the top of the 3D editor viewport then choose [b]Generate Visibility "
+"AABB[/b]. Otherwise, particles may suddenly disappear depending on the "
+"camera position and angle."
+msgstr ""
+
+#: doc/classes/Particles.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/Particles.xml:20
+msgid ""
+"Returns the axis-aligned bounding box that contains all the particles that "
+"are active in the current frame."
+msgstr ""
+
+#: doc/classes/Particles.xml:27
+msgid "Returns the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/Particles.xml:33
+msgid "Restarts the particle emission, clearing existing particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:41
+msgid "Sets the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/Particles.xml:54
+msgid "[Mesh] that is drawn for the first draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:57
+msgid "[Mesh] that is drawn for the second draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:60
+msgid "[Mesh] that is drawn for the third draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:63
+msgid "[Mesh] that is drawn for the fourth draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:66
+msgid "The number of draw passes when rendering particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:72
+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/Particles.xml:87
+msgid ""
+"If [code]true[/code], only [code]amount[/code] particles will be emitted."
+msgstr ""
+
+#: doc/classes/Particles.xml:90
+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/Particles.xml:93 doc/classes/Particles2D.xml:68
+msgid ""
+"[Material] for processing particles. Can be a [ParticlesMaterial] or a "
+"[ShaderMaterial]."
+msgstr ""
+
+#: doc/classes/Particles.xml:96
+msgid "Emission randomness ratio."
+msgstr ""
+
+#: doc/classes/Particles.xml:99
+msgid ""
+"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
+"particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:102
+msgid ""
+"The [AABB] that determines the node's region which needs to be visible on "
+"screen for the particle system to be active.\n"
+"Grow the box if particles suddenly appear/disappear when the node enters/"
+"exits the screen. The [AABB] can be grown via code or with the [b]Particles "
+"→ Generate AABB[/b] editor tool.\n"
+"[b]Note:[/b] If the [ParticlesMaterial] in use is configured to cast "
+"shadows, you may want to enlarge this AABB to ensure the shadow is updated "
+"when particles are off-screen."
+msgstr ""
+
+#: doc/classes/Particles.xml:118
+msgid "Maximum number of draw passes supported."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:4
+msgid "GPU-based 2D particle emitter."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:7
+msgid ""
+"2D particle node used to create a variety of particle systems and effects. "
+"[Particles2D] 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.\n"
+"[b]Note:[/b] [Particles2D] only work when using the GLES3 renderer. If using "
+"the GLES2 renderer, use [CPUParticles2D] instead. You can convert "
+"[Particles2D] to [CPUParticles2D] by selecting the node, clicking the "
+"[b]Particles[/b] menu at the top of the 2D editor viewport then choosing "
+"[b]Convert to CPUParticles2D[/b].\n"
+"[b]Note:[/b] After working on a Particles node, remember to update its "
+"[member visibility_rect] by selecting it, clicking the [b]Particles[/b] menu "
+"at the top of the 2D editor viewport then choose [b]Generate Visibility "
+"Rect[/b]. Otherwise, particles may suddenly disappear depending on the "
+"camera position and angle.\n"
+"[b]Note:[/b] Unlike [CPUParticles2D], [Particles2D] currently ignore the "
+"texture region defined in [AtlasTexture]s."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:21
+msgid "Returns a rectangle containing the positions of all existing particles."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:27
+msgid "Restarts all the existing particles."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:80
+msgid ""
+"The [Rect2] that determines the node's region which needs to be visible on "
+"screen for the particle system to be active.\n"
+"Grow the rect if particles suddenly appear/disappear when the node enters/"
+"exits the screen. The [Rect2] can be grown via code or with the [b]Particles "
+"→ Generate Visibility Rect[/b] editor tool."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:4
+msgid "Particle properties for [Particles] and [Particles2D] nodes."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:7
+msgid ""
+"ParticlesMaterial defines particle properties and behavior. It is used in "
+"the [code]process_material[/code] of [Particles] and [Particles2D] 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:18
+msgid "Returns [code]true[/code] if the specified flag is enabled."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:32
+msgid "Returns the randomness ratio associated with the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:39
+msgid "Returns the [Texture] used by the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:47
+msgid ""
+"If [code]true[/code], enables the specified flag. See [enum Flags] for "
+"options."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:55
+msgid "Sets the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:63
+msgid "Sets the randomness ratio for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:71
+msgid "Sets the [Texture] for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:77
+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 [SpatialMaterial] being used to draw the particle "
+"is using [constant SpatialMaterial.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:81
+msgid "Each particle's rotation will be animated along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:87
+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 [SpatialMaterial] being used to draw the particle "
+"is using [constant SpatialMaterial.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:91
+msgid "Each particle's angular velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:100
+msgid "Each particle's animation offset will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:109
+msgid "Each particle's animation speed will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:115
+msgid ""
+"Each particle's initial color. If the [Particles2D]'s [code]texture[/code] "
+"is defined, it will be multiplied by this color. To have particle display "
+"color in a [SpatialMaterial] make sure to set [member SpatialMaterial."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:124
+msgid "Damping will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:133
+msgid ""
+"The box's extents if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:136
+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:139
+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:142
+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:145
+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:148
+msgid ""
+"The axis of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:151
+msgid ""
+"The height of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:154
+msgid ""
+"The inner radius of the ring when using the emitter [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:157
+msgid ""
+"The radius of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:160
+msgid ""
+"Particles will be emitted inside this region. Use [enum EmissionShape] "
+"constants for values."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:163
+msgid ""
+"The sphere's radius if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:175
+msgid "Amount of [member spread] along the Y axis."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:184
+msgid "Each particle's hue will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:202
+msgid ""
+"Each particle's linear acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:208
+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:212
+msgid "Each particle's orbital velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:221
+msgid ""
+"Each particle's radial acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:230
+msgid "Each particle's scale will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:242
+msgid ""
+"Each particle's tangential acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:248
+msgid "Trail particles' color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:251
+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:254
+msgid "Trail particles' size will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:259
+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:262
+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:265
+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:268
+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:271
+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:274
+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:277
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set damping properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:280
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angle properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:283
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set scale properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:286
+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:289
+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:292
+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:298
+msgid "Use with [method set_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:301
+msgid "Use with [method set_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:304
+msgid "Use with [method set_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:319
+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:322
+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/Path.xml:4
+msgid "Contains a [Curve3D] path for [PathFollow] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path.xml:7
+msgid ""
+"Can have [PathFollow] child nodes moving along the [Curve3D]. See "
+"[PathFollow] for more information on the usage.\n"
+"Note that the path is considered as relative to the moved nodes (children of "
+"[PathFollow]). As such, the curve should usually start with a zero vector "
+"[code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Path.xml:16
+msgid "A [Curve3D] describing the path."
+msgstr ""
+
+#: doc/classes/Path.xml:22
+msgid "Emitted when the [member curve] changes."
+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/PathFollow.xml:4
+msgid "Point sampler for a [Path]."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:7
+msgid ""
+"This node takes its parent [Path], 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/PathFollow.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 [Path] 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/PathFollow.xml:21 doc/classes/PathFollow2D.xml:21
+msgid "The node's offset along the curve."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:24 doc/classes/PathFollow2D.xml:27
+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/PathFollow.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/PathFollow.xml:30
+msgid ""
+"Allows or forbids rotation on one or more axes, depending on the [enum "
+"RotationMode] constants being used."
+msgstr ""
+
+#: doc/classes/PathFollow.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/PathFollow.xml:36 doc/classes/PathFollow2D.xml:39
+msgid "The node's offset perpendicular to the curve."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:41
+msgid "Forbids the PathFollow to rotate."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:44
+msgid "Allows the PathFollow to rotate in the Y axis only."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:47
+msgid "Allows the PathFollow to rotate in both the X, and Y axes."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:50
+msgid "Allows the PathFollow to rotate in any axis."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:53
+msgid ""
+"Uses the up vector information in a [Curve3D] to enforce orientation. This "
+"rotation mode requires the [Path]'s [member Curve3D.up_vector_enabled] "
+"property to be set to [code]true[/code]."
+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: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: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/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:24
+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:31
+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:39
+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"
+"[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."
+msgstr ""
+
+#: doc/classes/Performance.xml:18
+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:27
+msgid "Number of frames per second."
+msgstr ""
+
+#: doc/classes/Performance.xml:30
+msgid "Time it took to complete one frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:33
+msgid "Time it took to complete one physics frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:36
+msgid ""
+"Static memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:39
+msgid ""
+"Dynamic memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:42
+msgid "Available static memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:45
+msgid "Available dynamic memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:48
+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:51
+msgid "Number of objects currently instanced (including nodes)."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Number of resources currently used."
+msgstr ""
+
+#: doc/classes/Performance.xml:57
+msgid ""
+"Number of nodes currently instanced in the scene tree. This also includes "
+"the root node."
+msgstr ""
+
+#: doc/classes/Performance.xml:60
+msgid ""
+"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
+msgid "3D objects drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:66
+msgid "Vertices drawn per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:69
+msgid "Material changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:72
+msgid "Shader changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:75
+msgid "Render surface changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:78
+msgid "Draw calls per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:81
+msgid "Items or joined items drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:84
+msgid "Draw calls per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:87 doc/classes/VisualServer.xml:3696
+msgid ""
+"The amount of video memory used, i.e. texture and vertex memory combined."
+msgstr ""
+
+#: doc/classes/Performance.xml:90 doc/classes/VisualServer.xml:3699
+msgid "The amount of texture memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:93 doc/classes/VisualServer.xml:3702
+msgid "The amount of vertex memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:96 doc/classes/VisualServer.xml:3693
+msgid ""
+"Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:99
+msgid "Number of active [RigidBody2D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:102
+msgid "Number of collision pairs in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:105
+msgid "Number of islands in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:108
+msgid "Number of active [RigidBody] and [VehicleBody] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:111
+msgid "Number of collision pairs in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:114
+msgid "Number of islands in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:117
+msgid "Output latency of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/Performance.xml:120
+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:16
+msgid ""
+"Generates and sets an optimized translation from the given [Translation] "
+"resource."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:4
+msgid "Direct access object to a physics body in the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:7
+msgid ""
+"Provides direct access to a physics body in the [Physics2DServer], 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/Physics2DDirectBodyState.xml:11
+#: doc/classes/Physics2DDirectSpaceState.xml:11
+#: doc/classes/PhysicsDirectBodyState.xml:11
+#: doc/classes/PhysicsDirectSpaceState.xml:11 doc/classes/RayCast.xml:14
+#: doc/classes/RayCast2D.xml:14 doc/classes/World.xml:10
+#: doc/classes/World2D.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html"
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:18 doc/classes/RigidBody2D.xml:30
+msgid "Adds a constant directional force without affecting rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:26
+#: doc/classes/PhysicsDirectBodyState.xml:27 doc/classes/RigidBody2D.xml:38
+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/Physics2DDirectBodyState.xml:33 doc/classes/RigidBody2D.xml:45
+msgid "Adds a constant rotational force."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:40 doc/classes/RigidBody2D.xml:52
+msgid "Applies a directional impulse without affecting rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:48
+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/Physics2DDirectBodyState.xml:55 doc/classes/RigidBody2D.xml:67
+msgid "Applies a rotational impulse to the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:62
+#: doc/classes/PhysicsDirectBodyState.xml:64
+msgid "Returns the collider's [RID]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:69
+#: doc/classes/PhysicsDirectBodyState.xml:71
+msgid "Returns the collider's object id."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:76
+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/Physics2DDirectBodyState.xml:83
+#: doc/classes/PhysicsDirectBodyState.xml:85
+msgid "Returns the contact position in the collider."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:90
+#: doc/classes/PhysicsDirectBodyState.xml:92
+msgid "Returns the collider's shape index."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:97
+msgid ""
+"Returns the collided shape's metadata. This metadata is different from "
+"[method Object.get_meta], and is set with [method Physics2DServer."
+"shape_set_data]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:104
+#: doc/classes/PhysicsDirectBodyState.xml:99
+msgid "Returns the linear velocity vector at the collider's contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:110
+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/Physics2DDirectBodyState.xml:118
+#: doc/classes/PhysicsDirectBodyState.xml:120
+msgid "Returns the local normal at the contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:125
+#: doc/classes/PhysicsDirectBodyState.xml:127
+msgid "Returns the local position of the contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:132
+#: doc/classes/PhysicsDirectBodyState.xml:134
+msgid "Returns the local shape index of the collision."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:138
+#: doc/classes/PhysicsDirectBodyState.xml:140
+msgid "Returns the current state of the space, useful for queries."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:145
+#: doc/classes/PhysicsDirectBodyState.xml:147
+msgid ""
+"Returns the body's velocity at the given relative position, including both "
+"translation and rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:151
+#: doc/classes/PhysicsDirectBodyState.xml:153
+msgid "Calls the built-in force integration code."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:157
+#: doc/classes/PhysicsDirectBodyState.xml:159 doc/classes/RigidBody2D.xml:101
+msgid "The body's rotational velocity."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:160
+#: doc/classes/PhysicsDirectBodyState.xml:164
+msgid "The inverse of the inertia of the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:163
+#: doc/classes/PhysicsDirectBodyState.xml:167
+msgid "The inverse of the mass of the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:166
+#: doc/classes/PhysicsDirectBodyState.xml:170 doc/classes/RigidBody2D.xml:146
+msgid "The body's linear velocity."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:169
+#: doc/classes/PhysicsDirectBodyState.xml:175
+msgid "If [code]true[/code], this body is currently sleeping (not active)."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:172
+#: doc/classes/PhysicsDirectBodyState.xml:178
+msgid "The timestep (delta) used for the simulation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:175
+#: doc/classes/PhysicsDirectBodyState.xml:181
+msgid ""
+"The rate at which the body stops rotating, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:178
+#: doc/classes/PhysicsDirectBodyState.xml:184
+msgid "The total gravity vector being currently applied to this body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:181
+#: doc/classes/PhysicsDirectBodyState.xml:187
+msgid ""
+"The rate at which the body stops moving, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:184
+#: doc/classes/PhysicsDirectBodyState.xml:190
+msgid "The body's transformation matrix."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:4
+msgid "Direct access object to a space in the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:7
+msgid ""
+"Direct access object to a space in the [Physics2DServer]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:18
+msgid ""
+"Checks how far a [Shape2D] can move without colliding. All the parameters "
+"for the query, including the shape and the motion, are supplied through a "
+"[Physics2DShapeQueryParameters] object.\n"
+"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
+"the motion. The safe proportion is the maximum fraction of the motion that "
+"can be made without a collision. The unsafe proportion is the minimum "
+"fraction of the distance that must be moved for a collision. If no collision "
+"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
+"[b]Note:[/b] Any [Shape2D]s that the shape is already colliding with e.g. "
+"inside of, will be ignored. Use [method collide_shape] to determine the "
+"[Shape2D]s that the shape is already colliding with."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:28
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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/Physics2DDirectSpaceState.xml:35
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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 "
+"Physics2DServer.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/Physics2DDirectSpaceState.xml:55
+msgid ""
+"Checks whether a point is inside any solid 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 "
+"Physics2DServer.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 [PhysicsBody]s or [Area]s, "
+"respectively.\n"
+"[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in "
+"[code]Segments[/code] build mode are not solid shapes. Therefore, they will "
+"not be detected."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:86
+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 "
+"Physics2DServer.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 [PhysicsBody]s or [Area]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:103
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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 "
+"Physics2DServer.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/Physics2DServer.xml:4
+msgid "Server interface for low-level 2D physics access."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:7
+msgid ""
+"Physics2DServer 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/Physics2DServer.xml:19 doc/classes/PhysicsServer.xml:19
+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/Physics2DServer.xml:34 doc/classes/Physics2DServer.xml:304
+#: doc/classes/PhysicsServer.xml:27 doc/classes/PhysicsServer.xml:298
+msgid ""
+"Assigns the area to a descendant of [Object], so it can exist in the node "
+"tree."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:41 doc/classes/PhysicsServer.xml:34
+msgid ""
+"Removes all shapes from an area. It does not delete the shapes, so they can "
+"be reassigned later."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:47
+msgid ""
+"Creates an [Area2D]. After creating an [Area2D] with this method, assign it "
+"to a space using [method area_set_space] to use the created [Area2D] in the "
+"physics world."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:60 doc/classes/Physics2DServer.xml:372
+#: doc/classes/PhysicsServer.xml:47 doc/classes/PhysicsServer.xml:362
+msgid "Gets the instance ID of the object the area is assigned to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:68
+msgid ""
+"Returns an area parameter value. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:76 doc/classes/PhysicsServer.xml:63
+msgid "Returns the [RID] of the nth shape of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:83 doc/classes/PhysicsServer.xml:70
+msgid "Returns the number of shapes assigned to an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:91 doc/classes/PhysicsServer.xml:78
+msgid "Returns the transform matrix of a shape within an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:98 doc/classes/PhysicsServer.xml:85
+msgid "Returns the space assigned to the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:105 doc/classes/PhysicsServer.xml:92
+msgid "Returns the space override mode for the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:112 doc/classes/PhysicsServer.xml:99
+msgid "Returns the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:120 doc/classes/PhysicsServer.xml:114
+msgid ""
+"Removes a shape from an area. It does not delete the shape, so it can be "
+"reassigned later."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:136 doc/classes/PhysicsServer.xml:130
+msgid "Assigns the area to one or many physics layers."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:144 doc/classes/PhysicsServer.xml:138
+msgid "Sets which physics layers the area will monitor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:153 doc/classes/PhysicsServer.xml:147
+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/Physics2DServer.xml:174
+msgid ""
+"Sets the value for an area parameter. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:183 doc/classes/PhysicsServer.xml:185
+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/Physics2DServer.xml:192
+msgid "Disables a given shape in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:201 doc/classes/PhysicsServer.xml:202
+msgid "Sets the transform matrix for an area shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:209 doc/classes/PhysicsServer.xml:210
+msgid "Assigns a space to the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:217
+msgid ""
+"Sets the space override mode for the area. See [enum AreaSpaceOverrideMode] "
+"for a list of available modes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:225 doc/classes/PhysicsServer.xml:226
+msgid "Sets the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:240 doc/classes/PhysicsServer.xml:241
+msgid "Adds a body to the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:249
+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/Physics2DServer.xml:259 doc/classes/PhysicsServer.xml:259
+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/Physics2DServer.xml:282
+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/Physics2DServer.xml:311 doc/classes/PhysicsServer.xml:305
+msgid "Removes all shapes from a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:317
+msgid "Creates a physics body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:330 doc/classes/PhysicsServer.xml:320
+msgid "Returns the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:337
+msgid "Returns the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:344
+msgid "Returns the continuous collision detection mode."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:351
+msgid "Returns the [Physics2DDirectBodyState] of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:358 doc/classes/PhysicsServer.xml:348
+msgid ""
+"Returns the maximum contacts that can be reported. See [method "
+"body_set_max_contacts_reported]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:365 doc/classes/PhysicsServer.xml:355
+msgid "Returns the body mode."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:380
+msgid ""
+"Returns the value of a body parameter. See [enum BodyParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:388 doc/classes/PhysicsServer.xml:378
+msgid "Returns the [RID] of the nth shape of a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:395 doc/classes/PhysicsServer.xml:385
+msgid "Returns the number of shapes assigned to a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:403
+msgid "Returns the metadata of a shape of a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:411 doc/classes/PhysicsServer.xml:393
+msgid "Returns the transform matrix of a body shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:418 doc/classes/PhysicsServer.xml:400
+msgid "Returns the [RID] of the space assigned to a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:426 doc/classes/PhysicsServer.xml:408
+msgid "Returns a body state."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:433 doc/classes/PhysicsServer.xml:429
+msgid ""
+"Returns whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:441
+msgid "Removes a body from the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:449 doc/classes/PhysicsServer.xml:453
+msgid ""
+"Removes a shape from a body. The shape is not deleted, so it can be reused "
+"afterwards."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:457 doc/classes/PhysicsServer.xml:469
+#: doc/classes/RigidBody.xml:105
+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/Physics2DServer.xml:465 doc/classes/PhysicsServer.xml:477
+msgid "Sets the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:473 doc/classes/PhysicsServer.xml:485
+msgid "Sets the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:481
+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/Physics2DServer.xml:492 doc/classes/PhysicsServer.xml:504
+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/Physics2DServer.xml:500 doc/classes/PhysicsServer.xml:519
+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/Physics2DServer.xml:508
+msgid "Sets the body mode using one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:516 doc/classes/PhysicsServer.xml:535
+msgid ""
+"Sets whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:525
+msgid ""
+"Sets a body parameter. See [enum BodyParameter] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:534 doc/classes/PhysicsServer.xml:561
+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/Physics2DServer.xml:544
+msgid ""
+"Enables one way collision on body if [code]enable[/code] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:553
+msgid "Disables shape in body if [code]disable[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:562
+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/Physics2DServer.xml:571 doc/classes/PhysicsServer.xml:578
+msgid "Sets the transform matrix for a body shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:579 doc/classes/PhysicsServer.xml:586
+msgid "Assigns a space to the body (see [method space_create])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:588
+msgid ""
+"Sets a body state using one of the [enum BodyState] constants.\n"
+"Note that the method doesn't take effect immediately. The state will change "
+"on the next physics frame."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:603
+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. [Physics2DTestMotionResult] "
+"can be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:633
+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/Physics2DServer.xml:641
+msgid "Returns the value of a damped spring joint parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:650
+msgid ""
+"Sets a damped spring joint parameter. See [enum DampedStringParam] for a "
+"list of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:657
+msgid ""
+"Destroys any of the objects created by Physics2DServer. If the [RID] passed "
+"is not one of the objects that can be created by Physics2DServer, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:664
+msgid ""
+"Returns information about the current state of the 2D physics engine. See "
+"[enum ProcessInfo] for a list of available states."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:675
+msgid ""
+"Creates a groove joint between two bodies. If not specified, the bodies are "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:683
+msgid "Returns the value of a joint parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:690
+msgid "Returns a joint's type (see [enum JointType])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:699
+msgid ""
+"Sets a joint parameter. See [enum JointParam] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:713
+msgid ""
+"Creates a pin joint between two bodies. If not specified, the second body is "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:735
+msgid "Activates or deactivates the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:742
+msgid ""
+"Sets the amount of iterations for calculating velocities of colliding "
+"bodies. The greater the amount of iterations, the more accurate the "
+"collisions will be. However, a greater amount of iterations requires more "
+"CPU power, which can decrease performance. The default value is [code]8[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:749 doc/classes/PhysicsServer.xml:859
+msgid "Returns the shape data."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:756
+msgid "Returns a shape's type (see [enum ShapeType])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:764 doc/classes/PhysicsServer.xml:874
+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/Physics2DServer.xml:770 doc/classes/PhysicsServer.xml:897
+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/Physics2DServer.xml:777
+msgid ""
+"Returns the state of a space, a [Physics2DDirectSpaceState]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:785 doc/classes/PhysicsServer.xml:912
+msgid "Returns the value of a space parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:792 doc/classes/PhysicsServer.xml:919
+msgid "Returns whether the space is active."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:800 doc/classes/PhysicsServer.xml:927
+msgid ""
+"Marks a space as active. It will not have an effect, unless it is assigned "
+"to an area or body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:809
+msgid ""
+"Sets the value for a space parameter. See [enum SpaceParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:815 doc/classes/PhysicsServer.xml:1278
+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/Physics2DServer.xml:818 doc/classes/PhysicsServer.xml:1281
+msgid ""
+"Constant to set/get the maximum distance a shape can be from another before "
+"they are considered separated."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:821 doc/classes/PhysicsServer.xml:1284
+msgid ""
+"Constant to set/get the maximum distance a shape can penetrate another shape "
+"before it is considered a collision."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:824 doc/classes/PhysicsServer.xml:1287
+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/Physics2DServer.xml:827 doc/classes/PhysicsServer.xml:1290
+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/Physics2DServer.xml:830 doc/classes/PhysicsServer.xml:1293
+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/Physics2DServer.xml:833 doc/classes/PhysicsServer.xml:1298
+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/Physics2DServer.xml:836
+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/Physics2DServer.xml:841
+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/Physics2DServer.xml:844
+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/Physics2DServer.xml:847
+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/Physics2DServer.xml:850
+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/Physics2DServer.xml:853
+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/Physics2DServer.xml:856
+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/Physics2DServer.xml:859 doc/classes/PhysicsServer.xml:1173
+msgid ""
+"This constant is used internally by the engine. Any attempt to create this "
+"kind of shape results in an error."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:862 doc/classes/PhysicsServer.xml:1176
+msgid "Constant to set/get gravity strength in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:865 doc/classes/PhysicsServer.xml:1179
+msgid "Constant to set/get gravity vector/center in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:868 doc/classes/PhysicsServer.xml:1182
+msgid ""
+"Constant to set/get whether the gravity vector of an area is a direction, or "
+"a center point."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:871 doc/classes/PhysicsServer.xml:1185
+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/Physics2DServer.xml:874 doc/classes/PhysicsServer.xml:1188
+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/Physics2DServer.xml:877 doc/classes/PhysicsServer.xml:1191
+msgid "Constant to set/get the linear dampening factor of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:880 doc/classes/PhysicsServer.xml:1194
+msgid "Constant to set/get the angular dampening factor of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:883 doc/classes/PhysicsServer.xml:1197
+msgid "Constant to set/get the priority (order of processing) of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:886 doc/classes/PhysicsServer.xml:1200
+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/Physics2DServer.xml:889 doc/classes/PhysicsServer.xml:1203
+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/Physics2DServer.xml:892 doc/classes/PhysicsServer.xml:1206
+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/Physics2DServer.xml:895 doc/classes/PhysicsServer.xml:1209
+msgid ""
+"This area replaces any gravity/damp, even the default one, and stops taking "
+"into account the rest of the areas."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:898 doc/classes/PhysicsServer.xml:1212
+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/Physics2DServer.xml:901 doc/classes/PhysicsServer.xml:1215
+msgid "Constant for static bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:904 doc/classes/PhysicsServer.xml:1218
+msgid "Constant for kinematic bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:907 doc/classes/PhysicsServer.xml:1221
+msgid "Constant for rigid bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:910 doc/classes/PhysicsServer.xml:1224
+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/Physics2DServer.xml:913 doc/classes/PhysicsServer.xml:1227
+msgid "Constant to set/get a body's bounce factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:916 doc/classes/PhysicsServer.xml:1230
+msgid "Constant to set/get a body's friction."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:919 doc/classes/PhysicsServer.xml:1233
+msgid "Constant to set/get a body's mass."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:922
+msgid "Constant to set/get a body's inertia."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:925 doc/classes/PhysicsServer.xml:1236
+msgid "Constant to set/get a body's gravity multiplier."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:928 doc/classes/PhysicsServer.xml:1239
+msgid "Constant to set/get a body's linear dampening factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:931 doc/classes/PhysicsServer.xml:1242
+msgid "Constant to set/get a body's angular dampening factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:934 doc/classes/PhysicsServer.xml:1245
+msgid "Represents the size of the [enum BodyParameter] enum."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:937 doc/classes/PhysicsServer.xml:1248
+msgid "Constant to set/get the current transform matrix of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:940 doc/classes/PhysicsServer.xml:1251
+msgid "Constant to set/get the current linear velocity of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:943 doc/classes/PhysicsServer.xml:1254
+msgid "Constant to set/get the current angular velocity of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:946 doc/classes/PhysicsServer.xml:1257
+msgid "Constant to sleep/wake up a body, or to get whether it is sleeping."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:949 doc/classes/PhysicsServer.xml:1260
+msgid "Constant to set/get whether the body can sleep."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:952
+msgid "Constant to create pin joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:955
+msgid "Constant to create groove joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:958
+msgid "Constant to create damped spring joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:967
+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/Physics2DServer.xml:970
+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/Physics2DServer.xml:973
+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/Physics2DServer.xml:976
+msgid ""
+"Disables continuous collision detection. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:979
+msgid ""
+"Enables continuous collision detection by raycasting. It is faster than "
+"shapecasting, but less precise."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:982
+msgid ""
+"Enables continuous collision detection by shapecasting. It is the slowest "
+"CCD method, and the most precise."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:985 doc/classes/PhysicsServer.xml:1263
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object enters one of its shapes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:988 doc/classes/PhysicsServer.xml:1266
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object exits one of its shapes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:991 doc/classes/PhysicsServer.xml:1269
+msgid "Constant to get the number of objects that are not sleeping."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:994 doc/classes/PhysicsServer.xml:1272
+msgid "Constant to get the number of possible collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:997 doc/classes/PhysicsServer.xml:1275
+msgid ""
+"Constant to get the number of space regions where a collision could occur."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:4
+msgid "Parameters to be sent to a 2D shape physics query."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:7
+msgid ""
+"This class contains the shape and other parameters for 2D intersection/"
+"collision queries."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:16
+msgid ""
+"Sets the [Shape2D] that will be used for collision/intersection queries."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:22
+msgid "If [code]true[/code], the query will take [Area2D]s into account."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:25
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:28
+#: doc/classes/PhysicsShapeQueryParameters.xml:28
+msgid ""
+"The physics layer(s) the query will take into account (as a bitmask). See "
+"[url=https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:31
+#: doc/classes/PhysicsShapeQueryParameters.xml:31
+msgid ""
+"The list of objects or object [RID]s that will be excluded from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:34
+#: doc/classes/PhysicsShapeQueryParameters.xml:34
+msgid "The collision margin for the shape."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:37
+msgid "The motion of the shape being queried for."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:40
+#: doc/classes/PhysicsShapeQueryParameters.xml:37
+msgid "The queried shape's [RID]. See also [method set_shape]."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:43
+#: doc/classes/PhysicsShapeQueryParameters.xml:40
+msgid "The queried shape's transform matrix."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:4
+msgid "Base class for all objects affected by physics in 3D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:7
+msgid ""
+"PhysicsBody is an abstract base class for implementing a physics body. All "
+"*Body types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:17 doc/classes/PhysicsBody2D.xml:17
+#: doc/classes/SoftBody.xml:17
+msgid "Adds a body to the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:23 doc/classes/PhysicsBody2D.xml:23
+#: doc/classes/SoftBody.xml:23
+msgid ""
+"Returns an array of nodes that were added as collision exceptions for this "
+"body."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:30 doc/classes/PhysicsBody2D.xml:30
+#: doc/classes/SoftBody.xml:58
+msgid ""
+"Removes a body from the list of bodies that this body can't collide with."
+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:37
+msgid ""
+"Both collision_layer and collision_mask. Returns collision_layer when "
+"accessed. Updates collision_layer and collision_mask when modified."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer], 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 RigidBody._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.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/PhysicsDirectBodyState.xml:34
+msgid "Adds a constant rotational force without affecting position."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:41
+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/PhysicsDirectBodyState.xml:50
+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/PhysicsDirectBodyState.xml:57
+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/PhysicsDirectBodyState.xml:78
+msgid "Returns the collider object."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:105
+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 RigidBody.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:113
+msgid "Impulse created by the contact. Only implemented for Bullet physics."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:4
+msgid "Direct access object to a space in the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer]. It's used mainly to "
+"do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:19
+msgid ""
+"Checks how far a [Shape] can move without colliding. All the parameters for "
+"the query, including the shape, are supplied through a "
+"[PhysicsShapeQueryParameters] object.\n"
+"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
+"the motion. The safe proportion is the maximum fraction of the motion that "
+"can be made without a collision. The unsafe proportion is the minimum "
+"fraction of the distance that must be moved for a collision. If no collision "
+"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
+"[b]Note:[/b] Any [Shape]s that the shape is already colliding with e.g. "
+"inside of, will be ignored. Use [method collide_shape] to determine the "
+"[Shape]s that the shape is already colliding with."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:29
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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/PhysicsDirectSpaceState.xml:36
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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 [Area], 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/PhysicsDirectSpaceState.xml:55
+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 [PhysicsBody]s or [Area]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:71
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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 [PhysicsBody]."
+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:18
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness)."
+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/PhysicsServer.xml:4
+msgid "Server interface for low-level physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:7
+msgid ""
+"PhysicsServer 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/PhysicsServer.xml:40
+msgid "Creates an [Area]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:55
+msgid ""
+"Returns an area parameter value. A list of available parameters is on the "
+"[enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:106
+msgid "If [code]true[/code], area collides with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:168
+msgid ""
+"Sets the value for an area parameter. A list of available parameters is on "
+"the [enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:176
+msgid "Sets object pickable with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:218
+msgid ""
+"Sets the space override mode for the area. The modes are described in the "
+"[enum AreaSpaceOverrideMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:282
+msgid ""
+"Gives the body a push at a [code]position[/code] in the direction of the "
+"[code]impulse[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:290
+msgid "Gives the body a push to rotate it."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:313
+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/PhysicsServer.xml:327
+msgid ""
+"Returns the physics layer or layers a body can collide with.\n"
+"-"
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:335
+msgid "Returns the [PhysicsDirectBodyState] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:370
+msgid ""
+"Returns the value of a body parameter. A list of available parameters is on "
+"the [enum BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:422
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:436
+msgid "If [code]true[/code], the body can be detected by rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:444
+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/PhysicsServer.xml:493
+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/PhysicsServer.xml:527
+msgid "Sets the body mode, from one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:544
+msgid ""
+"Sets a body parameter. A list of available parameters is on the [enum "
+"BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:552
+msgid "Sets the body pickable with rays if [code]enabled[/code] is set."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:595
+msgid "Sets a body state (see [enum BodyState] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:608
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given direction from a given point in space. [PhysicsTestMotionResult] can "
+"be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:616
+msgid ""
+"Gets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:625
+msgid ""
+"Sets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:632
+msgid ""
+"Destroys any of the objects created by PhysicsServer. If the [RID] passed is "
+"not one of the objects that can be created by PhysicsServer, an error will "
+"be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:641
+msgid ""
+"Gets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:650
+msgid ""
+"Gets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:660
+msgid ""
+"Sets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:670
+msgid ""
+"Sets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:677
+msgid "Returns an Info defined by the [enum ProcessInfo] input given."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:685
+msgid "Gets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:693
+msgid "Gets a hinge_joint parameter (see [enum HingeJointParam])."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:702
+msgid "Sets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:711
+msgid "Sets a hinge_joint parameter (see [enum HingeJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:721
+msgid "Creates a [ConeTwistJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:731
+msgid "Creates a [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:741
+msgid "Creates a [HingeJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:751
+msgid "Creates a [PinJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:761
+msgid "Creates a [SliderJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:768
+msgid "Gets the priority value of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:775
+msgid "Returns the type of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:783
+msgid "Sets the priority value of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:790
+msgid ""
+"Returns position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:797
+msgid ""
+"Returns position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:805
+msgid "Gets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:813
+msgid "Sets position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:821
+msgid "Sets position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:830
+msgid "Sets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:837
+msgid "Activates or deactivates the 3D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:844
+msgid ""
+"Sets the amount of iterations for calculating velocities of colliding "
+"bodies. The greater the amount of iterations, the more accurate the "
+"collisions will be. However, a greater amount of iterations requires more "
+"CPU power, which can decrease performance. The default value is [code]8[/"
+"code].\n"
+"[b]Note:[/b] Only has an effect when using the GodotPhysics engine, not the "
+"default Bullet physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:852
+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/PhysicsServer.xml:866
+msgid "Returns the type of shape (see [enum ShapeType] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:882 doc/classes/PhysicsServer.xml:891
+msgid "Gets a slider_joint parameter (see [enum SliderJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:904
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:936
+msgid ""
+"Sets the value for a space parameter. A list of available parameters is on "
+"the [enum SpaceParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:942
+msgid "The [Joint] is a [PinJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:945
+msgid "The [Joint] is a [HingeJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:948
+msgid "The [Joint] is a [SliderJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:951
+msgid "The [Joint] is a [ConeTwistJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:954
+msgid "The [Joint] is a [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:957
+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/PhysicsServer.xml:961
+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/PhysicsServer.xml:965
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint "
+"puts on its ends."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:971
+msgid "The maximum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:974
+msgid "The minimum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:991
+msgid "If [code]true[/code], the Hinge has a maximum and a minimum rotation."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:994
+msgid "If [code]true[/code], a motor turns the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:997 doc/classes/SliderJoint.xml:76
+#: doc/classes/SliderJoint.xml:99
+msgid ""
+"The maximum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1000 doc/classes/SliderJoint.xml:67
+#: doc/classes/SliderJoint.xml:102
+msgid ""
+"The minimum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1003 doc/classes/SliderJoint.xml:73
+#: doc/classes/SliderJoint.xml:105
+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/PhysicsServer.xml:1006 doc/classes/SliderJoint.xml:108
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocityenergy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1009 doc/classes/SliderJoint.xml:111
+msgid "The amount of damping once the slider limits are surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1012 doc/classes/SliderJoint.xml:85
+#: doc/classes/SliderJoint.xml:114
+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/PhysicsServer.xml:1015 doc/classes/SliderJoint.xml:82
+#: doc/classes/SliderJoint.xml:117
+msgid "The amount of restitution inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1018 doc/classes/SliderJoint.xml:79
+#: doc/classes/SliderJoint.xml:120
+msgid "The amount of damping inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1021 doc/classes/SliderJoint.xml:94
+#: doc/classes/SliderJoint.xml:123
+msgid "A factor applied to the movement across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1024 doc/classes/SliderJoint.xml:91
+#: doc/classes/SliderJoint.xml:126
+msgid ""
+"The amount of restitution when movement is across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1027 doc/classes/SliderJoint.xml:88
+#: doc/classes/SliderJoint.xml:129
+msgid ""
+"The amount of damping when movement is across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1030 doc/classes/SliderJoint.xml:43
+#: doc/classes/SliderJoint.xml:132
+msgid "The upper limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1033 doc/classes/SliderJoint.xml:32
+#: doc/classes/SliderJoint.xml:135
+msgid "The lower limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1036 doc/classes/SliderJoint.xml:138
+msgid "A factor applied to the all rotation once the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1039 doc/classes/SliderJoint.xml:141
+msgid "The amount of restitution of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1042 doc/classes/SliderJoint.xml:144
+msgid "The amount of damping of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1045
+msgid "A factor that gets applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1048 doc/classes/SliderJoint.xml:49
+#: doc/classes/SliderJoint.xml:150
+msgid "The amount of restitution of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1051 doc/classes/SliderJoint.xml:46
+#: doc/classes/SliderJoint.xml:153
+msgid "The amount of damping of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1054
+msgid ""
+"A factor that gets applied to the all rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1057 doc/classes/SliderJoint.xml:58
+#: doc/classes/SliderJoint.xml:159
+msgid ""
+"The amount of restitution of the rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1060 doc/classes/SliderJoint.xml:55
+#: doc/classes/SliderJoint.xml:162
+msgid ""
+"The amount of damping of the rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1063
+msgid "Represents the size of the [enum SliderJointParam] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1080
+msgid ""
+"The ease with which the Joint twists, if it's too low, it takes more force "
+"to twist the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1092
+msgid ""
+"A factor that gets applied to the movement across the axes. The lower, the "
+"slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1095
+msgid ""
+"The amount of restitution on the axes movement. The lower, the more velocity-"
+"energy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1101
+msgid "The velocity that the joint's linear motor will attempt to reach."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1104
+msgid ""
+"The maximum force that the linear motor can apply while trying to reach the "
+"target velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1113
+msgid "A factor that gets multiplied onto all rotations across the axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1125
+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/PhysicsServer.xml:1134
+msgid ""
+"If [code]set[/code] there is linear motion possible within the given limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1137
+msgid "If [code]set[/code] there is rotational motion possible."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1140
+msgid "If [code]set[/code] there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1143
+msgid ""
+"If [code]set[/code] there is a linear motor on this axis that targets a "
+"specific velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1146
+msgid "The [Shape] is a [PlaneShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1149
+msgid "The [Shape] is a [RayShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1152
+msgid "The [Shape] is a [SphereShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1155
+msgid "The [Shape] is a [BoxShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1158
+msgid "The [Shape] is a [CapsuleShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1161
+msgid "The [Shape] is a [CylinderShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1164
+msgid "The [Shape] is a [ConvexPolygonShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1167
+msgid "The [Shape] is a [ConcavePolygonShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1170
+msgid "The [Shape] is a [HeightMapShape]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:4
+msgid "Parameters to be sent to a 3D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:7
+msgid ""
+"This class contains the shape and other parameters for 3D intersection/"
+"collision queries."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:16
+msgid "Sets the [Shape] that will be used for collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:22
+msgid "If [code]true[/code], the query will take [Area]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:25
+msgid "If [code]true[/code], the query will take [PhysicsBody]s into account."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:4
+msgid "Pin joint for 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:7
+msgid ""
+"Pin joint for 3D rigid bodies. It pins 2 bodies (rigid or static) together. "
+"See also [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:30 doc/classes/PinJoint.xml:41
+msgid ""
+"The force with which the pinned objects stay in positional relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:33 doc/classes/PinJoint.xml:44
+msgid ""
+"The force with which the pinned objects stay in velocity relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:36 doc/classes/PinJoint.xml:47
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint "
+"produces."
+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/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:20
+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:29
+msgid "Creates a plane from the three points, given in clockwise order."
+msgstr ""
+
+#: doc/classes/Plane.xml:37
+msgid "Creates a plane from the normal and the plane's distance to the origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:43
+msgid "Returns the center of the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:50
+msgid ""
+"Returns the shortest distance from the plane to the position [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Plane.xml:56
+msgid ""
+"Returns the center of the plane.\n"
+"This method is deprecated, please use [method center] instead."
+msgstr ""
+
+#: doc/classes/Plane.xml:65
+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:73
+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:81
+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:89
+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:96
+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:103
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is located above the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:109
+msgid "Returns a copy of the plane, normalized."
+msgstr ""
+
+#: doc/classes/Plane.xml:116
+msgid ""
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:122
+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:126
+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:130
+msgid "The X component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:133
+msgid "The Y component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:136
+msgid "The Z component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:141
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
+msgstr ""
+
+#: doc/classes/Plane.xml:144
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
+msgstr ""
+
+#: doc/classes/Plane.xml:147
+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.\n"
+"[b]Note:[/b] When using a large textured [PlaneMesh] (e.g. as a floor), you "
+"may stumble upon UV jittering issues depending on the camera angle. To solve "
+"this, increase [member subdivide_depth] and [member subdivide_width] until "
+"you no longer notice UV jittering."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:16
+msgid "Offset from the origin of the generated plane. Useful for particles."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:19
+msgid "Size of the generated plane."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:22
+msgid "Number of subdivision along the Z axis."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:25
+msgid "Number of subdivision along the X axis."
+msgstr ""
+
+#: doc/classes/PlaneShape.xml:4
+msgid "Infinite plane shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/PlaneShape.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 "
+"[PlaneShape] is used in a [PhysicsBody], it will cause colliding objects "
+"placed \"below\" it to teleport \"above\" the plane."
+msgstr ""
+
+#: doc/classes/PlaneShape.xml:15
+msgid "The [Plane] used by the [PlaneShape] for collision."
+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 "
+"[SpatialMaterial] by setting [member SpatialMaterial.flags_use_point_size] "
+"and the variable [member SpatialMaterial.params_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.\n"
+"[b]Note:[/b] By default, Godot can only draw up to 4,096 polygon points at a "
+"time. To increase this limit, open the Project Settings and increase [member "
+"ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb] and "
+"[member ProjectSettings.rendering/limits/buffers/"
+"canvas_polygon_index_buffer_size_kb]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:18
+msgid ""
+"Adds a bone with the specified [code]path[/code] and [code]weights[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:24
+msgid "Removes all bones from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:31
+msgid "Removes the specified bone from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:37
+msgid "Returns the number of bones in this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:44
+msgid "Returns the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:51
+msgid "Returns the height values of the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:59
+msgid "Sets the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:67
+msgid "Sets the weight values for the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:73
+msgid "If [code]true[/code], polygon edges will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:78
+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:83
+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:86
+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:89
+msgid "The offset applied to each vertex."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:92
+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 [PoolVector2Array] rather than a "
+"reference."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:100
+msgid ""
+"The polygon's fill texture. Use [code]uv[/code] to set texture coordinates."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:103
+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:106
+msgid "The texture's rotation in radians."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:109
+msgid "The texture's rotation in degrees."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:112
+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:115
+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:118
+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/PoolByteArray.xml:4
+msgid "A pooled [Array] of bytes."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold bytes. Optimized for memory usage, "
+"does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:17
+msgid ""
+"Constructs a new [PoolByteArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:29
+msgid "Appends a [PoolByteArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:36
+msgid ""
+"Returns a new [PoolByteArray] with the data compressed. Set the compression "
+"mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:44
+msgid ""
+"Returns a new [PoolByteArray] 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/PoolByteArray.xml:52
+msgid ""
+"Returns a new [PoolByteArray] with the data decompressed. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants. "
+"[b]This method only accepts gzip and deflate compression modes.[/b]\n"
+"This method is potentially slower than [code]decompress[/code], as it may "
+"have to re-allocate it's output buffer multiple times while decompressing, "
+"where as [code]decompress[/code] knows it's output buffer size from the "
+"begining.\n"
+"\n"
+"GZIP has a maximal compression ratio of 1032:1, meaning it's very possible "
+"for a small compressed payload to decompress to a potentially very large "
+"output. To guard against this, you may provide a maximum size this function "
+"is allowed to allocate in bytes via [code]max_output_size[/code]. Passing -1 "
+"will allow for unbounded output. If any positive value is passed, and the "
+"decompression exceeds that ammount in bytes, then an error will be returned."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:67
+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/PoolByteArray.xml:73
+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/PoolByteArray.xml:79
+msgid ""
+"Returns a hexadecimal representation of this array as a [String].\n"
+"[codeblock]\n"
+"var array = PoolByteArray([11, 46, 255])\n"
+"print(array.hex_encode()) # Prints: 0b2eff\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:91 doc/classes/PoolColorArray.xml:43
+#: doc/classes/PoolRealArray.xml:44 doc/classes/PoolStringArray.xml:44
+#: doc/classes/PoolVector2Array.xml:44 doc/classes/PoolVector3Array.xml:43
+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/PoolByteArray.xml:102 doc/classes/PoolRealArray.xml:55
+msgid "Appends an element at the end of the array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:108 doc/classes/PoolColorArray.xml:60
+#: doc/classes/PoolIntArray.xml:61 doc/classes/PoolRealArray.xml:61
+#: doc/classes/PoolStringArray.xml:68 doc/classes/PoolVector2Array.xml:61
+#: doc/classes/PoolVector3Array.xml:60
+msgid "Removes an element from the array by index."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
+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.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:122
+msgid "Changes the byte at the given index."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
+msgid "Returns the size of the array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:136
+msgid ""
+"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
+"new [PoolByteArray]. Any negative index is considered to be from the end of "
+"the array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:4
+msgid "A pooled [Array] of [Color]."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Color]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:17
+msgid ""
+"Constructs a new [PoolColorArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:29
+msgid "Appends a [PoolColorArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:54 doc/classes/PoolIntArray.xml:55
+msgid "Appends a value to the array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
+msgid "Changes the [Color] at the given index."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:4
+msgid "A pooled [Array] of integers ([int])."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold integer values ([int]). Optimized "
+"for memory usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type is limited to signed 32-bit integers, which means it "
+"can only 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."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:18
+msgid ""
+"Constructs a new [PoolIntArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:30
+msgid "Appends a [PoolIntArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:44
+msgid ""
+"Inserts a new int 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/PoolIntArray.xml:75
+msgid "Changes the int at the given index."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:81
+msgid "Returns the array size."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:4
+msgid "A pooled [Array] of reals ([float])."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold floating-point values. Optimized "
+"for memory usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] Unlike primitive [float]s which are 64-bit, numbers stored in "
+"[PoolRealArray] are 32-bit floats. This means values stored in "
+"[PoolRealArray] have lower precision compared to primitive [float]s. If you "
+"need to store 64-bit floats in an array, use a generic [Array] with [float] "
+"elements as these will still be 64-bit. However, using a generic [Array] to "
+"store [float]s will use roughly 6 times more memory compared to a "
+"[PoolRealArray]."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:18
+msgid ""
+"Constructs a new [PoolRealArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:30
+msgid "Appends a [PoolRealArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:75
+msgid "Changes the float at the given index."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:4
+msgid "A pooled [Array] of [String]."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [String]s. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:18
+msgid ""
+"Constructs a new [PoolStringArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:30
+msgid "Appends a [PoolStringArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:56
+msgid ""
+"Returns a [String] with each element of the array joined with the given "
+"[code]delimiter[/code]."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:62
+msgid "Appends a string element at end of the array."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:81
+msgid "Changes the [String] at the given index."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:4
+msgid "A pooled [Array] of [Vector2]."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector2]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:11 doc/classes/TileMap.xml:15
+#: doc/classes/TileSet.xml:15
+msgid "https://godotengine.org/asset-library/asset/519"
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:18
+msgid ""
+"Constructs a new [PoolVector2Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:30
+msgid "Appends a [PoolVector2Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:55
+msgid "Inserts a [Vector2] at the end."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:74
+msgid "Changes the [Vector2] at the given index."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:4
+msgid "A pooled [Array] of [Vector3]."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector3]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:17
+msgid ""
+"Constructs a new [PoolVector3Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:29
+msgid "Appends a [PoolVector3Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:54
+msgid "Inserts a [Vector3] at the end."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:73
+msgid "Changes the [Vector3] at the given index."
+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. All popup methods ensure correct placement within the viewport."
+msgstr ""
+
+#: doc/classes/Popup.xml:16
+msgid "Popup (show the control in modal form)."
+msgstr ""
+
+#: doc/classes/Popup.xml:23
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to its current canvas transform, at the current size, or at a size "
+"determined by [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:31
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, clamping the size to [code]size[/code], "
+"then ensuring the popup is no larger than the viewport size multiplied by "
+"[code]fallback_ratio[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:38
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, ensuring the size is never smaller than "
+"[code]minsize[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:45
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, scaled at a ratio of size of the screen."
+msgstr ""
+
+#: doc/classes/Popup.xml:51
+msgid "Shrink popup to keep to the minimum size of content."
+msgstr ""
+
+#: doc/classes/Popup.xml:57
+msgid ""
+"If [code]true[/code], the popup will not be hidden when a click event occurs "
+"outside of it, or when it receives the [code]ui_cancel[/code] action event.\n"
+"[b]Note:[/b] Enabling this property doesn't affect the Close or Cancel "
+"buttons' behavior in dialogs that inherit from this class. As a workaround, "
+"you can use [method WindowDialog.get_close_button] or [method "
+"ConfirmationDialog.get_cancel] and hide the buttons in question by setting "
+"their [member CanvasItem.visible] property to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:65
+msgid ""
+"Emitted when a popup is about to be shown. This is often used in [PopupMenu] "
+"to clear the list of options then create a new one according to the current "
+"context."
+msgstr ""
+
+#: doc/classes/Popup.xml:70
+msgid "Emitted when a popup is hidden."
+msgstr ""
+
+#: doc/classes/Popup.xml:76
+msgid "Notification sent right after the popup is shown."
+msgstr ""
+
+#: doc/classes/Popup.xml:79
+msgid "Notification sent right after the popup is hidden."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:4
+msgid "Base class for popup dialogs."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:7
+msgid ""
+"PopupDialog is a base class for popup dialogs, along with [WindowDialog]."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:17
+msgid "Sets a custom [StyleBox] for the panel of the [PopupDialog]."
+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:18
+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:29
+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:41
+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:53
+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:65
+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:76
+msgid "Same as [method add_icon_check_item], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:86
+msgid ""
+"Same as [method add_icon_check_shortcut], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:96
+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:106
+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:118
+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:129
+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:140
+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:150
+msgid ""
+"Adds a separator between items. Separators also occupy an index, which you "
+"can set by using the [code]id[/code] parameter.\n"
+"A [code]label[/code] can optionally be provided, which will appear at the "
+"center of the separator."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:160
+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:170
+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:177
+msgid "Removes all items from the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:183
+msgid ""
+"Returns the index of the currently focused item. Returns [code]-1[/code] if "
+"no item is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:190
+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:196
+msgid "Returns the number of items in the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:210
+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:217
+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:224
+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:231
+msgid ""
+"Returns the [ShortCut] associated with the specified [code]idx[/code] item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:238
+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:252
+msgid ""
+"Returns the tooltip associated with the specified index index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:258
+msgid ""
+"Returns [code]true[/code] if the popup will be hidden when the window loses "
+"focus or not."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:265
+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:273
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:280
+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:288
+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:296
+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:303
+msgid "Returns [code]true[/code] if the specified item's shortcut is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:310
+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:318
+msgid "Hides the [PopupMenu] when the window loses focus."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:326
+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:334
+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:343
+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:351
+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:359
+msgid "Sets the checkstate status of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:367
+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:375
+msgid "Replaces the [Texture] icon of the specified [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:383
+msgid "Sets the [code]id[/code] of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:391
+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:399
+msgid ""
+"Sets the state of a multistate item. See [method add_multistate_item] for "
+"details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:408
+msgid "Sets a [ShortCut] for the specified item [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:416
+msgid "Disables the [ShortCut] of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:424
+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:440
+msgid ""
+"Sets the [String] tooltip of the item at the specified index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:447
+msgid ""
+"Toggles the check state of the item of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:454
+msgid ""
+"Cycle to the next state of a multistate item. See [method "
+"add_multistate_item] for details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:460
+msgid "If [code]true[/code], allows navigating [PopupMenu] with letter keys."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:464
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
+"is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:467
+msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:470
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:473
+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:480
+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:486
+msgid ""
+"Emitted when an item of some [code]id[/code] is pressed or its accelerator "
+"is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:492
+msgid ""
+"Emitted when an item of some [code]index[/code] is pressed or its "
+"accelerator is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:500
+msgid "[Texture] icon for the checked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:503
+msgid "[Font] used for the menu items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:506
+msgid "The default text [Color] for menu items' names."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:509
+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:512
+msgid "[Color] used for disabled menu items' text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:515
+msgid "[Color] used for the hovered text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:518
+msgid "[Color] used for labeled separators' text. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:521
+msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:524
+msgid ""
+"The horizontal space between the item's name and the shortcut text/submenu "
+"arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:527
+msgid ""
+"[StyleBox] for the left side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:530
+msgid ""
+"[StyleBox] for the right side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:533
+msgid "Default [StyleBox] of the [PopupMenu] items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:536
+msgid "[StyleBox] used when the [PopupMenu] item is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:539
+msgid "[Texture] icon for the checked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:542
+msgid "[Texture] icon for the unchecked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:545
+msgid "[StyleBox] used for the separators. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:548
+msgid "[Texture] icon for the submenu arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:551
+msgid "[Texture] icon for the unchecked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:554
+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 [WindowDialog]."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:17
+msgid "The background panel style of this [PopupPanel]."
+msgstr ""
+
+#: doc/classes/Portal.xml:4
+msgid "Portal nodes are used to enable visibility between [Room]s."
+msgstr ""
+
+#: doc/classes/Portal.xml:7
+msgid ""
+"[Portal]s are a special type of [MeshInstance] that allow the portal culling "
+"system to 'see' from one room to the next. They often correspond to doors "
+"and windows in level geometry. By only allowing [Camera]s to see through "
+"portals, this allows the system to cull out all the objects in rooms that "
+"cannot be seen through portals. This is a form of [b]occlusion culling[/b], "
+"and can greatly increase performance.\n"
+"There are some limitations to the form of portals:\n"
+"They must be single sided convex polygons, and usually you would orientate "
+"their front faces [b]outward[/b] from the [Room] they are placed in. The "
+"vertices should be positioned on a single plane (although their positioning "
+"does not have to be perfect).\n"
+"There is no need to place an opposite portal in an adjacent room, links are "
+"made two-way automatically."
+msgstr ""
+
+#: doc/classes/Portal.xml:20 doc/classes/Room.xml:21
+msgid "Sets individual points. Primarily for use by the editor."
+msgstr ""
+
+#: doc/classes/Portal.xml:26
+msgid ""
+"This is a shortcut for setting the linked [Room] in the name of the [Portal] "
+"(the name is used during conversion)."
+msgstr ""
+
+#: doc/classes/Portal.xml:29
+msgid ""
+"The points defining the shape of the [Portal] polygon (which should be "
+"convex).\n"
+"These are defined in 2D, with [code]0,0[/code] being the origin of the "
+"[Portal] node's [member Spatial.global_transform].\n"
+"[b]Note:[/b] These raw points are sanitized for winding order internally."
+msgstr ""
+
+#: doc/classes/Portal.xml:34
+msgid ""
+"Visibility through [Portal]s can be turned on and off at runtime - this is "
+"useful for having closable doors."
+msgstr ""
+
+#: doc/classes/Portal.xml:37
+msgid ""
+"Some objects are so big that they may be present in more than one [Room] "
+"('sprawling'). As we often don't want objects that *just* breach the edges "
+"to be assigned to neighbouring rooms, you can assign an extra margin through "
+"the [Portal] to allow objects to breach without sprawling."
+msgstr ""
+
+#: doc/classes/Portal.xml:40
+msgid ""
+"Portals default to being two way - see through in both directions, however "
+"you can make them one way, visible from the source room only."
+msgstr ""
+
+#: doc/classes/Portal.xml:43
+msgid ""
+"In most cases you will want to use the default [Portal] margin in your "
+"portals (this is set in the [RoomManager]).\n"
+"If you want to override this default, set this value to [code]false[/code], "
+"and the local [member portal_margin] will take effect."
+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 [Spatial], 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:15
+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:29
+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 SpatialMaterial.CULL_BACK] in "
+"[member SpatialMaterial.params_cull_mode]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:33
+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/ProceduralSky.xml:4
+msgid ""
+"Type of [Sky] that is generated procedurally based on user input parameters."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:7
+msgid ""
+"ProceduralSky 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 ProceduralSky is updated on the CPU after the parameters change. It is "
+"stored in a texture and then displayed as a background in the scene. This "
+"makes it relatively unsuitable for real-time updates during gameplay. "
+"However, with a small enough texture size, it can still be updated "
+"relatively frequently, as it is updated on a background thread when multi-"
+"threading is available."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:16
+msgid "Color of the ground at the bottom."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:19
+msgid ""
+"How quickly the [member ground_horizon_color] fades into the [member "
+"ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:22
+msgid "Amount of energy contribution from the ground."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:25
+msgid "Color of the ground at the horizon."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:28
+msgid ""
+"How quickly the [member sky_horizon_color] fades into the [member "
+"sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:31
+msgid "Amount of energy contribution from the sky."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:34
+msgid "Color of the sky at the horizon."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:37
+msgid "Color of the sky at the top."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:40
+msgid "Distance from center of sun where it fades out completely."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:43
+msgid "Distance from sun where it goes from solid to starting to fade."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:46
+msgid "The sun's color."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:49
+msgid ""
+"How quickly the sun fades away between [member sun_angle_min] and [member "
+"sun_angle_max]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:52
+msgid "Amount of energy contribution from the sun."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:55
+msgid "The sun's height using polar coordinates."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:58
+msgid "The direction of the sun using polar coordinates."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:61
+msgid ""
+"Size of [Texture] that the ProceduralSky will generate. The size is set "
+"using [enum TextureSize]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:66
+msgid "Sky texture will be 256x128."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:69
+msgid "Sky texture will be 512x256."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:72
+msgid "Sky texture will be 1024x512. This is the default size."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:75
+msgid "Sky texture will be 2048x1024."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:78
+msgid "Sky texture will be 4096x2048."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:81
+msgid "Represents the size of the [enum TextureSize] enum."
+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]Feature tags:[/b] Project settings can be overridden for specific "
+"platforms and configurations (debug, release, ...) using [url=https://docs."
+"godotengine.org/en/latest/tutorials/export/feature_tags.html]feature tags[/"
+"url].\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. Overriding will still take the base project "
+"settings' [url=https://docs.godotengine.org/en/latest/tutorials/export/"
+"feature_tags.html]feature tags[/url] in account. Therefore, make sure to "
+"[i]also[/i] override the setting with the desired feature tags if you want "
+"them to override base project settings on all platforms and configurations."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:22
+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:52
+msgid ""
+"Returns the order of a configuration value (influences when saved to the "
+"config file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:59
+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:70
+msgid ""
+"Returns the absolute, native OS path corresponding to the localized "
+"[code]path[/code] (starting with [code]res://[/code] or [code]user://[/"
+"code]). The returned path will vary depending on the operating system and "
+"user preferences. See [url=https://docs.godotengine.org/en/3.4/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] to see what those paths "
+"convert to. See also [method localize_path].\n"
+"[b]Note:[/b] [method globalize_path] with [code]res://[/code] will not work "
+"in an exported project. Instead, prepend the executable's base directory to "
+"the path when running from an exported project:\n"
+"[codeblock]\n"
+"var path = \"\"\n"
+"if OS.has_feature(\"editor\"):\n"
+" # Running from an editor binary.\n"
+" # `path` will contain the absolute path to `hello.txt` located in the "
+"project root.\n"
+" path = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
+"else:\n"
+" # Running from an exported project.\n"
+" # `path` will contain the absolute path to `hello.txt` next to the "
+"executable.\n"
+" # This is *not* identical to using `ProjectSettings.globalize_path()` "
+"with a `res://` path,\n"
+" # but is close enough in spirit.\n"
+" path = OS.get_executable_path().get_base_dir().plus_file(\"hello.txt\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:91
+msgid "Returns [code]true[/code] if a configuration value is present."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:100
+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].\n"
+"[b]Note:[/b] The optional [code]offset[/code] parameter can be used to "
+"specify the offset in bytes to the start of the resource pack. This is only "
+"supported for .pck files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:109
+msgid ""
+"Returns the localized path (starting with [code]res://[/code]) corresponding "
+"to the absolute, native OS [code]path[/code]. See also [method "
+"globalize_path]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the specified property exists and its initial "
+"value differs from the current value."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:123
+msgid ""
+"Returns the specified property's initial value. Returns [code]null[/code] if "
+"the property does not exist."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:129
+msgid ""
+"Saves the configuration to the [code]project.godot[/code] file.\n"
+"[b]Note:[/b] This method is intended to be used by editor plugins, as "
+"modified [ProjectSettings] can't be loaded back in the running app. If you "
+"want to change project settings in exported projects, use [method "
+"save_custom] to save [code]override.cfg[/code] file."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:137
+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). You can also save [code]override.cfg[/"
+"code] file, which is also text, but can be used in exported projects unlike "
+"other formats."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:145
+msgid ""
+"Sets the specified property's initial value. This is the value the property "
+"reverts to."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:153
+msgid ""
+"Sets the order of a configuration value (influences when saved to the config "
+"file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:161
+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:171
+msgid ""
+"Comma-separated list of custom Android modules (which must have been built "
+"in the Android export templates) using their Java package path, e.g. "
+"[code]\"org/godotengine/godot/MyCustomSingleton,com/example/foo/"
+"FrenchFriesFactory\"[/code].\n"
+"[b]Note:[/b] Since Godot 3.2.2, the [code]org/godotengine/godot/"
+"GodotPaymentV3[/code] module was deprecated and replaced by the "
+"[code]GodotPayment[/code] plugin which should be enabled in the Android "
+"export preset under [code]Plugins[/code] section. The singleton to access in "
+"code was also renamed to [code]GodotPayment[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:175
+msgid "Background color for the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:178
+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:181
+msgid "Path to an image used as the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:184
+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:187
+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:191
+msgid ""
+"The project's description, displayed as a tooltip in the Project Manager "
+"when hovering the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:194
+msgid ""
+"Icon used for the project, set when project loads. Exporters will also use "
+"this icon when possible."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:197
+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 OS.set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:200
+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. The window title will be set to match the project name automatically "
+"on startup.\n"
+"[b]Note:[/b] Changing this value will also change the user data folder's "
+"path if [member application/config/use_custom_user_dir] is [code]false[/"
+"code]. After renaming the project, you will no longer be able to access "
+"existing data in [code]user://[/code] unless you rename the old folder to "
+"match the new project name. See [url=https://docs.godotengine.org/en/3.4/"
+"tutorials/io/data_paths.html]Data paths[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:204
+msgid ""
+"Specifies a file to override project settings. For example: [code]user://"
+"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
+"class description at the top for more information.\n"
+"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
+"code] will still be read to override the project settings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:208
+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:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
+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 OS.set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:220
+msgid ""
+"Time samples for frame deltas are subject to random variation introduced by "
+"the platform, even when frames are displayed at regular intervals thanks to "
+"V-Sync. This can lead to jitter. Delta smoothing can often give a better "
+"result by filtering the input deltas to correct for minor fluctuations from "
+"the refresh rate.\n"
+"[b]Note:[/b] Delta smoothing is only attempted when [member display/window/"
+"vsync/use_vsync] is switched on, as it does not work well without V-Sync.\n"
+"It may take several seconds at a stable frame rate before the smoothing is "
+"initially activated. It will only be active on machines where performance is "
+"adequate to render frames at the refresh rate."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:225
+msgid ""
+"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
+"just after the drawing has taken place. This may lead to more consistent "
+"deltas and a reduction in frame stutters."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:228
+msgid ""
+"If [code]true[/code], disables printing to standard error. If [code]true[/"
+"code], this also hides error and warning messages printed by [method "
+"@GDScript.push_error] and [method @GDScript.push_warning]. See also [member "
+"application/run/disable_stdout].\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:232
+msgid ""
+"If [code]true[/code], disables printing to standard output. This is "
+"equivalent to starting the editor or project with the [code]--quiet[/code] "
+"command line argument. See also [member application/run/disable_stderr].\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:236
+msgid ""
+"If [code]true[/code], flushes the standard output stream every time a line "
+"is printed. This affects both terminal logging and file logging.\n"
+"When running a project, this setting must be enabled if you want logs to be "
+"collected by service managers such as systemd/journalctl. This setting is "
+"disabled by default on release builds, since flushing on every printed line "
+"will negatively affect performance if lots of lines are printed in a rapid "
+"succession. Also, if this setting is enabled, logged files will still be "
+"written successfully if the application crashes or is otherwise killed by "
+"the user (without being closed \"normally\").\n"
+"[b]Note:[/b] Regardless of this setting, the standard error stream "
+"([code]stderr[/code]) is always flushed when a line is printed to it.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:242
+msgid ""
+"Debug build override for [member application/run/flush_stdout_on_print], as "
+"performance is less important during debugging.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:246
+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:249
+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:252
+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:255
+msgid "Path to the main scene file that will be loaded when the project runs."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
+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:264
+msgid ""
+"Default [AudioBusLayout] resource file to use in the project, unless "
+"overridden by the scene."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:267
+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:270
+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:273
+msgid ""
+"The mixing rate used for audio (in Hz). In general, it's better to not touch "
+"this and leave it to the host operating system."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:276
+msgid ""
+"Safer override for [member audio/mix_rate] in the Web platform. Here "
+"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
+"like forcing the mix rate)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:279
+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:282
+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:285
+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:288
+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:291
+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:294
+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:297
+msgid ""
+"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
+"distance matching[/url] in Zstandard."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:300
+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:303
+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:306
+msgid ""
+"If [code]true[/code], enables warnings when a constant is used as a function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:309
+msgid ""
+"If [code]true[/code], enables warnings when deprecated keywords such as "
+"[code]slave[/code] are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:312
+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:315
+msgid ""
+"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
+"not generate warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:318
+msgid ""
+"If [code]true[/code], enables warnings when a function is declared with the "
+"same name as a constant."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:321
+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:324
+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:327
+msgid ""
+"If [code]true[/code], enables warnings when using a function as if it was a "
+"property."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:330
+msgid ""
+"If [code]true[/code], enables warnings when a ternary operator may emit "
+"values with incompatible types."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:333
+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:336
+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:339
+msgid ""
+"If [code]true[/code], enables warnings when using a property as if it was a "
+"function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:342
+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:345
+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:348
+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:351
+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:354
+msgid ""
+"If [code]true[/code], all warnings will be reported as if they were errors."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:357
+msgid ""
+"If [code]true[/code], enables warnings when using a variable that wasn't "
+"previously assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:360
+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:363
+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:366
+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:369
+msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:372
+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:375
+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:378
+msgid ""
+"If [code]true[/code], enables warnings when a function parameter is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:381
+msgid ""
+"If [code]true[/code], enables warnings when a member variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:384
+msgid "If [code]true[/code], enables warnings when a signal is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:387
+msgid "If [code]true[/code], enables warnings when a local variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:390
+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:393
+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:396
+msgid "Message to be displayed before the backtrace when the engine crashes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:399
+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:404
+msgid "Maximum call stack allowed for debugging GDScript."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:407
+msgid "Maximum amount of functions per frame allowed when profiling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:410
+msgid "Print frames per second to standard output every second."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:413
+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:416
+msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:419
+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:422
+msgid ""
+"Sets whether 2D physics will display collision outlines in game when "
+"\"Visible Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:425
+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:428
+msgid ""
+"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:431
+msgid ""
+"Color of the disabled navigation geometry, visible when \"Visible Navigation"
+"\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:434
+msgid ""
+"Color of the navigation geometry, visible when \"Visible Navigation\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:437
+msgid "Custom image for the mouse cursor (limited to 256×256)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:440
+msgid "Hotspot for the custom mouse cursor image."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:443
+msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:446
+msgid ""
+"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
+"platform. This setting has no effect on desktop Linux, as DPI-awareness "
+"fallbacks are not supported there."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:449
+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:452
+msgid ""
+"The default screen orientation to use on mobile devices.\n"
+"[b]Note:[/b] When set to a portrait orientation, this project setting does "
+"not flip the project resolution's width and height automatically. Instead, "
+"you have to set [member display/window/size/width] and [member display/"
+"window/size/height] accordingly."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:456
+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:459
+msgid ""
+"If [code]true[/code], allows per-pixel transparency for the window "
+"background. This affects performance, so leave it on [code]false[/code] "
+"unless you need it.\n"
+"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
+"[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, "
+"and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:464
+msgid ""
+"Sets the window background to transparent when it starts.\n"
+"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
+"[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, "
+"and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:469
+msgid ""
+"Forces the main window to be always on top.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:473
+msgid ""
+"Forces the main window to be borderless.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:477
+msgid ""
+"Sets the main window to full screen when the project starts. Note that this "
+"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
+"window is used to emulate fullscreen. On macOS, a new desktop is used to "
+"display the running project.\n"
+"Regardless of the platform, enabling fullscreen will change the window size "
+"to match the monitor's size. Therefore, make sure your project supports "
+"[url=https://docs.godotengine.org/en/3.4/tutorials/rendering/"
+"multiple_resolutions.html]multiple resolutions[/url] when enabling "
+"fullscreen mode.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:482
+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:485
+msgid ""
+"Allows the window to be resizable by default.\n"
+"[b]Note:[/b] This setting is ignored on iOS and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:489
+msgid ""
+"If greater than zero, overrides the window height when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:492
+msgid ""
+"If greater than zero, overrides the window width when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:495
+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:498
+msgid ""
+"Specifies the tablet driver to use. If left empty, the default driver will "
+"be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:501
+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:504
+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:508
+msgid ""
+"The command-line arguments to append to Godot's own command line when "
+"running the project. This doesn't affect the editor itself.\n"
+"It is possible to make another executable run Godot by using the "
+"[code]%command%[/code] placeholder. The placeholder will be replaced with "
+"Godot's own command line. Program-specific arguments should be placed "
+"[i]before[/i] the placeholder, whereas Godot-specific arguments should be "
+"placed [i]after[/i] the placeholder.\n"
+"For example, this can be used to force the project to run on the dedicated "
+"GPU in a NVIDIA Optimus system on Linux:\n"
+"[codeblock]\n"
+"prime-run %command%\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:516
+msgid ""
+"Search path for project-specific script templates. Godot will search for "
+"script templates both in the editor-specific path and in this project-"
+"specific path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:519
+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:522
+msgid ""
+"Default value for [member ScrollContainer.scroll_deadzone], which will be "
+"used for all [ScrollContainer]s unless overridden."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:525
+msgid ""
+"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"UWP to follow interface conventions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:530
+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:533
+msgid ""
+"Path to a custom [Font] resource to use as default for all GUI elements of "
+"the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:536
+msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:539
+msgid ""
+"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
+"(in milliseconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:542
+msgid "Timer for detecting idle in [TextEdit] (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:545
+msgid "Default delay for tooltips (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:548
+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:552
+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:556
+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:560
+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:564
+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:568
+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:572
+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:576
+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:580
+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:584
+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:588
+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:592
+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:596
+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:600
+msgid ""
+"If [code]true[/code], key/touch/joystick events will be flushed just before "
+"every idle and physics frame.\n"
+"If [code]false[/code], such events will be flushed only once per idle frame, "
+"between iterations of the engine.\n"
+"Enabling this can greatly improve the responsiveness to input, specially in "
+"devices that need to run multiple physics frames per visible (idle) frame, "
+"because they can't run at the target frame rate.\n"
+"[b]Note:[/b] Currently implemented only in Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:606
+msgid ""
+"If [code]true[/code], sends mouse input events when tapping or swiping on "
+"the touchscreen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:609
+msgid ""
+"If [code]true[/code], sends touch input events when clicking or dragging the "
+"mouse."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:612
+msgid "Default delay for touch events. This only affects iOS devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:615
+msgid "Optional name for the 2D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:618
+msgid "Optional name for the 2D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:621
+msgid "Optional name for the 2D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:624
+msgid "Optional name for the 2D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:627
+msgid "Optional name for the 2D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:630
+msgid "Optional name for the 2D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:633
+msgid "Optional name for the 2D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:636
+msgid "Optional name for the 2D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:639
+msgid "Optional name for the 2D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:642
+msgid "Optional name for the 2D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:645
+msgid "Optional name for the 2D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:648
+msgid "Optional name for the 2D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:651
+msgid "Optional name for the 2D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:654
+msgid "Optional name for the 2D physics layer 21."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:657
+msgid "Optional name for the 2D physics layer 22."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:660
+msgid "Optional name for the 2D physics layer 23."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:663
+msgid "Optional name for the 2D physics layer 24."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:666
+msgid "Optional name for the 2D physics layer 25."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:669
+msgid "Optional name for the 2D physics layer 26."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:672
+msgid "Optional name for the 2D physics layer 27."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:675
+msgid "Optional name for the 2D physics layer 28."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:678
+msgid "Optional name for the 2D physics layer 29."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:681
+msgid "Optional name for the 2D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:684
+msgid "Optional name for the 2D physics layer 30."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:687
+msgid "Optional name for the 2D physics layer 31."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:690
+msgid "Optional name for the 2D physics layer 32."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:693
+msgid "Optional name for the 2D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:696
+msgid "Optional name for the 2D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:699
+msgid "Optional name for the 2D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:702
+msgid "Optional name for the 2D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:705
+msgid "Optional name for the 2D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:708
+msgid "Optional name for the 2D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:711
+msgid "Optional name for the 2D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:714
+msgid "Optional name for the 2D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:717
+msgid "Optional name for the 2D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:720
+msgid "Optional name for the 2D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:723
+msgid "Optional name for the 2D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:726
+msgid "Optional name for the 2D render layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:729
+msgid "Optional name for the 2D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:732
+msgid "Optional name for the 2D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:735
+msgid "Optional name for the 2D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:738
+msgid "Optional name for the 2D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:741
+msgid "Optional name for the 2D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:744
+msgid "Optional name for the 2D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:747
+msgid "Optional name for the 2D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:750
+msgid "Optional name for the 2D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:753
+msgid "Optional name for the 2D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:756
+msgid "Optional name for the 2D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:759
+msgid "Optional name for the 2D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:762
+msgid "Optional name for the 2D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:765
+msgid "Optional name for the 2D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:768
+msgid "Optional name for the 2D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:771
+msgid "Optional name for the 3D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:774
+msgid "Optional name for the 3D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:777
+msgid "Optional name for the 3D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:780
+msgid "Optional name for the 3D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:783
+msgid "Optional name for the 3D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:786
+msgid "Optional name for the 3D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:789
+msgid "Optional name for the 3D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:792
+msgid "Optional name for the 3D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:795
+msgid "Optional name for the 3D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:798
+msgid "Optional name for the 3D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:801
+msgid "Optional name for the 3D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:804
+msgid "Optional name for the 3D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:807
+msgid "Optional name for the 3D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:810
+msgid "Optional name for the 3D physics layer 21."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:813
+msgid "Optional name for the 3D physics layer 22."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:816
+msgid "Optional name for the 3D physics layer 23."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:819
+msgid "Optional name for the 3D physics layer 24."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:822
+msgid "Optional name for the 3D physics layer 25."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:825
+msgid "Optional name for the 3D physics layer 26."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:828
+msgid "Optional name for the 3D physics layer 27."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:831
+msgid "Optional name for the 3D physics layer 28."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:834
+msgid "Optional name for the 3D physics layer 29."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:837
+msgid "Optional name for the 3D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:840
+msgid "Optional name for the 3D physics layer 30."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:843
+msgid "Optional name for the 3D physics layer 31."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:846
+msgid "Optional name for the 3D physics layer 32."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:849
+msgid "Optional name for the 3D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:852
+msgid "Optional name for the 3D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:855
+msgid "Optional name for the 3D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:858
+msgid "Optional name for the 3D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:861
+msgid "Optional name for the 3D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:864
+msgid "Optional name for the 3D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:867
+msgid "Optional name for the 3D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:870
+msgid "Optional name for the 3D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:873
+msgid "Optional name for the 3D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:876
+msgid "Optional name for the 3D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:879
+msgid "Optional name for the 3D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:882
+msgid "Optional name for the 3D render layer 14"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:885
+msgid "Optional name for the 3D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:888
+msgid "Optional name for the 3D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:891
+msgid "Optional name for the 3D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:894
+msgid "Optional name for the 3D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:897
+msgid "Optional name for the 3D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:900
+msgid "Optional name for the 3D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:903
+msgid "Optional name for the 3D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:906
+msgid "Optional name for the 3D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:909
+msgid "Optional name for the 3D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:912
+msgid "Optional name for the 3D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:915
+msgid "Optional name for the 3D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:918
+msgid "Optional name for the 3D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:921
+msgid "Optional name for the 3D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:924
+msgid "Optional name for the 3D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:927
+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:930
+msgid ""
+"If non-empty, this locale will be used when running the project from the "
+"editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:933
+msgid "If [code]true[/code], logs all output to files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:936
+msgid ""
+"Desktop override for [member logging/file_logging/enable_file_logging], as "
+"log files are not readily accessible on mobile/Web platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:939
+msgid ""
+"Path to logs within the project. Using an [code]user://[/code] path is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:942
+msgid "Specifies the maximum amount of log files allowed (used for rotation)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:947
+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:950
+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:953
+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:956
+msgid ""
+"Maximum number of errors allowed to be sent as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:959
+msgid ""
+"Maximum amount of messages 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:962
+msgid ""
+"Maximum number of warnings allowed to be sent as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:965
+msgid ""
+"Default size of packet peer stream for deserializing Godot data (in bytes, "
+"specified as a power of two). The default value [code]16[/code] is equal to "
+"65,536 bytes. Over this size, data is dropped."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:968
+msgid "Timeout (in seconds) for connection attempts using TCP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:971
+msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:974
+msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:977
+msgid "Maximum number of concurrent input packets for [WebSocketClient]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:980
+msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:983
+msgid "Maximum number of concurrent output packets for [WebSocketClient]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:986
+msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:989
+msgid "Maximum number of concurrent input packets for [WebSocketServer]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:992
+msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:995
+msgid "Maximum number of concurrent output packets for [WebSocketServer]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:998
+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:1001
+msgid "Page size used by remote filesystem (in bytes)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1004
+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:1008
+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:1011
+msgid ""
+"What to use to separate node name from number. This is mostly an editor "
+"setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1014
+msgid ""
+"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1018
+msgid ""
+"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1022
+msgid ""
+"The default angular damp in 2D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1026
+msgid ""
+"The default gravity strength in 2D (in pixels per second squared).\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"
+"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), "
+"Physics2DServer.AREA_PARAM_GRAVITY, 98)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1034
+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"
+"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), "
+"Physics2DServer.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1042
+msgid ""
+"The default linear damp in 2D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1046
+msgid ""
+"Threshold defining the surface size that constitutes a large object with "
+"regard to cells in the broad-phase 2D hash grid algorithm.\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1050
+msgid ""
+"Sets which physics engine to use for 2D physics.\n"
+"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
+"alternative 2D physics server implemented."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1054
+msgid ""
+"Threshold angular velocity under which a 2D physics body will be considered "
+"inactive. See [constant Physics2DServer."
+"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1057
+msgid ""
+"Threshold linear velocity under which a 2D physics body will be considered "
+"inactive. See [constant Physics2DServer."
+"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1060
+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:1064
+msgid ""
+"Time (in seconds) of inactivity before which a 2D physics body will put to "
+"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1067
+msgid ""
+"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
+"physics spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1070
+msgid ""
+"Sets whether the 3D physics world will be created with support for "
+"[SoftBody] physics. Only applies to the Bullet physics engine."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1073
+msgid ""
+"The default angular damp in 3D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1077
+msgid ""
+"The default gravity strength in 3D (in meters per second squared).\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"
+"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer.AREA_PARAM_GRAVITY, 9.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1085
+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"
+"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1093
+msgid ""
+"The default linear damp in 3D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1097
+msgid ""
+"Enables the use of bounding volume hierarchy instead of octree for 3D "
+"physics spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1100
+msgid ""
+"Sets which physics engine to use for 3D physics.\n"
+"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
+"physics engine. The \"GodotPhysics\" engine is still supported as an "
+"alternative."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1104
+msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1107
+msgid ""
+"If enabled, 2D and 3D physics picking behaves this way in relation to "
+"pause:\n"
+"- When pause is started, every collision object that is hovered or captured "
+"(3D only) is released from that condition, getting the relevant mouse-exit "
+"callback, unless its pause mode makes it immune to pause.\n"
+"- During pause, picking only considers collision objects immune to pause, "
+"sending input events and enter/exit callbacks to them as expected.\n"
+"If disabled, the legacy behavior is used, which consists in queuing the "
+"picking input events during pause (so nodes won't get them) and flushing "
+"that queue on resume, against the state of the 2D/3D world at that point."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1113
+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:1117
+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 smoothing 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.\n"
+"[b]Note:[/b] For best results, when using a custom physics interpolation "
+"solution, the physics jitter fix should be disabled by setting [member "
+"physics/common/physics_jitter_fix] to [code]0[/code].\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:1122
+msgid ""
+"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
+"uploading batching data. This may not be necessary but can be used for "
+"safety.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1126
+msgid ""
+"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
+"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
+"flag.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1130
+msgid ""
+"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
+"[code]glBufferData[/code] is called with NULL data and the full buffer size "
+"prior to uploading new data. This can be important to avoid stalling on some "
+"hardware.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1134
+msgid ""
+"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
+"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
+"flag.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1138
+msgid ""
+"Choose between fixed mode where corner scalings are preserved matching the "
+"artwork, and scaling mode.\n"
+"Not available in GLES3 when [member rendering/batching/options/use_batching] "
+"is off."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1142
+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 affects GLES2 and GLES3 "
+"rendering, but only on desktop platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1146
+msgid ""
+"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
+"This provides greater compatibility with a wide range of hardware, and also "
+"may be faster in some circumstances.\n"
+"Currently only available when [member rendering/batching/options/"
+"use_batching] is active.\n"
+"[b]Note:[/b] Antialiased software skinned polys are not supported, and will "
+"be rendered without antialiasing.\n"
+"[b]Note:[/b] Custom shaders that use the [code]VERTEX[/code] built-in "
+"operate with [code]VERTEX[/code] position [i]after[/i] skinning, whereas "
+"with hardware skinning, [code]VERTEX[/code] is the position [i]before[/i] "
+"skinning."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1152
+msgid ""
+"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
+"May help in some pixel art styles.\n"
+"This snapping is performed on the GPU in the vertex shader.\n"
+"Consider using the project setting [member rendering/batching/precision/"
+"uv_contract] to prevent artifacts."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1157
+msgid ""
+"When batching is on, this regularly prints a frame diagnosis log. Note that "
+"this will degrade performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1160
+msgid ""
+"[b]Experimental.[/b] For regression testing against the old renderer. If "
+"this is switched on, and [code]use_batching[/code] is set, the renderer will "
+"swap alternately between using the old renderer, and the batched renderer, "
+"on each frame. This makes it easy to identify visual differences. "
+"Performance will be degraded."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1163
+msgid ""
+"Lights have the potential to prevent joining items, and break many of the "
+"performance benefits of batching. This setting enables some complex logic to "
+"allow joining items if their lighting is similar, and overlap tests pass. "
+"This can significantly improve performance in some games. Set to 0 to switch "
+"off. With large values the cost of overlap tests may lead to diminishing "
+"returns."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1166
+msgid ""
+"Sets the proportion of the total screen area (in pixels) that must be saved "
+"by a scissor operation in order to activate light scissoring. This can "
+"prevent parts of items being rendered outside the light area. Lower values "
+"scissor more aggressively. A value of 1 scissors none of the items, a value "
+"of 0 scissors every item. The power of 4 of the value is used, in order to "
+"emphasize the lower range, and multiplied by the total screen area in pixels "
+"to give the threshold. This can reduce fill rate requirements in scenes with "
+"a lot of lighting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1169
+msgid ""
+"Enabling this setting uses the legacy method to draw batches containing only "
+"one rect. The legacy method is faster (approx twice as fast), but can cause "
+"flicker on some systems. In order to directly compare performance with the "
+"non-batching renderer you can set this to true, but it is recommended to "
+"turn this off unless you can guarantee your target hardware will work with "
+"this method."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1172
+msgid ""
+"Turns 2D batching on and off. Batching increases performance by reducing the "
+"amount of graphics API drawcalls."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1175
+msgid "Switches on 2D batching within the editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1178
+msgid ""
+"Size of buffer reserved for batched vertices. Larger size enables larger "
+"batches, but there are diminishing returns for the memory used. This should "
+"only have a minor effect on performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1181
+msgid ""
+"Including color in the vertex format has a cost, however, not including "
+"color prevents batching across color changes. This threshold determines the "
+"ratio of [code]number of vertex color changes / total number of vertices[/"
+"code] above which vertices will be translated to colored format. A value of "
+"0 will always use colored vertices, 1 will never use colored vertices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1184
+msgid ""
+"In certain circumstances, the batcher can reorder items in order to better "
+"join them. This may result in better performance. An overlap test is needed "
+"however for each item lookahead, so there is a trade off, with diminishing "
+"returns. If you are getting no benefit, setting this to 0 will switch it off."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1187
+msgid ""
+"Sets the number of commands to lookahead to determine whether to batch "
+"render items. A value of 1 can join items consisting of single commands, 0 "
+"turns off joining. Higher values are in theory more likely to join, however "
+"this has diminishing returns and has a runtime cost so a small value is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1190
+msgid ""
+"On some platforms (especially mobile), precision issues in shaders can lead "
+"to reading 1 texel outside of bounds, particularly where rects are scaled. "
+"This can particularly lead to border artifacts around tiles in tilemaps.\n"
+"This adjustment corrects for this by making a small contraction to the UV "
+"coordinates used. Note that this can result in a slight squashing of border "
+"texels."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1194
+msgid ""
+"The amount of UV contraction. This figure is divided by 1000000, and is a "
+"proportion of the total texture dimensions, where the width and height are "
+"both ranged from 0.0 to 1.0.\n"
+"Use the default unless correcting for a problem on particular hardware."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1198
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_HIGH]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1201
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_LOW]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1204
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_MEDIUM]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1207
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_ULTRA]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1210
+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 VisualServer.set_default_clear_color]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1213
+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:1216
+msgid ""
+"The use of half-float vertex compression may be producing rendering errors "
+"on some platforms (especially iOS). These have been seen particularly in "
+"particles. Disabling half-float may resolve these problems."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
+"[b]Warning:[/b] High floating point precision can be extremely slow on older "
+"devices and is often not available at all. Use with caution."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1226
+msgid ""
+"Max buffer size for blend shapes. Any blend shape bigger than this will not "
+"work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1229
+msgid ""
+"Max buffer size for drawing polygons. Any polygon bigger than this will not "
+"work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1232
+msgid ""
+"Max index buffer size for drawing polygons. Any polygon bigger than this "
+"will not work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1235
+msgid ""
+"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
+"Nodes using more than this size will not work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1238
+msgid ""
+"Max number of lights renderable per object. This is further limited by "
+"hardware support. Most devices only support 409 lights, while many devices "
+"(especially mobile) only support 102. Setting this low will slightly reduce "
+"memory usage and may decrease shader compile times."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1241
+msgid ""
+"Max amount of elements renderable in a frame. If more elements than this are "
+"visible per frame, they will not be drawn. Keep in mind elements refer to "
+"mesh surfaces and not meshes themselves. Setting this low will slightly "
+"reduce memory usage and may decrease shader compile times, particularly on "
+"web. For most uses, the default value is suitable, but consider lowering as "
+"much as possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1244
+msgid ""
+"Max number of lights renderable in a frame. If more lights than this number "
+"are used, they will be ignored. Setting this low will slightly reduce memory "
+"usage and may decrease shader compile times, particularly on web. For most "
+"uses, the default value is suitable, but consider lowering as much as "
+"possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1247
+msgid ""
+"Max number of reflection probes renderable in a frame. If more reflection "
+"probes than this number are used, they will be ignored. Setting this low "
+"will slightly reduce memory usage and may decrease shader compile times, "
+"particularly on web. For most uses, the default value is suitable, but "
+"consider lowering as much as possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1250
+msgid ""
+"Shaders have a time variable that constantly increases. At some point, it "
+"needs to be rolled back to zero to avoid precision errors on shader "
+"animations. This setting specifies when (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1253
+msgid ""
+"If [code]true[/code], the texture importer will import lossless textures "
+"using the PNG format. Otherwise, it will default to using WebP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1256
+msgid ""
+"The default compression level for lossless WebP. Higher levels result in "
+"smaller files at the cost of compression speed. Decompression speed is "
+"mostly unaffected by the compression level. Supported values are 0 to 9. "
+"Note that compression levels above 6 are very slow and offer very little "
+"savings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1259
+msgid ""
+"On import, mesh vertex data will be split into two streams within a single "
+"vertex buffer, one for position data and the other for interleaved "
+"attributes data. Recommended to be enabled if targeting mobile devices. "
+"Requires manual reimport of meshes after toggling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1262
+msgid ""
+"Determines the maximum number of sphere occluders that will be used at any "
+"one time.\n"
+"Although you can have many occluders in a scene, each frame the system will "
+"choose from these the most relevant based on a screen space metric, in order "
+"to give the best overall performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1266
+msgid ""
+"The default convention is for portal normals to point outward (face outward) "
+"from the source room.\n"
+"If you accidentally build your level with portals facing the wrong way, this "
+"setting can fix the problem.\n"
+"It will flip named portal meshes (i.e. [code]-portal[/code]) on the initial "
+"convertion to [Portal] nodes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1271
+msgid ""
+"Show conversion logs.\n"
+"[b]Note:[/b] This will automatically be disabled in exports."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1275
+msgid ""
+"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
+"code]. If [code]false[/code], they will be sent as [code]notifications[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1278
+msgid ""
+"If enabled, while merging meshes, the system will also attempt to remove "
+"[Spatial] nodes that no longer have any children.\n"
+"Reducing the number of [Node]s in the scene tree can make traversal more "
+"efficient, but can be switched off in case you wish to use empty [Spatial]s "
+"for markers or some other purpose."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1282
+msgid ""
+"Show logs during PVS generation.\n"
+"[b]Note:[/b] This will automatically be disabled in exports."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1286
+msgid ""
+"Uses a simplified method of generating PVS (potentially visible set) data. "
+"The results may not be accurate where more than one portal join adjacent "
+"rooms.\n"
+"[b]Note:[/b] Generally you should only use this option if you encounter bugs "
+"when it is set to [code]false[/code], i.e. there are problems with the "
+"default method."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1290
+msgid ""
+"If [code]true[/code], allocates the main framebuffer with high dynamic "
+"range. High dynamic range allows the use of [Color] values greater than 1.\n"
+"[b]Note:[/b] Only available on the GLES3 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1294
+msgid ""
+"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
+"devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1297
+msgid ""
+"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
+"architecture already does this."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1300
+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:1303
+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:1306
+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:1309
+msgid ""
+"The video driver to use (\"GLES2\" or \"GLES3\").\n"
+"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
+"video-driver[/code] command line argument, or by the [member rendering/"
+"quality/driver/fallback_to_gles2] option if the target system does not "
+"support GLES3 and falls back to GLES2. In such cases, this property is not "
+"updated, so use [method OS.get_current_video_driver] to query it at run-time."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1313
+msgid ""
+"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
+"driver is not supported.\n"
+"[b]Note:[/b] The two video drivers are not drop-in replacements for each "
+"other, so a game designed for GLES3 might not work properly when falling "
+"back to GLES2. In particular, some features of the GLES3 backend are not "
+"available in GLES2. Enabling this setting also means that both ETC and ETC2 "
+"VRAM-compressed textures will be exported on Android and iOS, increasing the "
+"data pack's size."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1317
+msgid ""
+"Maximum anisotropic filter level used for textures with anisotropy enabled. "
+"Higher values will result in sharper textures when viewed from oblique "
+"angles, at the cost of performance. Only power-of-two values are valid (2, "
+"4, 8, 16)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1320
+msgid ""
+"Sets the number of MSAA samples to use. 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:1324
+msgid ""
+"If set to a value greater than [code]0.0[/code], contrast-adaptive "
+"sharpening will be applied to the 3D viewport. This has a low performance "
+"cost and can be used to recover some of the sharpness lost from using FXAA. "
+"Values around [code]0.5[/code] generally give the best results. See also "
+"[member rendering/quality/filters/use_fxaa]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1327
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/"
+"depth/hdr] must also be [code]true[/code] for debanding to be effective.\n"
+"[b]Note:[/b] There are known issues with debanding breaking rendering on "
+"mobile platforms. Due to this, it is recommended to leave this option "
+"disabled when targeting mobile platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1332
+msgid ""
+"Enables FXAA in the root Viewport. 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [member rendering/"
+"quality/filters/sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1335
+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:1338
+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:1341
+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:1344
+msgid ""
+"Enable usage of bicubic sampling in baked lightmaps. This results in "
+"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
+"changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1347
+msgid ""
+"Lower-end override for [member rendering/quality/lightmapping/"
+"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1350
+msgid ""
+"Size of the atlas used by reflection probes. A larger size can result in "
+"higher visual quality, while a smaller size will be faster and take up less "
+"memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1353
+msgid ""
+"Number of subdivisions to use for the reflection atlas. A higher number "
+"lowers the quality of each atlas, but allows you to use more."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1356
+msgid ""
+"If [code]true[/code], uses a high amount of samples to create blurred "
+"variants of reflection probes and panorama backgrounds (sky). Those blurred "
+"variants are used by rough materials."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1359
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/"
+"high_quality_ggx] on mobile devices, due to performance concerns or driver "
+"support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1362
+msgid ""
+"Limits the size of the irradiance map which is normally determined by "
+"[member Sky.radiance_size]. A higher size results in a higher quality "
+"irradiance map similarly to [member rendering/quality/reflections/"
+"high_quality_ggx]. Use a higher value when using high-frequency HDRI maps, "
+"otherwise keep this as low as possible.\n"
+"[b]Note:[/b] Low and mid range hardware do not support complex irradiance "
+"maps well and may crash if this is set too high."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1366
+msgid ""
+"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
+"probes and panorama backgrounds (sky). This reduces jitter noise on "
+"reflections, but costs more performance and memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1369
+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:1372
+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:1375
+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:1378
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Lambert material "
+"lighting model instead of Burley."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1381
+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:1384
+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:1387
+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:1390
+msgid ""
+"If [code]true[/code], enables new physical light attenuation for "
+"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
+"appearance with a very small performance cost. When physical light "
+"attenuation is enabled, lights will appear to be darker as a result of the "
+"new attenuation formula. This can be compensated by adjusting the lights' "
+"energy or attenuation values.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1394
+msgid ""
+"Size for cubemap into which the shadow is rendered before being copied into "
+"the shadow atlas. A higher number can result in higher resolution shadows "
+"when used with a higher [member rendering/quality/shadow_atlas/size]. "
+"Setting higher than a quarter of the [member rendering/quality/shadow_atlas/"
+"size] will not result in a perceptible increase in visual quality."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
+msgid ""
+"Subdivision quadrant size for shadow mapping. See shadow mapping "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1409
+msgid ""
+"Size for shadow atlas (used for OmniLights and SpotLights). See "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1412
+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:1415
+msgid ""
+"Shadow filter mode. Higher-quality settings result in smoother shadows that "
+"flicker less when moving. \"Disabled\" is the fastest option, but also has "
+"the lowest quality. \"PCF5\" is smoother but is also slower. \"PCF13\" is "
+"the smoothest option, but is also the slowest.\n"
+"[b]Note:[/b] When using the GLES2 backend, the \"PCF13\" option actually "
+"uses 16 samples to emulate linear filtering in the shader. This results in a "
+"shadow appearance similar to the one produced by the GLES3 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1419
+msgid ""
+"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1422
+msgid ""
+"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
+"GLES2 and GLES3).\n"
+"See also [member rendering/quality/skinning/software_skinning_fallback]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1426
+msgid ""
+"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
+"doesn't support the default GPU skinning process with GLES2.\n"
+"If [code]false[/code], an alternative skinning process on the GPU is used in "
+"this case (slower in most cases).\n"
+"See also [member rendering/quality/skinning/force_software_skinning].\n"
+"[b]Note:[/b] When the software skinning fallback is triggered, custom vertex "
+"shaders will behave in a different way, because the bone transform will be "
+"already applied to the modelview matrix."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1432
+msgid ""
+"The rendering octree balance can be changed to favor smaller ([code]0[/"
+"code]), or larger ([code]1[/code]) branches.\n"
+"Larger branches can increase performance significantly in some projects."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1436
+msgid ""
+"Enables the use of bounding volume hierarchy instead of octree for rendering "
+"spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1439
+msgid ""
+"Improves quality of subsurface scattering, but cost significantly increases."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1442
+msgid "Quality setting for subsurface scattering (samples taken)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1445
+msgid "Max radius used for subsurface scattering samples."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1448
+msgid ""
+"Weight subsurface scattering samples. Helps to avoid reading samples from "
+"unrelated parts of the screen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1451
+msgid ""
+"Use high-quality voxel cone tracing. This results in better-looking "
+"reflections, but is much more expensive on the GPU."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1454
+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:1457
+msgid ""
+"If [code]true[/code], a thread safe version of BVH (bounding volume "
+"hierarchy) will be used in rendering and Godot physics.\n"
+"Try enabling this option if you see any visual anomalies in 3D (such as "
+"incorrect object visibility)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1461
+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 GLES3 "
+"renderer.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1465
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1469
+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 GLES3 renderer.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1473
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1477
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1481
+msgid ""
+"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
+"pixels)."
+msgstr ""
+
+#: doc/classes/ProximityGroup.xml:4 doc/classes/ProximityGroup.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:11 doc/classes/Viewport.xml:19
+#: doc/classes/ViewportTexture.xml:13
+msgid "https://godotengine.org/asset-library/asset/129"
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:17
+msgid "Offset of the generated Quad. Useful for particles."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:20
+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/3.4/tutorials/3d/using_transforms."
+"html#interpolating-with-quaternions"
+msgstr ""
+
+#: doc/classes/Quat.xml:20
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr ""
+
+#: doc/classes/Quat.xml:27
+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:35
+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:45
+msgid "Constructs a quaternion defined by the given values."
+msgstr ""
+
+#: doc/classes/Quat.xml:52
+msgid ""
+"Returns the angle between this quaternion and [code]to[/code]. This is the "
+"magnitude of the angle you would need to rotate by to get from one to the "
+"other.\n"
+"[b]Note:[/b] This method has an abnormally high amount of floating-point "
+"error, so methods such as [method @GDScript.is_zero_approx] will not work "
+"reliably."
+msgstr ""
+
+#: doc/classes/Quat.xml:63
+msgid ""
+"Performs a cubic spherical interpolation between quaternions [code]pre_a[/"
+"code], this vector, [code]b[/code], and [code]post_b[/code], by the given "
+"amount [code]weight[/code]."
+msgstr ""
+
+#: doc/classes/Quat.xml:70
+msgid "Returns the dot product of two quaternions."
+msgstr ""
+
+#: doc/classes/Quat.xml:76
+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:82
+msgid "Returns the inverse of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:89
+msgid ""
+"Returns [code]true[/code] if this quaternion and [code]quat[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Quat.xml:95
+msgid "Returns whether the quaternion is normalized or not."
+msgstr ""
+
+#: doc/classes/Quat.xml:101
+msgid "Returns the length of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:107
+msgid "Returns the length of the quaternion, squared."
+msgstr ""
+
+#: doc/classes/Quat.xml:113
+msgid "Returns a copy of the quaternion, normalized to unit length."
+msgstr ""
+
+#: doc/classes/Quat.xml:120
+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:126
+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:134
+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:143
+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:150
+msgid "Returns a vector transformed (multiplied) by this quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:156
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:160
+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:164
+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:168
+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:174
+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]\n"
+"[b]Note:[/b] The default values of [member seed] and [member state] "
+"properties are pseudo-random, and changes when calling [method randomize]. "
+"The [code]0[/code] value documented here is a placeholder, and not the "
+"actual default seed."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:19
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation."
+"html"
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:25
+msgid ""
+"Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:33
+msgid ""
+"Generates a pseudo-random float between [code]from[/code] and [code]to[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:41
+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:47
+msgid ""
+"Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
+"[code]4294967295[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:55
+msgid ""
+"Generates a pseudo-random 32-bit signed integer between [code]from[/code] "
+"and [code]to[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:61
+msgid "Setups a time-based seed to generator."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:67
+msgid ""
+"Initializes the random number generator state based on the given seed value. "
+"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.\n"
+"[b]Note:[/b] Setting this property produces a side effect of changing the "
+"internal [member state], so make sure to initialize the seed [i]before[/i] "
+"modifying the [member state]:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"rng.seed = hash(\"Godot\")\n"
+"rng.state = 100 # Restore to some previously saved state.\n"
+"[/codeblock]\n"
+"[b]Warning:[/b] the getter of this property returns the previous [member "
+"state], and not the initial seed value, which is going to be fixed in Godot "
+"4.0."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:78
+msgid ""
+"The current state of the random number generator. Save and restore this "
+"property to restore the generator to a previous state:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"print(rng.randf())\n"
+"var saved_state = rng.state # Store current state.\n"
+"print(rng.randf()) # Advance internal state.\n"
+"rng.state = saved_state # Restore the state.\n"
+"print(rng.randf()) # Prints the same value as in previous.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Do not set state to arbitrary values, since the random number "
+"generator requires the state to have certain qualities to behave properly. "
+"It should only be set to values that came from the state property itself. To "
+"initialize the random number generator with arbitrary input, use [member "
+"seed] instead."
+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:16
+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:22
+msgid "Stops range from sharing its member variables with any other."
+msgstr ""
+
+#: doc/classes/Range.xml:28
+msgid ""
+"If [code]true[/code], [member value] may be greater than [member max_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:31
+msgid ""
+"If [code]true[/code], [member value] may be less than [member min_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:34
+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:37
+msgid ""
+"Maximum value. Range is clamped if [code]value[/code] is greater than "
+"[code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:40
+msgid ""
+"Minimum value. Range is clamped if [code]value[/code] is less than "
+"[code]min_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:43
+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:46
+msgid "The value mapped between 0 and 1."
+msgstr ""
+
+#: doc/classes/Range.xml:49
+msgid ""
+"If [code]true[/code], [code]value[/code] will always be rounded to the "
+"nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:52
+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:55
+msgid "Range's current value."
+msgstr ""
+
+#: doc/classes/Range.xml:61
+msgid ""
+"Emitted when [member min_value], [member max_value], [member page], or "
+"[member step] change."
+msgstr ""
+
+#: doc/classes/Range.xml:67
+msgid "Emitted when [member value] changes."
+msgstr ""
+
+#: doc/classes/RayCast.xml:4 doc/classes/RayCast2D.xml:4
+msgid "Query the closest object intersecting a ray."
+msgstr ""
+
+#: doc/classes/RayCast.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"
+"RayCast 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"
+"RayCast can be configured to report collisions with [Area]s ([member "
+"collide_with_areas]) and/or [PhysicsBody]s ([member collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast 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/RayCast.xml:22 doc/classes/RayCast2D.xml:21
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast.xml:29 doc/classes/RayCast2D.xml:28
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:35 doc/classes/RayCast2D.xml:34
+msgid "Removes all collision exceptions for this ray."
+msgstr ""
+
+#: doc/classes/RayCast.xml:41
+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] [code]enabled[/code] is not required for this to work."
+msgstr ""
+
+#: doc/classes/RayCast.xml:49 doc/classes/RayCast2D.xml:47
+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/RayCast.xml:55 doc/classes/RayCast2D.xml:53
+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/RayCast.xml:62
+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/RayCast.xml:69 doc/classes/RayCast2D.xml:66
+msgid ""
+"Returns the normal of the intersecting object's shape at the collision point."
+msgstr ""
+
+#: doc/classes/RayCast.xml:75 doc/classes/RayCast2D.xml:72
+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/RayCast.xml:82 doc/classes/RayCast2D.xml:79
+msgid ""
+"Returns whether any object is intersecting with the ray's vector "
+"(considering the vector length)."
+msgstr ""
+
+#: doc/classes/RayCast.xml:89 doc/classes/RayCast2D.xml:86
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast.xml:96 doc/classes/RayCast2D.xml:93
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:104
+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/RayCast.xml:111 doc/classes/RayCast2D.xml:107
+msgid ""
+"The ray's destination point, relative to the RayCast's [code]position[/code]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:114
+msgid "If [code]true[/code], collision with [Area]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:117
+msgid "If [code]true[/code], collision with [PhysicsBody]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:120 doc/classes/RayCast2D.xml:116
+msgid ""
+"The ray's collision mask. Only objects in at least one collision layer "
+"enabled in the mask will be detected. See [url=https://docs.godotengine.org/"
+"en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks]Collision layers and masks[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/RayCast.xml:123
+msgid ""
+"The custom color to use to draw the shape in the editor and at run-time if "
+"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
+"color will be highlighted at run-time if the [RayCast] is colliding with "
+"something.\n"
+"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
+"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
+msgstr ""
+
+#: doc/classes/RayCast.xml:127
+msgid ""
+"If set to [code]1[/code], a line is used as the debug shape. Otherwise, a "
+"truncated pyramid is drawn to represent the [RayCast]. Requires [b]Visible "
+"Collision Shapes[/b] to be enabled in the [b]Debug[/b] menu for the debug "
+"shape to be visible at run-time."
+msgstr ""
+
+#: doc/classes/RayCast.xml:130 doc/classes/RayCast2D.xml:119
+msgid "If [code]true[/code], collisions will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:133
+msgid ""
+"If [code]true[/code], collisions will be ignored for this RayCast's "
+"immediate parent."
+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:40
+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] [code]enabled[/code] is not required for this to work."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:101
+msgid ""
+"Sets or clears individual bits on the collision mask. This makes selecting "
+"the areas scanned easier."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:110
+msgid "If [code]true[/code], collision with [Area2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:113
+msgid "If [code]true[/code], collision with [PhysicsBody2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:122
+msgid ""
+"If [code]true[/code], the parent node will be excluded from collision "
+"detection."
+msgstr ""
+
+#: doc/classes/RayShape.xml:4
+msgid "Ray shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/RayShape.xml:7
+msgid ""
+"Ray shape for 3D collisions, which can be set into a [PhysicsBody] or "
+"[Area]. 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/RayShape.xml:15 doc/classes/RayShape2D.xml:15
+msgid "The ray's length."
+msgstr ""
+
+#: doc/classes/RayShape.xml:18 doc/classes/RayShape2D.xml:18
+msgid "If [code]true[/code], allow the shape to return the correct normal."
+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/Rect2.xml:4
+msgid "2D axis-aligned bounding box."
+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.\n"
+"The 3D counterpart to [Rect2] is [AABB]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:22
+msgid "Constructs a [Rect2] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2.xml:32
+msgid "Constructs a [Rect2] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2.xml:38
+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:45
+msgid "Returns the intersection of this [Rect2] and b."
+msgstr ""
+
+#: doc/classes/Rect2.xml:52
+msgid ""
+"Returns [code]true[/code] if this [Rect2] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2.xml:59
+msgid "Returns this [Rect2] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:65
+msgid "Returns the area of the [Rect2]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:72
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2.xml:82
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2.xml:90
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2.xml:96
+msgid "Returns [code]true[/code] if the [Rect2] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2.xml:103
+msgid "Returns [code]true[/code] if the [Rect2] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:111
+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:119
+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:126
+msgid "Returns a larger [Rect2] that contains this [Rect2] 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:17
+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 other [Object] types, 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.\n"
+"[b]Note:[/b] In C#, references will not be freed instantly after they are no "
+"longer in use. Instead, garbage collection will run periodically and will "
+"free references that are no longer in use. This means that unused references "
+"will linger on for a while before being removed."
+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:26
+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:33
+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]. If you need to "
+"display a rectangle filled with a solid color, consider using [ColorRect] "
+"instead."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:15
+msgid "Sets the border [Color] of the [ReferenceRect]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:18
+msgid ""
+"Sets the border width of the [ReferenceRect]. The border grows both inwards "
+"and outwards with respect to the rectangle box."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:21
+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 ""
+"Capture its surroundings as a dual paraboloid image, 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.\n"
+"[b]Note:[/b] By default Godot will only render 16 reflection probes. If you "
+"need more, increase the number of atlas subdivisions. This setting can be "
+"found in [member ProjectSettings.rendering/quality/reflections/"
+"atlas_subdiv].\n"
+"[b]Note:[/b] The GLES2 backend will only display two reflection probes at "
+"the same time for a single mesh. If possible, split up large meshes that "
+"span over multiple reflection probes into smaller ones."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html"
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:19
+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:22
+msgid ""
+"Sets the cull mask which determines what objects are drawn by this probe. "
+"Every [VisualInstance] 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:25
+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:28
+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:31
+msgid ""
+"Defines the reflection intensity. Intensity modulates the strength of the "
+"reflection."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:34
+msgid ""
+"Sets the ambient light color to be used when this probe is set to [member "
+"interior_enable]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:37
+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:40
+msgid ""
+"Sets the energy multiplier for this reflection probe's ambient light "
+"contribution when set to [member interior_enable]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:43
+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:46
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:49
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:52
+msgid ""
+"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
+"[constant UPDATE_ALWAYS]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:57
+msgid "Update the probe once on the next frame."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:60
+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 result in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(result.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:55
+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:62
+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:68
+msgid "Returns the number of capturing groups in compiled pattern."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:74
+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:80
+msgid "Returns the original search pattern that was compiled."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:86
+msgid "Returns whether this object has a valid search pattern assigned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:95
+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:104
+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:115
+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:16
+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:23
+msgid "Returns the number of capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:30
+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:38
+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:45
+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:48
+msgid "An [Array] of the match and its capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:51
+msgid ""
+"The source string used with the search pattern to find this matching result."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:4
+msgid ""
+"RemoteTransform pushes its own [Transform] to another [Spatial] derived Node "
+"in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:7
+msgid ""
+"RemoteTransform pushes its own [Transform] to another [Spatial] 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/RemoteTransform.xml:16
+msgid ""
+"[RemoteTransform] 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/RemoteTransform.xml:22
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:25 doc/classes/RemoteTransform2D.xml:25
+msgid "If [code]true[/code], the remote node's position is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:28 doc/classes/RemoteTransform2D.xml:28
+msgid "If [code]true[/code], the remote node's rotation is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:31 doc/classes/RemoteTransform2D.xml:31
+msgid "If [code]true[/code], the remote node's scale is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:34 doc/classes/RemoteTransform2D.xml:34
+msgid ""
+"If [code]true[/code], global coordinates are used. If [code]false[/code], "
+"local coordinates are used."
+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:16
+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:22
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
+"position in the scene."
+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. Since they inherit from [Reference], resources "
+"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.\n"
+"[b]Note:[/b] In C#, resources will not be freed instantly after they are no "
+"longer in use. Instead, garbage collection will run periodically and will "
+"free resources that are no longer in use. This means that unused resources "
+"will linger on for a while before being removed."
+msgstr ""
+
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:25
+msgid ""
+"Duplicates the resource, returning a new resource with the exported members "
+"copied. [b]Note:[/b] To duplicate the resource the constructor is called "
+"without arguments. This method will error when the constructor doesn't have "
+"default values.\n"
+"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.\n"
+"[b]Note:[/b] When duplicating a resource, only [code]export[/code]ed "
+"properties are copied. Other properties will be set to their default value "
+"in the new resource."
+msgstr ""
+
+#: doc/classes/Resource.xml:34
+msgid ""
+"Emits the [signal changed] signal.\n"
+"If external objects which depend on this resource should be updated, this "
+"method must be called manually whenever the state of this resource has "
+"changed (such as modification of properties).\n"
+"The method is equivalent to:\n"
+"[codeblock]\n"
+"emit_signal(\"changed\")\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is called automatically for built-in resources."
+msgstr ""
+
+#: doc/classes/Resource.xml:46
+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:52
+msgid ""
+"Returns the RID of the resource (or an empty RID). Many resources (such as "
+"[Texture], [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:58
+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:66
+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:72
+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:75
+msgid ""
+"The name of the resource. This is an optional identifier. If [member "
+"resource_name] is not empty, its value will be displayed to represent the "
+"current resource in the editor inspector. For built-in scripts, the [member "
+"resource_name] will be displayed as the tab name in the script editor."
+msgstr ""
+
+#: doc/classes/Resource.xml:78
+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:84
+msgid ""
+"Emitted whenever the resource changes.\n"
+"[b]Note:[/b] This signal is not emitted automatically for custom resources, "
+"which means that you need to create a setter and emit the signal yourself."
+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 on 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] ([StreamTexture]) first, so they can be loaded with "
+"better efficiency on the graphics card."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:19
+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:26
+msgid "Gets the list of extensions for files this loader is able to read."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:33
+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:41
+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:50
+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:58
+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:17
+msgid ""
+"Returns the list of extensions available for saving the resource object, "
+"provided it is recognized (see [method recognize])."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:24
+msgid "Returns whether the given resource object can be saved by this saver."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:33
+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/ResourceImporter.xml:4
+msgid "Base class for the implementation of core resource importers."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:7
+msgid ""
+"This is the base class for the resource importers implemented in core. To "
+"implement your own resource importers using editor plugins, see "
+"[EditorImportPlugin]."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:16
+msgid "The default import order."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:19
+msgid ""
+"The import order for scenes, which ensures scenes are imported [i]after[/i] "
+"all other core resources such as textures. Custom importers should generally "
+"have an import order lower than [code]100[/code] to avoid issues when "
+"importing scenes that rely on custom resources."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:4
+msgid "Interactive [Resource] loader."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:7
+msgid ""
+"Interactive [Resource] loader. This object is returned by [ResourceLoader] "
+"when performing an interactive load. It allows loading resources with high "
+"granularity, which makes it mainly useful for displaying loading bars or "
+"percentages."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:15
+msgid ""
+"Returns the loaded resource if the load operation completed successfully, "
+"[code]null[/code] otherwise."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:21
+msgid ""
+"Returns the load stage. The total amount of stages can be queried with "
+"[method get_stage_count]."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:27
+msgid ""
+"Returns the total amount of stages (calls to [method poll]) needed to "
+"completely load this resource."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:33
+msgid ""
+"Polls the loading operation, i.e. loads a data chunk up to the next stage.\n"
+"Returns [constant OK] if the poll is successful but the load operation has "
+"not finished yet (intermediate stage). This means [method poll] will have to "
+"be called again until the last stage is completed.\n"
+"Returns [constant ERR_FILE_EOF] if the load operation has completed "
+"successfully. The loaded resource can be obtained by calling [method "
+"get_resource].\n"
+"Returns another [enum Error] code if the poll has failed."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:42
+msgid ""
+"Polls the loading operation successively until the resource is completely "
+"loaded or a [method poll] fails.\n"
+"Returns [constant ERR_FILE_EOF] if the load operation has completed "
+"successfully. The loaded resource can be obtained by calling [method "
+"get_resource].\n"
+"Returns another [enum Error] code if a poll has failed, aborting the "
+"operation."
+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."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:19
+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:27
+msgid ""
+"Returns the dependencies for the resource at the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:34
+msgid "Returns the list of recognized extensions for a resource type."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:41
+msgid ""
+"[i]Deprecated method.[/i] Use [method has_cached] or [method exists] instead."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:48
+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] or [method "
+"load_interactive] methods 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:58
+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]. "
+"Anything that inherits from [Resource] can be used as a type hint, for "
+"example [Image].\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.\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:71
+msgid ""
+"Starts loading a resource interactively. The returned "
+"[ResourceInteractiveLoader] object allows to load with high granularity, "
+"calling its [method ResourceInteractiveLoader.poll] method successively to "
+"load chunks.\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader]. "
+"Anything that inherits from [Resource] can be used as a type hint, for "
+"example [Image]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:79
+msgid ""
+"Changes the behavior on missing sub-resources. The default behavior is to "
+"abort loading."
+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:18
+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:25
+msgid "Returns the resource associated to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:31
+msgid "Returns the list of resources inside the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:38
+msgid ""
+"Returns [code]true[/code] if the preloader contains a resource associated to "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:45
+msgid ""
+"Removes the resource associated to [code]name[/code] from the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:53
+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:17
+msgid ""
+"Returns the list of extensions available for saving a resource of a given "
+"type."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:26
+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:34
+msgid "Save the resource with a path relative to the scene which uses it."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:37
+msgid "Bundles external resources."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:40
+msgid ""
+"Changes the [member Resource.resource_path] of the saved resource to match "
+"its new location."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:43
+msgid ""
+"Do not save editor-specific metadata (identified by their [code]__editor[/"
+"code] prefix)."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:46
+msgid "Save as big endian (see [member File.endian_swap])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:49
+msgid ""
+"Compress the resource on save using [constant File.COMPRESSION_ZSTD]. Only "
+"available for binary resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:52
+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:24
+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.\n"
+"[b]Note:[/b] RichTextLabel doesn't support entangled BBCode tags. For "
+"example, instead of using [code][b]bold[i]bold italic[/b]italic[/i][/code], "
+"use [code][b]bold[i]bold italic[/i][/b][i]italic[/i][/code].\n"
+"[b]Note:[/b] [code]push_*/pop[/code] functions won't affect BBCode.\n"
+"[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.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:16
+msgid "https://godotengine.org/asset-library/asset/132"
+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.\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:34
+msgid "Adds raw non-BBCode-parsed text to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:41
+msgid ""
+"Parses [code]bbcode[/code] and adds tags to the tag stack as needed. Returns "
+"the result of the parsing, [constant OK] if successful.\n"
+"[b]Note:[/b] Using this method, you can't close a tag that was opened in a "
+"previous [method append_bbcode] call. This is done to improve performance, "
+"especially when updating large RichTextLabels since rebuilding the whole "
+"BBCode every time would be slower. If you absolutely need to close a tag in "
+"a future method call, append the [member bbcode_text] instead of using "
+"[method append_bbcode]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:48
+msgid "Clears the tag stack and sets [member bbcode_text] to an empty string."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:54
+msgid "Returns the height of the content."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:60
+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:66
+msgid ""
+"Returns the total number of characters from text tags. Does not include "
+"BBCodes."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:72
+msgid ""
+"Returns the vertical scrollbar.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:79
+msgid "Returns the number of visible lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:86
+msgid ""
+"Installs a custom effect. [code]effect[/code] should be a valid "
+"[RichTextEffect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:92
+msgid "Adds a newline tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:99
+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:106
+msgid "Parses BBCode parameter [code]expressions[/code] into a dictionary."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:112
+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:119
+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:125
+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:131
+msgid ""
+"Adds a [code][font][/code] tag with a bold italics font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:137
+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:144
+msgid "Adds a [code][color][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:151
+msgid ""
+"Adds a [code][font][/code] tag to the tag stack. Overrides default fonts for "
+"its duration."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:158
+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:164
+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:171
+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:178
+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:184
+msgid "Adds a [code][font][/code] tag with a monospace font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:190
+msgid "Adds a [code][font][/code] tag with a normal font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:196
+msgid "Adds a [code][s][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:203
+msgid "Adds a [code][table=columns][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:209
+msgid "Adds a [code][u][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:216
+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:224
+msgid "Scrolls the window's top line to match [code]line[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:233
+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:241
+msgid ""
+"If [code]true[/code], the label uses BBCode formatting.\n"
+"[b]Note:[/b] Trying to alter the [RichTextLabel]'s text with [method "
+"add_text] will reset this to [code]false[/code]. Use instead [method "
+"append_bbcode] to preserve BBCode formatting."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:245
+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 the [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, unless you absolutely need to close "
+"a tag that was opened in an earlier method call."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:249
+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:253
+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:257
+msgid ""
+"If [code]true[/code], the label underlines meta tags such as [code][url]"
+"{text}[/url][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:260
+msgid "If [code]true[/code], the label uses the custom font color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:263
+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:268
+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:271
+msgid ""
+"If [code]true[/code], the window scrolls down to display new content "
+"automatically."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:274
+msgid "If [code]true[/code], the label allows text selection."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:277
+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:280
+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:284
+msgid ""
+"The restricted number of characters to display in the label. If [code]-1[/"
+"code], all characters will be displayed.\n"
+"[b]Note:[/b] Setting this property updates [member percent_visible] based on "
+"current [method get_total_character_count]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:292
+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:298
+msgid "Triggers when the mouse exits a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:304
+msgid "Triggers when the mouse enters a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:310
+msgid "Makes text left aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:313
+msgid "Makes text centered."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:316
+msgid "Makes text right aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:319
+msgid "Makes text fill width."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:322
+msgid "Each list item has a number marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:325
+msgid "Each list item has a letter marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:328
+msgid "Each list item has a filled circle marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:371
+msgid "The font used for bold text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:374
+msgid "The font used for bold italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:377
+msgid "The default text color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:380
+msgid "The background The background used when the [RichTextLabel] is focused."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:383
+msgid ""
+"The color of selected text, used when [member selection_enabled] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:386
+msgid "The color of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:389
+msgid "The font used for italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:392
+msgid "The vertical space between lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:395
+msgid "The font used for monospace text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:398
+msgid "The normal background for the [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:401
+msgid "The default text font."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:404
+msgid "The color of the selection box."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:407
+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:410
+msgid "The horizontal offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:413
+msgid "The vertical offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:416
+msgid "The horizontal separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:419
+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 "
+"[VisualServer]."
+msgstr ""
+
+#: doc/classes/RID.xml:16
+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:22
+msgid "Returns the ID of the referenced resource."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:4
+msgid ""
+"Physics Body whose position is determined through physics simulation in 3D "
+"space."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:7
+msgid ""
+"This is the node that implements full 3D physics. This means that you do not "
+"control a RigidBody 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 RigidBody has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] Don't change a RigidBody'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].\n"
+"With Bullet physics (the default), the center of mass is the RigidBody3D "
+"center. With GodotPhysics, the center of mass is the average of the "
+"[CollisionShape] centers."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:23
+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/RigidBody.xml:30
+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/RigidBody.xml:39
+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/RigidBody.xml:47
+msgid ""
+"Adds a constant rotational force (i.e. a motor) without affecting position."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:54
+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/RigidBody.xml:63
+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/RigidBody.xml:70
+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/RigidBody.xml:77
+msgid ""
+"Returns [code]true[/code] if the specified linear or rotational axis is "
+"locked."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:83 doc/classes/RigidBody2D.xml:73
+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/RigidBody.xml:90
+msgid ""
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the RigidBody."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:98
+msgid "Locks the specified linear or rotational axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:111
+msgid ""
+"Damps RigidBody's rotational forces.\n"
+"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:115
+msgid "RigidBody's rotational velocity."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:118
+msgid "Lock the body's rotation in the X axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:121
+msgid "Lock the body's rotation in the Y axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:124
+msgid "Lock the body's rotation in the Z axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:127
+msgid "Lock the body's movement in the X axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:130
+msgid "Lock the body's movement in the Y axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:133
+msgid "Lock the body's movement in the Z axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:136 doc/classes/RigidBody2D.xml:110
+#: doc/classes/StaticBody.xml:19 doc/classes/StaticBody2D.xml:16
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness).\n"
+"Deprecated, use [member PhysicsMaterial.bounce] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:140
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping].\n"
+"[b]Note:[/b] A RigidBody3D will never enter sleep mode automatically if its "
+"[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep "
+"manually by setting its [member sleeping] property to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:144
+msgid ""
+"If [code]true[/code], the RigidBody will emit signals when it collides with "
+"another RigidBody. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:147
+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/RigidBody.xml:151
+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/RigidBody.xml:155
+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/RigidBody.xml:158
+msgid ""
+"The body's friction, from 0 (frictionless) to 1 (max friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:162
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce RigidBody'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/RigidBody.xml:165
+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.\n"
+"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:169
+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/RigidBody.xml:172 doc/classes/RigidBody2D.xml:149
+msgid "The body's mass."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:175
+msgid "The body mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:178 doc/classes/RigidBody2D.xml:155
+#: doc/classes/StaticBody.xml:33 doc/classes/StaticBody2D.xml:30
+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/RigidBody.xml:182 doc/classes/RigidBody2D.xml:159
+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/RigidBody.xml:185
+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/RigidBody.xml:192
+msgid ""
+"Emitted when a collision with another [PhysicsBody] or [GridMap] occurs. "
+"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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:199
+msgid ""
+"Emitted when the collision with another [PhysicsBody] or [GridMap] ends. "
+"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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:209
+msgid ""
+"Emitted when one of this RigidBody's [Shape]s collides with another "
+"[PhysicsBody] or [GridMap]'s [Shape]s. 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. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody] or "
+"[MeshLibrary]'s [CollisionObject] used by the [PhysicsServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the other "
+"[PhysicsBody] or [GridMap] used by the [PhysicsServer]. Get the "
+"[CollisionShape] node with [code]body.shape_owner_get_owner(body_shape_index)"
+"[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this RigidBody "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code].\n"
+"[b]Note:[/b] Bullet physics cannot identify the shape index when using a "
+"[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a "
+"[ConcavePolygonShape] with Bullet physics if you need shape indices."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:223
+msgid ""
+"Emitted when the collision between one of this RigidBody's [Shape]s and "
+"another [PhysicsBody] or [GridMap]'s [Shape]s ends. 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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody] or "
+"[MeshLibrary]'s [CollisionObject] used by the [PhysicsServer]. [GridMap]s "
+"are detected if the Meshes have [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the other "
+"[PhysicsBody] or [GridMap] used by the [PhysicsServer]. Get the "
+"[CollisionShape] node with [code]body.shape_owner_get_owner(body_shape_index)"
+"[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this RigidBody "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code].\n"
+"[b]Note:[/b] Bullet physics cannot identify the shape index when using a "
+"[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a "
+"[ConcavePolygonShape] with Bullet physics if you need shape indices."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:233 doc/classes/RigidBody2D.xml:208
+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/RigidBody.xml:240
+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/RigidBody.xml:243
+msgid ""
+"Static mode. The body behaves like a [StaticBody], and can only move by user "
+"code."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:246
+msgid ""
+"Character body mode. This behaves like a rigid body, but can not rotate."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:249
+msgid ""
+"Kinematic body mode. The body behaves like a [KinematicBody], and can only "
+"move by user code."
+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].\n"
+"The center of mass is always located at the node's origin without taking "
+"into account the [CollisionShape2D] centroid offsets."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:15
+msgid "https://godotengine.org/asset-library/asset/119"
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:16 doc/classes/Sprite.xml:10
+msgid "https://godotengine.org/asset-library/asset/148"
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:23
+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: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 (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:81
+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:91
+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 "
+"[Physics2DTestMotionResult], which contains additional information about the "
+"collision (should there be one)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:97
+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].\n"
+"See [member ProjectSettings.physics/2d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:104
+msgid "The body's total applied force."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:107
+msgid "The body's total applied torque."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:114
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping].\n"
+"[b]Note:[/b] A RigidBody2D will never enter sleep mode automatically if its "
+"[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep "
+"manually by setting its [member sleeping] property to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:118
+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:121
+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)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:125
+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:129
+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:132
+msgid ""
+"The body's friction. Values range from [code]0[/code] (frictionless) to "
+"[code]1[/code] (maximum friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:136
+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:139
+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:142
+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].\n"
+"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:152
+msgid "The body's mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:162
+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:169
+msgid ""
+"Emitted when a collision with another [PhysicsBody2D] or [TileMap] occurs. "
+"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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:176
+msgid ""
+"Emitted when the collision with another [PhysicsBody2D] or [TileMap] ends. "
+"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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:186
+msgid ""
+"Emitted when one of this RigidBody2D's [Shape2D]s collides with another "
+"[PhysicsBody2D] or [TileMap]'s [Shape2D]s. 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. [TileMap]s are detected if the "
+"[TileSet] has Collision [Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the other "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this "
+"RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node "
+"with [code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:199
+msgid ""
+"Emitted when the collision between one of this RigidBody2D's [Shape2D]s and "
+"another [PhysicsBody2D] or [TileMap]'s [Shape2D]s ends. 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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the other "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this "
+"RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node "
+"with [code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:215
+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:218
+msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:221
+msgid ""
+"Character mode. Similar to [constant MODE_RIGID], but the body can not "
+"rotate."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:224
+msgid ""
+"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
+"by code."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:227
+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:230
+msgid ""
+"Continuous collision detection enabled using raycasting. This is faster than "
+"shapecasting but less precise."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:233
+msgid ""
+"Continuous collision detection enabled using shapecasting. This is the "
+"slowest CCD method and the most precise."
+msgstr ""
+
+#: doc/classes/Room.xml:4
+msgid "Room node, used to group objects together locally for [Portal] culling."
+msgstr ""
+
+#: doc/classes/Room.xml:7
+msgid ""
+"The [Portal] culling system requires levels to be built using objects "
+"grouped together by location in areas called [Room]s. In many cases these "
+"will correspond to actual rooms in buildings, but not necessarily (a canyon "
+"area may be treated as a room).\n"
+"Any [VisualInstance] that is a child or grandchild of a [Room] will be "
+"assigned to that room, if the [code]portal_mode[/code] of that "
+"[VisualInstance] is set to [code]STATIC[/code] (does not move) or "
+"[code]DYNAMIC[/code] (moves only within the room).\n"
+"Internally the room boundary must form a [b]convex hull[/b], and by default "
+"this is determined automatically by the geometry of the objects you place "
+"within the room.\n"
+"You can alternatively precisely specify a [b]manual bound[/b]. If you place "
+"a [MeshInstance] with a name prefixed by [code]Bound_[/code], it will turn "
+"off the bound generation from geometry, and instead use the vertices of this "
+"MeshInstance to directly calculate a convex hull during the conversion stage "
+"(see [RoomManager]).\n"
+"In order to see from one room into an adjacent room, [Portal]s must be "
+"placed over non-occluded openings between rooms. These will often be placed "
+"over doors and windows."
+msgstr ""
+
+#: doc/classes/Room.xml:27
+msgid ""
+"If [code]points[/code] are set, the [Room] bounding convex hull will be "
+"built from these points. If no points are set, the room bound will either be "
+"derived from a manual bound ([MeshInstance] with name prefix [code]Bound_[/"
+"code]), or from the geometry within the room.\n"
+"Note that you can use the [code]Generate Points[/code] editor button to get "
+"started. This will use either the geometry or manual bound to generate the "
+"room hull, and save the resulting points, allowing you to edit them to "
+"further refine the bound."
+msgstr ""
+
+#: doc/classes/Room.xml:31
+msgid ""
+"The [code]simplify[/code] value determines to what degree room hulls "
+"(bounds) are simplified, by removing similar planes. A value of 0 gives no "
+"simplification, 1 gives maximum simplification."
+msgstr ""
+
+#: doc/classes/Room.xml:34
+msgid ""
+"The room hull simplification can either use the default value set in the "
+"[RoomManager], or override this and use the per room setting."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:4
+msgid "Groups [Room]s together to allow common functionality."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:7
+msgid ""
+"Although [Room] behaviour can be specified individually, sometimes it is "
+"faster and more convenient to write functionality for a group of rooms.\n"
+"[RoomGroup]s should be placed as children of the [b]room list[/b] (the "
+"parent [Node] of your [Room]s), and [Room]s should be placed in turn as "
+"children of a [RoomGroup] in order to assign them to the RoomGroup.\n"
+"A [RoomGroup] can for example be used to specify [Room]s that are "
+"[b]outside[/b], and switch on or off a directional light, sky, or rain "
+"effect as the player enters / exits the area.\n"
+"[RoomGroup]s receive [b]gameplay callbacks[/b] when the "
+"[code]gameplay_monitor[/code] is switched on, as [code]signal[/code]s or "
+"[code]notification[/code]s as they enter and exit the [b]gameplay area[/b] "
+"(see [RoomManager] for details)."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:18
+msgid ""
+"This priority will be applied to [Room]s within the group. The [Room] "
+"priority allows the use of [b]internal rooms[/b], rooms [i]within[/i] "
+"another room or rooms.\n"
+"When the [Camera] is within more than one room (regular and internal), the "
+"higher priority room will take precedence. So with for example, a house "
+"inside a terrain 'room', you would make the house higher priority, so that "
+"when the camera is within the house, the house is used as the source room, "
+"but outside the house, the terrain room would be used instead."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:4
+msgid "The RoomManager node is used to control the portal culling system."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:7
+msgid ""
+"In order to utilize the portal occlusion culling system, you must build your "
+"level using [Room]s and [Portal]s. Before these can be used at runtime, they "
+"must undergo a short conversion process to build the [code]room graph[/"
+"code], runtime data needed for portal culling. The [code]room graph[/code] "
+"is controlled by the [RoomManager] node, and the [RoomManager] also contains "
+"settings that are common throughout the portal system."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:15
+msgid ""
+"This function clears all converted data from the [b]room graph[/b]. Use this "
+"before unloading a level, when transitioning from level to level, or "
+"returning to a main menu."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:21
+msgid ""
+"This is the most important function in the whole portal culling system. "
+"Without it, the system cannot function.\n"
+"First it goes through every [Room] that is a child of the [code]room list[/"
+"code] node (and [RoomGroup]s within) and converts and adds it to the "
+"[code]room graph[/code].\n"
+"This works for both [Room] nodes, and [Spatial] nodes that follow a special "
+"naming convention. They should begin with the prefix [i]'Room_'[/i], "
+"followed by the name you wish to give the room, e.g. [i]'Room_lounge'[/i]. "
+"This will automatically convert such [Spatial]s to [Room] nodes for you. "
+"This is useful if you want to build you entire room system in e.g. Blender, "
+"and reimport multiple times as you work on the level.\n"
+"The conversion will try to assign [VisualInstance]s that are children and "
+"grandchildren of the [Room] to the room. These should be given a suitable "
+"[code]portal mode[/code] (see the [CullInstance] documentation). The default "
+"[code]portal mode[/code] is [code]STATIC[/code] - objects which are not "
+"expected to move while the level is played, which will typically be most "
+"objects.\n"
+"The conversion will usually use the geometry of these [VisualInstance]s (and "
+"the [Portal]s) to calculate a convex hull bound for the room. These bounds "
+"will be shown in the editor with a wireframe. Alternatively you can specify "
+"a manual custom bound for any room, see the [Room] documentation.\n"
+"By definition, [Camera]s within a room can see everything else within the "
+"room (that is one advantage to using convex hulls). However, in order to see "
+"from one room into adjacent rooms, you must place [Portal]s, which represent "
+"openings that the camera can see through, like windows and doors.\n"
+"[Portal]s are really just specialized [MeshInstance]s. In fact you will "
+"usually first create a portal by creating a [MeshInstance], especially a "
+"[code]plane[/code] mesh instance. You would move the plane in the editor to "
+"cover a window or doorway, with the front face pointing outward from the "
+"room. To let the conversion process know you want this mesh to be a portal, "
+"again we use a special naming convention. [MeshInstance]s to be converted to "
+"a [Portal] should start with the prefix [i]'Portal_'[/i].\n"
+"You now have a choice - you can leave the name as [i]'Portal_'[/i] and allow "
+"the system to automatically detect the nearest [Room] to link. In most cases "
+"this will work fine.\n"
+"An alternative method is to specify the [Room] to link to manually, "
+"appending a suffix to the portal name, which should be the name of the room "
+"you intend to link to. For example [i]'Portal_lounge'[/i] will attempt to "
+"link to the room named [i]'Room_lounge'[/i].\n"
+"There is a special case here - Godot does not allow two nodes to share the "
+"same name. What if you want to manually have more than one portal leading "
+"into the same room? Surely they will need to both be called, e.g. "
+"[i]'Portal_lounge'[/i]?\n"
+"The solution is a wildcard character. After the room name, if you use the "
+"character [i]'*'[/i], this character and anything following it will be "
+"ignored. So you can use for example [i]'Portal_lounge*0'[/i], "
+"[i]'Portal_lounge*1'[/i] etc.\n"
+"Note that [Portal]s that have already been converted to [Portal] nodes "
+"(rather than [MeshInstance]s) still need to follow the same naming "
+"convention, as they will be relinked each time during conversion.\n"
+"It is recommended that you only place objects in rooms that are desired to "
+"stay within those rooms - i.e. [code]portal mode[/code]s [code]STATIC[/code] "
+"or [code]DYNAMIC[/code] (not crossing portals). [code]GLOBAL[/code] and "
+"[code]ROAMING[/code] objects are best placed in another part of the scene "
+"tree, to avoid confusion. See [CullInstance] for a full description of "
+"portal modes."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:39
+msgid ""
+"Switches the portal culling system on and off.\n"
+"It is important to note that when portal culling is active, it is "
+"responsible for [b]all[/b] the 3d culling. Some editor functionality may be "
+"more difficult to use, so switching the active flag is intended to be used "
+"to make sure your [Room] / [Portal] layout works within the editor.\n"
+"Switching to [code]active[/code] will have no effect when the [code]room "
+"graph[/code] is unloaded (the rooms have not yet been converted)."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:44
+msgid ""
+"Large objects can 'sprawl' over (be present in) more than one room. It can "
+"be useful to visualize which objects are sprawling outside the current "
+"room.\n"
+"Toggling this setting turns this debug view on and off."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:48
+msgid ""
+"Usually we don't want objects that only [b]just[/b] cross a boundary into an "
+"adjacent [Room] to sprawl into that room. To prevent this, each [Portal] has "
+"an extra margin, or tolerance zone where objects can enter without sprawling "
+"to a neighbouring room.\n"
+"In most cases you can set this here for all portals. It is possible to "
+"override the margin for each portal."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:52
+msgid ""
+"When using a partial or full PVS, the gameplay monitor allows you to receive "
+"callbacks when roaming objects or rooms enter or exit the [b]gameplay area[/"
+"b]. The gameplay area is defined as either the primary, or secondary PVS.\n"
+"These callbacks allow you to, for example, reduce processing for objects "
+"that are far from the player, or turn on and off AI.\n"
+"You can either choose to receive callbacks as notifications through the "
+"[code]_notification[/code] function, or as signals.\n"
+"[code]NOTIFICATION_ENTER_GAMEPLAY[/code]\n"
+"[code]NOTIFICATION_EXIT_GAMEPLAY[/code]\n"
+"Signals: [code]\"gameplay_entered\"[/code], [code]\"gameplay_exited\"[/code]"
+msgstr ""
+
+#: doc/classes/RoomManager.xml:60
+msgid ""
+"If enabled, the system will attempt to merge similar meshes (particularly in "
+"terms of materials) within [Room]s during conversion. This can significantly "
+"reduce the number of drawcalls and state changes required during rendering, "
+"albeit at a cost of reduced culling granularity.\n"
+"[b]Note:[/b] This operates at runtime during the conversion process, and "
+"will only operate on exported or running projects, in order to prevent "
+"accidental alteration to the scene and loss of data."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:64
+msgid ""
+"When converting rooms, the editor will warn you if overlap is detected "
+"between rooms. Overlap can interfere with determining the room that cameras "
+"and objects are within. A small amount can be acceptable, depending on your "
+"level. Here you can alter the threshold at which the editor warning appears. "
+"There are no other side effects."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:67
+msgid ""
+"Portal rendering is recursive - each time a portal is seen through an "
+"earlier portal there is some cost. For this reason, and to prevent the "
+"possibility of infinite loops, this setting provides a hard limit on the "
+"recursion depth.\n"
+"[b]Note:[/b] This value is unused when using [code]Full[/code] PVS mode."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:71
+msgid ""
+"Portal culling normally operates using the current [Camera] / [Camera]s, "
+"however for debugging purposes within the editor, you can use this setting "
+"to override this behaviour and force it to use a particular camera to get a "
+"better idea of what the occlusion culling is doing."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:75
+msgid ""
+"Optionally during conversion the potentially visible set (PVS) of rooms that "
+"are potentially visible from each room can be calculated. This can be used "
+"either to aid in dynamic portal culling, or to totally replace portal "
+"culling.\n"
+"In [code]Full[/code] PVS Mode, all objects within the potentially visible "
+"rooms will be frustum culled, and rendered if they are within the view "
+"frustum."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:79
+msgid ""
+"During the conversion process, the geometry of objects within [Room]s, or a "
+"custom specified manual bound, are used to generate a [b]convex hull bound[/"
+"b].\n"
+"This convex hull is [b]required[/b] in the visibility system, and is used "
+"for many purposes. Most importantly, it is used to decide whether the "
+"[Camera] (or an object) is within a [Room]. The convex hull generating "
+"algorithm is good, but occasionally it can create too many (or too few) "
+"planes to give a good representation of the room volume.\n"
+"The [code]room_simplify[/code] value can be used to gain fine control over "
+"this process. It determines how similar planes can be for them to be "
+"considered the same (and duplicates removed). The value can be set between 0 "
+"(no simplification) and 1 (maximum simplification).\n"
+"The value set here is the default for all rooms, but individual rooms can "
+"override this value if desired.\n"
+"The room convex hulls are shown as a wireframe in the editor."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:86
+msgid ""
+"For the [Room] conversion process to succeed, you must point the "
+"[RoomManager] to the parent [Node] of your [Room]s and [RoomGroup]s, which "
+"we refer to as the [code]roomlist[/code] (the roomlist is not a special node "
+"type, it is normally just a [Spatial])."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:89
+msgid "Shows the [Portal] margins when the portal gizmo is used in the editor."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:92
+msgid ""
+"When receiving gameplay callbacks when objects enter and exit gameplay, the "
+"[b]gameplay area[/b] can be defined by either the primary PVS (potentially "
+"visible set) of [Room]s, or the secondary PVS (the primary PVS and their "
+"neighbouring [Room]s).\n"
+"Sometimes using the larger gameplay area of the secondary PVS may be "
+"preferable."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:98
+msgid ""
+"Use only [Portal]s at runtime to determine visibility. PVS will not be "
+"generated at [Room]s conversion, and gameplay notifications cannot be used."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:101
+msgid ""
+"Use a combination of PVS and [Portal]s to determine visibility (this is "
+"usually fastest and most accurate)."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:104
+msgid ""
+"Use only the PVS (potentially visible set) of [Room]s to determine "
+"visibility."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:4
+msgid "Editor-only helper for setting up root motion in [AnimationTree]."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:7
+msgid ""
+"[i]Root motion[/i] refers to an animation technique where a mesh's skeleton "
+"is used to give impulse to a character. When working with 3D animations, a "
+"popular technique is for animators to use the root skeleton bone to give "
+"motion to the rest of the skeleton. This allows animating characters in a "
+"way where steps actually match the floor below. It also allows precise "
+"interaction with objects during cinematics. See also [AnimationTree].\n"
+"[b]Note:[/b] [RootMotionView] is only visible in the editor. It will be "
+"hidden automatically in the running project, and will also be converted to a "
+"plain [Node] in the running project. This means a script attached to a "
+"[RootMotionView] node [i]must[/i] have [code]extends Node[/code] instead of "
+"[code]extends RootMotionView[/code]. Additionally, it must not be a "
+"[code]@tool[/code] script."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
+"html#root-motion"
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:17
+msgid "Path to an [AnimationTree] node to use as a basis for root motion."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:20
+msgid "The grid's cell size in 3D units."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:23
+msgid "The grid's color."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:26
+msgid ""
+"The grid's radius in 3D units. The grid's opacity will fade gradually as the "
+"distance from the origin increases until this [member radius] is reached."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:29
+msgid ""
+"If [code]true[/code], the grid's points will all be on the same Y coordinate "
+"([i]local[/i] Y = 0). If [code]false[/code], the points' original Y "
+"coordinate is preserved."
+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:17
+msgid ""
+"Returns the list of bound parameters for the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:23
+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:31
+msgid ""
+"Returns the connection flags for the signal at [code]idx[/code]. See [enum "
+"Object.ConnectFlags] constants."
+msgstr ""
+
+#: doc/classes/SceneState.xml:38
+msgid "Returns the method connected to the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:45
+msgid "Returns the name of the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:52
+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:59
+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:65
+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:73
+msgid ""
+"Returns the list of group names associated with the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:80
+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:87
+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:94
+msgid ""
+"Returns the path to the represented scene file if the node at [code]idx[/"
+"code] is an [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:101
+msgid "Returns the name of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:108
+msgid ""
+"Returns the path to the owner of the node at [code]idx[/code], relative to "
+"the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:116
+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:124
+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:133
+msgid ""
+"Returns the name of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:141
+msgid ""
+"Returns the value of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:148
+msgid "Returns the type of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:155
+msgid ""
+"Returns [code]true[/code] if the node at [code]idx[/code] is an "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:161
+msgid ""
+"If passed to [method PackedScene.instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/SceneState.xml:164
+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:168
+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. an \"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/3.4/getting_started/step_by_step/scene_tree."
+"html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions."
+"html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:21
+msgid ""
+"Calls [code]method[/code] on each member of the given group. You can pass "
+"arguments to [code]method[/code] by specifying them at the end of the method "
+"call. This method is equivalent of calling [method call_group_flags] with "
+"[constant GROUP_CALL_DEFAULT] flag.\n"
+"[b]Note:[/b] [code]method[/code] may only have 5 arguments at most (7 "
+"arguments passed to this method in total).\n"
+"[b]Note:[/b] Due to design limitations, [method call_group] will fail "
+"silently if one of the arguments is [code]null[/code].\n"
+"[b]Note:[/b] [method call_group] will always call methods with an one-frame "
+"delay, in a way similar to [method Object.call_deferred]. To call methods "
+"immediately, use [method call_group_flags] with the [constant "
+"GROUP_CALL_REALTIME] flag."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:33
+msgid ""
+"Calls [code]method[/code] on each member of the given group, respecting the "
+"given [enum GroupCallFlags]. You can pass arguments to [code]method[/code] "
+"by specifying them at the end of the method call.\n"
+"[b]Note:[/b] [code]method[/code] may only have 5 arguments at most (8 "
+"arguments passed to this method in total).\n"
+"[b]Note:[/b] Due to design limitations, [method call_group_flags] will fail "
+"silently if one of the arguments is [code]null[/code].\n"
+"[codeblock]\n"
+"# Call the method immediately and in reverse order.\n"
+"get_tree().call_group_flags(SceneTree.GROUP_CALL_REALTIME | SceneTree."
+"GROUP_CALL_REVERSE, \"bases\", \"destroy\")\n"
+"[/codeblock]"
+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.\n"
+"[b]Note:[/b] The scene change is deferred, which means that the new scene "
+"node is added on the next idle frame. You won't be able to access it "
+"immediately after the [method change_scene] call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:55
+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.\n"
+"[b]Note:[/b] The scene change is deferred, which means that the new scene "
+"node is added on the next idle frame. You won't be able to access it "
+"immediately after the [method change_scene_to] call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:65
+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]\n"
+"The timer will be automatically freed after its time elapses."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:79
+msgid ""
+"Returns the current frame number, i.e. the total frame count since the "
+"application started."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:85
+msgid ""
+"Returns the peer IDs of all connected peers of this [SceneTree]'s [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:91
+msgid "Returns the unique peer ID of this [SceneTree]'s [member network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:97
+msgid "Returns the number of nodes in this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:104
+msgid "Returns a list of all nodes assigned to the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:110
+msgid "Returns the sender's peer ID for the most recently received RPC call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:117
+msgid "Returns [code]true[/code] if the given group exists."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:129
+msgid ""
+"Returns [code]true[/code] if the most recent [InputEvent] was marked as "
+"handled with [method set_input_as_handled]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:135
+msgid ""
+"Returns [code]true[/code] if this [SceneTree]'s [member network_peer] is in "
+"server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:143
+msgid "Sends the given notification to all members of the [code]group[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:152
+msgid ""
+"Sends the given notification to all members of the [code]group[/code], "
+"respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:159
+msgid ""
+"Queues the given object for deletion, delaying the call to [method Object."
+"free] to after the current frame."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:166
+msgid ""
+"Quits the application at the end of the current iteration. 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.\n"
+"[b]Note:[/b] On iOS this method doesn't work. Instead, as recommended by the "
+"iOS Human Interface Guidelines, the user is expected to close apps via the "
+"Home button."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:173
+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:181
+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:191
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:201
+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:207
+msgid "Marks the most recent [InputEvent] as handled."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:214
+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 "
+"MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:225
+msgid ""
+"Configures screen stretching to the given [enum StretchMode], [enum "
+"StretchAspect], minimum size and [code]scale[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:231
+msgid "The current scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:234
+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:237
+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:240
+msgid "The root of the edited scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:243
+msgid "The default [MultiplayerAPI] instance for this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:246
+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:250
+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:253
+msgid ""
+"If [code]true[/code], the [SceneTree] is paused. Doing so will have the "
+"following behavior:\n"
+"- 2D and 3D physics will be stopped. This includes signals and collision "
+"detection.\n"
+"- [method Node._process], [method Node._physics_process] and [method Node."
+"_input] will not be called anymore in nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:258
+msgid ""
+"If [code]true[/code], the [SceneTree]'s [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:261
+msgid "The [SceneTree]'s root [Viewport]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:264
+msgid "If [code]true[/code], font oversampling is used."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:270
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:275
+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:282
+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:289
+msgid "Emitted whenever global menu item is clicked."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:294
+msgid ""
+"Emitted immediately before [method Node._process] is called on every node in "
+"the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:300
+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:306
+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:312
+msgid "Emitted whenever a node is added to the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:318
+msgid ""
+"Emitted when a node's configuration changed. Only emitted in [code]tool[/"
+"code] mode."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:324
+msgid "Emitted whenever a node is removed from the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:330
+msgid "Emitted whenever a node is renamed."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:335
+msgid ""
+"Emitted immediately before [method Node._physics_process] is called on every "
+"node in the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:340
+msgid ""
+"Emitted when the screen resolution (fullscreen) or window size (windowed) "
+"changes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:345
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnected from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:350
+msgid ""
+"Emitted whenever the [SceneTree] hierarchy changed (children being moved or "
+"renamed, etc.)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:356
+msgid "Call a group with no flags (default)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:359
+msgid "Call a group in reverse scene order."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:362
+msgid "Call a group immediately (calls are normally made on idle)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:365
+msgid "Call a group only once even if the call is executed many times."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:368
+msgid "No stretching."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:371
+msgid "Render stretching in higher resolution (interpolated)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:374
+msgid ""
+"Keep the specified display resolution. No interpolation. Content may appear "
+"pixelated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:377
+msgid ""
+"Fill the window with the content stretched to cover excessive space. Content "
+"may appear stretched."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:380
+msgid ""
+"Retain the same aspect ratio by padding with black bars on either axis. This "
+"prevents distortion."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:383
+msgid ""
+"Expand vertically. Left/right black bars may appear if the window is too "
+"wide."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:386
+msgid ""
+"Expand horizontally. Top/bottom black bars may appear if the window is too "
+"tall."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:389
+msgid ""
+"Expand in both directions, retaining the same aspect ratio. This prevents "
+"distortion while avoiding black bars."
+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:61
+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/3.4/getting_started/step_by_step/scripting."
+"html"
+msgstr ""
+
+#: doc/classes/Script.xml:17
+msgid "Returns [code]true[/code] if the script can be instanced."
+msgstr ""
+
+#: doc/classes/Script.xml:23
+msgid "Returns the script directly inherited by this script."
+msgstr ""
+
+#: doc/classes/Script.xml:29
+msgid "Returns the script's base type."
+msgstr ""
+
+#: doc/classes/Script.xml:36
+msgid "Returns the default value of the specified property."
+msgstr ""
+
+#: doc/classes/Script.xml:42
+msgid "Returns a dictionary containing constant names and their values."
+msgstr ""
+
+#: doc/classes/Script.xml:48
+msgid "Returns the list of methods in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:54
+msgid "Returns the list of properties in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:60
+msgid "Returns the list of user signals defined in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:67
+msgid ""
+"Returns [code]true[/code] if the script, or a base class, defines a signal "
+"with the given name."
+msgstr ""
+
+#: doc/classes/Script.xml:73
+msgid "Returns [code]true[/code] if the script contains non-empty source code."
+msgstr ""
+
+#: doc/classes/Script.xml:80
+msgid ""
+"Returns [code]true[/code] if [code]base_object[/code] is an instance of this "
+"script."
+msgstr ""
+
+#: doc/classes/Script.xml:86
+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:93
+msgid "Reloads the script's class implementation. Returns an error code."
+msgstr ""
+
+#: doc/classes/Script.xml:99
+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 Popup.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:25
+msgid "Prefills required fields to configure the ScriptCreateDialog for use."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:40
+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:31
+msgid "Returns a [Script] that is currently active in editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:44
+msgid ""
+"Returns an array with all [Script] objects which are currently open in "
+"editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:51
+msgid "Goes to the specified line in the current script."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:59
+msgid ""
+"Opens the script create dialog. The script will extend [code]base_name[/"
+"code]. The file extension can be omitted from [code]base_path[/code]. It "
+"will be added based on the selected scripting language."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:67
+msgid ""
+"Emitted when user changed active script. Argument is a freshly activated "
+"[Script]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:73
+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. 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. 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:16
+msgid ""
+"Ensures the given [code]control[/code] is visible (must be a direct or "
+"indirect child of the ScrollContainer). Used by [member follow_focus]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:22
+msgid ""
+"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to disable the horizontal scrollbar, use "
+"[member scroll_horizontal_enabled]. If you want to only hide it instead, use "
+"its [member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:29
+msgid ""
+"Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to disable the vertical scrollbar, use "
+"[member scroll_vertical_enabled]. If you want to only hide it instead, use "
+"its [member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:36
+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:42
+msgid "The current horizontal scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:45
+msgid "If [code]true[/code], enables horizontal scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:48
+msgid "The current vertical scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:51
+msgid "If [code]true[/code], enables vertical scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:57
+msgid "Emitted when scrolling stops."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:62
+msgid "Emitted when scrolling is started."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:70
+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:16
+msgid ""
+"Lowers the [Semaphore], allowing one more thread in. Returns [constant OK] "
+"on success, [constant ERR_BUSY] otherwise."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:22
+msgid ""
+"Tries to wait for the [Semaphore], if its value is zero, blocks until non-"
+"zero. Returns [constant OK] on success, [constant ERR_BUSY] otherwise."
+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:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/"
+"what_are_shaders.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:18
+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:25
+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:32
+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:41
+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:48
+msgid ""
+"Returns the shader's code as the user has written it, not the full generated "
+"code used internally."
+msgstr ""
+
+#: doc/classes/Shader.xml:51
+msgid ""
+"Returns the shader's custom defines. Custom defines can be used in Godot to "
+"add GLSL preprocessor directives (e.g: extensions) required for the shader "
+"logic.\n"
+"[b]Note:[/b] Custom defines are not validated by the Godot shader parser, so "
+"care should be taken when using them."
+msgstr ""
+
+#: doc/classes/Shader.xml:57
+msgid "Mode used to draw all 3D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:60
+msgid "Mode used to draw all 2D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:63
+msgid ""
+"Mode used to calculate particle information on a per-particle basis. Not "
+"used for drawing."
+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.\n"
+"[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot "
+"emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can "
+"emit light in a [GIProbe]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:18
+msgid ""
+"Returns the current value set for this material of a uniform in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:25
+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:32
+msgid ""
+"Returns the default value of the material property with given [code]name[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:40
+msgid ""
+"Changes the value set for this material of a uniform in the shader.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:47
+msgid "The [Shader] program used to render this material."
+msgstr ""
+
+#: doc/classes/Shape.xml:4
+msgid "Base class for all 3D shape resources."
+msgstr ""
+
+#: doc/classes/Shape.xml:7
+msgid ""
+"Base class for all 3D shape resources. Nodes that inherit from this can be "
+"used as shapes for a [PhysicsBody] or [Area] objects."
+msgstr ""
+
+#: doc/classes/Shape.xml:16
+msgid ""
+"Returns the [ArrayMesh] used to draw the debug collision for this [Shape]."
+msgstr ""
+
+#: doc/classes/Shape.xml:22
+msgid ""
+"The collision margin for the shape. Used in Bullet Physics only.\n"
+"Collision margins allow collision detection to be more efficient by adding "
+"an extra shell around shapes. Collision algorithms are more expensive when "
+"objects overlap by more than their margin, so a higher value for margins is "
+"better for performance, at the cost of accuracy around edges as it makes "
+"them less sharp."
+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:19
+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:29
+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:41
+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:53
+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:62
+msgid ""
+"Draws a solid shape onto a [CanvasItem] with the [VisualServer] 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:68
+msgid "The shape's custom solver bias."
+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:16
+msgid "Returns the shortcut's [InputEvent] as a [String]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:23
+msgid ""
+"Returns [code]true[/code] if the shortcut's [InputEvent] equals [code]event[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:29
+msgid "If [code]true[/code], this shortcut is valid."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:35
+msgid ""
+"The shortcut's [InputEvent].\n"
+"Generally the [InputEvent] is a keyboard key, though it can be any "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:4
+msgid "Skeleton for characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:7
+msgid ""
+"Skeleton 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/Skeleton.xml:20
+msgid ""
+"Adds a bone, with name [code]name[/code]. [method get_bone_count] will "
+"become the bone index."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:28 doc/classes/Skeleton.xml:109
+#: doc/classes/Skeleton.xml:212
+msgid "[i]Deprecated soon.[/i]"
+msgstr ""
+
+#: doc/classes/Skeleton.xml:34
+msgid "Clear all the bones in this skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:46
+msgid "Returns the bone index that matches [code]name[/code] as its name."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:52
+msgid "Returns the amount of bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:59
+msgid ""
+"Returns the custom pose of the specified bone. Custom pose is applied on top "
+"of the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:66
+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/Skeleton.xml:73
+msgid ""
+"Returns the overall transform of the specified bone, with respect to the "
+"skeleton, but without any global pose overrides. Being relative to the "
+"skeleton frame, this is not the actual \"global\" transform of the bone."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:80
+msgid "Returns the name of the bone at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:87
+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/Skeleton.xml:95
+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/Skeleton.xml:102
+msgid "Returns the rest transform for a bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:187
+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/Skeleton.xml:196
+msgid "Sets the pose transform for bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:204
+msgid "Sets the rest transform for bone [code]bone_idx[/code]."
+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/3.4/tutorials/animation/2d_skeletons.html"
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:17
+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:23
+msgid ""
+"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
+"Skeleton2D."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:29
+msgid "Returns the [RID] of a Skeleton2D instance."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:4
+msgid ""
+"SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a "
+"certain point in 3D by rotating all bones in the chain accordingly."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:7
+msgid ""
+"SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a "
+"certain point in 3D by rotating all bones in the chain accordingly. A "
+"typical scenario for IK in games is to place a characters feet on the ground "
+"or a characters hands on a currently hold object. SkeletonIK uses "
+"FabrikInverseKinematic internally to solve the bone chain and applies the "
+"results to the [Skeleton] [code]bones_global_pose_override[/code] property "
+"for all affected bones in the chain. If fully applied this overwrites any "
+"bone transform from [Animation]s or bone custom poses set by users. The "
+"applied amount can be controlled with the [code]interpolation[/code] "
+"property.\n"
+"[codeblock]\n"
+"# Apply IK effect automatically on every new frame (not the current)\n"
+"skeleton_ik_node.start()\n"
+"\n"
+"# Apply IK effect only on the current frame\n"
+"skeleton_ik_node.start(true)\n"
+"\n"
+"# Stop IK effect and reset bones_global_pose_override on Skeleton\n"
+"skeleton_ik_node.stop()\n"
+"\n"
+"# Apply full IK effect\n"
+"skeleton_ik_node.set_interpolation(1.0)\n"
+"\n"
+"# Apply half IK effect\n"
+"skeleton_ik_node.set_interpolation(0.5)\n"
+"\n"
+"# Apply zero IK effect (a value at or below 0.01 also removes "
+"bones_global_pose_override on Skeleton)\n"
+"skeleton_ik_node.set_interpolation(0.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:35
+msgid ""
+"Returns the parent [Skeleton] Node that was present when SkeletonIK entered "
+"the [SceneTree]. Returns null if the parent node was not a [Skeleton] Node "
+"when SkeletonIK entered the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:41
+msgid ""
+"Returns [code]true[/code] if SkeletonIK is applying IK effects on continues "
+"frames to the [Skeleton] bones. Returns [code]false[/code] if SkeletonIK is "
+"stopped or [method start] was used with the [code]one_time[/code] parameter "
+"set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:48
+msgid ""
+"Starts applying IK effects on each frame to the [Skeleton] bones but will "
+"only take effect starting on the next frame. If [code]one_time[/code] is "
+"[code]true[/code], this will take effect immediately but also reset on the "
+"next frame."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:54
+msgid ""
+"Stops applying IK effects on each frame to the [Skeleton] bones and also "
+"calls [method Skeleton.clear_bones_global_pose_override] to remove existing "
+"overrides on all bones."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:60
+msgid ""
+"Interpolation value for how much the IK results are applied to the current "
+"skeleton bone chain. A value of [code]1.0[/code] will overwrite all skeleton "
+"bone transforms completely while a value of [code]0.0[/code] will visually "
+"disable the SkeletonIK. A value at or below [code]0.01[/code] also calls "
+"[method Skeleton.clear_bones_global_pose_override]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:63
+msgid ""
+"Secondary target position (first is [member target] property or [member "
+"target_node]) for the IK chain. Use magnet position (pole target) to control "
+"the bending of the IK chain. Only works if the bone chain has more than 2 "
+"bones. The middle chain bone position will be linearly interpolated with the "
+"magnet position."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:66
+msgid ""
+"Number of iteration loops used by the IK solver to produce more accurate "
+"(and elegant) bone chain results."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:69
+msgid ""
+"The minimum distance between bone and goal target. If the distance is below "
+"this value, the IK solver stops further iterations."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:72
+msgid ""
+"If [code]true[/code] overwrites the rotation of the tip bone with the "
+"rotation of the [member target] (or [member target_node] if defined)."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:75
+msgid "The name of the current root bone, the first bone in the IK chain."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:78
+msgid ""
+"First target of the IK chain where the tip bone is placed and, if [member "
+"override_tip_basis] is [code]true[/code], how the tip bone is rotated. If a "
+"[member target_node] path is available the nodes transform is used instead "
+"and this property is ignored."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:81
+msgid ""
+"Target node [NodePath] for the IK chain. If available, the node's current "
+"[Transform] is used instead of the [member target] property."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:84
+msgid ""
+"The name of the current tip bone, the last bone in the IK chain placed at "
+"the [member target] transform (or [member target_node] if defined)."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:87
+msgid ""
+"If [code]true[/code], instructs the IK solver to consider the secondary "
+"magnet target (pole target) when calculating the bone chain. Use the magnet "
+"position (pole target) to control the bending of the IK chain."
+msgstr ""
+
+#: doc/classes/Sky.xml:4 doc/classes/Sky.xml:7
+msgid "The base class for [PanoramaSky] and [ProceduralSky]."
+msgstr ""
+
+#: doc/classes/Sky.xml:15
+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] You will only benefit from high radiance sizes if you have "
+"perfectly sharp reflective surfaces in your project and are not using "
+"[ReflectionProbe]s or [GIProbe]s. For most projects, keeping [member "
+"radiance_size] to the default value is the best compromise between visuals "
+"and performance. Be careful when using high radiance size values as these "
+"can cause crashes on low-end GPUs."
+msgstr ""
+
+#: doc/classes/Sky.xml:22
+msgid "Radiance texture size is 32×32 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:25
+msgid "Radiance texture size is 64×64 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:28
+msgid "Radiance texture size is 128×128 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:31
+msgid "Radiance texture size is 256×256 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:34
+msgid "Radiance texture size is 512×512 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:37
+msgid ""
+"Radiance texture size is 1024×1024 pixels.\n"
+"[b]Note:[/b] [constant RADIANCE_SIZE_1024] is not exposed in the inspector "
+"as it is known to cause GPU hangs on certain systems."
+msgstr ""
+
+#: doc/classes/Sky.xml:41
+msgid ""
+"Radiance texture size is 2048×2048 pixels.\n"
+"[b]Note:[/b] [constant RADIANCE_SIZE_2048] is not exposed in the inspector "
+"as it is known to cause GPU hangs on certain systems."
+msgstr ""
+
+#: doc/classes/Sky.xml:45
+msgid "Represents the size of the [enum RadianceSize] enum."
+msgstr ""
+
+#: doc/classes/Slider.xml:4
+msgid "Base class for GUI sliders."
+msgstr ""
+
+#: doc/classes/Slider.xml:7
+msgid ""
+"Base class for GUI sliders.\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/Slider.xml:16
+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:20
+msgid "If [code]true[/code], the value can be changed using the mouse wheel."
+msgstr ""
+
+#: doc/classes/Slider.xml:24
+msgid ""
+"Number of ticks displayed on the slider, including border ticks. Ticks are "
+"uniformly-distributed value markers."
+msgstr ""
+
+#: doc/classes/Slider.xml:27
+msgid ""
+"If [code]true[/code], the slider will display ticks for minimum and maximum "
+"values."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:4
+msgid "Slider between two PhysicsBodies in 3D."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:7
+msgid ""
+"Slides across the X axis of the pivot object. See also [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:28
+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/SliderJoint.xml:35
+msgid ""
+"The amount of restitution of the rotation when the limit is surpassed.\n"
+"Does not affect damping."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:39
+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/SliderJoint.xml:52 doc/classes/SliderJoint.xml:147
+msgid "A factor applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:61 doc/classes/SliderJoint.xml:156
+msgid ""
+"A factor applied to the all rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:64
+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/SliderJoint.xml:70
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocity-energy gets lost."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:4
+msgid "A soft mesh physics body."
+msgstr ""
+
+#: doc/classes/SoftBody.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/SoftBody.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html"
+msgstr ""
+
+#: doc/classes/SoftBody.xml:44
+msgid "Returns local translation of a vertex in the surface array."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:51
+msgid "Returns [code]true[/code] if vertex is set to pinned."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:83
+msgid ""
+"Sets the pinned state of a surface vertex. When set to [code]true[/code], "
+"the optional [code]attachment_path[/code] can define a [Spatial] the pinned "
+"vertex will be attached to."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:91
+msgid ""
+"The physics layers this SoftBody 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. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:96
+msgid ""
+"The physics layers this SoftBody scans for collisions. See [url=https://docs."
+"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-"
+"layers-and-masks]Collision layers and masks[/url] in the documentation for "
+"more information."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:105
+msgid "[NodePath] to a [CollisionObject] this SoftBody should avoid clipping."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:108
+msgid ""
+"If [code]true[/code], the [SoftBody] is simulated in physics. Can be set to "
+"[code]false[/code] to pause the physics simulation."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:115
+msgid "If [code]true[/code], the [SoftBody] will respond to [RayCast]s."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:118
+msgid ""
+"Increasing this value will improve the resulting simulation, but can affect "
+"performance. Use with care."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:121
+msgid "The SoftBody's mass."
+msgstr ""
+
+#: doc/classes/Spatial.xml:4
+msgid "Most basic 3D game object, parent of all 3D-related nodes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:7
+msgid ""
+"Most basic 3D game object, with a 3D [Transform] and visibility settings. "
+"All other 3D game objects inherit from Spatial. Use [Spatial] 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 [Spatial] object is set as top-level. Affine "
+"operations in this coordinate system correspond to direct affine operations "
+"on the [Spatial]'s transform. The word local below refers to this coordinate "
+"system. The coordinate system that is attached to the [Spatial] 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/Spatial.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html"
+msgstr ""
+
+#: doc/classes/Spatial.xml:13 doc/classes/Vector3.xml:16
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/3d"
+msgstr ""
+
+#: doc/classes/Spatial.xml:25
+msgid ""
+"Returns the parent [Spatial], or an empty [Object] if no parent exists or "
+"parent is not of type [Spatial]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:31
+msgid ""
+"Returns the current [World] resource this [Spatial] node is registered to."
+msgstr ""
+
+#: doc/classes/Spatial.xml:39
+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/Spatial.xml:46
+msgid ""
+"Scales the global (world) transformation by the given [Vector3] scale "
+"factors."
+msgstr ""
+
+#: doc/classes/Spatial.xml:53
+msgid ""
+"Moves the global (world) transformation by [Vector3] offset. The offset is "
+"in global coordinate system."
+msgstr ""
+
+#: doc/classes/Spatial.xml:59
+msgid ""
+"Disables rendering of this node. Changes [member visible] to [code]false[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:65
+msgid ""
+"Returns whether node notifies about its local transformation changes. "
+"[Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:71
+msgid ""
+"Returns whether this node uses a scale of [code](1, 1, 1)[/code] or its "
+"local transformation scale."
+msgstr ""
+
+#: doc/classes/Spatial.xml:77
+msgid ""
+"Returns whether this node is set as Toplevel, that is whether it ignores its "
+"parent nodes transformations."
+msgstr ""
+
+#: doc/classes/Spatial.xml:83
+msgid ""
+"Returns whether the node notifies about its global and local transformation "
+"changes. [Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:97
+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/Spatial.xml:108
+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/Spatial.xml:114
+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/Spatial.xml:122
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:130
+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/Spatial.xml:137
+msgid "Rotates the local transformation around the X axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:144
+msgid "Rotates the local transformation around the Y axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:151
+msgid "Rotates the local transformation around the Z axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:158
+msgid ""
+"Scales the local transformation by given 3D scale factors in object-local "
+"coordinate system."
+msgstr ""
+
+#: doc/classes/Spatial.xml:165
+msgid ""
+"Makes the node ignore its parents transformations. Node transformations are "
+"only in global space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:172
+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/Spatial.xml:178
+msgid ""
+"Reset all transformations for this node (sets its [Transform] to the "
+"identity matrix)."
+msgstr ""
+
+#: doc/classes/Spatial.xml:185
+msgid ""
+"Sets whether the node ignores notification that its transformation (global "
+"or local) changed."
+msgstr ""
+
+#: doc/classes/Spatial.xml:192
+msgid ""
+"Sets whether the node notifies about its local transformation changes. "
+"[Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:199
+msgid ""
+"Sets whether the node notifies about its global and local transformation "
+"changes. [Spatial] will not propagate this by default, unless it is in the "
+"editor context and it has a valid gizmo."
+msgstr ""
+
+#: doc/classes/Spatial.xml:205
+msgid ""
+"Enables rendering of this node. Changes [member visible] to [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:212
+msgid ""
+"Transforms [code]local_point[/code] from this node's local space to world "
+"space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:219
+msgid ""
+"Transforms [code]global_point[/code] from world space to this node's local "
+"space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:226
+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/Spatial.xml:234
+msgid ""
+"Changes the node's position by the given offset [Vector3] in local space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:240
+msgid "Updates the [SpatialGizmo] of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:246
+msgid ""
+"The [SpatialGizmo] for this node. Used for example in [EditorSpatialGizmo] "
+"as custom visualization and editing handles in Editor."
+msgstr ""
+
+#: doc/classes/Spatial.xml:249
+msgid "World space (global) [Transform] of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:252
+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/Spatial.xml:256
+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/Spatial.xml:259
+msgid "Scale part of the local transformation."
+msgstr ""
+
+#: doc/classes/Spatial.xml:262
+msgid "Local space [Transform] of this node, with respect to the parent node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:265
+msgid "Local translation of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:268
+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/Spatial.xml:274
+msgid ""
+"Emitted by portal system gameplay monitor when a node enters the gameplay "
+"area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:279
+msgid ""
+"Emitted by portal system gameplay monitor when a node exits the gameplay "
+"area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:284
+msgid "Emitted when node visibility changes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:290
+msgid ""
+"Spatial 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]. The notification is "
+"also sent if the node is in the editor context and it has a valid gizmo."
+msgstr ""
+
+#: doc/classes/Spatial.xml:294
+msgid ""
+"Spatial nodes receives this notification when they are registered to new "
+"[World] resource."
+msgstr ""
+
+#: doc/classes/Spatial.xml:297
+msgid ""
+"Spatial nodes receives this notification when they are unregistered from "
+"current [World] resource."
+msgstr ""
+
+#: doc/classes/Spatial.xml:300
+msgid "Spatial nodes receives this notification when their visibility changes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:303
+msgid ""
+"Spatial nodes receives this notification if the portal system gameplay "
+"monitor detects they have entered the gameplay area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:306
+msgid ""
+"Spatial nodes receives this notification if the portal system gameplay "
+"monitor detects they have exited the gameplay area."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:4
+msgid "Default 3D rendering material."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.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/SpatialMaterial.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html"
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:17
+msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:24
+msgid ""
+"Returns [code]true[/code], if the specified flag is enabled. See [enum "
+"Flags] enumerator for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:31
+msgid ""
+"Returns the [Texture] associated with the specified [enum TextureParam]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:39
+msgid ""
+"If [code]true[/code], enables the specified [enum Feature]. Many features "
+"that are available in [SpatialMaterial]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/SpatialMaterial.xml:47
+msgid ""
+"If [code]true[/code], enables the specified flag. Flags are optional "
+"behaviour 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/SpatialMaterial.xml:55
+msgid ""
+"Sets the [Texture] to be used by the specified [enum TextureParam]. This "
+"function is called when setting members ending in [code]*_texture[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:61
+msgid "The material's base color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:64
+msgid ""
+"Texture to multiply by [member albedo_color]. Used for basic texturing of "
+"objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:67
+msgid "The strength of the anisotropy effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:70
+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/SpatialMaterial.xml:73
+msgid "Texture that offsets the tangent map for anisotropy calculations."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:76
+msgid ""
+"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion "
+"darkens areas based on the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:79
+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/SpatialMaterial.xml:82
+msgid ""
+"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
+"[member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:85
+msgid ""
+"Texture that defines the amount of ambient occlusion for a given point on "
+"the object."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:88 doc/classes/SpatialMaterial.xml:325
+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/SpatialMaterial.xml:91
+msgid ""
+"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
+"the same as disabling the clearcoat effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:94
+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.\n"
+"[b]Note:[/b] Clearcoat rendering is not visible if the material has [member "
+"flags_unshaded] set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:98
+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/SpatialMaterial.xml:101
+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/SpatialMaterial.xml:104
+msgid ""
+"If [code]true[/code], the shader will read depth texture at multiple points "
+"along the view ray to determine occlusion and parrallax. This can be very "
+"performance demanding, but results in more realistic looking depth mapping."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:107
+msgid ""
+"If [code]true[/code], depth mapping is enabled (also called \"parallax "
+"mapping\" or \"height mapping\"). See also [member normal_enabled].\n"
+"[b]Note:[/b] Depth mapping is not supported if triplanar mapping is used on "
+"the same material. The value of [member depth_enabled] will be ignored if "
+"[member uv1_triplanar] is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:111
+msgid ""
+"If [code]true[/code], direction of the binormal is flipped before using in "
+"the depth effect. This may be necessary if you have encoded your binormals "
+"in a way that is conflicting with the depth effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:114
+msgid ""
+"If [code]true[/code], direction of the tangent is flipped before using in "
+"the depth effect. This may be necessary if you have encoded your tangents in "
+"a way that is conflicting with the depth effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:117
+msgid ""
+"Number of layers to use when using [member depth_deep_parallax] and the view "
+"direction is perpendicular to the surface of the object. A higher number "
+"will be more performance demanding while a lower number may not look as "
+"crisp."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:120
+msgid ""
+"Number of layers to use when using [member depth_deep_parallax] and the view "
+"direction is parallel to the surface of the object. A higher number will be "
+"more performance demanding while a lower number may not look as crisp."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:123
+msgid ""
+"Scales the depth offset effect. A higher number will create a larger depth."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:126
+msgid ""
+"Texture used to determine depth at a given pixel. Depth is always stored in "
+"the red channel."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:129
+msgid "Texture that specifies the color of the detail overlay."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:132
+msgid ""
+"Specifies how the [member detail_albedo] should blend with the current "
+"[code]ALBEDO[/code]. See [enum BlendMode] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:135
+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/SpatialMaterial.xml:138
+msgid ""
+"Texture used to specify how the detail textures get blended with the base "
+"textures."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:141
+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/SpatialMaterial.xml:145
+msgid ""
+"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
+"layer. See [enum DetailUV] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:148
+msgid ""
+"Distance at which the object appears fully opaque.\n"
+"[b]Note:[/b] If [code]distance_fade_max_distance[/code] is less than "
+"[code]distance_fade_min_distance[/code], the behavior will be reversed. The "
+"object will start to fade away at [code]distance_fade_max_distance[/code] "
+"and will fully disappear once it reaches [code]distance_fade_min_distance[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:152
+msgid ""
+"Distance at which the object starts to become visible. If the object is less "
+"than this distance away, it will be invisible.\n"
+"[b]Note:[/b] If [code]distance_fade_min_distance[/code] is greater than "
+"[code]distance_fade_max_distance[/code], the behavior will be reversed. The "
+"object will start to fade away at [code]distance_fade_max_distance[/code] "
+"and will fully disappear once it reaches [code]distance_fade_min_distance[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:156
+msgid ""
+"Specifies which type of fade to use. Can be any of the [enum "
+"DistanceFadeMode]s."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:159
+msgid "The emitted light's color. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:162
+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] or [BakedLightmap] is used and this object is used in baked "
+"lighting."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:165
+msgid "The emitted light's strength. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:168
+msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:171
+msgid ""
+"Sets how [member emission] interacts with [member emission_texture]. Can "
+"either add or multiply. See [enum EmissionOperator] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:174
+msgid "Texture that specifies how much surface emits light at a given point."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:177
+msgid ""
+"Forces a conversion of the [member albedo_texture] from sRGB space to linear "
+"space."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:180
+msgid "If [code]true[/code], the object receives no ambient light."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:183
+msgid ""
+"If [code]true[/code], the object receives no shadow that would otherwise be "
+"cast onto it."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:186
+msgid ""
+"If [code]true[/code], the shader will compute extra operations to make sure "
+"the normal stays correct when using a non-uniform scale. Only enable if "
+"using non-uniform scaling."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:189
+msgid ""
+"If [code]true[/code], the object is rendered at the same size regardless of "
+"distance."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:192
+msgid ""
+"If [code]true[/code], depth testing is disabled and the object will be drawn "
+"in render order."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:195
+msgid ""
+"If [code]true[/code], transparency is enabled on the body. See also [member "
+"params_blend_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:198
+msgid "If [code]true[/code], the object is unaffected by lighting."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:201
+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 params_point_size]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:205
+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/SpatialMaterial.xml:208
+msgid ""
+"If [code]true[/code], lighting is calculated per vertex rather than per "
+"pixel. This may increase performance on low-end devices."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:211
+msgid ""
+"If [code]true[/code], triplanar mapping is calculated in world space rather "
+"than object local space. See also [member uv1_triplanar]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:214
+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/SpatialMaterial.xml:217
+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/SpatialMaterial.xml:221
+msgid ""
+"Texture used to specify metallic for an object. This is multiplied by "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:224
+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/SpatialMaterial.xml:227
+msgid "If [code]true[/code], normal mapping is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:230
+msgid "The strength of the normal map's effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:233
+msgid ""
+"Texture used to specify the normal at a given pixel. The "
+"[code]normal_texture[/code] only uses the red and green channels; the blue "
+"and alpha channels are ignored. The normal read from [code]normal_texture[/"
+"code] is oriented around the surface normal provided by the [Mesh].\n"
+"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
+"vertex data. Otherwise, the normal map won't render correctly and will only "
+"appear to darken the whole surface. If creating geometry with [SurfaceTool], "
+"you can use [method SurfaceTool.generate_normals] and [method SurfaceTool."
+"generate_tangents] to automatically generate normals and tangents "
+"respectively.\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/SpatialMaterial.xml:238
+msgid "Threshold at which the alpha scissor will discard values."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:241
+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 "
+"params_billboard_mode] is [constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:244
+msgid ""
+"Controls how the object faces the camera. See [enum BillboardMode].\n"
+"[b]Note:[/b] Billboard mode is not suitable for VR because the left-right "
+"vector of the camera is not horizontal when the screen is attached to your "
+"head instead of on the table. See [url=https://github.com/godotengine/godot/"
+"issues/41567]GitHub issue #41567[/url] for details."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:248
+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/SpatialMaterial.xml:252
+msgid ""
+"Which side of the object is not drawn when backfaces are rendered. See [enum "
+"CullMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:255
+msgid ""
+"Determines when depth rendering takes place. See [enum DepthDrawMode]. See "
+"also [member flags_transparent]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:258
+msgid ""
+"The algorithm used for diffuse light scattering. See [enum DiffuseMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:261
+msgid ""
+"If [code]true[/code], enables the vertex grow setting. See [member "
+"params_grow_amount]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:264
+msgid "Grows object vertices in the direction of their normals."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:267
+msgid "Currently unimplemented in Godot."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:270
+msgid "The point size in pixels. See [member flags_use_point_size]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:273
+msgid "The method for rendering the specular blob. See [enum SpecularMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:276
+msgid ""
+"If [code]true[/code], the shader will discard all pixels that have an alpha "
+"value less than [member params_alpha_scissor_threshold]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:279
+msgid ""
+"The number of horizontal frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member "
+"params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:282
+msgid ""
+"If [code]true[/code], particle animations are looped. Only enabled when "
+"using [constant BILLBOARD_PARTICLES]. See [member params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:285
+msgid ""
+"The number of vertical frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member "
+"params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:288
+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/SpatialMaterial.xml:291
+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/SpatialMaterial.xml:294
+msgid ""
+"If [code]true[/code], the refraction effect is enabled. Refraction distorts "
+"transparency based on light from behind the object. When using the GLES3 "
+"backend, the material's roughness value will affect the blurriness of the "
+"refraction. Higher roughness values will make the refraction look blurrier."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:297
+msgid ""
+"The strength of the refraction effect. Higher values result in a more "
+"distorted appearance for the refraction."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:300
+msgid ""
+"Texture that controls the strength of the refraction per-pixel. Multiplied "
+"by [member refraction_scale]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:303
+msgid ""
+"Specifies the channel of the [member refraction_texture] in which the "
+"refraction 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/SpatialMaterial.xml:306
+msgid "Sets the strength of the rim lighting effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:309
+msgid ""
+"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
+"brightness at glancing angles on an object.\n"
+"[b]Note:[/b] Rim lighting is not visible if the material has [member "
+"flags_unshaded] set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:313
+msgid ""
+"Texture used to set the strength of the rim lighting effect per-pixel. "
+"Multiplied by [member rim]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:316
+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/SpatialMaterial.xml:319
+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/SpatialMaterial.xml:322
+msgid ""
+"Texture used to control the roughness per-pixel. Multiplied by [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:328
+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/SpatialMaterial.xml:331
+msgid "The strength of the subsurface scattering effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:334
+msgid ""
+"Texture used to control the subsurface scattering strength. Stored in the "
+"red texture channel. Multiplied by [member subsurf_scatter_strength]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:337
+msgid ""
+"The color used by the transmission effect. Represents the light passing "
+"through an object."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:340
+msgid "If [code]true[/code], the transmission effect is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:343
+msgid ""
+"Texture used to control the transmission effect per-pixel. Added to [member "
+"transmission]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:346
+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/SpatialMaterial.xml:349
+msgid ""
+"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
+"[code]UV[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:352
+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/SpatialMaterial.xml:355 doc/classes/SpatialMaterial.xml:367
+msgid ""
+"A lower number blends the texture more softly while a higher number blends "
+"the texture more sharply."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:358
+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/SpatialMaterial.xml:361
+msgid ""
+"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
+"[code]UV2[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:364
+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/SpatialMaterial.xml:370
+msgid ""
+"If [code]true[/code], the model's vertex colors are processed as sRGB mode."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:373
+msgid "If [code]true[/code], the vertex color is used as albedo color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:378
+msgid "Texture specifying per-pixel color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:381
+msgid "Texture specifying per-pixel metallic value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:384
+msgid "Texture specifying per-pixel roughness value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:387
+msgid "Texture specifying per-pixel emission color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:390
+msgid "Texture specifying per-pixel normal vector."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:393
+msgid "Texture specifying per-pixel rim value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:396
+msgid "Texture specifying per-pixel clearcoat value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:399
+msgid ""
+"Texture specifying per-pixel flowmap direction for use with [member "
+"anisotropy]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:402
+msgid "Texture specifying per-pixel ambient occlusion value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:405
+msgid "Texture specifying per-pixel depth."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:408
+msgid "Texture specifying per-pixel subsurface scattering."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:411
+msgid "Texture specifying per-pixel transmission color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:414
+msgid "Texture specifying per-pixel refraction strength."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:417
+msgid "Texture specifying per-pixel detail mask blending value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:420
+msgid "Texture specifying per-pixel detail color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:423
+msgid "Texture specifying per-pixel detail normal."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:426
+msgid "Represents the size of the [enum TextureParam] enum."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:429
+msgid "Use [code]UV[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:432
+msgid "Use [code]UV2[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:435
+msgid "Constant for setting [member flags_transparent]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:438
+msgid "Constant for setting [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:441
+msgid "Constant for setting [member normal_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:444
+msgid "Constant for setting [member rim_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:447
+msgid "Constant for setting [member clearcoat_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:450
+msgid "Constant for setting [member anisotropy_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:453
+msgid "Constant for setting [member ao_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:456
+msgid "Constant for setting [member depth_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:459
+msgid "Constant for setting [member subsurf_scatter_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:462
+msgid "Constant for setting [member transmission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:465
+msgid "Constant for setting [member refraction_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:468
+msgid "Constant for setting [member detail_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:474
+msgid ""
+"Default blend mode. The color of the object is blended over the background "
+"based on the object's alpha value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:477
+msgid "The color of the object is added to the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:480
+msgid "The color of the object is subtracted from the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:483
+msgid "The color of the object is multiplied by the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:486
+msgid "Default depth draw mode. Depth is drawn only for opaque objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:489
+msgid "Depth draw is calculated for both opaque and transparent objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:492
+msgid "No depth draw."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:495
+msgid ""
+"For transparent objects, an opaque pass is made first with the opaque parts, "
+"then transparency is drawn."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:498
+msgid "Default cull mode. The back of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:501
+msgid "The front of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:504
+msgid "No culling is performed."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:507
+msgid ""
+"No lighting is used on the object. Color comes directly from [code]ALBEDO[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:510
+msgid ""
+"Lighting is calculated per-vertex rather than per-pixel. This can be used to "
+"increase the speed of the shader at the cost of quality."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:513
+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/SpatialMaterial.xml:516
+msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:519
+msgid ""
+"Vertex color is in sRGB space and needs to be converted to linear. Only "
+"applies in the GLES3 renderer."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:522
+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/SpatialMaterial.xml:525
+msgid ""
+"Object is scaled by depth so that it always appears the same size on screen."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:528
+msgid ""
+"Shader will keep the scale set for the mesh. Otherwise the scale is lost "
+"when billboarding. Only applies when [member params_billboard_mode] is "
+"[constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:531
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:534
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV2[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:537
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:540
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member "
+"emission_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:543
+msgid "Use alpha scissor. Set by [member params_use_alpha_scissor]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:546
+msgid ""
+"Use world coordinates in the triplanar texture lookup instead of local "
+"coordinates."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:549
+msgid "Forces the shader to convert albedo from sRGB space to linear space."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:552
+msgid "Disables receiving shadows from other objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:555
+msgid "Disables receiving ambient light."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:558
+msgid "Ensures that normals appear correct, even with non-uniform scaling."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:561
+msgid "Enables the shadow to opacity feature."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:567
+msgid "Default diffuse scattering algorithm."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:570
+msgid "Diffuse scattering ignores roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:573
+msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:576
+msgid "Attempts to use roughness to emulate microsurfacing."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:579
+msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:582
+msgid "Default specular blob."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:585 doc/classes/SpatialMaterial.xml:588
+msgid "Older specular algorithm, included for compatibility."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:591
+msgid "Toon blob which changes size based on roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:594
+msgid "No specular blob."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:597
+msgid "Billboard mode is disabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:600
+msgid "The object's Z axis will always face the camera."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:603
+msgid "The object's X axis will always face the camera."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:606
+msgid ""
+"Used for particle systems when assigned to [Particles] and [CPUParticles] "
+"nodes. Enables [code]particles_anim_*[/code] properties.\n"
+"The [member ParticlesMaterial.anim_speed] or [member CPUParticles."
+"anim_speed] should also be set to a positive value for the animation to play."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:610
+msgid "Used to read from the red channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:613
+msgid "Used to read from the green channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:616
+msgid "Used to read from the blue channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:619
+msgid "Used to read from the alpha channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:625
+msgid "Adds the emission color to the color from the emission texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:628
+msgid "Multiplies the emission color by the color from the emission texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:631
+msgid "Do not use distance fade."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:634
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using the alpha channel."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:637
+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/SpatialMaterial.xml:640
+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/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/SphereShape.xml:4
+msgid "Sphere shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/SphereShape.xml:7
+msgid ""
+"Sphere shape for 3D collisions, which can be set into a [PhysicsBody] or "
+"[Area]. This shape is useful for modeling sphere-like 3D objects."
+msgstr ""
+
+#: doc/classes/SphereShape.xml:16
+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].\n"
+"[b]Note:[/b] [SpinBox] relies on an underlying [LineEdit] node. To theme a "
+"[SpinBox]'s background, add theme items for [LineEdit] and customize them."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:26
+msgid "Applies the current value of this [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:32
+msgid ""
+"Returns the [LineEdit] instance from this [SpinBox]. You can use it to "
+"access properties and methods of [LineEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+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 [Texture] 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:15
+msgid ""
+"Clamps the [member split_offset] value to not go outside the currently "
+"possible minimal and maximum values."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:21
+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:24
+msgid ""
+"Determines the dragger's visibility. See [enum DraggerVisibility] for "
+"details."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:27
+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:34
+msgid "Emitted when the dragger is dragged by user."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:40
+msgid "The split dragger is visible when the cursor hovers it."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:43
+msgid "The split dragger is never visible."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:46
+msgid "The split dragger is never visible and its space collapsed."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:4
+msgid "A spotlight, such as a reflector spotlight or a lantern."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:7
+msgid ""
+"A Spotlight is a type of [Light] 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 [Light].\n"
+"[b]Note:[/b] By default, only 32 SpotLights may affect a single mesh "
+"[i]resource[/i] at once. Consider splitting your level into several meshes "
+"to decrease the likelihood that more than 32 lights will affect the same "
+"mesh resource. Splitting the level mesh will also improve frustum culling "
+"effectiveness, leading to greater performance. If you need to use more "
+"lights per mesh, you can increase [member ProjectSettings.rendering/limits/"
+"rendering/max_lights_per_object] at the cost of shader compilation times."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:18
+msgid "The spotlight's angle in degrees."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:21
+msgid "The spotlight's angular attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:24
+msgid "The spotlight's light energy attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight.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/SpringArm.xml:4
+msgid "A helper node, mostly used in 3rd person cameras."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:7
+msgid ""
+"The SpringArm 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 SpringArm 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 SpringArm as a camera controller for your player, you might "
+"need to exclude the player's collider from the SpringArm's collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:19
+msgid ""
+"Adds the [PhysicsBody] object with the given [RID] to the list of "
+"[PhysicsBody] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:25
+msgid ""
+"Clears the list of [PhysicsBody] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:31
+msgid "Returns the spring arm's current length."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:38
+msgid ""
+"Removes the given [RID] from the list of [PhysicsBody] objects excluded from "
+"the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:44
+msgid ""
+"The layers against which the collision check shall be done. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:47
+msgid ""
+"When the collision check is made, a candidate length for the SpringArm is "
+"given.\n"
+"The margin is then subtracted to this length and the translation is applied "
+"to the child objects of the SpringArm.\n"
+"This margin is useful for when the SpringArm has a [Camera] as a child node: "
+"without the margin, the [Camera] would be placed on the exact point of "
+"collision, while with the margin the [Camera] would be placed close to the "
+"point of collision."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:52
+msgid ""
+"The [Shape] to use for the SpringArm.\n"
+"When the shape is set, the SpringArm will cast the [Shape] on its z axis "
+"instead of performing a ray cast."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:56
+msgid ""
+"The maximum extent of the SpringArm. This is used as a length for both the "
+"ray and the shape cast used internally to calculate the desired position of "
+"the SpringArm's child nodes.\n"
+"To know more about how to perform a shape cast or a ray cast, please consult "
+"the [PhysicsDirectSpaceState] documentation."
+msgstr ""
+
+#: doc/classes/Sprite.xml:4
+msgid "General-purpose sprite node."
+msgstr ""
+
+#: doc/classes/Sprite.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/Sprite.xml:16
+msgid ""
+"Returns a [Rect2] representing the Sprite's boundary in local coordinates. "
+"Can be used to detect if the Sprite 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/Sprite.xml:29
+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/Sprite.xml:36
+msgid "If [code]true[/code], texture is centered."
+msgstr ""
+
+#: doc/classes/Sprite.xml:45 doc/classes/Sprite3D.xml:15
+msgid ""
+"Current frame to display from sprite sheet. [member hframes] or [member "
+"vframes] must be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite.xml:48 doc/classes/Sprite3D.xml:18
+msgid ""
+"Coordinates of the frame to display from sprite sheet. This is as an alias "
+"for the [member frame] property. [member hframes] or [member vframes] must "
+"be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite.xml:51 doc/classes/Sprite3D.xml:21
+msgid "The number of columns in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite.xml:54
+msgid ""
+"The normal map gives depth to the Sprite.\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/Sprite.xml:61
+msgid ""
+"If [code]true[/code], texture is cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite.xml:64
+msgid "If [code]true[/code], the outermost pixels get blurred out."
+msgstr ""
+
+#: doc/classes/Sprite.xml:67 doc/classes/Sprite3D.xml:27
+msgid ""
+"The region of the atlas texture to display. [member region_enabled] must be "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Sprite.xml:70
+msgid "[Texture] object to draw."
+msgstr ""
+
+#: doc/classes/Sprite.xml:73 doc/classes/Sprite3D.xml:33
+msgid "The number of rows in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite.xml:79 doc/classes/Sprite3D.xml:39
+msgid "Emitted when the [member frame] changes."
+msgstr ""
+
+#: doc/classes/Sprite.xml:84
+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."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:24
+msgid ""
+"If [code]true[/code], texture will be cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:30
+msgid ""
+"[Texture] object to draw. If [member GeometryInstance.material_override] is "
+"used, this will be overridden."
+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:27
+msgid "Returns the rectangle representing this sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:35
+msgid "If [code]true[/code], the specified flag will be enabled."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:43
+msgid "The direction in which the front of the texture faces."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:51
+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:60
+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:66
+msgid ""
+"The objects' visibility on a scale from [code]0[/code] fully invisible to "
+"[code]1[/code] fully visible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:69
+msgid "The size of one pixel's width on the sprite to scale it in 3D."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:72
+msgid ""
+"If [code]true[/code], the [Light] in the [Environment] has effects on the "
+"sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:75
+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:80
+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:83
+msgid "If set, lights in the environment affect the sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:86
+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:89
+msgid "Represents the size of the [enum DrawFlags] enum."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:4
+msgid "Sprite frame library for AnimatedSprite."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:7
+msgid ""
+"Sprite frame library for [AnimatedSprite]. Contains frames and animation "
+"data for playback.\n"
+"[b]Note:[/b] You can associate a set of normal maps by creating additional "
+"[SpriteFrames] resources with a [code]_normal[/code] suffix. For example, "
+"having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/"
+"code] will make it so the [code]run[/code] animation uses the normal map."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:17
+msgid "Adds a new animation to the library."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:26
+msgid "Adds a frame to the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:33
+msgid "Removes all frames from the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:39
+msgid "Removes all animations. A \"default\" animation will be created."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:46
+msgid ""
+"Returns [code]true[/code] if the given animation is configured to loop when "
+"it finishes playing. Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:52
+msgid ""
+"Returns an array containing the names associated to each animation. Values "
+"are placed in alphabetical order."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:59 doc/classes/SpriteFrames.xml:120
+msgid "The animation's speed in frames per second."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:67
+msgid "Returns the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:74
+msgid "Returns the number of frames in the animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:81
+msgid "If [code]true[/code], the named animation exists."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:88
+msgid "Removes the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:96
+msgid "Removes the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:104
+msgid "Changes the animation's name to [code]newname[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:112
+msgid "If [code]true[/code], the animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:129
+msgid "Sets the texture of the given frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:135
+msgid "Compatibility property, always equals to an empty array."
+msgstr ""
+
+#: doc/classes/StaticBody.xml:4
+msgid "Static body for 3D physics."
+msgstr ""
+
+#: doc/classes/StaticBody.xml:7
+msgid ""
+"Static body for 3D physics. A static body is a simple body that is not "
+"intended to move. In contrast to [RigidBody], 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/StaticBody.xml:23
+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/StaticBody.xml:26
+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/StaticBody.xml:29
+msgid ""
+"The body's friction, from 0 (frictionless) to 1 (full friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+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:20
+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:23
+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/StaticBody2D.xml:26
+msgid ""
+"The body's friction. Values range from [code]0[/code] (no friction) to "
+"[code]1[/code] (full friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+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). It provides an API for sending and receiving data through streams "
+"as raw data or strings."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:15
+msgid "Gets a signed 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:21
+msgid "Gets a signed 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:27
+msgid "Gets a signed 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:33
+msgid "Gets a signed byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:39
+msgid "Returns the amount of bytes this [StreamPeer] has available."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:46
+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:52
+msgid "Gets a double-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:58
+msgid "Gets a single-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:65
+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:72
+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:78
+msgid "Gets an unsigned 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:84
+msgid "Gets an unsigned 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:90
+msgid "Gets an unsigned 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:96
+msgid "Gets an unsigned byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:103
+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:110
+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:118
+msgid "Puts a signed 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:125
+msgid "Puts a signed 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:132
+msgid "Puts a signed 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:139
+msgid "Puts a signed byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:146
+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:153
+msgid "Puts a double-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:160
+msgid "Puts a single-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:167
+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:174
+msgid ""
+"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
+"unsigned integer representing its size.\n"
+"[b]Note:[/b] 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:185
+msgid "Puts an unsigned 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:192
+msgid "Puts an unsigned 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:199
+msgid "Puts an unsigned 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:206
+msgid "Puts an unsigned byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:213
+msgid ""
+"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
+"unsigned integer representing its size.\n"
+"[b]Note:[/b] 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:225
+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:231
+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:20
+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:30
+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:37 doc/classes/StreamPeerTCP.xml:23
+msgid "Disconnects from host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:49
+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:59
+msgid "A status representing a [StreamPeerSSL] that is disconnected."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:62
+msgid "A status representing a [StreamPeerSSL] during handshaking."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:65
+msgid "A status representing a [StreamPeerSSL] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:68
+msgid "A status representing a [StreamPeerSSL] in error state."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:71
+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:17
+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:29
+msgid "Returns the IP of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:35
+msgid "Returns the port of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:41
+msgid "Returns the status of the connection, see [enum Status]."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:47
+msgid ""
+"Returns [code]true[/code] if this peer is currently connected or is "
+"connecting to a host, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:54
+msgid ""
+"If [code]enabled[/code] is [code]true[/code], packets will be sent "
+"immediately. If [code]enabled[/code] is [code]false[/code] (the default), "
+"packet transfers will be delayed and combined using [url=https://en."
+"wikipedia.org/wiki/Nagle%27s_algorithm]Nagle's algorithm[/url].\n"
+"[b]Note:[/b] It's recommended to leave this disabled for applications that "
+"send large packets or need to transfer a lot of data, as enabling this can "
+"decrease the total available bandwidth."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:61
+msgid ""
+"The initial status of the [StreamPeerTCP]. This is also the status after "
+"disconnecting."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:64
+msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:67
+msgid "A status representing a [StreamPeerTCP] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:70
+msgid "A status representing a [StreamPeerTCP] in error state."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:4
+msgid "A [code].stex[/code] texture."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:7
+msgid "A texture that is loaded from a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:16
+msgid "Loads the texture from the given path."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:23
+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/3.4/getting_started/scripting/gdscript/"
+"gdscript_format_string.html"
+msgstr ""
+
+#: doc/classes/String.xml:17
+msgid "Constructs a new String from the given [bool]."
+msgstr ""
+
+#: doc/classes/String.xml:24
+msgid "Constructs a new String from the given [int]."
+msgstr ""
+
+#: doc/classes/String.xml:31
+msgid "Constructs a new String from the given [float]."
+msgstr ""
+
+#: doc/classes/String.xml:38
+msgid "Constructs a new String from the given [Vector2]."
+msgstr ""
+
+#: doc/classes/String.xml:45
+msgid "Constructs a new String from the given [Rect2]."
+msgstr ""
+
+#: doc/classes/String.xml:52
+msgid "Constructs a new String from the given [Vector3]."
+msgstr ""
+
+#: doc/classes/String.xml:59
+msgid "Constructs a new String from the given [Transform2D]."
+msgstr ""
+
+#: doc/classes/String.xml:66
+msgid "Constructs a new String from the given [Plane]."
+msgstr ""
+
+#: doc/classes/String.xml:73
+msgid "Constructs a new String from the given [Quat]."
+msgstr ""
+
+#: doc/classes/String.xml:80
+msgid "Constructs a new String from the given [AABB]."
+msgstr ""
+
+#: doc/classes/String.xml:87
+msgid "Constructs a new String from the given [Basis]."
+msgstr ""
+
+#: doc/classes/String.xml:94
+msgid "Constructs a new String from the given [Transform]."
+msgstr ""
+
+#: doc/classes/String.xml:101
+msgid "Constructs a new String from the given [Color]."
+msgstr ""
+
+#: doc/classes/String.xml:108
+msgid "Constructs a new String from the given [NodePath]."
+msgstr ""
+
+#: doc/classes/String.xml:115
+msgid "Constructs a new String from the given [RID]."
+msgstr ""
+
+#: doc/classes/String.xml:122
+msgid "Constructs a new String from the given [Dictionary]."
+msgstr ""
+
+#: doc/classes/String.xml:129
+msgid "Constructs a new String from the given [Array]."
+msgstr ""
+
+#: doc/classes/String.xml:136
+msgid "Constructs a new String from the given [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/String.xml:143
+msgid "Constructs a new String from the given [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/String.xml:150
+msgid "Constructs a new String from the given [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/String.xml:157
+msgid "Constructs a new String from the given [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/String.xml:164
+msgid "Constructs a new String from the given [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/String.xml:171
+msgid "Constructs a new String from the given [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/String.xml:178
+msgid "Constructs a new String from the given [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/String.xml:185
+msgid "Returns [code]true[/code] if the string begins with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:191
+msgid "Returns the bigrams (pairs of consecutive letters) of this string."
+msgstr ""
+
+#: doc/classes/String.xml:197
+msgid ""
+"Returns a copy of the string with special characters escaped using the C "
+"language standard."
+msgstr ""
+
+#: doc/classes/String.xml:203
+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:210
+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:217
+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. \"less than\" or \"greater than\" are determined by the [url=https://"
+"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] "
+"of each string, which roughly matches the alphabetical order.\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method nocasecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:229
+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:238
+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:244
+msgid ""
+"Returns a copy of the string with indentation (leading tabs and spaces) "
+"removed."
+msgstr ""
+
+#: doc/classes/String.xml:250
+msgid ""
+"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:257
+msgid "Returns [code]true[/code] if the string ends with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:264
+msgid ""
+"Erases [code]chars[/code] characters from the string starting from "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:272
+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"
+"[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:285
+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:293
+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:301
+msgid ""
+"Formats the string by replacing all occurrences of [code]placeholder[/code] "
+"with [code]values[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:307
+msgid "If the string is a valid file path, returns the base directory name."
+msgstr ""
+
+#: doc/classes/String.xml:313
+msgid ""
+"If the string is a valid file path, returns the full file path without the "
+"extension."
+msgstr ""
+
+#: doc/classes/String.xml:319
+msgid ""
+"Returns the extension without the leading period character ([code].[/code]) "
+"if the string is a valid file name or path. If the string does not contain "
+"an extension, returns an empty string instead.\n"
+"[codeblock]\n"
+"print(\"/path/to/file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.sample.txt\".get_extension()) # \"txt\"\n"
+"print(\".txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt.\".get_extension()) # \"\" (empty string)\n"
+"print(\"file.txt..\".get_extension()) # \"\" (empty string)\n"
+"print(\"txt\".get_extension()) # \"\" (empty string)\n"
+"print(\"\".get_extension()) # \"\" (empty string)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:335
+msgid "If the string is a valid file path, returns the filename."
+msgstr ""
+
+#: doc/classes/String.xml:341
+msgid "Hashes the string and returns a 32-bit integer."
+msgstr ""
+
+#: doc/classes/String.xml:347
+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:356
+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:365
+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:375
+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:388
+msgid ""
+"Returns a copy of the string with the substring [code]what[/code] inserted "
+"at the given position."
+msgstr ""
+
+#: doc/classes/String.xml:394
+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:400
+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:407
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:414
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string, without considering case."
+msgstr ""
+
+#: doc/classes/String.xml:420
+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:427
+msgid "Returns [code]true[/code] if this string contains a valid float."
+msgstr ""
+
+#: doc/classes/String.xml:434
+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:440
+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:446
+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:452
+msgid "Returns [code]true[/code] if this string contains a valid integer."
+msgstr ""
+
+#: doc/classes/String.xml:458
+msgid ""
+"Returns [code]true[/code] if this string contains only a well-formatted IPv4 "
+"or IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/"
+"Reserved_IP_addresses]reserved IP addresses[/url] such as [code]0.0.0.0[/"
+"code] as valid."
+msgstr ""
+
+#: doc/classes/String.xml:464
+msgid ""
+"Returns a copy of the string with special characters escaped using the JSON "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:471
+msgid "Returns a number of characters from the left of the string."
+msgstr ""
+
+#: doc/classes/String.xml:477
+msgid "Returns the string's amount of characters."
+msgstr ""
+
+#: doc/classes/String.xml:484
+msgid ""
+"Returns a copy of the string with characters removed from the left. The "
+"[code]chars[/code] argument is a string specifying the set of characters to "
+"be removed.\n"
+"[b]Note:[/b] The [code]chars[/code] is not a prefix. See [method "
+"trim_prefix] method that will remove a single prefix string rather than a "
+"set of characters."
+msgstr ""
+
+#: doc/classes/String.xml:492
+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:499
+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:505
+msgid "Returns the MD5 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:511
+msgid "Returns the MD5 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:518
+msgid ""
+"Performs a case-insensitive [i]natural order[/i] comparison to another "
+"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater "
+"than, or [code]0[/code] if equal. \"less than\" or \"greater than\" are "
+"determined by the [url=https://en.wikipedia.org/wiki/"
+"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
+"roughly matches the alphabetical order. Internally, lowercase characters "
+"will be converted to uppercase during the comparison.\n"
+"When used for sorting, natural order comparison will order suites of numbers "
+"as expected by most people. If you sort the numbers from 1 to 10 using "
+"natural order, you will get [code][1, 2, 3, ...][/code] instead of [code][1, "
+"10, 2, 3, ...][/code].\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method nocasecmp_to] and [method casecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:529
+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. \"less than\" or \"greater than\" are determined by the [url=https://"
+"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] "
+"of each string, which roughly matches the alphabetical order. Internally, "
+"lowercase characters will be converted to uppercase during the comparison.\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method casecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:539
+msgid "Returns the character code at position [code]at[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:546
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] after the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:553
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] before the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:559
+msgid "Decode a percent-encoded string. See [method percent_encode]."
+msgstr ""
+
+#: doc/classes/String.xml:565
+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:572
+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:579
+msgid ""
+"Returns original string repeated a number of times. The number of "
+"repetitions is given by the argument."
+msgstr ""
+
+#: doc/classes/String.xml:587
+msgid ""
+"Replaces occurrences of a case-sensitive substring with the given one inside "
+"the string."
+msgstr ""
+
+#: doc/classes/String.xml:595
+msgid ""
+"Replaces occurrences of a case-insensitive substring with the given one "
+"inside the string."
+msgstr ""
+
+#: doc/classes/String.xml:603
+msgid ""
+"Performs a case-sensitive search for a substring, but starts from the end of "
+"the string instead of the beginning."
+msgstr ""
+
+#: doc/classes/String.xml:611
+msgid ""
+"Performs a case-insensitive search for a substring, but starts from the end "
+"of the string instead of the beginning."
+msgstr ""
+
+#: doc/classes/String.xml:618
+msgid "Returns the right side of the string from a given position."
+msgstr ""
+
+#: doc/classes/String.xml:627
+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:644
+msgid ""
+"Returns a copy of the string with characters removed from the right. The "
+"[code]chars[/code] argument is a string specifying the set of characters to "
+"be removed.\n"
+"[b]Note:[/b] The [code]chars[/code] is not a suffix. See [method "
+"trim_suffix] method that will remove a single suffix string rather than a "
+"set of characters."
+msgstr ""
+
+#: doc/classes/String.xml:651
+msgid "Returns the SHA-1 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:657
+msgid "Returns the SHA-1 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:663
+msgid "Returns the SHA-256 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:669
+msgid "Returns the SHA-256 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:676
+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:682
+msgid "Returns a simplified canonical path."
+msgstr ""
+
+#: doc/classes/String.xml:691
+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:709
+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:718
+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:724
+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:732
+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:738
+msgid ""
+"Converts the String (which is a character array) to [PoolByteArray] (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:744
+msgid ""
+"Converts a string containing a decimal number into a [code]float[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:750
+msgid ""
+"Converts a string containing an integer number into an [code]int[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:756
+msgid "Returns the string converted to lowercase."
+msgstr ""
+
+#: doc/classes/String.xml:762
+msgid "Returns the string converted to uppercase."
+msgstr ""
+
+#: doc/classes/String.xml:768
+msgid ""
+"Converts the String (which is an array of characters) to [PoolByteArray] "
+"(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:774
+msgid ""
+"Converts the String (which is an array of characters) to [PoolByteArray] "
+"(which is an array of bytes)."
+msgstr ""
+
+#: doc/classes/String.xml:781
+msgid ""
+"Removes a given string from the start if it starts with it or leaves the "
+"string unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:788
+msgid ""
+"Removes a given string from the end if it ends with it or leaves the string "
+"unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:794
+msgid ""
+"Removes any characters from the string that are prohibited in [Node] names "
+"([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]\"[/"
+"code])."
+msgstr ""
+
+#: doc/classes/String.xml:800
+msgid ""
+"Returns a copy of the string with special characters escaped using the XML "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:806
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings according to the XML standard."
+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.\n"
+"[b]Note:[/b] For children of [Control] that have [i]Theme Properties[/i], "
+"the [code]focus[/code] [StyleBox] is displayed over the [code]normal[/code], "
+"[code]hover[/code] or [code]pressed[/code] [StyleBox]. This makes the "
+"[code]focus[/code] [StyleBox] more reusable across different nodes."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:18
+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:25
+msgid "Returns the size of this [StyleBox] without the margins."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:31
+msgid ""
+"Returns the [CanvasItem] that handles its [constant CanvasItem."
+"NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this moment."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:38
+msgid "Returns the default value of the specified [enum Margin]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:45
+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:52
+msgid "Returns the minimum size that this stylebox can be shrunk to."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:58
+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:66
+msgid ""
+"Sets the default value of the specified [enum Margin] to given [code]offset[/"
+"code] in pixels."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:74
+msgid "Test a position in a rectangle, return whether it passes the mask test."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:80
+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:86
+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:90
+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:94
+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. The following 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 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:31
+msgid ""
+"Returns the given [code]margin[/code]'s border width. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:37
+msgid "Returns the smallest border width out of all four borders."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:44
+msgid ""
+"Returns the given [code]corner[/code]'s radius. See [enum Corner] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:51 doc/classes/StyleBoxTexture.xml:16
+msgid ""
+"Returns the size of the given [code]margin[/code]'s expand margin. See [enum "
+"Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:59
+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:66
+msgid "Sets the border width to [code]width[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:74
+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:81
+msgid "Sets the corner radius to [code]radius[/code] pixels for all corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:91
+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:99 doc/classes/StyleBoxTexture.xml:48
+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:106 doc/classes/StyleBoxTexture.xml:30
+msgid "Sets the expand margin to [code]size[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:116 doc/classes/StyleBoxTexture.xml:40
+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:122
+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.\n"
+"[b]Note:[/b] When using beveled corners with 45-degree angles ([member "
+"corner_detail] = 1), it is recommended to set [member anti_aliasing] to "
+"[code]false[/code] to ensure crisp visuals and avoid possible visual "
+"glitches."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:126
+msgid ""
+"This changes the size of the faded ring. Higher values can be used to "
+"achieve a \"blurry\" effect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:129
+msgid "The background color of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:132
+msgid "If [code]true[/code], the border will fade into the background color."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:135
+msgid "Sets the color of the border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:138
+msgid "Border width for the bottom border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:141
+msgid "Border width for the left border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:144
+msgid "Border width for the right border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:147
+msgid "Border width for the top border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:150
+msgid ""
+"This sets the number 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 less than 10, [code]4[/code] or [code]5[/code] should be "
+"enough. For corner radii less 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:155
+msgid ""
+"The bottom-left corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:158
+msgid ""
+"The bottom-right corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:161
+msgid ""
+"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:164
+msgid ""
+"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:167
+msgid "Toggles drawing of the inner part of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:170
+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:173
+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:176
+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:179
+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:182
+msgid ""
+"The color of the shadow. This has no effect if [member shadow_size] is lower "
+"than 1."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:185
+msgid ""
+"The shadow offset in pixels. Adjusts the position of the shadow relatively "
+"to the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:188
+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:23
+msgid ""
+"Returns the size of the given [code]margin[/code]. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:56
+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:62
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled horizontally. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:65
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled vertically. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:68
+msgid ""
+"If [code]true[/code], the nine-patch texture's center tile will be drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:71
+msgid ""
+"Expands the bottom margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:74
+msgid ""
+"Expands the left margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:77
+msgid ""
+"Expands the right margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:80
+msgid ""
+"Expands the top margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:83
+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:88
+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:93
+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:98
+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:103
+msgid "Modulates the color of the texture when this style box is drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:106
+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:110
+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:114
+msgid "The texture to use when drawing this style box."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:120
+msgid "Emitted when the stylebox's texture is changed."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:126
+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:129
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:132
+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/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], [ImmediateGeometry] 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:29
+msgid ""
+"Specifies an array of bones to use for the [i]next[/i] vertex. [code]bones[/"
+"code] must contain 4 integers."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:36
+msgid ""
+"Specifies a [Color] to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all.\n"
+"[b]Note:[/b] The material must have [member SpatialMaterial."
+"vertex_color_use_as_albedo] enabled for the vertex color to be visible."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:44
+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:51
+msgid ""
+"Specifies a normal to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:58
+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:65
+msgid ""
+"Specifies a tangent to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:77
+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:85
+msgid ""
+"Specifies a set of UV coordinates to use for the [i]next[/i] vertex. If "
+"every vertex needs to have this information set and you fail to submit it "
+"for the first vertex, this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:92
+msgid ""
+"Specifies an optional second set of UV coordinates to use for the [i]next[/"
+"i] vertex. If every vertex needs to have this information set and you fail "
+"to submit it for the first vertex, this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:99
+msgid ""
+"Specifies the position of current vertex. Should be called after specifying "
+"other vertex properties (e.g. Color, UV)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:106
+msgid ""
+"Specifies weight values to use for the [i]next[/i] vertex. [code]weights[/"
+"code] must contain 4 values. If every vertex needs to have this information "
+"set and you fail to submit it for the first vertex, this information may not "
+"be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:115
+msgid ""
+"Append vertices from a given [Mesh] surface onto the current vertex array "
+"with specified [Transform]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:122
+msgid ""
+"Called before adding any vertices. Takes the primitive type as an argument "
+"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:128
+msgid "Clear all information passed into the surface tool so far."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:136
+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] if compression is "
+"enabled. If compression is disabled the default flag is [constant Mesh."
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION]. See [code]ARRAY_COMPRESS_*[/code] "
+"constants in [enum Mesh.ArrayFormat] for other flags."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:143
+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:151
+msgid "Creates a vertex array from an existing [Mesh]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:160
+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:166
+msgid "Removes the index array by expanding the vertex array."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:173
+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. [method generate_normals] should be called [i]after[/i] generating "
+"geometry and [i]before[/i] committing the mesh using [method commit] or "
+"[method commit_to_arrays]. For correct display of normal-mapped surfaces, "
+"you will also have to generate tangents using [method generate_tangents].\n"
+"[b]Note:[/b] [method generate_normals] only works if the primitive type to "
+"be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:180
+msgid ""
+"Generates a tangent vector for each vertex. Requires that each vertex have "
+"UVs and normals set already (see [method generate_normals])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:186
+msgid ""
+"Shrinks the vertex array by creating an index array. This can improve "
+"performance by avoiding vertex reuse."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:193
+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."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:16
+msgid "Returns the child [Control] node located at the active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:22
+msgid ""
+"Returns the [Popup] node instance if one has been set already with [method "
+"set_popup].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:29 doc/classes/Tabs.xml:36
+msgid "Returns the previously active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:36
+msgid "Returns the [Control] node from the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:42 doc/classes/Tabs.xml:48
+msgid "Returns the number of tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:49 doc/classes/Tabs.xml:55
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:56
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:63 doc/classes/Tabs.xml:62
+msgid ""
+"Returns the [Texture] for the tab at index [code]tab_idx[/code] or "
+"[code]null[/code] if the tab has no [Texture]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:70
+msgid ""
+"Returns the index of the tab at local coordinates [code]point[/code]. "
+"Returns [code]-1[/code] if the point is outside the control boundaries or if "
+"there's no tab at the queried position."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:77
+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:90
+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:98 doc/classes/Tabs.xml:118
+msgid ""
+"If [code]disabled[/code] is [code]true[/code], disables the tab at index "
+"[code]tab_idx[/code], making it non-interactable."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:106
+msgid ""
+"If [code]hidden[/code] is [code]true[/code], hides the tab at index "
+"[code]tab_idx[/code], making it disappear from the tab area."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:114
+msgid "Sets an icon for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:122
+msgid ""
+"Sets a title for the tab at index [code]tab_idx[/code]. Tab titles default "
+"to the name of the indexed child node."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:129
+msgid ""
+"Defines rearrange group id, choose for each [TabContainer] the same value to "
+"enable tab drag between [TabContainer]. Enable drag with [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:135
+msgid ""
+"If [code]true[/code], all tabs are drawn in front of the panel. If "
+"[code]false[/code], inactive tabs are drawn behind the panel."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:138
+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:141 doc/classes/Tabs.xml:150
+msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:144
+msgid ""
+"The alignment of all tabs in the tab container. See the [enum TabAlign] "
+"constants for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:147
+msgid ""
+"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
+"and titles are hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:150
+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:156
+msgid ""
+"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
+"set_popup] for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:162 doc/classes/Tabs.xml:178
+msgid "Emitted when switching to another tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:168
+msgid "Emitted when a tab is selected, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:174 doc/classes/Tabs.xml:202
+msgid "Align the tabs to the left."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:177 doc/classes/Tabs.xml:205
+msgid "Align the tabs to the center."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:180 doc/classes/Tabs.xml:208
+msgid "Align the tabs to the right."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:185 doc/classes/Tabs.xml:237
+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:188 doc/classes/Tabs.xml:240
+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:191 doc/classes/Tabs.xml:243
+msgid "The font used to draw tab names."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:194 doc/classes/Tabs.xml:246
+msgid "Font color of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:197 doc/classes/Tabs.xml:249
+msgid "Font color of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:200 doc/classes/Tabs.xml:252
+msgid "Font color of the currently selected tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:203
+msgid "Horizontal separation between tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:206 doc/classes/Tabs.xml:258
+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:209 doc/classes/Tabs.xml:261
+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:216
+msgid "The icon for the menu button (see [method set_popup])."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:219
+msgid ""
+"The icon for the menu button (see [method set_popup]) when it's being "
+"hovered with the cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:222
+msgid "The style for the background fill."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:225
+msgid "The space at the left and right edges of the tab bar."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:228
+msgid "The style of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:231
+msgid "The style of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:234 doc/classes/Tabs.xml:274
+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 interacting with children."
+msgstr ""
+
+#: doc/classes/Tabs.xml:17
+msgid "Adds a new tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:24
+msgid "Moves the scroll view to make the tab visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:30
+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:42
+msgid "Returns [code]true[/code] if select with right mouse button is enabled."
+msgstr ""
+
+#: doc/classes/Tabs.xml:68
+msgid "Returns the number of hidden tabs offsetted to the left."
+msgstr ""
+
+#: doc/classes/Tabs.xml:75
+msgid "Returns tab [Rect2] with local position and size."
+msgstr ""
+
+#: doc/classes/Tabs.xml:82
+msgid "Returns the title of the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:88
+msgid "Returns the [Tabs]' rearrange group ID."
+msgstr ""
+
+#: doc/classes/Tabs.xml:96
+msgid "Moves a tab from [code]from[/code] to [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:103
+msgid "Removes the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:110
+msgid ""
+"If [code]true[/code], enables selecting a tab with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tabs.xml:126
+msgid "Sets an [code]icon[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:134
+msgid "Sets a [code]title[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:141
+msgid ""
+"Defines the rearrange group ID. Choose for each [Tabs] the same value to "
+"dragging tabs between [Tabs]. Enable drag with [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:147
+msgid "Select tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:153
+msgid ""
+"if [code]true[/code], the mouse's scroll wheel can be used to navigate the "
+"scroll view."
+msgstr ""
+
+#: doc/classes/Tabs.xml:156
+msgid "The alignment of all tabs. See [enum TabAlign] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:159
+msgid ""
+"Sets when the close button will appear on the tabs. See [enum "
+"CloseButtonDisplayPolicy] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:166
+msgid ""
+"Emitted when the active tab is rearranged via mouse drag. See [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:172
+msgid "Emitted when a tab is right-clicked."
+msgstr ""
+
+#: doc/classes/Tabs.xml:184
+msgid "Emitted when a tab is clicked, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:190
+msgid "Emitted when a tab is closed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:196
+msgid "Emitted when a tab is hovered by the mouse."
+msgstr ""
+
+#: doc/classes/Tabs.xml:211
+msgid "Represents the size of the [enum TabAlign] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:214
+msgid "Never show the close buttons."
+msgstr ""
+
+#: doc/classes/Tabs.xml:217
+msgid "Only show the close button on the currently active tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:220
+msgid "Show the close button on all tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:223
+msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:228
+msgid "Background of the close button when it's being hovered with the cursor."
+msgstr ""
+
+#: doc/classes/Tabs.xml:231
+msgid "Background of the close button when it's being pressed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:234
+msgid "The icon for the close button (see [member tab_close_display_policy])."
+msgstr ""
+
+#: doc/classes/Tabs.xml:255
+msgid "The horizontal separation between the tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:268
+msgid "The style of an inactive tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:271
+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:15
+msgid "Returns [code]true[/code] if a connection is available for taking."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:21
+msgid ""
+"Returns [code]true[/code] if the server is currently listening for "
+"connections."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:29
+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:38
+msgid "Stops listening."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:44
+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.\n"
+"[b]Note:[/b] When holding down [code]Alt[/code], the vertical scroll wheel "
+"will scroll 5 times as fast as it would normally do. This also works in the "
+"Godot script editor."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:20
+msgid "Adds color region (given the delimiters) and its colors."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:28
+msgid "Adds a [code]keyword[/code] and its [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:35
+msgid ""
+"Returns if the given line is foldable, that is, it has indented lines right "
+"below it."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:41
+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:47
+msgid ""
+"Clears all custom syntax coloring information previously added with [method "
+"add_color_region] or [method add_keyword_color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:53
+msgid "Clears the undo history."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:59
+msgid "Copy's the current text selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:65
+msgid "Returns the column the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:71
+msgid "Returns the line the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:79
+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:90
+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:98
+msgid "Cut's the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:104
+msgid "Deselects the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:110
+msgid "Folds all lines that are possible to be folded (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:117
+msgid "Folds the given line, if possible (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:123
+msgid "Returns an array containing the line number of each breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:130
+msgid "Returns the [Color] of the specified [code]keyword[/code]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:137
+msgid "Returns the text of a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:143
+msgid "Returns the amount of total lines in the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:149
+msgid ""
+"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
+"displayed when right-clicking on the [TextEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:156
+msgid "Returns the selection begin column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:162
+msgid "Returns the selection begin line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:168
+msgid "Returns the text inside the selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:174
+msgid "Returns the selection end column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:180
+msgid "Returns the selection end line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:186
+msgid ""
+"Returns a [String] text with the word under the caret (text cursor) location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:193
+msgid ""
+"Returns whether the specified [code]keyword[/code] has a color set to it or "
+"not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:199 doc/classes/UndoRedo.xml:121
+msgid "Returns [code]true[/code] if a \"redo\" action is available."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:205 doc/classes/UndoRedo.xml:127
+msgid "Returns [code]true[/code] if an \"undo\" action is available."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:212
+msgid "Insert the specified text at the cursor position."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:219
+msgid "Returns whether the line at the specified index is folded or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:226
+msgid "Returns whether the line at the specified index is hidden or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:233
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] is bookmarked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:240
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] has a "
+"breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:247
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] is marked as "
+"safe."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:253
+msgid "Returns [code]true[/code] if the selection is active."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:260
+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:266
+msgid "Paste the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:272
+msgid "Perform redo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:278
+msgid ""
+"Removes all the breakpoints. This will not fire the [signal "
+"breakpoint_toggled] signal."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:288
+msgid ""
+"Perform a search inside the text. Search flags can be specified in the [enum "
+"SearchFlags] enum.\n"
+"Returns an empty [code]PoolIntArray[/code] if no result was found. "
+"Otherwise, the result line and column can be accessed at indices specified "
+"in the [enum SearchResult] enum, e.g:\n"
+"[codeblock]\n"
+"var result = search(key, flags, line, column)\n"
+"if result.size() > 0:\n"
+" # Result found.\n"
+" var res_line = result[TextEdit.SEARCH_RESULT_LINE]\n"
+" var res_column = result[TextEdit.SEARCH_RESULT_COLUMN]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TextEdit.xml:306
+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:313
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:322
+msgid "Sets the text for a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:330
+msgid ""
+"Bookmarks the [code]line[/code] if [code]bookmark[/code] is true. Deletes "
+"the bookmark if [code]bookmark[/code] is false.\n"
+"Bookmarks are shown in the [member breakpoint_gutter]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:339
+msgid ""
+"Adds or removes the breakpoint in [code]line[/code]. Breakpoints are shown "
+"in the [member breakpoint_gutter]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:347
+msgid "If [code]true[/code], hides the line of the specified index."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:355
+msgid ""
+"If [code]true[/code], marks the [code]line[/code] as safe.\n"
+"This will show the line number with the color provided in the "
+"[code]safe_line_number_color[/code] theme property."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:363
+msgid "Toggle the folding of the code block at the given line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:369
+msgid "Perform undo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:376
+msgid "Unfolds the given line, if folded."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:382
+msgid ""
+"Unhide all lines that were previously set to hidden by [method "
+"set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:388
+msgid "If [code]true[/code], the breakpoint gutter is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+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:401
+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:405
+msgid "If [code]true[/code], a right-click displays the context menu."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:408
+msgid ""
+"If [code]true[/code], the \"space\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:411
+msgid ""
+"If [code]true[/code], the \"tab\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:415
+msgid ""
+"If [code]true[/code], the fold gutter is visible. This enables folding "
+"groups of indented lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:418
+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:421
+msgid ""
+"If [code]true[/code], all occurrences of the selected text will be "
+"highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:424
+msgid "If [code]true[/code], the line containing the cursor is highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:427
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:430
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
+"for selected text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:437
+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:440
+msgid ""
+"If there is a horizontal scrollbar, this determines the current horizontal "
+"scroll value in pixels."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:443
+msgid ""
+"If there is a vertical scrollbar, this determines the current vertical "
+"scroll value in line numbers, starting at 0 for the top line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:446
+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:450
+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:453
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:456
+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:459
+msgid ""
+"If [code]true[/code], any custom color properties that have been set for "
+"this [TextEdit] will be visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:462
+msgid "String value of the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:465
+msgid "Vertical scroll sensitivity."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:471
+msgid ""
+"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
+"what is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:478
+msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:483
+msgid "Emitted when the cursor changes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:490
+msgid "Emitted when the info icon is clicked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:512
+msgid "Match case when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:515
+msgid "Match whole words when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:518
+msgid "Search from end to beginning."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:521
+msgid "Used to access the result column from [method search]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:524
+msgid "Used to access the result line from [method search]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:533
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position)."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:536
+msgid "Erases the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:539
+msgid "Selects the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:545
+msgid "Redoes the previous action."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:553
+msgid ""
+"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:556
+msgid ""
+"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
+"be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:561 doc/classes/TextEdit.xml:588
+msgid ""
+"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:599
+msgid "Sets the default [Font]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:602
+msgid "Sets the font [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:607
+msgid ""
+"Sets the [Color] of the selected text. [member override_selected_font_color] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:612
+msgid ""
+"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:615
+msgid "Sets the spacing between the lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:618
+msgid "Sets the [Color] of marked text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:623
+msgid "Sets the [StyleBox] of this [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:628
+msgid ""
+"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:633
+msgid "Sets the highlight [Color] of text selections."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:640
+msgid "Sets a custom [Texture] for tab text characters."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:643
+msgid ""
+"Sets the highlight [Color] of multiple occurrences. [member "
+"highlight_all_occurrences] has to be enabled."
+msgstr ""
+
+#: doc/classes/Texture.xml:4
+msgid "Texture for 2D and 3D."
+msgstr ""
+
+#: doc/classes/Texture.xml:7
+msgid ""
+"A texture works by registering an image in the video hardware, which then "
+"can be used in 3D models or 2D [Sprite] or GUI [Control].\n"
+"Textures are often created by loading them from a file. See [method "
+"@GDScript.load].\n"
+"[Texture] is a base for other resources. It cannot be used directly.\n"
+"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger textures may fail to import."
+msgstr ""
+
+#: doc/classes/Texture.xml:23
+msgid ""
+"Draws the texture using a [CanvasItem] with the [VisualServer] API at the "
+"specified [code]position[/code]. Equivalent to [method VisualServer."
+"canvas_item_add_texture_rect] with a rect at [code]position[/code] and the "
+"size of this [Texture]."
+msgstr ""
+
+#: doc/classes/Texture.xml:35
+msgid ""
+"Draws the texture using a [CanvasItem] with the [VisualServer] API. "
+"Equivalent to [method VisualServer.canvas_item_add_texture_rect]."
+msgstr ""
+
+#: doc/classes/Texture.xml:48
+msgid ""
+"Draws a part of the texture using a [CanvasItem] with the [VisualServer] "
+"API. Equivalent to [method VisualServer.canvas_item_add_texture_rect_region]."
+msgstr ""
+
+#: doc/classes/Texture.xml:54
+msgid ""
+"Returns an [Image] that is a copy of data from this [Texture]. [Image]s can "
+"be accessed and manipulated directly."
+msgstr ""
+
+#: doc/classes/Texture.xml:60
+msgid "Returns the texture height."
+msgstr ""
+
+#: doc/classes/Texture.xml:66
+msgid "Returns the texture size."
+msgstr ""
+
+#: doc/classes/Texture.xml:72
+msgid "Returns the texture width."
+msgstr ""
+
+#: doc/classes/Texture.xml:78
+msgid "Returns [code]true[/code] if this [Texture] has an alpha channel."
+msgstr ""
+
+#: doc/classes/Texture.xml:84
+msgid ""
+"The texture's [enum Flags]. [enum Flags] are used to set various properties "
+"of the [Texture]."
+msgstr ""
+
+#: doc/classes/Texture.xml:89
+msgid ""
+"Default flags. [constant FLAG_MIPMAPS], [constant FLAG_REPEAT] and [constant "
+"FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/Texture.xml:92 doc/classes/VisualServer.xml:3206
+msgid ""
+"Generates mipmaps, which are smaller versions of the same texture to use "
+"when zoomed out, keeping the aspect ratio."
+msgstr ""
+
+#: doc/classes/Texture.xml:95
+msgid ""
+"Repeats the texture (instead of clamp to edge).\n"
+"[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support "
+"repetition."
+msgstr ""
+
+#: doc/classes/Texture.xml:99 doc/classes/VisualServer.xml:3212
+msgid "Uses a magnifying filter, to enable smooth zooming in of the texture."
+msgstr ""
+
+#: doc/classes/Texture.xml:102 doc/classes/TextureLayered.xml:88
+#: doc/classes/VisualServer.xml:3215
+msgid ""
+"Uses anisotropic mipmap filtering. Generates smaller versions of the same "
+"texture with different aspect ratios.\n"
+"This results in better-looking textures when viewed from oblique angles."
+msgstr ""
+
+#: doc/classes/Texture.xml:106 doc/classes/VisualServer.xml:3219
+msgid "Converts the texture to the sRGB color space."
+msgstr ""
+
+#: doc/classes/Texture.xml:109
+msgid ""
+"Repeats the texture with alternate sections mirrored.\n"
+"[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support "
+"repetition."
+msgstr ""
+
+#: doc/classes/Texture.xml:113 doc/classes/VisualServer.xml:3225
+msgid "Texture is a video surface."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:4
+msgid "Texture with 3 dimensions."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:7
+msgid ""
+"Texture3D is a 3-dimensional texture that has a width, height, and depth."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:20
+msgid ""
+"Creates the Texture3D with specified [code]width[/code], [code]height[/"
+"code], and [code]depth[/code]. See [enum Image.Format] for [code]format[/"
+"code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/"
+"code] options."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:4
+msgid "Array of textures stored in a single primitive."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:7
+msgid ""
+"[TextureArray]s store an array of [Image]s in a single [Texture] primitive. "
+"Each layer of the texture array has its own mipmap chain. This makes it is a "
+"good alternative to texture atlases.\n"
+"[TextureArray]s must be displayed using shaders. After importing your file "
+"as a [TextureArray] and setting the appropriate Horizontal and Vertical "
+"Slices, display it by setting it as a uniform to a shader, for example:\n"
+"[codeblock]\n"
+"shader_type canvas_item;\n"
+"\n"
+"uniform sampler2DArray tex;\n"
+"uniform int index;\n"
+"\n"
+"void fragment() {\n"
+" COLOR = texture(tex, vec3(UV.x, UV.y, float(index)));\n"
+"}\n"
+"[/codeblock]\n"
+"Set the integer uniform \"index\" to show a particular part of the texture "
+"as defined by the Horizontal and Vertical Slices in the importer."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:32
+msgid ""
+"Creates the TextureArray with specified [code]width[/code], [code]height[/"
+"code], and [code]depth[/code]. See [enum Image.Format] for [code]format[/"
+"code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/"
+"code] options."
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:18
+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:27
+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:30
+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:33
+msgid ""
+"Texture to display when the node is disabled. See [member BaseButton."
+"disabled]."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:36
+msgid "Texture to display when the node has mouse or keyboard focus."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:39
+msgid "Texture to display when the mouse hovers the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:42
+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:45
+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:50 doc/classes/TextureRect.xml:38
+msgid "Scale to fit the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:53 doc/classes/TextureRect.xml:41
+msgid "Tile inside the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:56 doc/classes/TextureRect.xml:44
+msgid ""
+"The texture keeps its original size and stays in the bounding rectangle's "
+"top-left corner."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:59 doc/classes/TextureRect.xml:47
+msgid ""
+"The texture keeps its original size and stays centered in the node's "
+"bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:62 doc/classes/TextureRect.xml:50
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, but maintain the "
+"texture's aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:65
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it, and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:68 doc/classes/TextureRect.xml:56
+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 [Texture3D] and [TextureArray]. Cannot be used directly, but "
+"contains all the functions necessary for accessing and using [Texture3D] and "
+"[TextureArray]. Data is set on a per-layer basis. For [Texture3D]s, the "
+"layer specifies the depth or Z-index, they can be treated as a bunch of 2D "
+"slices. Similarly, for [TextureArray]s, the layer specifies the array layer."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:15
+msgid ""
+"Returns the depth of the texture. Depth is the 3rd dimension (typically Z-"
+"axis)."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:21
+msgid ""
+"Returns the current format being used by this texture. See [enum Image."
+"Format] for details."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:27
+msgid ""
+"Returns the height of the texture. Height is typically represented by the Y-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:34
+msgid ""
+"Returns an [Image] resource with the data from specified [code]layer[/code]."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:40
+msgid ""
+"Returns the width of the texture. Width is typically represented by the X-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:51
+msgid ""
+"Partially sets the data for a specified [code]layer[/code] by overwriting "
+"using the data of the specified [code]image[/code]. [code]x_offset[/code] "
+"and [code]y_offset[/code] determine where the [Image] is \"stamped\" over "
+"the texture. The [code]image[/code] must fit within the texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:59
+msgid ""
+"Sets the data for the specified layer. Data takes the form of a 2-"
+"dimensional [Image] resource."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:65
+msgid "Returns a dictionary with all the data used by this texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:68
+msgid "Specifies which [enum Flags] apply to this texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:73
+msgid ""
+"Default flags for [TextureArray]. [constant FLAG_MIPMAPS], [constant "
+"FLAG_REPEAT] and [constant FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:76
+msgid "Default flags for [Texture3D]. [constant FLAG_FILTER] is enabled."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:79
+msgid "Texture will generate mipmaps on creation."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:82
+msgid "Texture will repeat when UV used is outside the 0-1 range."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:85
+msgid ""
+"Use filtering when reading from texture. Filtering smooths out pixels. "
+"Turning filtering off is slightly faster and more appropriate when you need "
+"access to individual pixels."
+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:28
+msgid "The fill direction. See [enum FillMode] for possible values."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:32
+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:35
+msgid ""
+"Offsets [member texture_progress] if [member fill_mode] is [constant "
+"FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:38
+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:42
+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:45
+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:48
+msgid "The width of the 9-patch's left column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:51
+msgid "The width of the 9-patch's right column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:54
+msgid "The height of the 9-patch's top row."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:57
+msgid ""
+"[Texture] 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:60
+msgid ""
+"[Texture] 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:64
+msgid ""
+"The offset of [member texture_progress]. Useful for [member texture_over] "
+"and [member texture_under] with fancy borders, to avoid transparent margins "
+"in your progress texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:67
+msgid "[Texture] that draws under the progress bar. The bar's background."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:70
+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:73
+msgid ""
+"Multiplies the color of the bar's [code]texture_progress[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:76
+msgid "Multiplies the color of the bar's [code]texture_under[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:81
+msgid "The [member texture_progress] fills from left to right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:84
+msgid "The [member texture_progress] fills from right to left."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:87
+msgid "The [member texture_progress] fills from top to bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:90
+msgid "The [member texture_progress] fills from bottom to top."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:93
+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:96
+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:99
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the left and the right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:102
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the top and the bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:105
+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.\n"
+"[b]Note:[/b] You should enable [member flip_v] when using a TextureRect to "
+"display a [ViewportTexture]. Alternatively, you can enable [member Viewport."
+"render_target_v_flip] on the Viewport. Otherwise, the image will appear "
+"upside down."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:17
+msgid "If [code]true[/code], the texture scales to fit its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:27
+msgid ""
+"Controls the texture's behavior when resizing the node's bounding rectangle. "
+"See [enum StretchMode]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:30
+msgid "The node's [Texture] resource."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:35
+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:53
+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/3.4/tutorials/gui/gui_skinning.html"
+msgstr ""
+
+#: doc/classes/Theme.xml:17
+msgid "Clears all values on the theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:25
+msgid ""
+"Clears the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:33
+msgid ""
+"Clears the constant at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:41
+msgid ""
+"Clears the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:49
+msgid ""
+"Clears the icon at [code]name[/code] if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:57
+msgid ""
+"Clears [StyleBox] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:66
+msgid ""
+"Clears the theme item of [code]data_type[/code] at [code]name[/code] if the "
+"theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:72
+msgid "Sets the theme's values to a copy of the default theme values."
+msgstr ""
+
+#: doc/classes/Theme.xml:79
+msgid "Sets the theme's values to a copy of a given theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:87
+msgid ""
+"Returns the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:94
+msgid ""
+"Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s "
+"name, for use in [method get_color], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:100
+msgid ""
+"Returns all the [Color] types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_color] and/or [method get_color_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:108
+msgid ""
+"Returns the constant at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:115
+msgid ""
+"Returns all the constants as a [PoolStringArray] filled with each constant's "
+"name, for use in [method get_constant], if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:121
+msgid ""
+"Returns all the constant types as a [PoolStringArray] filled with unique "
+"type names, for use in [method get_constant] and/or [method "
+"get_constant_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:129
+msgid ""
+"Returns the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:136
+msgid ""
+"Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s "
+"name, for use in [method get_font], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:142
+msgid ""
+"Returns all the [Font] types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_font] and/or [method get_font_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:150
+msgid ""
+"Returns the icon [Texture] at [code]name[/code] if the theme has "
+"[code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:157
+msgid ""
+"Returns all the icons as a [PoolStringArray] filled with each [Texture]'s "
+"name, for use in [method get_icon], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:163
+msgid ""
+"Returns all the icon types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_icon] and/or [method get_icon_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:171
+msgid ""
+"Returns the [StyleBox] at [code]name[/code] if the theme has "
+"[code]node_type[/code].\n"
+"Valid [code]name[/code]s may be found using [method get_stylebox_list]. "
+"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+msgstr ""
+
+#: doc/classes/Theme.xml:179
+msgid ""
+"Returns all the [StyleBox]s as a [PoolStringArray] filled with each "
+"[StyleBox]'s name, for use in [method get_stylebox], if the theme has "
+"[code]node_type[/code].\n"
+"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+msgstr ""
+
+#: doc/classes/Theme.xml:186
+msgid ""
+"Returns all the [StyleBox] types as a [PoolStringArray] filled with unique "
+"type names, for use in [method get_stylebox] and/or [method "
+"get_stylebox_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:195
+msgid ""
+"Returns the theme item of [code]data_type[/code] at [code]name[/code] if the "
+"theme has [code]node_type[/code].\n"
+"Valid [code]name[/code]s may be found using [method get_theme_item_list] or "
+"a data type specific method. Valid [code]node_type[/code]s may be found "
+"using [method get_theme_item_types] or a data type specific method."
+msgstr ""
+
+#: doc/classes/Theme.xml:204
+msgid ""
+"Returns all the theme items of [code]data_type[/code] as a [PoolStringArray] "
+"filled with each theme items's name, for use in [method get_theme_item] or a "
+"data type specific method, if the theme has [code]node_type[/code].\n"
+"Valid [code]node_type[/code]s may be found using [method "
+"get_theme_item_types] or a data type specific method."
+msgstr ""
+
+#: doc/classes/Theme.xml:212
+msgid ""
+"Returns all the theme items of [code]data_type[/code] types as a "
+"[PoolStringArray] filled with unique type names, for use in [method "
+"get_theme_item], [method get_theme_item_list] or data type specific methods."
+msgstr ""
+
+#: doc/classes/Theme.xml:219
+msgid ""
+"Returns all the theme types as a [PoolStringArray] filled with unique type "
+"names, for use in other [code]get_*[/code] functions of this theme.\n"
+"[b]Note:[/b] [code]node_type[/code] has no effect and will be removed in "
+"future version."
+msgstr ""
+
+#: doc/classes/Theme.xml:228
+msgid ""
+"Returns [code]true[/code] if [Color] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:237
+msgid ""
+"Returns [code]true[/code] if constant with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:244
+msgid ""
+"Returns [code]true[/code] if this theme has a valid [member default_font] "
+"value."
+msgstr ""
+
+#: doc/classes/Theme.xml:252
+msgid ""
+"Returns [code]true[/code] if [Font] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:261
+msgid ""
+"Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:270
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:280
+msgid ""
+"Returns [code]true[/code] if a theme item of [code]data_type[/code] with "
+"[code]name[/code] is in [code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:288
+msgid ""
+"Adds missing and overrides existing definitions with values from the "
+"[code]other[/code] [Theme].\n"
+"[b]Note:[/b] This modifies the current theme. If you want to merge two "
+"themes together without modifying either one, create a new empty theme and "
+"merge the other two into it one after another."
+msgstr ""
+
+#: doc/classes/Theme.xml:298
+msgid ""
+"Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:307
+msgid ""
+"Renames the constant at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:316
+msgid ""
+"Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:325
+msgid ""
+"Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme "
+"has [code]node_type[/code]. If [code]name[/code] is already taken, this "
+"method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:334
+msgid ""
+"Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:344
+msgid ""
+"Renames the theme item of [code]data_type[/code] at [code]old_name[/code] to "
+"[code]name[/code] if the theme has [code]node_type[/code]. If [code]name[/"
+"code] is already taken, this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:353
+msgid ""
+"Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:363
+msgid ""
+"Sets the theme's constant to [code]constant[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:373
+msgid ""
+"Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:383
+msgid ""
+"Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] "
+"in [code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:393
+msgid ""
+"Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:404
+msgid ""
+"Sets the theme item of [code]data_type[/code] to [code]value[/code] at "
+"[code]name[/code] in [code]node_type[/code].\n"
+"Does nothing if the [code]value[/code] type does not match [code]data_type[/"
+"code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:412
+msgid ""
+"The default font of this [Theme] resource. Used as a fallback value for font "
+"items defined in this theme, but having invalid values. If this value is "
+"also invalid, the global default value is used.\n"
+"Use [method has_default_font] to check if this value is valid."
+msgstr ""
+
+#: doc/classes/Theme.xml:418
+msgid "Theme's [Color] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:421
+msgid "Theme's constant item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:424
+msgid "Theme's [Font] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:427
+msgid "Theme's icon [Texture] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:430
+msgid "Theme's [StyleBox] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:433
+msgid "Maximum value for the DataType enum."
+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.\n"
+"[b]Note:[/b] Breakpoints won't break on code if it's running in a thread. "
+"This is a current limitation of the GDScript debugger."
+msgstr ""
+
+#: doc/classes/Thread.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html"
+msgstr ""
+
+#: doc/classes/Thread.xml:19
+msgid ""
+"Returns the current [Thread]'s ID, uniquely identifying it among all "
+"threads. If the [Thread] is not running this returns an empty string."
+msgstr ""
+
+#: doc/classes/Thread.xml:25
+msgid ""
+"Returns [code]true[/code] if this [Thread] has been started. Once started, "
+"this will return [code]true[/code] until it is joined using [method "
+"wait_to_finish]. For checking if a [Thread] is still executing its task, use "
+"[method is_alive]."
+msgstr ""
+
+#: doc/classes/Thread.xml:31
+msgid ""
+"Returns [code]true[/code] if this [Thread] is currently running. This is "
+"useful for determining if [method wait_to_finish] can be called without "
+"blocking the calling thread.\n"
+"To check if a [Thread] is joinable, use [method is_active]."
+msgstr ""
+
+#: doc/classes/Thread.xml:42
+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:49
+msgid ""
+"Joins the [Thread] and waits for it to finish. Returns the output of the "
+"method passed to [method start].\n"
+"Should either be used when you want to retrieve the value returned from the "
+"method called by the [Thread] or before freeing the instance that contains "
+"the [Thread].\n"
+"To determine if this can be called without blocking the calling thread, "
+"check if [method is_alive] is [code]false[/code].\n"
+"[b]Note:[/b] After the [Thread] finishes joining it will be disposed. If you "
+"want to use it again you will have to create a new instance of it."
+msgstr ""
+
+#: doc/classes/Thread.xml:58
+msgid "A thread running with lower priority than normally."
+msgstr ""
+
+#: doc/classes/Thread.xml:61
+msgid "A thread with a standard priority."
+msgstr ""
+
+#: doc/classes/Thread.xml:64
+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.\n"
+"When doing physics queries against the tilemap, the cell coordinates are "
+"encoded as [code]metadata[/code] for each detected collision shape returned "
+"by methods such as [method Physics2DDirectSpaceState.intersect_shape], "
+"[method Physics2DDirectBodyState.get_contact_collider_shape_metadata], etc."
+msgstr ""
+
+#: doc/classes/TileMap.xml:11 doc/classes/TileSet.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html"
+msgstr ""
+
+#: doc/classes/TileMap.xml:14 doc/classes/TileSet.xml:14
+msgid "https://godotengine.org/asset-library/asset/111"
+msgstr ""
+
+#: doc/classes/TileMap.xml:23
+msgid "Clears all cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:29
+msgid "Clears cells that do not exist in the tileset."
+msgstr ""
+
+#: doc/classes/TileMap.xml:37
+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:45
+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:52
+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:59
+msgid "Returns [code]true[/code] if the given collision layer bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:66
+msgid "Returns [code]true[/code] if the given collision mask bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:72
+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:79
+msgid ""
+"Returns an array of all cells with the given tile index specified in "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:85
+msgid "Returns a rectangle enclosing the used (non-empty) tiles of the map."
+msgstr ""
+
+#: doc/classes/TileMap.xml:93
+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:101
+msgid "Returns [code]true[/code] if the given cell is flipped in the X axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:109
+msgid "Returns [code]true[/code] if the given cell is flipped in the Y axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:117
+msgid ""
+"Returns the local position of the top left corner of the cell corresponding "
+"to the given tilemap (grid-based) coordinates.\n"
+"To get the global position, use [method Node2D.to_global]:\n"
+"[codeblock]\n"
+"var local_position = my_tilemap.map_to_world(map_position)\n"
+"var global_position = my_tilemap.to_global(local_position)\n"
+"[/codeblock]\n"
+"Optionally, the tilemap's half offset can be ignored."
+msgstr ""
+
+#: doc/classes/TileMap.xml:136
+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=false, flip_y=false, transpose=false, "
+"autotile_coord=Vector2()):\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:158
+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:170
+msgid "Sets the given collision layer bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:178
+msgid "Sets the given collision mask bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:185
+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:193
+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:200
+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:207
+msgid ""
+"Returns the tilemap (grid-based) coordinates corresponding to the given "
+"local position.\n"
+"To use this with a global position, first determine the local position with "
+"[method Node2D.to_local]:\n"
+"[codeblock]\n"
+"var local_position = my_tilemap.to_local(global_position)\n"
+"var map_position = my_tilemap.world_to_map(local_position)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileMap.xml:218
+msgid "If [code]true[/code], the cell's UVs will be clipped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:221
+msgid "The custom [Transform2D] to be applied to the TileMap's cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:224
+msgid ""
+"Amount to offset alternating tiles. See [enum HalfOffset] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:227
+msgid ""
+"The TileMap's quadrant size. Optimizes drawing by batching, using chunks of "
+"this size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:230
+msgid "The TileMap's cell size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:233
+msgid "Position for tile origin. See [enum TileOrigin] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:236
+msgid ""
+"If [code]true[/code], the TileMap's direct children will be drawn in order "
+"of their Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:239
+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:243
+msgid ""
+"Bounce value for static body collisions (see [code]collision_use_kinematic[/"
+"code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:246
+msgid ""
+"Friction value for static body collisions (see "
+"[code]collision_use_kinematic[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:249
+msgid ""
+"The collision layer(s) for all colliders in the TileMap. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/TileMap.xml:252
+msgid ""
+"The collision mask(s) for all colliders in the TileMap. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/TileMap.xml:255
+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:258
+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:261
+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:266
+msgid "The TileMap orientation mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:269
+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:272
+msgid ""
+"If [code]true[/code], collision shapes are visible in the editor. Doesn't "
+"affect collision shapes visibility at runtime. To show collision shapes at "
+"runtime, enable [b]Visible Collision Shapes[/b] in the [b]Debug[/b] menu "
+"instead."
+msgstr ""
+
+#: doc/classes/TileMap.xml:275
+msgid "The assigned [TileSet]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:281
+msgid "Emitted when a tilemap setting has changed."
+msgstr ""
+
+#: doc/classes/TileMap.xml:287
+msgid "Returned when a cell doesn't exist."
+msgstr ""
+
+#: doc/classes/TileMap.xml:290
+msgid "Orthogonal orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:293
+msgid "Isometric orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:296
+msgid "Custom orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:299
+msgid "Half offset on the X coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:302
+msgid "Half offset on the Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:305
+msgid "Half offset disabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:308
+msgid "Half offset on the X coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:311
+msgid "Half offset on the Y coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:314
+msgid "Tile origin at its top-left corner."
+msgstr ""
+
+#: doc/classes/TileMap.xml:317
+msgid "Tile origin at its center."
+msgstr ""
+
+#: doc/classes/TileMap.xml:320
+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:42
+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:50
+msgid "Clears all bitmask information of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:58
+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:66
+msgid "Returns the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:73
+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:82
+msgid ""
+"Returns the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:90
+msgid ""
+"Returns the navigation polygon of the subtile from an atlas/autotile given "
+"its coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:97
+msgid "Returns the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:104
+msgid "Returns the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:112
+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:121
+msgid ""
+"Returns the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:130
+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:139
+msgid "Sets the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:147
+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:157
+msgid ""
+"Sets the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:166
+msgid ""
+"Sets the navigation polygon of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:174
+msgid "Sets the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:182
+msgid "Sets the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:191
+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:201
+msgid ""
+"Sets the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:207
+msgid "Clears all tiles."
+msgstr ""
+
+#: doc/classes/TileSet.xml:214
+msgid "Creates a new tile with the given ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:221
+msgid "Returns the first tile matching the given name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:227
+msgid ""
+"Returns the ID following the last currently used ID, useful when creating a "
+"new tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:233
+msgid "Returns an array of all currently used tile IDs."
+msgstr ""
+
+#: doc/classes/TileSet.xml:240
+msgid "Removes the given tile ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:251
+msgid "Adds a shape to the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:258
+msgid "Returns the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:265
+msgid "Returns the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:272
+msgid "Returns the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:279
+msgid "Returns the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:286
+msgid "Returns the navigation polygon of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:293
+msgid "Returns the offset of the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:300
+msgid "Returns the tile's normal map texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:307
+msgid "Returns the offset of the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:314
+msgid "Returns the tile sub-region in the texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:322
+msgid "Returns a tile's given shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:329
+msgid "Returns the number of shapes assigned to a tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:337
+msgid "Returns the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:345
+msgid "Returns the one-way collision value of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:360
+msgid "Returns the [Transform2D] of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:367
+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:384
+msgid "Returns the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:391
+msgid "Returns the texture offset of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:398
+msgid "Returns the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:405
+msgid "Returns the tile's Z index (drawing layer)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:413
+msgid "Sets a light occluder for the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:421
+msgid "Sets the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:429
+msgid "Sets the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:437
+msgid "Sets the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:445
+msgid "Sets the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:453
+msgid "Sets an offset for the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:461
+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:470
+msgid "Sets an offset for the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:478
+msgid ""
+"Sets the tile's sub-region in the texture. This is common in texture atlases."
+msgstr ""
+
+#: doc/classes/TileSet.xml:487
+msgid "Sets a shape for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:496
+msgid "Sets the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:505
+msgid "Enables one-way collision on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:522
+msgid "Sets a [Transform2D] on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:530
+msgid "Sets an array of shapes for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:538
+msgid "Sets the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:546
+msgid "Sets the tile's texture offset."
+msgstr ""
+
+#: doc/classes/TileSet.xml:554
+msgid "Sets the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:562
+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 a 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:24
+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:31
+msgid "Stops the timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:37
+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:41
+msgid ""
+"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
+"code], it will restart."
+msgstr ""
+
+#: doc/classes/Timer.xml:44
+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:47
+msgid "Processing mode. See [enum TimerProcessMode]."
+msgstr ""
+
+#: doc/classes/Timer.xml:50
+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:54
+msgid ""
+"The wait time in seconds.\n"
+"[b]Note:[/b] Timers can only emit once per rendered frame at most (or once "
+"per physics frame if [member process_mode] is [constant "
+"TIMER_PROCESS_PHYSICS]). This means very low wait times (lower than 0.05 "
+"seconds) will behave in significantly different ways depending on the "
+"rendered framerate. For very low wait times, it is recommended to use a "
+"process loop in a script instead of using a Timer node."
+msgstr ""
+
+#: doc/classes/Timer.xml:67
+msgid ""
+"Update the timer during the physics step at each frame (fixed framerate "
+"processing)."
+msgstr ""
+
+#: doc/classes/Timer.xml:70
+msgid "Update the timer during the idle time at each frame."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:4
+msgid "Flat button helper class."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:7
+msgid ""
+"This is a helper class to generate a flat [Button] (see [member Button."
+"flat]), creating a [ToolButton] is equivalent to:\n"
+"[codeblock]\n"
+"var btn = Button.new()\n"
+"btn.flat = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ToolButton.xml:24
+msgid "[StyleBox] used when the [ToolButton] is disabled."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:27
+msgid ""
+"[StyleBox] used when the [ToolButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:30
+msgid "[Font] of the [ToolButton]'s text."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:33
+msgid "Default text [Color] of the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:36
+msgid "Text [Color] used when the [ToolButton] is disabled."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:39
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:42
+msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:45
+msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:48
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:51
+msgid "The horizontal space between [ToolButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
+msgid "[StyleBox] used when the [ToolButton] is being pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:4
+msgid "Button for touch screen devices for gameplay use."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:7
+msgid ""
+"TouchScreenButton allows you to create on-screen buttons for touch devices. "
+"It's intended for gameplay use, such as a unit you have to touch to move. "
+"Unlike [Button], TouchScreenButton supports multitouch out of the box. "
+"Several TouchScreenButtons can be pressed at the same time with touch "
+"input.\n"
+"This node inherits from [Node2D]. Unlike with [Control] nodes, you cannot "
+"set anchors on it. If you want to create menus or user interfaces, you may "
+"want to use [Button] nodes instead. To make button nodes react to touch "
+"events, you can enable the Emulate Mouse option in the Project Settings.\n"
+"You can configure TouchScreenButton to be visible only on touch devices, "
+"helping you develop your game both for desktop and mobile devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:17
+msgid "Returns [code]true[/code] if this button is currently pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:23
+msgid "The button's action. Actions can be handled with [InputEventAction]."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:26
+msgid "The button's bitmask."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:29
+msgid "The button's texture for the normal state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:32
+msgid ""
+"If [code]true[/code], the [signal pressed] and [signal released] signals are "
+"emitted whenever a pressed finger goes in and out of the button, even if the "
+"pressure started outside the active area of the button.\n"
+"[b]Note:[/b] This is a \"pass-by\" (not \"bypass\") press mode."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:36
+msgid "The button's texture for the pressed state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:39
+msgid "The button's shape."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:42
+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:45
+msgid "If [code]true[/code], the button's shape is visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:48
+msgid ""
+"The button's visibility mode. See [enum VisibilityMode] for possible values."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:54
+msgid "Emitted when the button is pressed (down)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:59
+msgid "Emitted when the button is released (up)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:65
+msgid "Always visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:68
+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:26
+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:34
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr ""
+
+#: doc/classes/Transform.xml:41
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr ""
+
+#: doc/classes/Transform.xml:48
+msgid ""
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:55
+msgid ""
+"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:61 doc/classes/Transform2D.xml:44
+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:69
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:75
+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:82 doc/classes/Transform2D.xml:99
+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:90
+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:98
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors."
+msgstr ""
+
+#: doc/classes/Transform.xml:106
+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:113
+msgid ""
+"Scales basis and origin of the transform by the given scale factor, using "
+"matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:120 doc/classes/Transform2D.xml:126
+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:128
+msgid ""
+"Transforms the given [Vector3], [Plane], [AABB], or [PoolVector3Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:135
+msgid ""
+"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
+"[PoolVector3Array] by this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:141
+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:144
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:149
+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:152
+msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:155
+msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:158
+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 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:21
+msgid "Constructs the transform from a 3D [Transform]."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:30
+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:38
+msgid "Constructs the transform from a given angle (in radians) and position."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:51
+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:59
+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:66
+msgid "Returns the transform's origin (translation)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:72
+msgid "Returns the transform's rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:78
+msgid "Returns the scale."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:86
+msgid ""
+"Returns a transform interpolated between this transform and another by a "
+"given [code]weight[/code] (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:92
+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:105
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:112
+msgid ""
+"Rotates the transform by the given angle (in radians), using matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:119
+msgid ""
+"Scales the transform by the given scale factor, using matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:134
+msgid ""
+"Transforms the given [Vector2], [Rect2], or [PoolVector2Array] by this "
+"transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:141
+msgid ""
+"Inverse-transforms the given [Vector2], [Rect2], or [PoolVector2Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:147
+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:158
+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:161
+msgid "The [Transform2D] that will flip something along the X axis."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:164
+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/3.4/tutorials/i18n/internationalizing_games."
+"html"
+msgstr ""
+
+#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:18
+msgid "Virtual method to override [method get_message]."
+msgstr ""
+
+#: doc/classes/Translation.xml:26
+msgid "Adds a message if nonexistent, followed by its translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:33
+msgid "Erases a message."
+msgstr ""
+
+#: doc/classes/Translation.xml:40
+msgid "Returns a message's translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:46
+msgid "Returns the number of existing messages."
+msgstr ""
+
+#: doc/classes/Translation.xml:52
+msgid "Returns all the messages (keys)."
+msgstr ""
+
+#: doc/classes/Translation.xml:58
+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:18
+msgid "Adds a [Translation] resource."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:24
+msgid "Clears the server from all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:30
+msgid "Returns an array of all loaded locales of the project."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:36
+msgid ""
+"Returns the current locale of the project.\n"
+"See also [method OS.get_locale] and [method OS.get_locale_language] to query "
+"the locale of the user system."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:44
+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:51
+msgid "Removes the given translation from the server."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:58
+msgid ""
+"Sets the locale of the project. The [code]locale[/code] string will be "
+"standardized to match known locales (e.g. [code]en-US[/code] would be "
+"matched to [code]en_US[/code]).\n"
+"If translations have been loaded beforehand for the new locale, they will be "
+"applied."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:66
+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:27
+msgid "Returns [code]true[/code] if the column titles are being shown."
+msgstr ""
+
+#: doc/classes/Tree.xml:33
+msgid "Clears the tree. This removes all items."
+msgstr ""
+
+#: doc/classes/Tree.xml:41
+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:49
+msgid ""
+"Edits the selected tree item as if it was clicked. The item must be set "
+"editable with [method TreeItem.set_editable]. Returns [code]true[/code] if "
+"the item could be edited. Fails if no item is selected."
+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:64
+msgid ""
+"Returns the column index at [code]position[/code], or -1 if no item is there."
+msgstr ""
+
+#: doc/classes/Tree.xml:71
+msgid "Returns the column's title."
+msgstr ""
+
+#: doc/classes/Tree.xml:78
+msgid "Returns the column's width in pixels."
+msgstr ""
+
+#: doc/classes/Tree.xml:84
+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:91
+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:99
+msgid ""
+"Returns the currently edited item. Can be used with [signal item_edited] to "
+"get the item that was modified.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" $Tree.item_edited.connect(on_Tree_item_edited)\n"
+"\n"
+"func on_Tree_item_edited():\n"
+" print($Tree.get_edited()) # This item just got edited (e.g. checked).\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Tree.xml:112
+msgid "Returns the column for the currently edited item."
+msgstr ""
+
+#: doc/classes/Tree.xml:120
+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:127
+msgid ""
+"Returns the tree item at the specified position (relative to the tree origin "
+"position)."
+msgstr ""
+
+#: doc/classes/Tree.xml:134
+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:141
+msgid "Returns the last pressed button's index."
+msgstr ""
+
+#: doc/classes/Tree.xml:147
+msgid ""
+"Returns the tree's root item, or [code]null[/code] if the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:153
+msgid "Returns the current scrolling position."
+msgstr ""
+
+#: doc/classes/Tree.xml:159
+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:167
+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:176
+msgid "Causes the [Tree] to jump to the specified item."
+msgstr ""
+
+#: doc/classes/Tree.xml:184
+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:192
+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:200
+msgid "Sets the title of a column."
+msgstr ""
+
+#: doc/classes/Tree.xml:207
+msgid "If [code]true[/code], column titles are visible."
+msgstr ""
+
+#: doc/classes/Tree.xml:213
+msgid ""
+"If [code]true[/code], the currently selected cell may be selected again."
+msgstr ""
+
+#: doc/classes/Tree.xml:216
+msgid "If [code]true[/code], a right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/Tree.xml:219
+msgid "The number of columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:222
+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:227
+msgid "If [code]true[/code], the folding arrow is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:230
+msgid "If [code]true[/code], the tree's root is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:234
+msgid ""
+"Allows single or multiple selection. See the [enum SelectMode] constants."
+msgstr ""
+
+#: doc/classes/Tree.xml:243
+msgid ""
+"Emitted when a button on the tree was pressed (see [method TreeItem."
+"add_button])."
+msgstr ""
+
+#: doc/classes/Tree.xml:248
+msgid "Emitted when a cell is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:254
+msgid "Emitted when a column's title is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:260
+msgid ""
+"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
+"to be edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:266
+msgid ""
+"Emitted when the right mouse button is pressed in the empty space of the "
+"tree."
+msgstr ""
+
+#: doc/classes/Tree.xml:272
+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:277
+msgid "Emitted when an item's label is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:283
+msgid "Emitted when an item is collapsed by a click on the folding arrow."
+msgstr ""
+
+#: doc/classes/Tree.xml:288
+msgid ""
+"Emitted when a custom button is pressed (i.e. in a [constant TreeItem."
+"CELL_MODE_CUSTOM] mode cell)."
+msgstr ""
+
+#: doc/classes/Tree.xml:293
+msgid "Emitted when an item's icon is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:298
+msgid "Emitted when an item is edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:303
+msgid "Emitted when an item is edited using the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:309
+msgid "Emitted when an item is selected with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:314
+msgid "Emitted when an item is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:322
+msgid ""
+"Emitted instead of [code]item_selected[/code] if [code]select_mode[/code] is "
+"[constant SELECT_MULTI]."
+msgstr ""
+
+#: doc/classes/Tree.xml:327
+msgid "Emitted when a left mouse button click does not select any item."
+msgstr ""
+
+#: doc/classes/Tree.xml:333
+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:337
+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:341
+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:345
+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:349
+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:353
+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:359
+msgid "The arrow icon used when a foldable item is not collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:362
+msgid "The arrow icon used when a foldable item is collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:365
+msgid ""
+"Default [StyleBox] for the [Tree], i.e. used when the control is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:368
+msgid "[StyleBox] used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:371
+msgid "The horizontal space between each button in a cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:374
+msgid "[StyleBox] used when a button in the tree is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:377
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is checked."
+msgstr ""
+
+#: doc/classes/Tree.xml:380
+msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:383
+msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:386
+msgid ""
+"Default [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:389
+msgid ""
+"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:392
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:395
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:398
+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:401
+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:404
+msgid ""
+"[Color] used to draw possible drop locations. See [enum DropModeFlags] "
+"constants for further description of drop locations."
+msgstr ""
+
+#: doc/classes/Tree.xml:416
+msgid "[Color] of the guideline."
+msgstr ""
+
+#: doc/classes/Tree.xml:419
+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:422
+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:425
+msgid "[Color] of the relationship lines."
+msgstr ""
+
+#: doc/classes/Tree.xml:428
+msgid ""
+"The maximum distance between the mouse cursor and the control's border to "
+"trigger border scrolling when dragging."
+msgstr ""
+
+#: doc/classes/Tree.xml:431
+msgid "The speed of border scrolling."
+msgstr ""
+
+#: doc/classes/Tree.xml:434
+msgid ""
+"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
+"cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:437
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:440
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:443
+msgid "Default text [Color] of the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:446
+msgid "[Font] of the title button's text."
+msgstr ""
+
+#: doc/classes/Tree.xml:449
+msgid "[StyleBox] used when the title button is being hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:452
+msgid "Default [StyleBox] for the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:455
+msgid "[StyleBox] used when the title button is being pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:458
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is unchecked."
+msgstr ""
+
+#: doc/classes/Tree.xml:461
+msgid ""
+"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
+"mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:464
+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:21
+msgid ""
+"Adds a button with [Texture] [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:28
+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:35
+msgid "Resets the background color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:42
+msgid "Resets the color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:49
+msgid "Deselects the given column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:57
+msgid ""
+"Removes the button at index [code]button_idx[/code] in column [code]column[/"
+"code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:65
+msgid ""
+"Returns the [Texture] of the button at index [code]button_idx[/code] in "
+"column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:72
+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:80
+msgid ""
+"Returns the tooltip string for the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:87
+msgid "Returns the column's cell mode."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:93
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:100
+msgid "Returns the custom background color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:107
+msgid "Returns the custom color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:114
+msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:121
+msgid "Returns the given column's icon [Texture]. Error if no icon is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:128
+msgid "Returns the column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:135
+msgid "Returns the [Color] modulating the column's icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:142
+msgid "Returns the icon [Texture] region as [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:149
+msgid ""
+"Returns the metadata value that was set for the given column using [method "
+"set_metadata]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:155
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:162
+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:169
+msgid "Returns the parent TreeItem or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:175
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:182
+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:190
+msgid "Returns the value of a [constant CELL_MODE_RANGE] column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:197
+msgid ""
+"Returns a dictionary containing the range parameters for a given column. The "
+"keys are \"min\", \"max\", \"step\", and \"expr\"."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:204
+msgid "Gets the suffix string shown after the column value."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:211
+msgid "Returns the given column's text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:218
+msgid "Returns the given column's text alignment."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:225
+msgid "Returns the given column's tooltip."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:233
+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:240
+msgid "Returns [code]true[/code] if the given column is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:253
+msgid "Returns [code]true[/code] if column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:260
+msgid "Returns [code]true[/code] if column [code]column[/code] is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:267
+msgid "Returns [code]true[/code] if column [code]column[/code] is selected."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:273
+msgid "Moves this TreeItem to the bottom in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:279
+msgid "Moves this TreeItem to the top in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:286
+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:293
+msgid "Selects the column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:302
+msgid ""
+"Sets the given column's button [Texture] at index [code]button_idx[/code] to "
+"[code]button[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:311
+msgid ""
+"If [code]true[/code], disables the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:319
+msgid ""
+"Sets the given column's cell mode to [code]mode[/code]. See [enum "
+"TreeCellMode] constants."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:327
+msgid "If [code]true[/code], the column [code]column[/code] is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:343
+msgid ""
+"Sets the given column's custom background color and whether to just use it "
+"as an outline."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:351
+msgid "Sets the given column's custom color."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:360
+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:369
+msgid "If [code]true[/code], column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:377
+msgid ""
+"If [code]true[/code], column [code]column[/code] is expanded to the right."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:385
+msgid "Sets the given column's icon [Texture]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:393
+msgid "Sets the given column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:401
+msgid "Modulates the given column's icon with [code]modulate[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:409
+msgid "Sets the given column's icon's texture region."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:417
+msgid ""
+"Sets the metadata value for the given column, which can be retrieved later "
+"using [method get_metadata]. This can be used, for example, to store a "
+"reference to the original data."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:425
+msgid "Sets the value of a [constant CELL_MODE_RANGE] column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:436
+msgid ""
+"Sets the range of accepted values for a column. The column must be in the "
+"[constant CELL_MODE_RANGE] mode.\n"
+"If [code]expr[/code] is [code]true[/code], the edit mode slider will use an "
+"exponential scale as with [member Range.exp_edit]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:445
+msgid "If [code]true[/code], the given column is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:453
+msgid ""
+"Sets a string to be shown after a column's value (for example, a unit "
+"abbreviation)."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:461
+msgid "Sets the given column's text value."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:469
+msgid ""
+"Sets the given column's text alignment. See [enum TextAlign] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:477
+msgid "Sets the given column's tooltip text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:483
+msgid "If [code]true[/code], the TreeItem is collapsed."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:486
+msgid "The custom minimum height."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:489
+msgid "If [code]true[/code], folding is disabled for this TreeItem."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:494
+msgid "Cell contains a string."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:497
+msgid "Cell contains a checkbox."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:500
+msgid "Cell contains a range."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:503
+msgid "Cell contains an icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:508
+msgid "Align text to the left. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:511
+msgid "Center text. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:514
+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] (e.g. [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:36
+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:52
+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:59
+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:73
+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:87
+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:101
+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:116
+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:123
+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:132
+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:138
+msgid "Stops animation and removes all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:146
+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:152
+msgid ""
+"Resets all tweens to their initial values (the ones given, not those before "
+"the tween)."
+msgstr ""
+
+#: doc/classes/Tween.xml:160
+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:166
+msgid "Continues animating all stopped tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:173
+msgid "Sets the interpolation to the given [code]time[/code] in seconds."
+msgstr ""
+
+#: doc/classes/Tween.xml:180
+msgid ""
+"Activates/deactivates the tween. See also [method stop_all] and [method "
+"resume_all]."
+msgstr ""
+
+#: doc/classes/Tween.xml:186
+msgid "Starts the tween. You can define animations both before and after this."
+msgstr ""
+
+#: doc/classes/Tween.xml:194
+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:200
+msgid "Stops animating all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:215
+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:231
+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:238
+msgid "Returns the current time of the tween."
+msgstr ""
+
+#: doc/classes/Tween.xml:244
+msgid "The tween's animation process thread. See [enum TweenProcessMode]."
+msgstr ""
+
+#: doc/classes/Tween.xml:247
+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:250
+msgid "If [code]true[/code], the tween loops."
+msgstr ""
+
+#: doc/classes/Tween.xml:256
+msgid "Emitted when all processes in a tween end."
+msgstr ""
+
+#: doc/classes/Tween.xml:263
+msgid "Emitted when a tween ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:270
+msgid "Emitted when a tween starts."
+msgstr ""
+
+#: doc/classes/Tween.xml:279
+msgid "Emitted at each step of the animation."
+msgstr ""
+
+#: doc/classes/Tween.xml:285
+msgid "The tween updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:288
+msgid "The tween updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:291
+msgid "The animation is interpolated linearly."
+msgstr ""
+
+#: doc/classes/Tween.xml:294
+msgid "The animation is interpolated using a sine function."
+msgstr ""
+
+#: doc/classes/Tween.xml:297
+msgid ""
+"The animation is interpolated with a quintic (to the power of 5) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:300
+msgid ""
+"The animation is interpolated with a quartic (to the power of 4) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:303
+msgid ""
+"The animation is interpolated with a quadratic (to the power of 2) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:306
+msgid ""
+"The animation is interpolated with an exponential (to the power of x) "
+"function."
+msgstr ""
+
+#: doc/classes/Tween.xml:309
+msgid ""
+"The animation is interpolated with elasticity, wiggling around the edges."
+msgstr ""
+
+#: doc/classes/Tween.xml:312
+msgid ""
+"The animation is interpolated with a cubic (to the power of 3) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:315
+msgid "The animation is interpolated with a function using square roots."
+msgstr ""
+
+#: doc/classes/Tween.xml:318
+msgid "The animation is interpolated by bouncing at the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:321
+msgid "The animation is interpolated backing out at ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:324
+msgid "The interpolation starts slowly and speeds up towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:327
+msgid "The interpolation starts quickly and slows down towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:330
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is slowest at both ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:333
+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:61
+msgid ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:67
+msgid ""
+"Returns [code]true[/code] if the socket is open and listening on a port."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:75
+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:81
+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:87
+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:93
+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:99
+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:39
+msgid "Register a method that will be called when the action is committed."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:48
+msgid "Register a property value change for \"do\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:55
+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:63
+msgid "Register a method that will be called when the action is undone."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:72
+msgid "Register a property value change for \"undo\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:79
+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:86
+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:93
+msgid ""
+"Commit the action. All \"do\" methods/properties are called/set when this "
+"function is called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:101
+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:108
+msgid "Gets the name of the current action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:114
+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:133
+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:139
+msgid "Redo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:145
+msgid "Undo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:152
+msgid "Called when [method undo] or [method redo] was called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:158
+msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:161
+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:164
+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]\n"
+"[b]Note:[/b] UPnP discovery blocks the current thread. To perform discovery "
+"without blocking the main thread, use [Thread]s like this:\n"
+"[codeblock]\n"
+"# Emitted when UPnP port mapping setup is completed (regardless of success "
+"or failure).\n"
+"signal upnp_completed(error)\n"
+"\n"
+"# Replace this with your own server port number between 1025 and 65535.\n"
+"const SERVER_PORT = 3928\n"
+"var thread = null\n"
+"\n"
+"func _upnp_setup(server_port):\n"
+" # UPNP queries take some time.\n"
+" var upnp = UPNP.new()\n"
+" var err = upnp.discover()\n"
+"\n"
+" if err != OK:\n"
+" push_error(str(err))\n"
+" emit_signal(\"upnp_completed\", err)\n"
+" return\n"
+"\n"
+" if upnp.get_gateway() and upnp.get_gateway().is_valid_gateway():\n"
+" upnp.add_port_mapping(server_port, server_port, ProjectSettings."
+"get_setting(\"application/config/name\"), \"UDP\")\n"
+" upnp.add_port_mapping(server_port, server_port, ProjectSettings."
+"get_setting(\"application/config/name\"), \"TCP\")\n"
+" emit_signal(\"upnp_completed\", OK)\n"
+"\n"
+"func _ready():\n"
+" thread = Thread.new()\n"
+" thread.start(self, \"_upnp_setup\", SERVER_PORT)\n"
+"\n"
+"func _exit_tree():\n"
+" # Wait for thread finish here to handle game exit while the thread is "
+"running.\n"
+" thread.wait_to_finish()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:59
+msgid "Adds the given [UPNPDevice] to the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:70
+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:79
+msgid "Clears the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:87
+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:96
+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:105
+msgid "Returns the [UPNPDevice] at the given [code]index[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:111
+msgid "Returns the number of discovered [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:117
+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:123
+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:130
+msgid ""
+"Removes the device at [code]index[/code] from the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:138
+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:144
+msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:147
+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:150
+msgid ""
+"Multicast interface to use for discovery. Uses the default multicast "
+"interface if empty."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:155
+msgid "UPNP command or discovery was successful."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:158
+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:161
+msgid ""
+"No port mapping was found for the given port, protocol combination on the "
+"given [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:164
+msgid "Inconsistent parameters."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:167
+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:170
+msgid "The action failed."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:173
+msgid ""
+"The [UPNPDevice] does not allow wildcard values for the source IP address."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:176
+msgid "The [UPNPDevice] does not allow wildcard values for the external port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:179
+msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:182
+msgid "The remote host value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:185
+msgid "The external port value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:188
+msgid ""
+"No port maps are available. May also be returned if port mapping "
+"functionality is not available."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:191
+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:194
+msgid "Conflict with an existing port mapping."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:197
+msgid "External and internal port values must be the same."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:200
+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:203
+msgid "Invalid gateway."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:206
+msgid "Invalid port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:209
+msgid "Invalid protocol."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:212
+msgid "Invalid duration."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:215
+msgid "Invalid arguments."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:218
+msgid "Invalid response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:221
+msgid "Invalid parameter."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:224
+#: modules/upnp/doc_classes/UPNPDevice.xml:69
+msgid "HTTP error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:227
+msgid "Socket error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:230
+msgid "Error allocating memory."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:233
+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:236
+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:239
+#: modules/upnp/doc_classes/UPNPDevice.xml:93
+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:20
+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:28
+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:34
+msgid ""
+"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
+"which potentially supports port forwarding."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:40
+msgid ""
+"Returns the external IP address of this [UPNPDevice] or an empty string."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:46
+msgid "URL to the device description."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:49
+msgid "IDG control URL."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:52
+msgid ""
+"Address of the local machine in the network connecting it to this "
+"[UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:55
+msgid "IGD service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:58
+msgid "IGD status. See [enum IGDStatus]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:61
+msgid "Service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:66
+msgid "OK."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:72
+msgid "Empty HTTP response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:75
+msgid "Returned response contained no URLs."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:78
+msgid "Not a valid IGD."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:81
+msgid "Disconnected."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:84
+msgid "Unknown device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:87
+msgid "Invalid control."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:90
+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/3.4/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:18
+msgid "The vertical space between the [VBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/Vector2.xml:4
+msgid "Vector used for 2D math."
+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"
+"[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:14 doc/classes/Vector3.xml:14
+msgid ""
+"https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab"
+msgstr ""
+
+#: doc/classes/Vector2.xml:24
+msgid ""
+"Constructs a new Vector2 from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:30 doc/classes/Vector3.xml:31
+msgid ""
+"Returns a new vector with all components in absolute values (i.e. positive)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:36
+msgid ""
+"Returns this vector's angle with respect to the positive X axis, or [code]"
+"(1, 0)[/code] vector, in radians.\n"
+"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).\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle.png]Illustration of the returned angle.[/url]\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:46
+msgid ""
+"Returns the angle to the given vector, in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle_to.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Vector2.xml:54
+msgid ""
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle_to_point.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Vector2.xml:61
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:68 doc/classes/Vector3.xml:45
+msgid ""
+"Returns the vector \"bounced off\" from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:74
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:81
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:88
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:98
+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]weight[/code]. [code]weight[/code] is on the range "
+"of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:105 doc/classes/Vector3.xml:75
+msgid ""
+"Returns the normalized vector pointing from this vector to [code]b[/code]. "
+"This is equivalent to using [code](b - a).normalized()[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:112 doc/classes/Vector3.xml:82
+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:120
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:127
+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:136
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:143 doc/classes/Vector3.xml:119
+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:149 doc/classes/Vector3.xml:125
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, [code]false[/code] "
+"otherwise."
+msgstr ""
+
+#: doc/classes/Vector2.xml:155 doc/classes/Vector3.xml:131
+msgid "Returns the length (magnitude) of this vector."
+msgstr ""
+
+#: doc/classes/Vector2.xml:161 doc/classes/Vector3.xml:137
+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:170
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]to[/code] by amount [code]weight[/code]. [code]weight[/code] is on the "
+"range of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:178
+msgid ""
+"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:172
+msgid ""
+"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:186
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]mod[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:193
+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:205
+msgid "Returns the vector projected onto the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:212
+msgid "Returns the vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:219
+msgid ""
+"Returns the vector rotated by [code]phi[/code] radians. See also [method "
+"@GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:225
+msgid ""
+"Returns the vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector2.xml:231
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components. If a component is zero, it returns positive "
+"one."
+msgstr ""
+
+#: doc/classes/Vector2.xml:239 doc/classes/Vector3.xml:243
+msgid ""
+"Returns the result of spherical linear interpolation between this vector and "
+"[code]to[/code], by amount [code]weight[/code]. [code]weight[/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:247 doc/classes/Vector3.xml:251
+msgid "Returns this vector slid along a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:254 doc/classes/Vector3.xml:258
+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:260
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
+msgstr ""
+
+#: doc/classes/Vector2.xml:266 doc/classes/Vector3.xml:271
+msgid ""
+"The vector's X component. Also accessible by using the index position [code]"
+"[0][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:269 doc/classes/Vector3.xml:274
+msgid ""
+"The vector's Y component. Also accessible by using the index position [code]"
+"[1][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:274
+msgid "Enumerated value for the X axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:277
+msgid "Enumerated value for the Y axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:280 doc/classes/Vector3.xml:291
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:283 doc/classes/Vector3.xml:294
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:286 doc/classes/Vector3.xml:297
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:289
+msgid "Left unit vector. Represents the direction of left."
+msgstr ""
+
+#: doc/classes/Vector2.xml:292
+msgid "Right unit vector. Represents the direction of right."
+msgstr ""
+
+#: doc/classes/Vector2.xml:295
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
+msgstr ""
+
+#: doc/classes/Vector2.xml:298
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
+msgstr ""
+
+#: doc/classes/Vector3.xml:4
+msgid "Vector used for 3D math."
+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"
+"[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:25
+msgid "Returns a Vector3 with the given components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:38
+msgid "Returns the unsigned minimum angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector3.xml:51
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:58
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:68
+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]weight[/code]. [code]weight[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:90
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:97
+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:106
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:112
+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:146
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]to[/code] by amount [code]t[/code]. [code]weight[/code] is on the "
+"range of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:152
+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:158
+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:166
+msgid ""
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:179
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:200
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:207
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:215
+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:221
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid ""
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components. If a component is zero, it returns "
+"positive one."
+msgstr ""
+
+#: doc/classes/Vector3.xml:235
+msgid ""
+"Returns the signed angle to the given vector, in radians. The sign of the "
+"angle is positive in a counter-clockwise direction and negative in a "
+"clockwise direction when viewed from the side specified by the [code]axis[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:264
+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:277
+msgid ""
+"The vector's Z component. Also accessible by using the index position [code]"
+"[2][/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:282
+msgid ""
+"Enumerated value for the X axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:285
+msgid ""
+"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:288
+msgid ""
+"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:300
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:303
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:306
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:309
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:312
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:315
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
+msgstr ""
+
+#: doc/classes/VehicleBody.xml:4
+msgid "Physics body that simulates the behavior of a car."
+msgstr ""
+
+#: doc/classes/VehicleBody.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 [CollisionShape] for the main body of your vehicle and "
+"add [VehicleWheel] nodes for the wheels. You should also add a "
+"[MeshInstance] 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 VehicleBody will determine the center "
+"of gravity of your vehicle so it is better to keep this low and move the "
+"[CollisionShape] and [MeshInstance] 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 "
+"[PhysicsBody] class."
+msgstr ""
+
+#: doc/classes/VehicleBody.xml:18
+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 "
+"RigidBody.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/VehicleBody.xml:21
+msgid ""
+"Accelerates the vehicle by applying an engine force. The vehicle is only "
+"speed up if the wheels that have [member VehicleWheel.use_as_traction] set "
+"to [code]true[/code] and are in contact with a surface. The [member "
+"RigidBody.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/VehicleBody.xml:27
+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 "
+"VehicleWheel.use_as_steering] set to [code]true[/code] will automatically be "
+"rotated."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:4
+msgid "Physics object that simulates the behavior of a wheel."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:7
+msgid ""
+"This node needs to be used as a child node of [VehicleBody] 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 "
+"[PhysicsBody] class."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:17
+msgid "Returns the rotational speed of the wheel in revolutions per minute."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:23
+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/VehicleWheel.xml:29
+msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:35
+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 RigidBody.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/VehicleWheel.xml:38
+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/VehicleWheel.xml:41
+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/VehicleWheel.xml:44
+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 RigidBody.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/VehicleWheel.xml:49
+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/VehicleWheel.xml:52
+msgid ""
+"The maximum force the spring can resist. This value should be higher than a "
+"quarter of the [member RigidBody.mass] of the [VehicleBody] 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/VehicleWheel.xml:55
+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/VehicleWheel.xml:58
+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/VehicleWheel.xml:61
+msgid ""
+"If [code]true[/code], this wheel will be turned when the car steers. This "
+"value is used in conjunction with [member VehicleBody.steering] and ignored "
+"if you are using the per-wheel [member steering] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:64
+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 "
+"VehicleBody.engine_force] and ignored if you are using the per-wheel [member "
+"engine_force] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:67
+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/VehicleWheel.xml:71
+msgid "The radius of the wheel in meters."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:74
+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/VehicleWheel.xml:77
+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] "
+"([code].webm[/code], [VideoStreamWebm]), [url=https://www.theora.org/]Ogg "
+"Theora[/url] ([code].ogv[/code], [VideoStreamTheora]), and any format "
+"exposed via a GDNative plugin using [VideoStreamGDNative].\n"
+"[b]Note:[/b] Due to a bug, VideoPlayer does not support localization "
+"remapping yet.\n"
+"[b]Warning:[/b] On HTML5, video playback [i]will[/i] perform poorly due to "
+"missing architecture-specific assembly optimizations, especially for VP8/VP9."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:18
+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 [Texture]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:30
+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:37
+msgid ""
+"Starts the video playback from the beginning. If the video is paused, this "
+"will not unpause the video."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:43
+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:50
+msgid "The embedded audio track to play."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:53
+msgid "If [code]true[/code], playback starts when the scene loads."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:56
+msgid "Amount of time in milliseconds to store in buffer while playing."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:59
+msgid "Audio bus to use for sound playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:62
+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:65
+msgid "If [code]true[/code], the video is paused."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:68
+msgid "The assigned video stream. See description for supported formats."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:71
+msgid ""
+"The current position of the stream, in seconds.\n"
+"[b]Note:[/b] Changing this value won't have any effect as seeking is not "
+"implemented yet, except in video formats implemented by a GDNative add-on."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:75
+msgid "Audio volume as a linear value."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:78
+msgid "Audio volume in dB."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:84
+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:16
+msgid "Returns the video file handled by this [VideoStreamGDNative]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:23
+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. The Theora codec is less "
+"efficient than [VideoStreamWebm]'s VP8 and VP9, but it requires less CPU "
+"resources to decode. The Theora codec is decoded on the CPU.\n"
+"[b]Note:[/b] While Ogg Theora videos can also have an [code].ogg[/code] "
+"extension, you will have to rename the extension to [code].ogv[/code] to use "
+"those videos within Godot."
+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:23
+msgid ""
+"Sets the Ogg Theora video file that this [VideoStreamTheora] resource "
+"handles. The [code]file[/code] name should have the [code].ogv[/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. Both the VP8 and VP9 "
+"codecs are supported. The VP8 and VP9 codecs are more efficient than "
+"[VideoStreamTheora], but they require more CPU resources to decode "
+"(especially VP9). Both the VP8 and VP9 codecs are decoded on the CPU.\n"
+"[b]Note:[/b] Alpha channel (also known as transparency) is not supported. "
+"The video will always appear to have a black background, even if it "
+"originally contains an alpha channel.\n"
+"[b]Note:[/b] There are known bugs and performance issues with WebM video "
+"playback in Godot. If you run into problems, try using the Ogg Theora format "
+"instead: [VideoStreamTheora]"
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:17
+msgid "Returns the WebM video file handled by this [VideoStreamWebm]."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:24
+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 Camera "
+"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 [ViewportContainer], 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/3.4/tutorials/viewports/index.html"
+msgstr ""
+
+#: doc/classes/Viewport.xml:18 doc/classes/ViewportTexture.xml:12
+msgid "https://godotengine.org/asset-library/asset/128"
+msgstr ""
+
+#: doc/classes/Viewport.xml:20
+msgid "https://godotengine.org/asset-library/asset/130"
+msgstr ""
+
+#: doc/classes/Viewport.xml:21
+msgid "https://godotengine.org/asset-library/asset/541"
+msgstr ""
+
+#: doc/classes/Viewport.xml:22 doc/classes/ViewportTexture.xml:14
+msgid "https://godotengine.org/asset-library/asset/586"
+msgstr ""
+
+#: doc/classes/Viewport.xml:28
+msgid ""
+"Returns the 3D world of the viewport, or if none the world of the parent "
+"viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:34
+msgid "Returns the 2D world of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:40
+msgid "Returns the active 3D camera."
+msgstr ""
+
+#: doc/classes/Viewport.xml:46
+msgid "Returns the total transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:52
+msgid "Returns the topmost modal in the stack."
+msgstr ""
+
+#: doc/classes/Viewport.xml:58
+msgid "Returns the mouse position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:65
+msgid "Returns information about the viewport from the rendering pipeline."
+msgstr ""
+
+#: doc/classes/Viewport.xml:72
+msgid "Returns the [enum ShadowAtlasQuadrantSubdiv] of the specified quadrant."
+msgstr ""
+
+#: doc/classes/Viewport.xml:78
+msgid "Returns the size override set with [method set_size_override]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:84
+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 Texture.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:95
+msgid "Returns the viewport's RID from the [VisualServer]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:101
+msgid "Returns the visible rectangle in global screen coordinates."
+msgstr ""
+
+#: doc/classes/Viewport.xml:107
+msgid ""
+"Returns the drag data from the GUI, that was previously returned by [method "
+"Control.get_drag_data]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:113
+msgid "Returns [code]true[/code] if there are visible modals on-screen."
+msgstr ""
+
+#: doc/classes/Viewport.xml:119
+msgid ""
+"Returns [code]true[/code] if the viewport is currently performing a drag "
+"operation."
+msgstr ""
+
+#: doc/classes/Viewport.xml:136
+msgid ""
+"Returns [code]true[/code] if the size override is enabled. See [method "
+"set_size_override]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:143
+msgid ""
+"Attaches this [Viewport] to the root [Viewport] with the specified "
+"rectangle. This bypasses the need for another node to display this "
+"[Viewport] but makes you responsible for updating the position of this "
+"[Viewport] manually."
+msgstr ""
+
+#: doc/classes/Viewport.xml:149
+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:166
+msgid ""
+"Sets the size override of the viewport. If the [code]enable[/code] parameter "
+"is [code]true[/code] the override is used, otherwise it uses the default "
+"size. If the size parameter is [code](-1, -1)[/code], it won't update the "
+"size."
+msgstr ""
+
+#: doc/classes/Viewport.xml:178
+msgid "Forces update of the 2D and 3D worlds."
+msgstr ""
+
+#: doc/classes/Viewport.xml:185
+msgid "Warps the mouse to a position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:191
+msgid "If [code]true[/code], the viewport will be used in AR/VR process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:194
+msgid "If [code]true[/code], the viewport will process 2D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:197
+msgid "If [code]true[/code], the viewport will process 3D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:200
+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:203
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be "
+"[code]true[/code] for debanding to be effective."
+msgstr ""
+
+#: doc/classes/Viewport.xml:207
+msgid "The overlay mode for test rendered geometry in debug purposes."
+msgstr ""
+
+#: doc/classes/Viewport.xml:210
+msgid ""
+"If [code]true[/code], the viewport will disable 3D rendering. For actual "
+"disabling use [code]usage[/code]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:213
+msgid ""
+"Enables 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [member "
+"sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/Viewport.xml:216
+msgid ""
+"The global canvas transform of the viewport. The canvas transform is "
+"relative to this."
+msgstr ""
+
+#: doc/classes/Viewport.xml:219
+msgid "If [code]true[/code], the viewport will not receive input events."
+msgstr ""
+
+#: doc/classes/Viewport.xml:222
+msgid ""
+"If [code]true[/code], the GUI controls on the viewport will lay pixel "
+"perfectly."
+msgstr ""
+
+#: doc/classes/Viewport.xml:227
+msgid ""
+"If [code]true[/code], the viewport rendering will receive benefits from High "
+"Dynamic Range algorithm. High Dynamic Range allows the viewport to receive "
+"values that are outside the 0-1 range. In Godot HDR uses 16 bits, meaning it "
+"does not store the full range of a floating point number.\n"
+"[b]Note:[/b] Requires [member usage] to be set to [constant USAGE_3D] or "
+"[constant USAGE_3D_NO_EFFECTS], since HDR is not supported for 2D."
+msgstr ""
+
+#: doc/classes/Viewport.xml:231
+msgid ""
+"If [code]true[/code], the result after 3D rendering will not have a linear "
+"to sRGB color conversion applied. This is important when the viewport is "
+"used as a render target where the result is used as a texture on a 3D object "
+"rendered in another viewport. It is also important if the viewport is used "
+"to create data that is not color based (noise, heightmaps, pickmaps, etc.). "
+"Do not enable this when the viewport is used as a texture on a 2D object or "
+"if the viewport is your final output. For the GLES2 driver this will convert "
+"the sRGB output to linear, this should only be used for VR plugins that "
+"require input in linear color space!"
+msgstr ""
+
+#: doc/classes/Viewport.xml:234
+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:237
+msgid ""
+"If [code]true[/code], the viewport will use [World] defined in [code]world[/"
+"code] property."
+msgstr ""
+
+#: doc/classes/Viewport.xml:240
+msgid ""
+"If [code]true[/code], the objects rendered by viewport become subjects of "
+"mouse picking process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:243
+msgid ""
+"If [code]true[/code], renders the Viewport directly to the screen instead of "
+"to the root viewport. Only available in GLES2. This is a low-level "
+"optimization and should not be used in most cases. If used, reading from the "
+"Viewport or from [code]SCREEN_TEXTURE[/code] becomes unavailable. For more "
+"information see [method VisualServer.viewport_set_render_direct_to_screen]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:246
+msgid ""
+"The clear mode when viewport used as a render target.\n"
+"[b]Note:[/b] This property is intended for 2D usage."
+msgstr ""
+
+#: doc/classes/Viewport.xml:250
+msgid "The update mode when viewport used as a render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:253
+msgid ""
+"If [code]true[/code], the result of rendering will be flipped vertically."
+msgstr ""
+
+#: doc/classes/Viewport.xml:256
+msgid "The subdivision amount of the first quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:259
+msgid "The subdivision amount of the second quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:262
+msgid "The subdivision amount of the third quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:265
+msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:268
+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:272
+msgid ""
+"If set to a value greater than [code]0.0[/code], contrast-adaptive "
+"sharpening will be applied to the 3D viewport. This has a low performance "
+"cost and can be used to recover some of the sharpness lost from using FXAA. "
+"Values around [code]0.5[/code] generally give the best results. See also "
+"[member fxaa]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:275
+msgid ""
+"The width and height of viewport. Must be set to a value greater than or "
+"equal to 2 pixels on both dimensions. Otherwise, nothing will be displayed."
+msgstr ""
+
+#: doc/classes/Viewport.xml:278
+msgid "If [code]true[/code], the size override affects stretch as well."
+msgstr ""
+
+#: doc/classes/Viewport.xml:281
+msgid ""
+"If [code]true[/code], the viewport should render its background as "
+"transparent."
+msgstr ""
+
+#: doc/classes/Viewport.xml:284
+msgid "The rendering mode of viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:287
+msgid "The custom [World] which can be used as 3D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:290
+msgid "The custom [World2D] which can be used as 2D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:297
+msgid "Emitted when a Control node grabs keyboard focus."
+msgstr ""
+
+#: doc/classes/Viewport.xml:302
+msgid ""
+"Emitted when the size of the viewport is changed, whether by [method "
+"set_size_override], resize of window, or some other means."
+msgstr ""
+
+#: doc/classes/Viewport.xml:308
+msgid "Do not update the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:311
+msgid ""
+"Update the render target once, then switch to [constant UPDATE_DISABLED]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:314
+msgid ""
+"Update the render target only when it is visible. This is the default value."
+msgstr ""
+
+#: doc/classes/Viewport.xml:317
+msgid "Always update the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:320
+msgid "This quadrant will not be used."
+msgstr ""
+
+#: doc/classes/Viewport.xml:323
+msgid "This quadrant will only be used by one shadow map."
+msgstr ""
+
+#: doc/classes/Viewport.xml:326
+msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:329
+msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:332
+msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:335
+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:338
+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:341
+msgid "Represents the size of the [enum ShadowAtlasQuadrantSubdiv] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:344
+msgid "Amount of objects in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:347
+msgid "Amount of vertices in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:350
+msgid "Amount of material changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:353
+msgid "Amount of shader changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:356
+msgid "Amount of surface changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:359 doc/classes/Viewport.xml:365
+msgid "Amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:362
+msgid "Amount of items or joined items in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:368
+msgid "Represents the size of the [enum RenderInfo] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:371
+msgid "Objects are displayed normally."
+msgstr ""
+
+#: doc/classes/Viewport.xml:374
+msgid "Objects are displayed without light information."
+msgstr ""
+
+#: doc/classes/Viewport.xml:377
+msgid ""
+"Objected are displayed semi-transparent with additive blending so you can "
+"see where they intersect."
+msgstr ""
+
+#: doc/classes/Viewport.xml:380
+msgid "Objects are displayed in wireframe style."
+msgstr ""
+
+#: doc/classes/Viewport.xml:383
+msgid "Multisample anti-aliasing mode disabled. This is the default value."
+msgstr ""
+
+#: doc/classes/Viewport.xml:386
+msgid "Use 2x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:389
+msgid "Use 4x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:392
+msgid ""
+"Use 8x Multisample Antialiasing. Likely unsupported on low-end and older "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:395
+msgid ""
+"Use 16x Multisample Antialiasing. Likely unsupported on medium and low-end "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:398
+msgid ""
+"Allocates all buffers needed for drawing 2D scenes. This takes less VRAM "
+"than the 3D usage modes. Note that 3D rendering effects such as glow and HDR "
+"are not available when using this mode."
+msgstr ""
+
+#: doc/classes/Viewport.xml:401
+msgid ""
+"Allocates buffers needed for 2D scenes without allocating a buffer for "
+"screen copy. Accordingly, you cannot read from the screen. Of the [enum "
+"Usage] types, this requires the least VRAM. Note that 3D rendering effects "
+"such as glow and HDR are not available when using this mode."
+msgstr ""
+
+#: doc/classes/Viewport.xml:404
+msgid ""
+"Allocates full buffers for drawing 3D scenes and all 3D effects including "
+"buffers needed for 2D scenes and effects."
+msgstr ""
+
+#: doc/classes/Viewport.xml:407
+msgid ""
+"Allocates buffers needed for drawing 3D scenes. But does not allocate "
+"buffers needed for reading from the screen and post-processing effects. "
+"Saves some VRAM."
+msgstr ""
+
+#: doc/classes/Viewport.xml:410
+msgid "Always clear the render target before drawing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:413
+msgid "Never clear the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:416
+msgid ""
+"Clear the render target next frame, then switch to [constant "
+"CLEAR_MODE_NEVER]."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:4
+msgid "Control for holding [Viewport]s."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:7
+msgid ""
+"A [Container] node that holds a [Viewport], automatically setting its size.\n"
+"[b]Note:[/b] Changing a ViewportContainer'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/ViewportContainer.xml:16
+msgid ""
+"If [code]true[/code], the viewport will be scaled to the control's size."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:19
+msgid ""
+"Divides the 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 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/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 [Texture]. 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:22
+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/VisibilityEnabler.xml:4 doc/classes/VisibilityEnabler2D.xml:4
+msgid "Enables certain nodes only when approximately visible."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:7
+msgid ""
+"The VisibilityEnabler will disable [RigidBody] and [AnimationPlayer] nodes "
+"when they are not visible. It will only affect other nodes within the same "
+"scene as the VisibilityEnabler itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier] "
+"instead.\n"
+"[b]Note:[/b] VisibilityEnabler 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 "
+"[Area] node as a child of a [Camera] node and/or [method Vector3.dot].\n"
+"[b]Note:[/b] VisibilityEnabler will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:19 doc/classes/VisibilityEnabler2D.xml:19
+msgid ""
+"Returns whether the enabler identified by given [enum Enabler] constant is "
+"active."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:27 doc/classes/VisibilityEnabler2D.xml:27
+msgid ""
+"Sets active state of the enabler identified by given [enum Enabler] constant."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:33
+msgid "If [code]true[/code], [RigidBody] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:36 doc/classes/VisibilityEnabler2D.xml:39
+msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:41 doc/classes/VisibilityEnabler2D.xml:53
+msgid "This enabler will pause [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:44
+msgid "This enabler will freeze [RigidBody] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:47 doc/classes/VisibilityEnabler2D.xml:71
+msgid "Represents the size of the [enum Enabler] enum."
+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:33
+msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:36
+msgid "If [code]true[/code], [AnimatedSprite] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:42
+msgid "If [code]true[/code], [Particles2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:45
+msgid ""
+"If [code]true[/code], the parent's [method Node._physics_process] will be "
+"stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:48
+msgid ""
+"If [code]true[/code], the parent's [method Node._process] will be stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:56
+msgid "This enabler will freeze [RigidBody2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:59
+msgid "This enabler will stop [Particles2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:62
+msgid "This enabler will stop the parent's _process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:65
+msgid "This enabler will stop the parent's _physics_process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:68
+msgid "This enabler will stop [AnimatedSprite] nodes animations."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:4 doc/classes/VisibilityNotifier2D.xml:4
+msgid "Detects approximately when the node is visible on screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:7
+msgid ""
+"The VisibilityNotifier detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"[Camera]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler] instead.\n"
+"[b]Note:[/b] VisibilityNotifier 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 [Area] node as a child of a [Camera] node and/or [method Vector3.dot]."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:17
+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/VisibilityNotifier.xml:24
+msgid "The VisibilityNotifier's bounding box."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:31
+msgid "Emitted when the VisibilityNotifier enters a [Camera]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:37
+msgid "Emitted when the VisibilityNotifier exits a [Camera]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:42
+msgid "Emitted when the VisibilityNotifier enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:47
+msgid "Emitted when the VisibilityNotifier exits the 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:42
+msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:48
+msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:4
+msgid "Parent of all visual 3D nodes."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:7
+msgid ""
+"The [VisualInstance] is used to connect a resource to a visual "
+"representation. All visual 3D nodes inherit from the [VisualInstance]. In "
+"general, you should not access the [VisualInstance] properties directly as "
+"they are accessed and managed by the nodes that inherit from "
+"[VisualInstance]. [VisualInstance] is the node representation of the "
+"[VisualServer] instance."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:15
+msgid ""
+"Returns the [AABB] (also known as the bounding box) for this "
+"[VisualInstance]. See also [method get_transformed_aabb]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:21
+msgid ""
+"Returns the RID of the resource associated with this [VisualInstance]. For "
+"example, if the Node is a [MeshInstance], this will return the RID of the "
+"associated [Mesh]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:27
+msgid ""
+"Returns the RID of this instance. This RID is the same as the RID returned "
+"by [method VisualServer.instance_create]. This RID is needed if you want to "
+"call [VisualServer] functions directly on this [VisualInstance]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:34
+msgid ""
+"Returns [code]true[/code] when the specified layer is enabled in [member "
+"layers] and [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:40
+msgid ""
+"Returns the transformed [AABB] (also known as the bounding box) for this "
+"[VisualInstance].\n"
+"Transformed in this case means the [AABB] plus the position, rotation, and "
+"scale of the [Spatial]'s [Transform]. See also [method get_aabb]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:48
+msgid ""
+"Sets the resource that is instantiated by this [VisualInstance], which "
+"changes how the engine handles the [VisualInstance] under the hood. "
+"Equivalent to [method VisualServer.instance_set_base]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:56
+msgid "Enables a particular layer in [member layers]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:62
+msgid ""
+"The render layer(s) this [VisualInstance] is drawn on.\n"
+"This object will only be visible for [Camera]s whose cull mask includes the "
+"render object this [VisualInstance] 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/3.4/getting_started/scripting/visual_script/"
+"index.html"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:19
+msgid "Add a custom signal with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:26
+msgid "Add a function with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:36
+msgid "Add a node to a function of the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:45
+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:55
+msgid ""
+"Add an argument to a custom signal added with [method add_custom_signal]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:62
+msgid "Get the count of a custom signal's arguments."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:70
+msgid "Get the name of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:78
+msgid "Get the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:86
+msgid "Remove a specific custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:95
+msgid "Rename a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:104
+msgid "Change the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:113
+msgid "Swap two of the arguments of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:124
+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:135
+msgid ""
+"Disconnect two data ports previously connected with [method data_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:142
+msgid "Returns the id of a function's entry point node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:149
+msgid "Returns the position of the center of the screen for a given function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:157
+msgid "Returns a node given its id and its function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:165
+msgid "Returns a node's position in pixels."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:172
+msgid "Returns the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:179
+msgid "Returns whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:186
+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:193
+msgid "Returns whether a signal exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:204
+msgid "Returns whether the specified data ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:211
+msgid "Returns whether a function exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:219
+msgid "Returns whether a node exists with the given id."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:229
+msgid "Returns whether the specified sequence ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:236
+msgid "Returns whether a variable exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:243
+msgid "Remove a custom signal with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:250
+msgid "Remove a specific function and its nodes from the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:258
+msgid "Remove a specific node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:265
+msgid "Remove a variable with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:273
+msgid "Change the name of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:281
+msgid "Change the name of a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:289
+msgid "Change the name of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:299
+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:310
+msgid ""
+"Disconnect two sequence ports previously connected with [method "
+"sequence_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:318
+msgid "Position the center of the screen for a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:325
+msgid "Set the base type of the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:334
+msgid "Position a node on the screen."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:342
+msgid "Change the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:350
+msgid "Change whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:358
+msgid ""
+"Set a variable's info, using the same format as [method get_variable_info]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:367
+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 [PoolByteArray]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:203
+msgid ""
+"Deserialize a [Variant] from a [PoolByteArray] 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:15
+msgid "Return the node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:21
+msgid "Return the node's category."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:27
+msgid "Return the count of input value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:34
+msgid ""
+"Return the specified input port's hint. See the [enum @GlobalScope."
+"PropertyHint] hints."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:41
+msgid "Return the specified input port's hint string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:48
+msgid "Return the specified input port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:55
+msgid ""
+"Return the specified input port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:61
+msgid "Return the amount of output [b]sequence[/b] ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:68
+msgid "Return the specified [b]sequence[/b] output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:74
+msgid "Return the amount of output value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:81
+msgid ""
+"Return the specified output port's hint. See the [enum @GlobalScope."
+"PropertyHint] hints."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:88
+msgid "Return the specified output port's hint string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:95
+msgid "Return the specified output port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:102
+msgid ""
+"Return the specified output port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:108
+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:114
+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:120
+msgid "Return whether the custom node has an input [b]sequence[/b] port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:130
+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. The size needs to be predefined "
+"using [method _get_working_memory_size].\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:141
+msgid "The start mode used the first time when [method _step] is called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:144
+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:147
+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:150
+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:154
+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:159
+msgid ""
+"Hint used by [method _step] to tell that control should stop and exit the "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:162
+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:16
+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:24
+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:31
+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/VisualScriptExpression.xml:4
+msgid "A Visual Script node that can execute a custom expression."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptExpression.xml:7
+msgid ""
+"A Visual Script node that can execute a custom expression. Values can be "
+"provided for the input and the expression result can be retrieved from the "
+"output."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunction.xml:4
+msgid "A Visual Script node representing a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunction.xml:7
+msgid ""
+"[VisualScriptFunction] represents a function header. It is the starting "
+"point for the function body and can be used to tweak the function's "
+"properties (e.g. RPC mode)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:4
+msgid "A Visual Script node for calling a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:7
+msgid ""
+"[VisualScriptFunctionCall] is created when you add or drag and drop a "
+"function onto the Visual Script graph. It allows to tweak parameters of the "
+"call, e.g. what object the function is called on."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:15
+msgid ""
+"The script to be used when [member call_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:18
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:15
+msgid ""
+"The base type to be used when [member call_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:21
+msgid ""
+"The type to be used when [member call_mode] is set to [constant "
+"CALL_MODE_BASIC_TYPE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:24
+msgid ""
+"[code]call_mode[/code] determines the target object on which the method will "
+"be called. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:27
+msgid "The name of the function to be called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:30
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:21
+msgid ""
+"The node path to use when [member call_mode] is set to [constant "
+"CALL_MODE_NODE_PATH]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:33
+msgid ""
+"The mode for RPC calls. See [method Node.rpc] for more details and [enum "
+"RPCCallMode] for available options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:36
+msgid ""
+"The singleton to call the method on. Used when [member call_mode] is set to "
+"[constant CALL_MODE_SINGLETON]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:39
+msgid ""
+"Number of default arguments that will be used when calling the function. "
+"Can't be higher than the number of available default arguments in the "
+"method's declaration."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:42
+msgid ""
+"If [code]false[/code], call errors (e.g. wrong number of arguments) will be "
+"ignored."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:47
+msgid "The method will be called on this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:50
+msgid "The method will be called on the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:53
+msgid ""
+"The method will be called on an instanced node with the given type and "
+"script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:56
+msgid "The method will be called on a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:59
+msgid "The method will be called on a singleton."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:62
+msgid "The method will be called locally."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:65
+msgid "The method will be called remotely."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:68
+msgid "The method will be called remotely using an unreliable protocol."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:71
+msgid "The method will be called remotely for the given peer."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:74
+msgid ""
+"The method will be called remotely for the given peer, using an unreliable "
+"protocol."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:4
+msgid "A Visual Script node representing a function state."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:7
+msgid ""
+"[VisualScriptFunctionState] is returned from [VisualScriptYield] and can be "
+"used to resume a paused function call."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:18
+msgid ""
+"Connects this [VisualScriptFunctionState] to a signal in the given object to "
+"automatically resume when it's emitted."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:24
+msgid "Returns whether the function state is valid."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:31
+msgid "Resumes the function to run from the point it was yielded."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:4
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:7
+msgid "A Visual Script node returning a constant from [@GlobalScope]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:15
+msgid "The constant to be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexGet.xml:4
+msgid "A Visual Script node for getting a value from an array or a dictionary."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexGet.xml:7
+msgid ""
+"[VisualScriptIndexGet] will return the value stored in an array or a "
+"dictionary under the given index."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexSet.xml:4
+msgid "A Visual Script node for setting a value in an array or a dictionary."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexSet.xml:7
+msgid ""
+"[VisualScriptIndexSet] will set the value stored in an array or a dictionary "
+"under the given index to the provided new value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:4
+msgid "A Visual Script node returning a state of an action."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:7
+msgid ""
+"[VisualScriptInputAction] can be used to check if an action is pressed or "
+"released."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:15
+msgid "Name of the action."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:18
+msgid "State of the action to check. See [enum Mode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:23
+msgid "[code]True[/code] if action is pressed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:26
+msgid "[code]True[/code] if action is released (i.e. not pressed)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:29
+msgid "[code]True[/code] on the frame the action was pressed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:32
+msgid "[code]True[/code] on the frame the action was released."
+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 "
+"behavior of the nodes that have to be in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:18
+msgid "Adds an input port to the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:27
+msgid "Adds an output port to the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:34
+msgid "Removes an input port from the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:41
+msgid "Removes an output port from the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:49
+msgid "Sets the name of an input port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:57
+msgid "Sets the type of an input port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:65
+msgid "Sets the name of an output port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:73
+msgid "Sets the type of an output port."
+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:16
+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:22
+msgid "Returns the [VisualScript] instance the node is bound to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:28
+msgid ""
+"Notify that the node's ports have changed. Usually used in conjunction with "
+"[VisualScriptCustomNode] ."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:36
+msgid "Change the default value of a given port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:43
+msgid "Emitted when the available input/output ports are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:4
+msgid "A Visual Script node that performs an operation on two values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:7
+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/VisualScriptOperator.xml:19
+msgid ""
+"The operation to be performed. See [enum Variant.Operator] for available "
+"options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:22
+msgid ""
+"The type of the values for this operation. See [enum Variant.Type] for "
+"available options."
+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/VisualScriptPropertyGet.xml:4
+msgid "A Visual Script node returning a value of a property from an [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:7
+msgid ""
+"[VisualScriptPropertyGet] can return a value of any property from the "
+"current object or other objects."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:15
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:18
+msgid ""
+"The script to be used when [member set_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:18
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:21
+msgid ""
+"The base type to be used when [member set_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:21
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:24
+msgid ""
+"The type to be used when [member set_mode] is set to [constant "
+"CALL_MODE_BASIC_TYPE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:24
+msgid ""
+"The indexed name of the property to retrieve. See [method Object."
+"get_indexed] for details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:27
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:30
+msgid ""
+"The node path to use when [member set_mode] is set to [constant "
+"CALL_MODE_NODE_PATH]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:30
+msgid ""
+"The name of the property to retrieve. Changing this will clear [member "
+"index]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:33
+msgid ""
+"[code]set_mode[/code] determines the target object from which the property "
+"will be retrieved. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:38
+msgid "The property will be retrieved from this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:41
+msgid "The property will be retrieved from the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:44
+msgid ""
+"The property will be retrieved from an instanced node with the given type "
+"and script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:47
+msgid ""
+"The property will be retrieved from a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:4
+msgid "A Visual Script node that sets a property of an [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:7
+msgid ""
+"[VisualScriptPropertySet] can set the value of any property from the current "
+"object or other objects."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:15
+msgid ""
+"The additional operation to perform when assigning. See [enum AssignOp] for "
+"options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:27
+msgid ""
+"The indexed name of the property to set. See [method Object.set_indexed] for "
+"details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:33
+msgid ""
+"The name of the property to set. Changing this will clear [member index]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:36
+msgid ""
+"[code]set_mode[/code] determines the target object on which the property "
+"will be set. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:41
+msgid "The property will be set on this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:44
+msgid "The property will be set on the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:47
+msgid ""
+"The property will be set on an instanced node with the given type and script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:50
+msgid "The property will be set on a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:53
+msgid "The property will be assigned regularly."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:56
+msgid ""
+"The value will be added to the property. Equivalent of doing [code]+=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:59
+msgid ""
+"The value will be subtracted from the property. Equivalent of doing [code]-"
+"=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:62
+msgid ""
+"The property will be multiplied by the value. Equivalent of doing [code]*=[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:65
+msgid ""
+"The property will be divided by the value. Equivalent of doing [code]/=[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:68
+msgid ""
+"A modulo operation will be performed on the property and the value. "
+"Equivalent of doing [code]%=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:71
+msgid ""
+"The property will be binarly shifted to the left by the given value. "
+"Equivalent of doing [code]<<[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:74
+msgid ""
+"The property will be binarly shifted to the right by the given value. "
+"Equivalent of doing [code]>>[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:77
+msgid ""
+"A binary [code]AND[/code] operation will be performed on the property. "
+"Equivalent of doing [code]&=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:80
+msgid ""
+"A binary [code]OR[/code] operation will be performed on the property. "
+"Equivalent of doing [code]|=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:83
+msgid ""
+"A binary [code]XOR[/code] operation will be performed on the property. "
+"Equivalent of doing [code]^=[/code]."
+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/VisualScriptSceneTree.xml:4
+#: modules/visual_script/doc_classes/VisualScriptSceneTree.xml:7
+msgid "A Visual Script node for accessing [SceneTree] methods."
+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/VisualScriptSubCall.xml:4
+msgid "Calls a method called [code]_subcall[/code] in this object."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSubCall.xml:7
+msgid ""
+"[VisualScriptSubCall] will call method named [code]_subcall[/code] in the "
+"current script. It will fail if the method doesn't exist or the provided "
+"arguments are wrong."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSubCall.xml:16
+msgid "Called by this node."
+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/VisualScriptTypeCast.xml:4
+msgid "A Visual Script node that casts the given value to another type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:7
+msgid ""
+"[VisualScriptTypeCast] will perform a type conversion to an [Object]-derived "
+"type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:15
+msgid ""
+"The target script class to be converted to. If none, only the [member "
+"base_type] will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:18
+msgid "The target type to be converted to."
+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 ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:4
+msgid "A Visual Script node used to pause a function execution."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:7
+msgid ""
+"[VisualScriptYield] will pause the function call and return "
+"[VisualScriptFunctionState], which can be used to resume the function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:15
+msgid ""
+"The mode to use for yielding. See [enum YieldMode] for available options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:18
+msgid "The time to wait when [member mode] is set to [constant YIELD_WAIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:23
+msgid "Yields during an idle frame."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:26
+msgid "Yields during a physics frame."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:29
+msgid "Yields a function and waits the given time."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:4
+msgid "A Visual Script node yielding for a signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:7
+msgid ""
+"[VisualScriptYieldSignal] will pause the function execution until the "
+"provided signal is emitted."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:18
+msgid ""
+"[code]call_mode[/code] determines the target object to wait for the signal "
+"emission. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:24
+msgid "The signal name to be waited for."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:29
+msgid "A signal from this [Object] will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:32
+msgid "A signal from the given [Node] in the scene tree will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:35
+msgid "A signal from an instanced node with the given type will be used."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:4
+msgid "Server for anything visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:7
+msgid ""
+"Server for anything visible. The visual server is the API backend for "
+"everything visible. The whole scene system mounts on it to display.\n"
+"The visual server is completely opaque, the internals are entirely "
+"implementation specific and cannot be accessed.\n"
+"The visual 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 visual server from "
+"a running game, the scenario can be accessed from the scene tree from any "
+"[Spatial] node with [method Spatial.get_world]. 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/VisualServer.xml:18
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html"
+msgstr ""
+
+#: doc/classes/VisualServer.xml:28
+msgid "Sets images to be rendered in the window margin."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:38
+msgid ""
+"Sets margin size, where black bars (or images, if [method "
+"black_bars_set_images] was used) are rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:44
+msgid ""
+"Creates a camera and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]camera_*[/code] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:53
+msgid ""
+"Sets the cull mask associated with this camera. The cull mask describes "
+"which 3D layers are rendered by this camera. Equivalent to [member Camera."
+"cull_mask]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:61
+msgid ""
+"Sets the environment used by this camera. Equivalent to [member Camera."
+"environment]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:72
+msgid ""
+"Sets camera to use frustum projection. This mode allows adjusting the "
+"[code]offset[/code] argument to create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:82
+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/VisualServer.xml:92
+msgid ""
+"Sets camera to use perspective projection. Objects on the screen becomes "
+"smaller when they are far away."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:100
+msgid "Sets [Transform] of camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:108
+msgid ""
+"If [code]true[/code], preserves the horizontal aspect ratio which is "
+"equivalent to [constant Camera.KEEP_WIDTH]. If [code]false[/code], preserves "
+"the vertical aspect ratio which is equivalent to [constant Camera."
+"KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:114
+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] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:125
+msgid "Adds a circle command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:133
+msgid ""
+"If ignore is [code]true[/code], the VisualServer does not perform clipping."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:145
+msgid "Adds a line command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:157
+msgid "Adds a mesh command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:167
+msgid ""
+"Adds a [MultiMesh] to the [CanvasItem]'s draw commands. Only affects its "
+"aabb at the moment."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:184
+msgid ""
+"Adds a nine patch image to the [CanvasItem]'s draw commands.\n"
+"See [NinePatchRect] for more explanation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:195
+msgid "Adds a particle system to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:208
+msgid "Adds a polygon to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:219
+msgid ""
+"Adds a polyline, which is a line from multiple points with a width, to the "
+"[CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:232
+msgid "Adds a primitive to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:241
+msgid "Adds a rectangle to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:249
+msgid ""
+"Adds a [Transform2D] command to the [CanvasItem]'s draw commands.\n"
+"This sets the extra_matrix uniform when executed. This affects the later "
+"commands of the canvas item."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:263
+msgid "Adds a textured rect to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:277
+msgid ""
+"Adds a texture rect with region setting to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:295
+msgid "Adds a triangle array to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:302
+msgid "Clears the [CanvasItem] and removes all commands in it."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:308
+msgid ""
+"Creates a new [CanvasItem] and returns its [RID]. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]canvas_item_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:317
+msgid "Sets clipping for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:326
+msgid "Sets the [CanvasItem] to copy a rect to the backbuffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:335
+msgid "Defines a custom drawing rectangle for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:343
+msgid ""
+"Enables the use of distance fields for GUI elements that are rendering "
+"distance field based fonts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:351
+msgid "Sets [CanvasItem] to be drawn behind its parent."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:359
+msgid "Sets the index for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:367 doc/classes/VisualServer.xml:493
+#: doc/classes/VisualServer.xml:549
+msgid ""
+"The light mask. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:375
+msgid "Sets a new material to the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:383
+msgid "Sets the color that modulates the [CanvasItem] and its children."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:391
+msgid ""
+"Sets the parent for the [CanvasItem]. The parent can be another canvas item, "
+"or it can be the root canvas that is attached to the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:399
+msgid "Sets the color that modulates the [CanvasItem] without children."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:407
+msgid "Sets if [CanvasItem]'s children should be sorted by y-position."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:415
+msgid "Sets the [CanvasItem]'s [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:423
+msgid "Sets if the [CanvasItem] uses its parent's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:431
+msgid "Sets if the canvas item (including its children) is visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:439
+msgid ""
+"If this is enabled, the Z index of the parent will be added to the "
+"children's Z index."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:447
+msgid ""
+"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are "
+"drawn first)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:455
+msgid ""
+"Attaches the canvas light to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:461
+msgid ""
+"Creates a canvas light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:470
+msgid ""
+"Attaches a light occluder to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:476
+msgid ""
+"Creates a light occluder and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_ocluder_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:485
+msgid "Enables or disables light occluder."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:501
+msgid "Sets a light occluder's polygon."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:509
+msgid "Sets a light occluder's [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:517
+msgid "Sets the color for a light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:525
+msgid "Enables or disables a canvas light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:533
+msgid "Sets a canvas light's energy."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:541
+msgid "Sets a canvas light's height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:557
+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/VisualServer.xml:566
+msgid "The layer range that gets rendered with this light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:574
+msgid "The mode of the light, see [enum CanvasLightMode] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:582
+msgid ""
+"Sets the texture's scale factor of the light. Equivalent to [member Light2D."
+"texture_scale]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:590
+msgid ""
+"Sets the width of the shadow buffer, size gets scaled to the next power of "
+"two for this."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:598
+msgid "Sets the color of the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:606
+msgid "Enables or disables the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:614
+msgid ""
+"Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] "
+"constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:622
+msgid "Sets the length of the shadow's gradient."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:630
+msgid "Smoothens the shadow. The lower, the smoother."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:638
+msgid ""
+"Sets texture to be used by light. Equivalent to [member Light2D.texture]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:646
+msgid ""
+"Sets the offset of the light's texture. Equivalent to [member Light2D."
+"offset]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:654
+msgid "Sets the canvas light's [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:663
+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/VisualServer.xml:669
+msgid ""
+"Creates a new light occluder polygon and adds it to the VisualServer. It can "
+"be accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_occluder_polygon_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:678
+msgid ""
+"Sets an occluder polygons cull mode. See [enum "
+"CanvasOccluderPolygonCullMode] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:687
+msgid "Sets the shape of the occluder polygon."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:695
+msgid "Sets the shape of the occluder polygon as lines."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:704
+msgid ""
+"A copy of the canvas item will be drawn with a local offset of the mirroring "
+"[Vector2]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:712
+msgid "Modulates all colors in the given canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:718
+msgid ""
+"Creates a directional light and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:728
+msgid ""
+"Draws a frame. [i]This method is deprecated[/i], please use [method "
+"force_draw] instead."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:734
+msgid ""
+"Creates an environment and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]environment_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:747
+msgid ""
+"Sets the values to be used with the \"Adjustment\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:757
+msgid "Sets the ambient light parameters. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:765
+msgid ""
+"Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment."
+"background_mode]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:773
+msgid ""
+"Color displayed for clear areas of the scene (if using Custom color or Color"
+"+Sky background modes)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:781
+msgid "Sets the intensity of the background color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:789
+msgid "Sets the maximum layer to use if using Canvas background mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:801
+msgid ""
+"Sets the values to be used with the \"DoF Far Blur\" post-process effect. "
+"See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:813
+msgid ""
+"Sets the values to be used with the \"DoF Near Blur\" post-process effect. "
+"See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:824
+msgid ""
+"Sets the variables to be used with the scene fog. See [Environment] for more "
+"details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:837
+msgid ""
+"Sets the variables to be used with the fog depth effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:848
+msgid ""
+"Sets the variables to be used with the fog height effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:866
+msgid ""
+"Sets the variables to be used with the \"glow\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:874
+msgid ""
+"Sets the [Sky] to be used as the environment's background when using "
+"[i]BGMode[/i] sky. Equivalent to [member Environment.background_sky]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:882
+msgid ""
+"Sets a custom field of view for the background [Sky]. Equivalent to [member "
+"Environment.background_sky_custom_fov]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:890
+msgid ""
+"Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent "
+"to [member Environment.background_sky_orientation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:909
+msgid ""
+"Sets the variables to be used with the \"Screen Space Ambient Occlusion "
+"(SSAO)\" post-process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:922
+msgid ""
+"Sets the variables to be used with the \"screen space reflections\" post-"
+"process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:937
+msgid ""
+"Sets the variables to be used with the \"tonemap\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:943
+msgid "Removes buffers and clears testcubes."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:951
+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/VisualServer.xml:957
+msgid "Synchronizes threads."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:964
+msgid "Tries to free an object in the VisualServer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:971
+msgid "Returns a certain information, see [enum RenderInfo] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:977
+msgid "Returns the id of the test cube. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:983
+msgid "Returns the id of the test texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:989
+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/VisualServer.xml:996
+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/VisualServer.xml:1003
+msgid "Returns the id of a white texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1009
+msgid ""
+"Creates a GI probe and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]gi_probe_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"To place in a scene, attach this GI probe to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1018
+msgid ""
+"Returns the bias value for the GI probe. Bias is used to avoid self "
+"occlusion. Equivalent to [member GIProbeData.bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1025
+msgid ""
+"Returns the axis-aligned bounding box that covers the full extent of the GI "
+"probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1032
+msgid "Returns the cell size set by [method gi_probe_set_cell_size]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1039
+msgid "Returns the data used by the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1046
+msgid ""
+"Returns the dynamic range set for this GI probe. Equivalent to [member "
+"GIProbe.dynamic_range]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1053
+msgid ""
+"Returns the energy multiplier for this GI probe. Equivalent to [member "
+"GIProbe.energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1060
+msgid ""
+"Returns the normal bias for this GI probe. Equivalent to [member GIProbe."
+"normal_bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1067
+msgid ""
+"Returns the propagation value for this GI probe. Equivalent to [member "
+"GIProbe.propagation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1074
+msgid "Returns the Transform set by [method gi_probe_set_to_cell_xform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1081
+msgid ""
+"Returns [code]true[/code] if the GI probe data associated with this GI probe "
+"is compressed. Equivalent to [member GIProbe.compress]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1088
+msgid ""
+"Returns [code]true[/code] if the GI probe is set to interior, meaning it "
+"does not account for sky light. Equivalent to [member GIProbe.interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1096
+msgid ""
+"Sets the bias value to avoid self-occlusion. Equivalent to [member GIProbe."
+"bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1104
+msgid ""
+"Sets the axis-aligned bounding box that covers the extent of the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1112
+msgid "Sets the size of individual cells within the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1120
+msgid ""
+"Sets the compression setting for the GI probe data. Compressed data will "
+"take up less space but may look worse. Equivalent to [member GIProbe."
+"compress]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1128
+msgid ""
+"Sets the data to be used in the GI probe for lighting calculations. Normally "
+"this is created and called internally within the [GIProbe] node. You should "
+"not try to set this yourself."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1136
+msgid ""
+"Sets the dynamic range of the GI probe. Dynamic range sets the limit for how "
+"bright lights can be. A smaller range captures greater detail but limits how "
+"bright lights can be. Equivalent to [member GIProbe.dynamic_range]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1144
+msgid ""
+"Sets the energy multiplier for this GI probe. A higher energy makes the "
+"indirect light from the GI probe brighter. Equivalent to [member GIProbe."
+"energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1152
+msgid ""
+"Sets the interior value of this GI probe. A GI probe set to interior does "
+"not include the sky when calculating lighting. Equivalent to [member GIProbe."
+"interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1160
+msgid ""
+"Sets the normal bias for this GI probe. Normal bias behaves similar to the "
+"other form of bias and may help reduce self-occlusion. Equivalent to [member "
+"GIProbe.normal_bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1168
+msgid ""
+"Sets the propagation of light within this GI probe. Equivalent to [member "
+"GIProbe.propagation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1176
+msgid "Sets the to cell [Transform] for this GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1182
+msgid ""
+"Returns [code]true[/code] if changes have been made to the VisualServer's "
+"data. [method draw] is usually called if this happens."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1189
+msgid "Not yet implemented. Always returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1196
+msgid ""
+"Returns [code]true[/code] if the OS supports a certain feature. Features "
+"might be [code]s3tc[/code], [code]etc[/code], [code]etc2[/code], "
+"[code]pvrtc[/code] and [code]skinning_fallback[/code].\n"
+"When rendering with GLES2, returns [code]true[/code] with "
+"[code]skinning_fallback[/code] in case the hardware doesn't support the "
+"default GPU skinning process."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1206
+msgid ""
+"Sets up [ImmediateGeometry] internals to prepare for drawing. Equivalent to "
+"[method ImmediateGeometry.begin]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1213
+msgid ""
+"Clears everything that was set up between [method immediate_begin] and "
+"[method immediate_end]. Equivalent to [method ImmediateGeometry.clear]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1221
+msgid ""
+"Sets the color to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1227
+msgid ""
+"Creates an immediate geometry and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]immediate_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1236
+msgid ""
+"Ends drawing the [ImmediateGeometry] and displays it. Equivalent to [method "
+"ImmediateGeometry.end]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1243
+msgid "Returns the material assigned to the [ImmediateGeometry]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1251
+msgid ""
+"Sets the normal to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_normal]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1259
+msgid "Sets the material to be used to draw the [ImmediateGeometry]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1267
+msgid ""
+"Sets the tangent to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_tangent]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1275
+msgid ""
+"Sets the UV to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_uv]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1283
+msgid ""
+"Sets the UV2 to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_uv2]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1291
+msgid ""
+"Adds the next vertex using the information provided in advance. Equivalent "
+"to [method ImmediateGeometry.add_vertex]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1299
+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 ImmediateGeometry.add_vertex]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1305
+msgid ""
+"Initializes the visual 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/VisualServer.xml:1313
+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/VisualServer.xml:1321
+msgid ""
+"Attaches a skeleton to an instance. Removes the previous skeleton from the "
+"instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1327
+msgid ""
+"Creates a visual instance and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]instance_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1337
+msgid ""
+"Creates a visual instance, adds it to the VisualServer, 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] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1346 doc/classes/VisualServer.xml:1365
+#: doc/classes/VisualServer.xml:1592 doc/classes/VisualServer.xml:2673
+msgid "Not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1354
+msgid ""
+"Sets the shadow casting setting to one of [enum ShadowCastingSetting]. "
+"Equivalent to [member GeometryInstance.cast_shadow]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1374
+msgid ""
+"Sets the flag for a given [enum InstanceFlags]. See [enum InstanceFlags] for "
+"more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1382
+msgid ""
+"Sets a material that will override the material for all surfaces on the mesh "
+"associated with this instance. Equivalent to [member GeometryInstance."
+"material_override]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1390
+msgid ""
+"Sets the base of the instance. A base can be any of the 3D objects that are "
+"created in the VisualServer that can be displayed. For example, any of the "
+"light types, mesh, multimesh, immediate geometry, particle system, "
+"reflection probe, lightmap capture, 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/VisualServer.xml:1399
+msgid "Sets the weight for a given blend shape associated with this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1407
+msgid ""
+"Sets a custom AABB to use when culling objects from the view frustum. "
+"Equivalent to [method GeometryInstance.set_custom_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1415
+msgid "Function not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1423
+msgid ""
+"Sets a margin to increase the size of the AABB when culling objects from the "
+"view frustum. This allows you to avoid culling objects that fall outside the "
+"view frustum. Equivalent to [member GeometryInstance.extra_cull_margin]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1431
+msgid ""
+"Sets the render layers that this instance will be drawn to. Equivalent to "
+"[member VisualInstance.layers]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1439
+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/VisualServer.xml:1448
+msgid ""
+"Sets the material of a specific surface. Equivalent to [method MeshInstance."
+"set_surface_material]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1456
+msgid ""
+"Sets the world space transform of the instance. Equivalent to [member "
+"Spatial.transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1467
+msgid "Sets the lightmap to use with this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1475
+msgid ""
+"Sets whether an instance is drawn or not. Equivalent to [member Spatial."
+"visible]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1483
+msgid ""
+"Returns an array of object IDs intersecting with the provided AABB. Only "
+"visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1492
+msgid ""
+"Returns an array of object IDs intersecting with the provided convex shape. "
+"Only visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1502
+msgid ""
+"Returns an array of object IDs intersecting with the provided 3D ray. Only "
+"visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1511
+msgid ""
+"If [code]true[/code], this directional light will blend between shadow map "
+"splits resulting in a smoother transition between them. Equivalent to "
+"[member DirectionalLight.directional_shadow_blend_splits]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1519
+msgid ""
+"Sets the shadow depth range mode for this directional light. Equivalent to "
+"[member DirectionalLight.directional_shadow_depth_range]. See [enum "
+"LightDirectionalShadowDepthRangeMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1527
+msgid ""
+"Sets the shadow mode for this directional light. Equivalent to [member "
+"DirectionalLight.directional_shadow_mode]. See [enum "
+"LightDirectionalShadowMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1535
+msgid ""
+"Sets whether to use vertical or horizontal detail for this omni light. This "
+"can be used to alleviate artifacts in the shadow map. Equivalent to [member "
+"OmniLight.omni_shadow_detail]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1543
+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 "
+"OmniLight.omni_shadow_mode]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1551
+msgid ""
+"Sets the bake mode for this light, see [enum LightBakeMode] for options. The "
+"bake mode affects how the light will be baked in [BakedLightmap]s and "
+"[GIProbe]s."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1559
+msgid "Sets the color of the light. Equivalent to [member Light.light_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1567
+msgid ""
+"Sets the cull mask for this Light. Lights only affect objects in the "
+"selected layers. Equivalent to [member Light.light_cull_mask]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1575
+msgid ""
+"If [code]true[/code], light will subtract light instead of adding light. "
+"Equivalent to [member Light.light_negative]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1584
+msgid ""
+"Sets the specified light parameter. See [enum LightParam] for options. "
+"Equivalent to [method Light.set_param]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1600
+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 Light.shadow_reverse_cull_face]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1608
+msgid ""
+"If [code]true[/code], light will cast shadows. Equivalent to [member Light."
+"shadow_enabled]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1616
+msgid ""
+"Sets the color of the shadow cast by the light. Equivalent to [member Light."
+"shadow_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1624
+msgid ""
+"Sets whether GI probes capture light information from this light. "
+"[i]Deprecated method.[/i] Use [method light_set_bake_mode] instead. This "
+"method is only kept for compatibility reasons and calls [method "
+"light_set_bake_mode] internally, setting the bake mode to [constant "
+"LIGHT_BAKE_DISABLED] or [constant LIGHT_BAKE_INDIRECT] depending on the "
+"given parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1630
+msgid ""
+"Creates a lightmap capture and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]lightmap_capture_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"To place in a scene, attach this lightmap capture to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1639
+msgid "Returns the size of the lightmap capture area."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1646
+msgid "Returns the energy multiplier used by the lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1653
+msgid "Returns the octree used by the lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1660
+msgid ""
+"Returns the cell subdivision amount used by this lightmap capture's octree."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1667
+msgid "Returns the cell transform for this lightmap capture's octree."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1674
+msgid "Returns [code]true[/code] if capture is in \"interior\" mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1682
+msgid ""
+"Sets the size of the area covered by the lightmap capture. Equivalent to "
+"[member BakedLightmapData.bounds]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1690
+msgid ""
+"Sets the energy multiplier for this lightmap capture. Equivalent to [member "
+"BakedLightmapData.energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1698
+msgid ""
+"Sets the \"interior\" mode for this lightmap capture. Equivalent to [member "
+"BakedLightmapData.interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1706
+msgid ""
+"Sets the octree to be used by this lightmap capture. This function is "
+"normally used by the [BakedLightmap] node. Equivalent to [member "
+"BakedLightmapData.octree]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1714
+msgid ""
+"Sets the subdivision level of this lightmap capture's octree. Equivalent to "
+"[member BakedLightmapData.cell_subdiv]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1722
+msgid ""
+"Sets the octree cell transform for this lightmap capture's octree. "
+"Equivalent to [member BakedLightmapData.cell_space_transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1731
+msgid ""
+"Returns a mesh of a sphere with the given amount of horizontal and vertical "
+"subdivisions."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1737
+msgid ""
+"Creates an empty material and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]material_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1746
+msgid "Returns the value of a certain material's parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1754
+msgid ""
+"Returns the default value for the param if available. Otherwise returns an "
+"empty [Variant]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1761
+msgid ""
+"Returns the shader of a certain material's shader. Returns an empty RID if "
+"the material doesn't have a shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1769
+msgid "Sets a material's line width."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1777
+msgid "Sets an object's next material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1786
+msgid "Sets a material's parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1794
+msgid "Sets a material's render priority."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1802
+msgid "Sets a shader material's shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1813
+msgid ""
+"Adds a surface generated from the Arrays to a mesh. See [enum PrimitiveType] "
+"constants for types."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1820
+msgid "Removes all surfaces from a mesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1826
+msgid ""
+"Creates a new mesh and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]mesh_*[/code] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1835
+msgid "Returns a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1842
+msgid "Returns a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1849
+msgid "Returns a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1856
+msgid "Returns a mesh's number of surfaces."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1864
+msgid "Removes a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1872
+msgid "Sets a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1880
+msgid "Sets a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1888
+msgid "Sets a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1896
+msgid "Returns a mesh's surface's aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1904
+msgid "Returns a mesh's surface's vertex buffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1912
+msgid "Returns a mesh's surface's amount of indices."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1920
+msgid "Returns a mesh's surface's amount of vertices."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1928
+msgid "Returns a mesh's surface's buffer arrays."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1936
+msgid "Returns a mesh's surface's arrays for blend shapes."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1944
+msgid "Returns the format of a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1954
+msgid "Function is unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1971
+msgid "Returns a mesh's surface's index buffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1979
+msgid "Returns a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1987
+msgid "Returns the primitive type of a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1995
+msgid "Returns the aabb of a mesh's surface's skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2004
+msgid "Sets a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2014
+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/VisualServer.xml:2025
+msgid ""
+"Allocates space for the multimesh data. Format parameters determine how the "
+"data will be stored by OpenGL. See [enum MultimeshTransformFormat], [enum "
+"MultimeshColorFormat], and [enum MultimeshCustomDataFormat] for usage. "
+"Equivalent to [member MultiMesh.instance_count]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2031
+msgid ""
+"Creates a new multimesh on the VisualServer and returns an [RID] handle. "
+"This RID will be used in all [code]multimesh_*[/code] VisualServer "
+"functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2040
+msgid ""
+"Calculates and returns the axis-aligned bounding box that encloses all "
+"instances within the multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2047
+msgid "Returns the number of instances allocated for this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2054
+msgid ""
+"Returns the RID of the mesh that will be used in drawing this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2061
+msgid "Returns the number of visible instances for this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2069
+msgid "Returns the color by which the specified instance will be modulated."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2077
+msgid "Returns the custom data associated with the specified instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2085
+msgid "Returns the [Transform] of the specified instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2093
+msgid ""
+"Returns the [Transform2D] of the specified instance. For use when the "
+"multimesh is set to use 2D transforms."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2102
+msgid ""
+"Sets the color by which this instance will be modulated. Equivalent to "
+"[method MultiMesh.set_instance_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2111
+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/VisualServer.xml:2120
+msgid ""
+"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
+"set_instance_transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2129
+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/VisualServer.xml:2137
+msgid ""
+"Sets all data related to the instances in one go. This is especially useful "
+"when loading the data from disk or preparing the data from GDNative.\n"
+"\n"
+"All data is packed in one large float array. An array may look like this: "
+"Transform for instance 1, color data for instance 1, custom data for "
+"instance 1, transform for instance 2, color data for instance 2, etc.\n"
+"\n"
+"[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, "
+"[code]COLOR_8BIT[/code] / [code]CUSTOM_DATA_8BIT[/code] is stored as 1 float "
+"(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/"
+"code] is stored as 4 floats."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2149
+msgid ""
+"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
+"mesh]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2157
+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/VisualServer.xml:2163
+msgid ""
+"Creates a new omni light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2171
+msgid ""
+"Creates a particle system and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]particles_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2180
+msgid ""
+"Calculates and returns the axis-aligned bounding box that contains all the "
+"particles. Equivalent to [method Particles.capture_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2187
+msgid "Returns [code]true[/code] if particles are currently set to emitting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2194
+msgid ""
+"Returns [code]true[/code] if particles are not emitting and particles are "
+"set to inactive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2201
+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/VisualServer.xml:2208
+msgid ""
+"Reset the particles on the next update. Equivalent to [method Particles."
+"restart]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2216
+msgid ""
+"Sets the number of particles to be drawn and allocates the memory for them. "
+"Equivalent to [member Particles.amount]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2224
+msgid ""
+"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
+"to [member Particles.visibility_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2232
+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 Particles.draw_order]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2241
+msgid ""
+"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
+"Particles.draw_pass_1], [member Particles.draw_pass_2], [member Particles."
+"draw_pass_3], and [member Particles.draw_pass_4]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2249
+msgid ""
+"Sets the number of draw passes to use. Equivalent to [member Particles."
+"draw_passes]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2257
+msgid ""
+"Sets the [Transform] that will be used by the particles when they first emit."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2265
+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 Particles.emitting]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2273
+msgid ""
+"Sets the explosiveness ratio. Equivalent to [member Particles.explosiveness]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2281
+msgid ""
+"Sets the frame rate that the particle system rendering will be fixed to. "
+"Equivalent to [member Particles.fixed_fps]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2289
+msgid ""
+"If [code]true[/code], uses fractional delta which smooths the movement of "
+"the particles. Equivalent to [member Particles.fract_delta]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2297
+msgid ""
+"Sets the lifetime of each particle in the system. Equivalent to [member "
+"Particles.lifetime]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2305
+msgid ""
+"If [code]true[/code], particles will emit once and then stop. Equivalent to "
+"[member Particles.one_shot]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2313
+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 Particles.preprocess]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2321
+msgid ""
+"Sets the material for processing the particles.\n"
+"[b]Note:[/b] This is not the material used to draw the materials. Equivalent "
+"to [member Particles.process_material]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2330
+msgid ""
+"Sets the emission randomness ratio. This randomizes the emission of "
+"particles within their phase. Equivalent to [member Particles.randomness]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2338
+msgid ""
+"Sets the speed scale of the particle system. Equivalent to [member Particles."
+"speed_scale]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2346
+msgid ""
+"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
+"they use global coordinates. Equivalent to [member Particles.local_coords]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2352
+msgid ""
+"Creates a reflection probe and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]reflection_probe_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2362
+msgid ""
+"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
+"to [member ReflectionProbe.interior_enable]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2370
+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/VisualServer.xml:2378
+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/VisualServer.xml:2386
+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/VisualServer.xml:2394
+msgid ""
+"Sets the size of the area that the reflection probe will capture. Equivalent "
+"to [member ReflectionProbe.extents]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2402
+msgid ""
+"Sets the intensity of the reflection probe. Intensity modulates the strength "
+"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2410
+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/VisualServer.xml:2418
+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/VisualServer.xml:2426
+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/VisualServer.xml:2434
+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/VisualServer.xml:2442
+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/VisualServer.xml:2450
+msgid ""
+"Sets how often the reflection probe updates. Can either be once or every "
+"frame. See [enum ReflectionProbeUpdateMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2459
+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/VisualServer.xml:2466
+msgid ""
+"Creates a scenario and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]scenario_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"The scenario is the 3D world that all the visual instances exist in."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2476
+msgid ""
+"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
+"ScenarioDebugMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2484
+msgid "Sets the environment that will be used with this scenario."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2492
+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/VisualServer.xml:2501
+msgid ""
+"Sets the size of the reflection atlas shared by all reflection probes in "
+"this scenario."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2511
+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/VisualServer.xml:2518
+msgid ""
+"If [code]true[/code], the engine will generate wireframes for use with the "
+"wireframe debug mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2525
+msgid ""
+"Sets the default clear color which is used when a specific clear color has "
+"not been selected."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2532
+msgid ""
+"Sets the scale to apply to the passage of time for the shaders' [code]TIME[/"
+"code] builtin.\n"
+"The default value is [code]1.0[/code], which means [code]TIME[/code] will "
+"count the real time as it goes by, without narrowing or stretching it."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2540
+msgid "Enables or disables occlusion culling."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2546
+msgid ""
+"Creates an empty shader and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]shader_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2554
+msgid "Returns a shader's code."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2562
+msgid "Returns a default texture from a shader searched by name."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2569
+msgid "Returns the parameters of a shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2577
+msgid "Sets a shader's code."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2586
+msgid "Sets a shader's default texture. Overwrites the texture given by name."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2595
+msgid "Allocates the GPU buffers for this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2603
+msgid "Returns the [Transform] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2611
+msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2620
+msgid "Sets the [Transform] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2629
+msgid "Sets the [Transform2D] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2635
+msgid ""
+"Creates a skeleton and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]skeleton_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2643
+msgid "Returns the number of bones allocated for this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2649
+msgid ""
+"Creates an empty sky and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]sky_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2659
+msgid "Sets a sky's texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2665
+msgid ""
+"Creates a spot light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2686
+msgid "Allocates the GPU memory for the texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2694
+msgid "Binds the texture to a texture slot."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2700
+msgid ""
+"Creates an empty texture and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]texture_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2709
+msgid ""
+"Creates a texture, allocates the space for an image, and fills in the image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2715
+msgid "Returns a list of all the textures and their information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2723
+msgid ""
+"Returns a copy of a texture's image unless it's a CubeMap, in which case it "
+"returns the [RID] of the image at one of the cubes sides."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2730
+msgid "Returns the depth of the texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2737
+msgid "Returns the flags of a texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2744
+msgid "Returns the format of the texture's image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2751
+msgid "Returns the texture's height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2758
+msgid "Returns the texture's path."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2765
+msgid "Returns the opengl id of the texture's image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2772
+msgid "Returns the type of the texture, can be any of the [enum TextureType]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2779
+msgid "Returns the texture's width."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2788
+msgid ""
+"Sets the texture's image data. If it's a CubeMap, it sets the image data at "
+"a cube side."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2804
+msgid ""
+"Sets a part of the data for a texture. Warning: this function calls the "
+"underlying graphics API directly and may corrupt your texture if used "
+"improperly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2812
+msgid "Sets the texture's flags. See [enum TextureFlags] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2820
+msgid "Sets the texture's path."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2827
+msgid ""
+"If [code]true[/code], sets internal processes to shrink all image data to "
+"half the size."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2844
+msgid ""
+"If [code]true[/code], the image will be stored in the texture's images array "
+"if overwritten."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2852
+msgid "Sets a viewport's camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2860
+msgid "Sets a viewport's canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2869
+msgid ""
+"Copies viewport to a region of the screen specified by [code]rect[/code]. If "
+"[member Viewport.render_direct_to_screen] is [code]true[/code], then "
+"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/VisualServer.xml:2882
+msgid ""
+"Creates an empty viewport and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]viewport_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2890
+msgid "Detaches the viewport from the screen."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2898
+msgid ""
+"Returns a viewport's render information. For options, see the [enum "
+"ViewportRenderInfo] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2905
+msgid "Returns the viewport's last rendered frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2913
+msgid "Detaches a viewport from a canvas and vice versa."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2921
+msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2931
+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/VisualServer.xml:2941
+msgid "Sets the transformation of a viewport's canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2949
+msgid ""
+"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2957
+msgid ""
+"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2965
+msgid "If [code]true[/code], a viewport's 3D rendering is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2973
+msgid ""
+"If [code]true[/code], rendering of a viewport's environment is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2981
+msgid "Sets the viewport's global transformation matrix."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2989
+msgid "If [code]true[/code], the viewport renders to hdr."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2997
+msgid "If [code]true[/code], the viewport's canvas is not rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3005
+msgid "Currently unimplemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3013
+msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3021
+msgid "Sets the viewport's parent to another viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3029
+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/VisualServer.xml:3037
+msgid ""
+"Sets a viewport's scenario.\n"
+"The scenario contains information about the [enum ScenarioDebugMode], "
+"environment information, reflection atlas etc."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3047
+msgid "Sets the shadow atlas quadrant's subdivision."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3055
+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/VisualServer.xml:3063
+msgid ""
+"Sets the sharpening [code]intensity[/code] for the [code]viewport[/code]. If "
+"set to a value greater than [code]0.0[/code], contrast-adaptive sharpening "
+"will be applied to the 3D viewport. This has a low performance cost and can "
+"be used to recover some of the sharpness lost from using FXAA. Values around "
+"[code]0.5[/code] generally give the best results. See also [method "
+"viewport_set_use_fxaa]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3072
+msgid "Sets the viewport's width and height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3080
+msgid ""
+"If [code]true[/code], the viewport renders its background as transparent."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3088
+msgid ""
+"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
+"constants for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3096
+msgid ""
+"Sets the viewport's 2D/3D mode. See [enum ViewportUsage] constants for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3104
+msgid ""
+"If [code]true[/code], the viewport uses augmented or virtual reality "
+"technologies. See [ARVRInterface]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3112
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member Viewport.hdr] must "
+"also be [code]true[/code] for debanding to be effective."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3121
+msgid ""
+"Enables fast approximate antialiasing for this viewport. 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [method "
+"viewport_set_sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3129
+msgid "If [code]true[/code], the viewport's rendering is flipped vertically."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3135
+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/VisualServer.xml:3141
+msgid ""
+"Emitted at the end of the frame, after the VisualServer has finished "
+"updating all the Viewports."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3146
+msgid ""
+"Emitted at the beginning of the frame, before the VisualServer updates all "
+"the Viewports."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3152
+msgid "Marks an error that shows that the index array is empty."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3155
+msgid "Number of weights/bones per vertex."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3158
+msgid "The minimum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3161
+msgid "The maximum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3164
+msgid ""
+"Max number of glow levels that can be used with glow post-process effect."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3167
+msgid "Unused enum in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3170
+msgid "The minimum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3173
+msgid "The maximum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3176
+msgid "Marks the left side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3179
+msgid "Marks the right side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3182
+msgid "Marks the bottom side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3185
+msgid "Marks the top side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3188
+msgid "Marks the front side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3191
+msgid "Marks the back side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3194
+msgid "Normal texture with 2 dimensions, width and height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3197
+msgid ""
+"Texture made up of six faces, can be looked up with a [code]vec3[/code] in "
+"shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3200
+msgid "An array of 2-dimensional textures."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3203
+msgid "A 3-dimensional texture with width, height, and depth."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3209
+msgid "Repeats the texture (instead of clamp to edge)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3222
+msgid "Repeats the texture with alternate sections mirrored."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3228
+msgid ""
+"Default flags. [constant TEXTURE_FLAG_MIPMAPS], [constant "
+"TEXTURE_FLAG_REPEAT] and [constant TEXTURE_FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3231
+msgid "Shader is a 3D shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3234
+msgid "Shader is a 2D shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3237
+msgid "Shader is a particle shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3240
+msgid "Represents the size of the [enum ShaderMode] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3243
+msgid "Array is a vertex array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3246
+msgid "Array is a normal array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3249
+msgid "Array is a tangent array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3252
+msgid "Array is a color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3255
+msgid "Array is an UV coordinates array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3258
+msgid "Array is an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3261
+msgid "Array contains bone information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3264
+msgid "Array is weight information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3267
+msgid "Array is index array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3273
+msgid "Flag used to mark a vertex array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3276
+msgid "Flag used to mark a normal array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3279
+msgid "Flag used to mark a tangent array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3282
+msgid "Flag used to mark a color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3285
+msgid "Flag used to mark an UV coordinates array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3288
+msgid ""
+"Flag used to mark an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3291
+msgid "Flag used to mark a bone information array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3294
+msgid "Flag used to mark a weights array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3297
+msgid "Flag used to mark an index array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3336
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
+"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
+"ARRAY_COMPRESS_TEX_UV], [constant ARRAY_COMPRESS_TEX_UV2], [constant "
+"ARRAY_COMPRESS_WEIGHTS], and [constant "
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3339
+msgid "Primitive to draw consists of points."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3342
+msgid "Primitive to draw consists of lines."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3345
+msgid "Primitive to draw consists of a line strip from start to end."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3348
+msgid ""
+"Primitive to draw consists of a line loop (a line strip with a line between "
+"the last and the first vertex)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3351
+msgid "Primitive to draw consists of triangles."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3354
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 3 vertices are "
+"always combined to make a triangle)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3357
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 2 vertices are "
+"always combined with the first to make a triangle)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3360
+msgid "Represents the size of the [enum PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3369
+msgid "Is a directional (sun) light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3372
+msgid "Is an omni light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3375
+msgid "Is a spot light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3378
+msgid "The light's energy."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3381
+msgid "Secondary multiplier used with indirect light (light bounces)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3384
+msgid ""
+"The light's size, currently only used for soft shadows in baked lightmaps."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3387
+msgid "The light's influence on specularity."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3390
+msgid "The light's range."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3393
+msgid "The light's attenuation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3396
+msgid "The spotlight's angle."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3399
+msgid "The spotlight's attenuation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3402
+msgid "Scales the shadow color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3405
+msgid "Max distance that shadows will be rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3408
+msgid "Proportion of shadow atlas occupied by the first split."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3411
+msgid "Proportion of shadow atlas occupied by the second split."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3414
+msgid ""
+"Proportion of shadow atlas occupied by the third split. The fourth split "
+"occupies the rest."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3417
+msgid ""
+"Normal bias used to offset shadow lookup by object normal. Can be used to "
+"fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3420
+msgid "Bias the shadow lookup to fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3423
+msgid ""
+"Increases bias on further splits to fix self-shadowing that only occurs far "
+"away from the camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3426
+msgid "Represents the size of the [enum LightParam] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3435
+msgid "Use a dual paraboloid shadow map for omni lights."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3438
+msgid ""
+"Use a cubemap shadow map for omni lights. Slower but better quality than "
+"dual paraboloid."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3441
+msgid "Use more detail vertically when computing shadow map."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3444
+msgid "Use more detail horizontally when computing shadow map."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3447
+msgid "Use orthogonal shadow projection for directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3450
+msgid "Use 2 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3453
+msgid "Use 4 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3456
+msgid ""
+"Keeps shadows stable as camera moves but has lower effective resolution."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3459
+msgid ""
+"Optimize use of shadow maps, increasing the effective resolution. But may "
+"result in shadows moving or flickering slightly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3462
+msgid "Do not update the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3465
+msgid "Update the viewport once then set to disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3468
+msgid "Update the viewport whenever it is visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3471
+msgid "Always update the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3474
+msgid "The viewport is always cleared before drawing."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3477
+msgid "The viewport is never cleared before drawing."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3480
+msgid ""
+"The viewport is cleared once, then the clear mode is set to [constant "
+"VIEWPORT_CLEAR_NEVER]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3483
+msgid "Multisample antialiasing is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3486
+msgid "Multisample antialiasing is set to 2×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3489
+msgid "Multisample antialiasing is set to 4×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3492
+msgid "Multisample antialiasing is set to 8×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3495
+msgid "Multisample antialiasing is set to 16×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3498
+msgid ""
+"Multisample antialiasing is set to 2× on external texture. Special mode for "
+"GLES2 Android VR (Oculus Quest and Go)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3501
+msgid ""
+"Multisample antialiasing is set to 4× on external texture. Special mode for "
+"GLES2 Android VR (Oculus Quest and Go)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3504
+msgid "The Viewport does not render 3D but samples."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3507
+msgid "The Viewport does not render 3D and does not sample."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3510
+msgid "The Viewport renders 3D with effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3513
+msgid "The Viewport renders 3D but without effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3516
+msgid "Number of objects drawn in a single frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3519
+msgid "Number of vertices drawn in a single frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3522
+msgid "Number of material changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3525
+msgid "Number of shader changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3528
+msgid "Number of surface changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3531
+msgid "Number of draw calls during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3534
+msgid "Number of 2d items drawn this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3537
+msgid "Number of 2d draw calls during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3540
+msgid "Represents the size of the [enum ViewportRenderInfo] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3543
+msgid "Debug draw is disabled. Default setting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3546
+msgid "Debug draw sets objects to unshaded."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3549
+msgid "Overwrites clear color to [code](0,0,0,0)[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3552
+msgid "Debug draw draws objects in wireframe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3555
+msgid "Do not use a debug mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3558
+msgid "Draw all objects as wireframe models."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3561
+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/VisualServer.xml:3564
+msgid ""
+"Draw all objects without shading. Equivalent to setting all objects shaders "
+"to [code]unshaded[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3567
+msgid "The instance does not have a type."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3570
+msgid "The instance is a mesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3573
+msgid "The instance is a multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3576
+msgid "The instance is an immediate geometry."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3579
+msgid "The instance is a particle emitter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3582
+msgid "The instance is a light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3585
+msgid "The instance is a reflection probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3588
+msgid "The instance is a GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3591
+msgid "The instance is a lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3594
+msgid "Represents the size of the [enum InstanceType] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3597
+msgid ""
+"A combination of the flags of geometry instances (mesh, multimesh, immediate "
+"and particles)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3600
+msgid "Allows the instance to be used in baked lighting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3603
+msgid "When set, manually requests to draw geometry on next frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3606
+msgid "Represents the size of the [enum InstanceFlags] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3609
+msgid "Disable shadows from this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3612
+msgid "Cast shadows from this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3615
+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/VisualServer.xml:3618
+msgid ""
+"Only render the shadows from the object. The object itself will not be drawn."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3621
+msgid "The nine patch gets stretched where needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3624
+msgid "The nine patch gets filled with tiles where needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3627
+msgid ""
+"The nine patch gets filled with tiles where needed and stretches them a bit "
+"if needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3630
+msgid "Adds light color additive to the canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3633
+msgid "Adds light color subtractive to the canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3636
+msgid "The light adds color depending on transparency."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3639
+msgid "The light adds color depending on mask."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3642
+msgid "Do not apply a filter to canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3645
+msgid "Use PCF3 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3648
+msgid "Use PCF5 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3651
+msgid "Use PCF7 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3654
+msgid "Use PCF9 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3657
+msgid "Use PCF13 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3660
+msgid "Culling of the canvas occluder is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3663
+msgid "Culling of the canvas occluder is clockwise."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3666
+msgid "Culling of the canvas occluder is counterclockwise."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3669
+msgid "The amount of objects in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3672
+msgid "The amount of vertices in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3675
+msgid "The amount of modified materials in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3678
+msgid "The amount of shader rebinds in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3681
+msgid "The amount of surface changes in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3684
+msgid "The amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3687
+msgid "The amount of 2d items in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3690
+msgid "The amount of 2d draw calls in frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3705
+msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3708
+msgid ""
+"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3711
+msgid "Use [Transform2D] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3714
+msgid "Use [Transform] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3717
+msgid "MultiMesh does not use per-instance color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3720
+msgid ""
+"MultiMesh color uses 8 bits per component. This packs the color into a "
+"single float."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3723
+msgid "MultiMesh color uses a float per channel."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3726
+msgid "MultiMesh does not use custom data."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3729
+msgid ""
+"MultiMesh custom data uses 8 bits per component. This packs the 4-component "
+"custom data into a single float."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3732
+msgid "MultiMesh custom data uses a float per component."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3735
+msgid "Reflection probe will update reflections once and then stop."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3738
+msgid ""
+"Reflection probe will update each frame. This mode is necessary to capture "
+"moving objects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3741
+msgid "Draw particles in the order that they appear in the particles array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3744
+msgid "Sort particles based on their lifetime."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3747
+msgid "Sort particles based on their distance to the camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3750
+msgid "Use the clear color as background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3753
+msgid "Use a specified color as the background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3756
+msgid "Use a sky resource for the background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3759
+msgid ""
+"Use a custom color for background, but use a sky for shading and reflections."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3762
+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/VisualServer.xml:3765
+msgid ""
+"Do not clear the background, use whatever was rendered last frame as the "
+"background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3768
+msgid "Represents the size of the [enum EnvironmentBG] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3771
+msgid "Use lowest blur quality. Fastest, but may look bad."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3774
+msgid "Use medium blur quality."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3777
+msgid "Used highest blur quality. Looks the best, but is the slowest."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3780
+msgid "Add the effect of the glow on top of the scene."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3783
+msgid ""
+"Blends the glow effect with the screen. Does not get as bright as additive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3786
+msgid "Produces a subtle color disturbance around objects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3789
+msgid "Shows the glow effect by itself without the underlying scene."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3792
+msgid "Output color as they came in."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3795
+msgid "Use the Reinhard tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3798
+msgid "Use the filmic tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3801
+msgid "Use the ACES tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3804
+msgid "Use the ACES Fitted tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3807
+msgid "Lowest quality of screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3810
+msgid "Medium quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3813
+msgid "Highest quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3816
+msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3819
+msgid "Perform a 1x1 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3822
+msgid "Performs a 2x2 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3825
+msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
+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:20
+msgid "Adds the specified node to the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:31
+msgid ""
+"Returns [code]true[/code] if the specified nodes and ports can be connected "
+"together."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:42 doc/classes/VisualShader.xml:64
+msgid "Connects the specified nodes and ports."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:53
+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:72
+msgid ""
+"Returns the shader node instance with specified [code]type[/code] and "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:79
+msgid "Returns the list of connected nodes with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:86
+msgid "Returns the list of all nodes in the shader with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:94
+msgid "Returns the position of the specified node within the shader graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:111
+msgid ""
+"Returns [code]true[/code] if the specified node and port connection exist."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:119
+msgid "Removes the specified node from the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:126
+msgid "Sets the mode of this shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:135
+msgid "Sets the position of the specified node."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:141
+msgid "The offset vector of the whole graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:146
+msgid "A vertex shader, operating on vertices."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:149
+msgid "A fragment shader, operating on fragments (pixels)."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:152
+msgid "A shader for light calculations."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:155
+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:7
+msgid ""
+"Visual shader graphs consist of various nodes. Each node in the graph is a "
+"separate object and they are represented as a rectangular boxes with title "
+"and a set of properties. Each node has also connection ports that allow to "
+"connect it to another nodes and control the flow of the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:23
+msgid "Returns the default value of the input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:30
+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:38
+msgid "Sets the default value for the selected input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:44
+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:50
+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:56
+msgid ""
+"Floating-point scalar. Translated to [code]float[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:59
+msgid ""
+"3D vector of floating-point values. Translated to [code]vec3[/code] type in "
+"shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:62
+msgid "Boolean type. Translated to [code]bool[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:65
+msgid "Transform type. Translated to [code]mat4[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:68
+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:71
+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/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
+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 "A 3D vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:32
+msgid "A boolean type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:35
+msgid "A transform ([code]mat4[/code]) type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:38
+msgid "Comparison for equality ([code]a == b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:41
+msgid "Comparison for inequality ([code]a != b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:44
+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:47
+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:50
+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:53
+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:56
+msgid ""
+"The result will be true if all of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:59
+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/3.4/tutorials/plugins/editor/"
+"visual_shader_plugins.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:22
+msgid ""
+"Override this method to define the category of the associated custom node in "
+"the Visual Shader Editor's members dialog. The path may look like "
+"[code]\"MyGame/MyFunctions/Noise\"[/code].\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the \"Custom\" category."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:33
+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:43
+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:51
+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:60
+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:68
+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:76
+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:83
+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:90
+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:98
+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:106
+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:113
+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:120
+msgid ""
+"Override this method to define the subcategory of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the root of the main category (see [method _get_category])."
+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]determinant(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 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/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:18
+msgid ""
+"Adds an input port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:27
+msgid ""
+"Adds an output port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:33
+msgid "Removes all previously specified input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:39
+msgid "Removes all previously specified output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:45
+msgid ""
+"Returns a free input port ID which can be used in [method add_input_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:51
+msgid ""
+"Returns a free output port ID which can be used in [method add_output_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:57
+msgid ""
+"Returns the number of input ports in use. Alternative for [method "
+"get_free_input_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:63
+msgid ""
+"Returns a [String] description of the input ports as a colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:69
+msgid ""
+"Returns the number of output ports in use. Alternative for [method "
+"get_free_output_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:75
+msgid ""
+"Returns a [String] description of the output ports as a colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:82
+msgid "Returns [code]true[/code] if the specified input port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:89
+msgid "Returns [code]true[/code] if the specified output port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:96
+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:103
+msgid "Removes the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:110
+msgid "Removes the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:118
+msgid "Renames the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:126
+msgid ""
+"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:133
+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:141
+msgid "Renames the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:149
+msgid ""
+"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:156
+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:162
+msgid "The size of the node in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:6
+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:9
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/"
+"index.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:20
+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/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/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/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 "
+"[Sprite])."
+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/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:15
+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:39
+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).\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/VSlider.xml:25
+msgid "The background of the area below the grabber."
+msgstr ""
+
+#: doc/classes/VSlider.xml:36
+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:15
+msgid "Returns the [Object] this weakref is referring to."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:13
+msgid "Closes this data channel, notifying the other peer."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:19
+msgid ""
+"Returns the number of bytes currently queued to be sent over this channel."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:25
+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:32
+msgid "Returns the label assigned to this channel during creation."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:38
+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:45
+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:58
+msgid "Returns the current state of this channel, see [enum ChannelState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:64
+msgid ""
+"Returns [code]true[/code] if this channel was created with out-of-band "
+"configuration."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:70
+msgid ""
+"Returns [code]true[/code] if this channel was created with ordering enabled "
+"(default)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:76
+msgid "Reserved, but not used for now."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:82
+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:88
+msgid ""
+"The transfer mode to use when sending outgoing packet. Either text or binary."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:93
+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:96
+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:99
+msgid "The channel was created, but it's still trying to connect."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:102
+msgid "The channel is currently open, and data can flow over it."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:105
+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:108
+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:20
+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:27
+msgid "Close all the add peer connections and channels, freeing all resources."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:34
+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:40
+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:47
+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:55
+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:64
+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:23
+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:29
+msgid ""
+"Close the peer connection and all data channels associated with it.\n"
+"[b]Note:[/b] You cannot reuse this object for a new connection unless you "
+"call [method initialize]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:39
+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:61
+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:68
+msgid "Returns the connection state. See [enum ConnectionState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:76
+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"
+" \"credential\": \"a_password\", # Optional password for the TURN "
+"server.\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:97
+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:105
+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:114
+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:124
+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:133
+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:140
+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:146
+msgid ""
+"The connection is new, data channels and an offer can be created in this "
+"state."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:149
+msgid ""
+"The peer is connecting, ICE is in progress, none of the transports has "
+"failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:152
+msgid "The peer is connected, all ICE transports are connected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:155
+msgid "At least one ICE transport is disconnected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:158
+msgid "One or more of the ICE transports failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:161
+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:22
+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] To avoid mixed content warnings or errors in HTML5, you may "
+"have to use a [code]url[/code] that starts with [code]wss://[/code] (secure) "
+"instead of [code]ws://[/code]. When doing so, make sure to use the fully "
+"qualified domain name that matches the one defined in the server's SSL "
+"certificate. Do not connect directly via the IP address for [code]wss://[/"
+"code] connections, as it won't match with the SSL certificate.\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:35
+msgid ""
+"Disconnects this client from the connected host. See [method WebSocketPeer."
+"close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:41
+msgid "Return the IP address of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:47
+msgid "Return the IP port of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:53
+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:57
+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:65
+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:70
+msgid "Emitted when the connection to the server fails."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:76
+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:81
+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:89
+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:16
+msgid ""
+"Returns the [WebSocketPeer] associated to the given [code]peer_id[/code]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:26
+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:41
+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 represents a specific WebSocket connection, allowing you to 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:18
+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:26
+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:33
+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:40
+msgid ""
+"Returns the current amount of data in the outbound websocket buffer. [b]Note:"
+"[/b] HTML5 exports use WebSocket.bufferedAmount, while other platforms use "
+"an internal buffer."
+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:52
+msgid "Returns [code]true[/code] if this peer is currently connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:59
+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:67
+msgid "Sets the socket to use the given [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:73
+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:79
+msgid ""
+"Specifies that WebSockets messages should be transferred as text payload "
+"(only valid UTF-8 is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:82
+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:20
+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:41
+msgid "Returns [code]true[/code] if a peer with the given ID is connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:47
+msgid ""
+"Returns [code]true[/code] if the server is actively listening on a port."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:56
+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:65
+msgid "Stops the server and clear its state."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:71
+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:74
+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:77
+msgid ""
+"The time in seconds before a pending client (i.e. a client that has not yet "
+"finished the HTTP handshake) is considered stale and forcefully disconnected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:80
+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:83
+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:92
+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:99
+msgid ""
+"Emitted when a new client connects. \"protocol\" will be the sub-protocol "
+"agreed with the client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:106
+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:112
+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 ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:4
+msgid "AR/VR interface using WebXR."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:7
+msgid ""
+"WebXR is an open standard that allows creating VR and AR applications that "
+"run in the web browser.\n"
+"As such, this interface is only available when running in an HTML5 export.\n"
+"WebXR supports a wide range of devices, from the very capable (like Valve "
+"Index, HTC Vive, Oculus Rift and Quest) down to the much less capable (like "
+"Google Cardboard, Oculus Go, GearVR, or plain smartphones).\n"
+"Since WebXR is based on Javascript, it makes extensive use of callbacks, "
+"which means that [WebXRInterface] is forced to use signals, where other AR/"
+"VR interfaces would instead use functions that return a result immediately. "
+"This makes [WebXRInterface] quite a bit more complicated to initialize than "
+"other AR/VR interfaces.\n"
+"Here's the minimum code required to start an immersive VR session:\n"
+"[codeblock]\n"
+"extends Spatial\n"
+"\n"
+"var webxr_interface\n"
+"var vr_supported = false\n"
+"\n"
+"func _ready():\n"
+" # We assume this node has a button as a child.\n"
+" # This button is for the user to consent to entering immersive VR mode.\n"
+" $Button.connect(\"pressed\", self, \"_on_Button_pressed\")\n"
+"\n"
+" webxr_interface = ARVRServer.find_interface(\"WebXR\")\n"
+" if webxr_interface:\n"
+" # WebXR uses a lot of asynchronous callbacks, so we connect to "
+"various\n"
+" # signals in order to receive them.\n"
+" webxr_interface.connect(\"session_supported\", self, "
+"\"_webxr_session_supported\")\n"
+" webxr_interface.connect(\"session_started\", self, "
+"\"_webxr_session_started\")\n"
+" webxr_interface.connect(\"session_ended\", self, "
+"\"_webxr_session_ended\")\n"
+" webxr_interface.connect(\"session_failed\", self, "
+"\"_webxr_session_failed\")\n"
+"\n"
+" # This returns immediately - our _webxr_session_supported() method\n"
+" # (which we connected to the \"session_supported\" signal above) "
+"will\n"
+" # be called sometime later to let us know if it's supported or not.\n"
+" webxr_interface.is_session_supported(\"immersive-vr\")\n"
+"\n"
+"func _webxr_session_supported(session_mode, supported):\n"
+" if session_mode == 'immersive-vr':\n"
+" vr_supported = supported\n"
+"\n"
+"func _on_Button_pressed():\n"
+" if not vr_supported:\n"
+" OS.alert(\"Your browser doesn't support VR\")\n"
+" return\n"
+"\n"
+" # We want an immersive VR session, as opposed to AR ('immersive-ar') or "
+"a\n"
+" # simple 3DoF viewer ('viewer').\n"
+" webxr_interface.session_mode = 'immersive-vr'\n"
+" # 'bounded-floor' is room scale, 'local-floor' is a standing or sitting\n"
+" # experience (it puts you 1.6m above the ground if you have 3DoF "
+"headset),\n"
+" # whereas as 'local' puts you down at the ARVROrigin.\n"
+" # This list means it'll first try to request 'bounded-floor', then\n"
+" # fallback on 'local-floor' and ultimately 'local', if nothing else is\n"
+" # supported.\n"
+" webxr_interface.requested_reference_space_types = 'bounded-floor, local-"
+"floor, local'\n"
+" # In order to use 'local-floor' or 'bounded-floor' we must also\n"
+" # mark the features as required or optional.\n"
+" webxr_interface.required_features = 'local-floor'\n"
+" webxr_interface.optional_features = 'bounded-floor'\n"
+"\n"
+" # This will return false if we're unable to even request the session,\n"
+" # however, it can still fail asynchronously later in the process, so we\n"
+" # only know if it's really succeeded or failed when our\n"
+" # _webxr_session_started() or _webxr_session_failed() methods are "
+"called.\n"
+" if not webxr_interface.initialize():\n"
+" OS.alert(\"Failed to initialize\")\n"
+" return\n"
+"\n"
+"func _webxr_session_started():\n"
+" $Button.visible = false\n"
+" # This tells Godot to start rendering to the headset.\n"
+" get_viewport().arvr = true\n"
+" # This will be the reference space type you ultimately got, out of the\n"
+" # types that you requested above. This is useful if you want the game "
+"to\n"
+" # work a little differently in 'bounded-floor' versus 'local-floor'.\n"
+" print (\"Reference space type: \" + webxr_interface."
+"reference_space_type)\n"
+"\n"
+"func _webxr_session_ended():\n"
+" $Button.visible = true\n"
+" # If the user exits immersive mode, then we tell Godot to render to the "
+"web\n"
+" # page again.\n"
+" get_viewport().arvr = false\n"
+"\n"
+"func _webxr_session_failed(message):\n"
+" OS.alert(\"Failed to initialize: \" + message)\n"
+"[/codeblock]\n"
+"There are several ways to handle \"controller\" input:\n"
+"- Using [ARVRController] nodes and their [signal ARVRController."
+"button_pressed] and [signal ARVRController.button_release] signals. This is "
+"how controllers are typically handled in AR/VR apps in Godot, however, this "
+"will only work with advanced VR controllers like the Oculus Touch or Index "
+"controllers, for example. The buttons codes are defined by [url=https://"
+"immersive-web.github.io/webxr-gamepads-module/#xr-standard-gamepad-"
+"mapping]Section 3.3 of the WebXR Gamepads Module[/url].\n"
+"- Using [method Node._unhandled_input] and [InputEventJoypadButton] or "
+"[InputEventJoypadMotion]. This works the same as normal joypads, except the "
+"[member InputEvent.device] starts at 100, so the left controller is 100 and "
+"the right controller is 101, and the button codes are also defined by "
+"[url=https://immersive-web.github.io/webxr-gamepads-module/#xr-standard-"
+"gamepad-mapping]Section 3.3 of the WebXR Gamepads Module[/url].\n"
+"- Using the [signal select], [signal squeeze] and related signals. This "
+"method will work for both advanced VR controllers, and non-traditional "
+"\"controllers\" like a tap on the screen, a spoken voice command or a button "
+"press on the device itself. The [code]controller_id[/code] passed to these "
+"signals is the same id as used in [member ARVRController.controller_id].\n"
+"You can use one or all of these methods to allow your game or app to support "
+"a wider or narrower set of devices and input methods, or to allow more "
+"advanced interations with more advanced devices."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:94
+msgid "https://www.snopekgames.com/blog/2020/how-make-vr-game-webxr-godot"
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:101
+msgid ""
+"Gets an [ARVRPositionalTracker] for the given [code]controller_id[/code].\n"
+"In the context of WebXR, a \"controller\" can be an advanced VR controller "
+"like the Oculus Touch or Index controllers, or even a tap on the screen, a "
+"spoken voice command or a button press on the device itself. When a non-"
+"traditional controller is used, interpret the position and orientation of "
+"the [ARVRPositionalTracker] as a ray pointing at the object the user wishes "
+"to interact with.\n"
+"Use this method to get information about the controller that triggered one "
+"of these signals:\n"
+"- [signal selectstart]\n"
+"- [signal select]\n"
+"- [signal selectend]\n"
+"- [signal squeezestart]\n"
+"- [signal squeeze]\n"
+"- [signal squeezestart]"
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:116
+msgid ""
+"Checks if the given [code]session_mode[/code] is supported by the user's "
+"browser.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
+"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code].\n"
+"This method returns nothing, instead it emits the [signal session_supported] "
+"signal with the result."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:124
+msgid ""
+"The vertices of a polygon which defines the boundaries of the user's play "
+"area.\n"
+"This will only be available if [member reference_space_type] is "
+"[code]\"bounded-floor\"[/code] and only on certain browsers and devices that "
+"support it.\n"
+"The [signal reference_space_reset] signal may indicate when this changes."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:129
+msgid ""
+"A comma-seperated list of optional features used by [method ARVRInterface."
+"initialize] when setting up the WebXR session.\n"
+"If a user's browser or device doesn't support one of the given features, "
+"initialization will continue, but you won't be able to use the requested "
+"feature.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:135
+msgid ""
+"The reference space type (from the list of requested types set in the "
+"[member requested_reference_space_types] property), that was ultimately used "
+"by [method ARVRInterface.initialize] when setting up the WebXR session.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:139
+msgid ""
+"A comma-seperated list of reference space types used by [method "
+"ARVRInterface.initialize] when setting up the WebXR session.\n"
+"The reference space types are requested in order, and the first on supported "
+"by the users device or browser will be used. The [member "
+"reference_space_type] property contains the reference space type that was "
+"ultimately used.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:145
+msgid ""
+"A comma-seperated list of required features used by [method ARVRInterface."
+"initialize] when setting up the WebXR session.\n"
+"If a user's browser or device doesn't support one of the given features, "
+"initialization will fail and [signal session_failed] will be emitted.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:151
+msgid ""
+"The session mode used by [method ARVRInterface.initialize] when setting up "
+"the WebXR session.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
+"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:156
+msgid ""
+"Indicates if the WebXR session's imagery is visible to the user.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRVisibilityState]WebXR's XRVisibilityState[/url], including "
+"[code]\"hidden\"[/code], [code]\"visible\"[/code], and [code]\"visible-"
+"blurred\"[/code]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:163
+msgid ""
+"Emitted to indicate that the reference space has been reset or "
+"reconfigured.\n"
+"When (or whether) this is emitted depends on the user's browser or device, "
+"but may include when the user has changed the dimensions of their play space "
+"(which you may be able to access via [member bounds_geometry]) or pressed/"
+"held a button to recenter their position.\n"
+"See [url=https://developer.mozilla.org/en-US/docs/Web/API/XRReferenceSpace/"
+"reset_event]WebXR's XRReferenceSpace reset event[/url] for more information."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:171
+msgid ""
+"Emitted after one of the \"controllers\" has finished its \"primary action"
+"\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:178
+msgid ""
+"Emitted when one of the \"controllers\" has finished its \"primary action"
+"\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:185
+msgid ""
+"Emitted when one of the \"controllers\" has started its \"primary action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:191
+msgid ""
+"Emitted when the user ends the WebXR session (which can be done using UI "
+"from the browser or device).\n"
+"At this point, you should do [code]get_viewport().arvr = false[/code] to "
+"instruct Godot to resume rendering to the screen."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:198
+msgid ""
+"Emitted by [method ARVRInterface.initialize] if the session fails to start.\n"
+"[code]message[/code] may optionally contain an error message from WebXR, or "
+"an empty string if no message is available."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:204
+msgid ""
+"Emitted by [method ARVRInterface.initialize] if the session is successfully "
+"started.\n"
+"At this point, it's safe to do [code]get_viewport().arvr = true[/code] to "
+"instruct Godot to start rendering to the AR/VR device."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:212
+msgid ""
+"Emitted by [method is_session_supported] to indicate if the given "
+"[code]session_mode[/code] is supported or not."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:218
+msgid ""
+"Emitted after one of the \"controllers\" has finished its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:225
+msgid ""
+"Emitted when one of the \"controllers\" has finished its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:232
+msgid ""
+"Emitted when one of the \"controllers\" has started its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:238
+msgid "Emitted when [member visibility_state] has changed."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:4
+msgid "Base class for window dialogs."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:7
+msgid ""
+"Windowdialog is the base class for all window-based dialogs. It's a by-"
+"default toplevel [Control] that draws a window decoration and allows motion "
+"and resizing."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:15
+msgid ""
+"Returns the close [TextureButton].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:22
+msgid "If [code]true[/code], the user can resize the window."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:25
+msgid "The text displayed in the window's title bar."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:32
+msgid "The icon for the close button."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:35
+msgid "The horizontal offset of the close button."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:38
+msgid ""
+"The icon used for the close button when it's hovered with the mouse cursor."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:44
+msgid ""
+"The style for both the content background of the [WindowDialog] and the "
+"title bar. The title bar is created with a top border and an expand margin "
+"using the [code]panel[/code] stylebox."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:47
+msgid ""
+"The thickness of the border that can be dragged when scaling the window (if "
+"[member resizable] is enabled)."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:50
+msgid "The color of the title text."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:53
+msgid "The font used to draw the title."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:56
+msgid "The vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/World.xml:4
+msgid "Class that has everything pertaining to a world."
+msgstr ""
+
+#: doc/classes/World.xml:7
+msgid ""
+"Class that has everything pertaining to a world. A physics space, a visual "
+"scenario and a sound space. Spatial nodes register their resources into the "
+"current world."
+msgstr ""
+
+#: doc/classes/World.xml:16
+msgid ""
+"Direct access to the world's physics 3D space state. Used for querying "
+"current and potential collisions."
+msgstr ""
+
+#: doc/classes/World.xml:19
+msgid "The World's [Environment]."
+msgstr ""
+
+#: doc/classes/World.xml:22
+msgid ""
+"The World's fallback_environment will be used if the World's [Environment] "
+"fails or is missing."
+msgstr ""
+
+#: doc/classes/World.xml:25
+msgid "The World's visual scenario."
+msgstr ""
+
+#: doc/classes/World.xml:28
+msgid "The World's physics space."
+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 [VisualServer] 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. When using multi-threaded physics, access "
+"is limited to [code]_physics_process(delta)[/code] in the main thread."
+msgstr ""
+
+#: doc/classes/World2D.xml:22
+msgid ""
+"The [RID] of this world's physics space resource. Used by the "
+"[Physics2DServer] for 2D physics, treating it as both a space and an area."
+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 [Camera]. 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:21
+msgid ""
+"The [Environment] resource used by this [WorldEnvironment], defining the "
+"default properties."
+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:18
+msgid "Loads a certificate from [code]path[/code] (\"*.crt\" file)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:25
+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:15
+msgid "Gets the amount of attributes in the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:22
+msgid ""
+"Gets the name of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:29
+msgid ""
+"Gets the value of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:35
+msgid "Gets the current line in the parsed file (currently not implemented)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:42
+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:49
+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:55
+msgid ""
+"Gets the contents of a text node. This will raise an error in any other type "
+"of node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:61
+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:67
+msgid ""
+"Gets the byte offset of the current node since the beginning of the file or "
+"buffer."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:73
+msgid ""
+"Gets the type of the current node. Compare with [enum NodeType] constants."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:80
+msgid "Check whether the current element has a certain attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:86
+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:93
+msgid "Opens an XML file for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:100
+msgid "Opens an XML raw buffer for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:106
+msgid "Reads the next node of the file. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:113
+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:119
+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:125
+msgid "There's no node (no file or buffer opened)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:128
+msgid "Element (tag)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:131
+msgid "End of element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:134
+msgid "Text node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:137
+msgid "Comment node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:140
+msgid "CDATA content."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:143
+msgid "Unknown node."
+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/fa.po b/doc/translations/fa.po
index 20951755d0..0ee48c3c05 100644
--- a/doc/translations/fa.po
+++ b/doc/translations/fa.po
@@ -28,43 +28,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.7-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "تعریÙ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "آموزش‌ها"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "خصوصیات"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "توابع"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "خصوصیات زمینه"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "سیگنال‌ها"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "شمارش ها"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "ثابت ها"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "توضیحات خصیصه"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "توضیحات تابع"
@@ -6649,21 +6649,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6671,7 +6675,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6682,7 +6686,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6690,41 +6694,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6732,61 +6736,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6801,7 +6805,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6810,7 +6814,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6819,7 +6823,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6836,29 +6840,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6897,21 +6901,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6919,7 +6927,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6930,7 +6938,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6938,14 +6946,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6953,21 +6961,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6982,7 +6990,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6997,7 +7005,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7006,7 +7014,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7015,7 +7023,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7034,7 +7042,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10618,7 +10626,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10816,19 +10825,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11673,26 +11694,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13161,80 +13189,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13278,49 +13322,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -15095,26 +15146,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20344,7 +20402,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20471,7 +20530,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21506,8 +21565,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28117,16 +28179,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28134,7 +28198,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28142,73 +28206,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28218,7 +28282,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28228,7 +28292,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28239,7 +28303,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28247,7 +28311,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28255,7 +28319,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28264,21 +28328,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28287,25 +28351,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28313,7 +28377,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28321,7 +28385,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28329,7 +28393,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28337,7 +28401,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28345,7 +28409,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28355,7 +28419,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28365,7 +28429,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28376,31 +28440,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28415,55 +28479,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28687,6 +28751,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28698,7 +28773,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28708,7 +28783,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28720,7 +28795,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28728,17 +28803,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28748,7 +28823,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28757,53 +28832,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28811,7 +28886,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28820,17 +28895,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28843,7 +28918,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28855,7 +28930,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28865,7 +28940,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28876,13 +28951,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28890,19 +28965,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28911,7 +28986,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28924,12 +28999,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28944,7 +29028,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28954,11 +29038,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28972,7 +29083,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28985,34 +29096,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -29020,83 +29131,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29104,23 +29215,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32377,14 +32488,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32877,26 +32995,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37511,26 +37636,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42616,27 +42748,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42668,6 +42800,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42704,11 +42844,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42740,7 +42880,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -44006,18 +44146,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -44025,7 +44153,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -44035,13 +44163,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -44055,14 +44198,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44071,7 +44214,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44079,7 +44222,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44095,20 +44238,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44116,75 +44259,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44194,7 +44337,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44204,27 +44347,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44232,81 +44375,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44314,109 +44457,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44427,91 +44570,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44520,13 +44663,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44536,7 +44679,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44544,19 +44687,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44570,45 +44713,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44617,7 +44760,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44628,7 +44771,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44644,14 +44787,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44659,49 +44802,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44710,7 +44853,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44718,7 +44861,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44726,7 +44869,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44736,7 +44879,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44745,7 +44888,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44754,7 +44897,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44764,7 +44907,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44772,7 +44915,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44782,7 +44925,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44792,7 +44935,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44800,7 +44943,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44809,7 +44952,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44817,7 +44960,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44829,477 +44972,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45307,92 +45450,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45402,33 +45545,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45441,7 +45584,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45453,7 +45596,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45465,7 +45608,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45478,7 +45621,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45486,28 +45629,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45517,25 +45660,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45548,7 +45691,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45560,7 +45703,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45572,7 +45715,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45585,13 +45728,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45599,11 +45742,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45617,7 +45760,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45626,7 +45769,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45642,7 +45785,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45652,7 +45795,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45662,7 +45805,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45673,7 +45816,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45683,7 +45826,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45691,7 +45834,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45702,7 +45845,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45717,7 +45860,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45726,13 +45869,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45741,7 +45884,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45751,7 +45894,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45763,7 +45906,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45773,24 +45916,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45799,7 +45942,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45807,7 +45950,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45816,7 +45959,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45826,7 +45969,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45834,31 +45977,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45866,7 +46009,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45876,46 +46019,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45923,7 +46073,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45933,7 +46083,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45942,7 +46092,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45951,20 +46101,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45973,7 +46123,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45981,7 +46131,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45990,7 +46140,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -46000,20 +46150,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -46022,13 +46172,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -46038,46 +46188,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46087,7 +46237,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46099,7 +46249,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46107,7 +46257,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46115,7 +46265,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46124,7 +46274,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46138,7 +46288,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46148,7 +46298,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46157,7 +46307,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46167,54 +46317,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46225,61 +46375,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46290,7 +46440,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46299,26 +46449,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46329,20 +46479,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46354,52 +46504,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46407,7 +46557,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46417,10 +46567,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46429,10 +46579,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46441,10 +46591,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46453,10 +46603,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46465,10 +46615,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57840,26 +57990,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/fi.po b/doc/translations/fi.po
index 1fee7179f2..e508724a41 100644
--- a/doc/translations/fi.po
+++ b/doc/translations/fi.po
@@ -3,14 +3,16 @@
# Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md).
# This file is distributed under the same license as the Godot source code.
#
-# Tapani Niemi <tapani.niemi@kapsi.fi>, 2020.
+# Tapani Niemi <tapani.niemi@kapsi.fi>, 2020, 2021.
# Pierre Stempin <pierre.stempin@gmail.com>, 2020.
+# Nekromanser <ari.taitto@protonmail.com>, 2021.
+# Leevi Laine <leeviervoemil@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-10-12 09:28+0000\n"
-"Last-Translator: Pierre Stempin <pierre.stempin@gmail.com>\n"
+"PO-Revision-Date: 2021-10-28 22:08+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"
"Language: fi\n"
@@ -18,45 +20,45 @@ 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.3-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Kuvaus"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
-msgstr "Oppaat"
+msgstr "Opetusohjelmat"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Ominaisuudet"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metodit"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Teeman ominaisuudet"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Signaalit"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Luetteloinnit"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Vakiot"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Ominaisuuksien kuvaukset"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Metodien kuvaukset"
@@ -116,6 +118,10 @@ msgid ""
"a = abs(-1) # a is 1\n"
"[/codeblock]"
msgstr ""
+"Palauttaa parametrin [code]s[/code] itseisarvon (eli positiivisen arvon).\n"
+"[codeblock]\n"
+"a = abs(-1) # a on 1\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
msgid ""
@@ -6225,21 +6231,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6247,7 +6257,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6258,7 +6268,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6266,41 +6276,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6308,61 +6318,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6377,7 +6387,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6386,7 +6396,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6395,7 +6405,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6412,29 +6422,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6471,21 +6481,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6493,7 +6507,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6504,7 +6518,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6512,14 +6526,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6527,21 +6541,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6556,7 +6570,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6571,7 +6585,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6580,7 +6594,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6589,7 +6603,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6608,7 +6622,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10189,7 +10203,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10388,19 +10403,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11239,26 +11266,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12729,80 +12763,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12846,49 +12896,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14660,26 +14717,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19913,7 +19977,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20040,7 +20105,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21075,8 +21140,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27694,16 +27762,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27711,7 +27781,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27719,73 +27789,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27795,7 +27865,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27805,7 +27875,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27816,7 +27886,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27824,7 +27894,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27832,7 +27902,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27841,21 +27911,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27864,25 +27934,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27890,7 +27960,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27898,7 +27968,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27906,7 +27976,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27914,7 +27984,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27922,7 +27992,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27932,7 +28002,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27942,7 +28012,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27953,31 +28023,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27992,55 +28062,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28265,6 +28335,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28276,7 +28357,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28286,7 +28367,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28298,7 +28379,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28306,17 +28387,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28326,7 +28407,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28335,53 +28416,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28389,7 +28470,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28398,17 +28479,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28421,7 +28502,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28433,7 +28514,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28443,7 +28524,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28454,13 +28535,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28468,19 +28549,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28489,7 +28570,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28502,12 +28583,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28522,7 +28612,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28532,11 +28622,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28550,7 +28667,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28563,34 +28680,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28598,83 +28715,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28682,23 +28799,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31957,14 +32074,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32457,26 +32581,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37084,26 +37215,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42186,27 +42324,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42238,6 +42376,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42274,11 +42420,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42310,7 +42456,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43576,18 +43722,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43595,7 +43729,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43605,13 +43739,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43625,14 +43774,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43641,7 +43790,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43649,7 +43798,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43665,20 +43814,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43686,75 +43835,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43764,7 +43913,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43774,27 +43923,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43802,81 +43951,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43884,109 +44033,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43997,91 +44146,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44090,13 +44239,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44106,7 +44255,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44114,19 +44263,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44140,45 +44289,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44187,7 +44336,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44198,7 +44347,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44214,14 +44363,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44229,49 +44378,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44280,7 +44429,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44288,7 +44437,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44296,7 +44445,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44306,7 +44455,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44315,7 +44464,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44324,7 +44473,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44334,7 +44483,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44342,7 +44491,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44352,7 +44501,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44362,7 +44511,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44370,7 +44519,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44379,7 +44528,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44387,7 +44536,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44399,477 +44548,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44877,92 +45026,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44972,33 +45121,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45011,7 +45160,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45023,7 +45172,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45035,7 +45184,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45048,7 +45197,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45056,28 +45205,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45087,25 +45236,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45118,7 +45267,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45130,7 +45279,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45142,7 +45291,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45155,13 +45304,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45169,11 +45318,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45187,7 +45336,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45196,7 +45345,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45212,7 +45361,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45222,7 +45371,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45232,7 +45381,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45243,7 +45392,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45253,7 +45402,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45261,7 +45410,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45272,7 +45421,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45287,7 +45436,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45296,13 +45445,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45311,7 +45460,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45321,7 +45470,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45333,7 +45482,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45343,24 +45492,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45369,7 +45518,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45377,7 +45526,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45386,7 +45535,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45396,7 +45545,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45404,31 +45553,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45436,7 +45585,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45446,46 +45595,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45493,7 +45649,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45503,7 +45659,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45512,7 +45668,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45521,20 +45677,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45543,7 +45699,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45551,7 +45707,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45560,7 +45716,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45570,20 +45726,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45592,13 +45748,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45608,46 +45764,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45657,7 +45813,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45669,7 +45825,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45677,7 +45833,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45685,7 +45841,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45694,7 +45850,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45708,7 +45864,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45718,7 +45874,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45727,7 +45883,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45737,54 +45893,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45795,61 +45951,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45860,7 +46016,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45869,26 +46025,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45899,20 +46055,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45924,52 +46080,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45977,7 +46133,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45987,10 +46143,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45999,10 +46155,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46011,10 +46167,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46023,10 +46179,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46035,10 +46191,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57402,26 +57558,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/fil.po b/doc/translations/fil.po
index 3874d2b91f..002a0c3f7f 100644
--- a/doc/translations/fil.po
+++ b/doc/translations/fil.po
@@ -21,43 +21,43 @@ msgstr ""
"|| n % 10 == 6 || n % 10 == 9);\n"
"X-Generator: Weblate 4.3-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Paglalarawan"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Mga tutorial"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr ""
@@ -6210,21 +6210,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6232,7 +6236,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6243,7 +6247,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6251,41 +6255,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6293,61 +6297,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6362,7 +6366,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6371,7 +6375,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6380,7 +6384,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6397,29 +6401,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6458,21 +6462,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6480,7 +6488,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6491,7 +6499,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6499,14 +6507,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6514,21 +6522,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6543,7 +6551,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6558,7 +6566,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6567,7 +6575,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6576,7 +6584,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6595,7 +6603,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10179,7 +10187,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10377,19 +10386,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11234,26 +11255,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12722,80 +12750,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12839,49 +12883,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14656,26 +14707,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19905,7 +19963,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20032,7 +20091,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21067,8 +21126,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27678,16 +27740,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27695,7 +27759,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27703,73 +27767,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27779,7 +27843,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27789,7 +27853,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27800,7 +27864,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27808,7 +27872,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27816,7 +27880,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27825,21 +27889,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27848,25 +27912,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27874,7 +27938,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27882,7 +27946,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27890,7 +27954,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27898,7 +27962,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27906,7 +27970,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27916,7 +27980,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27926,7 +27990,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27937,31 +28001,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27976,55 +28040,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28248,6 +28312,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28259,7 +28334,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28269,7 +28344,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28281,7 +28356,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28289,17 +28364,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28309,7 +28384,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28318,53 +28393,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28372,7 +28447,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28381,17 +28456,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28404,7 +28479,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28416,7 +28491,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28426,7 +28501,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28437,13 +28512,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28451,19 +28526,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28472,7 +28547,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28485,12 +28560,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28505,7 +28589,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28515,11 +28599,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28533,7 +28644,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28546,34 +28657,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28581,83 +28692,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28665,23 +28776,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31938,14 +32049,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32438,26 +32556,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37066,26 +37191,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42159,27 +42291,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42211,6 +42343,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42247,11 +42387,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42283,7 +42423,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43549,18 +43689,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43568,7 +43696,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43578,13 +43706,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43598,14 +43741,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43614,7 +43757,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43622,7 +43765,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43638,20 +43781,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43659,75 +43802,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43737,7 +43880,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43747,27 +43890,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43775,81 +43918,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43857,109 +44000,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43970,91 +44113,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44063,13 +44206,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44079,7 +44222,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44087,19 +44230,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44113,45 +44256,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44160,7 +44303,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44171,7 +44314,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44187,14 +44330,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44202,49 +44345,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44253,7 +44396,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44261,7 +44404,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44269,7 +44412,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44279,7 +44422,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44288,7 +44431,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44297,7 +44440,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44307,7 +44450,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44315,7 +44458,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44325,7 +44468,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44335,7 +44478,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44343,7 +44486,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44352,7 +44495,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44360,7 +44503,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44372,477 +44515,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44850,92 +44993,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44945,33 +45088,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44984,7 +45127,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44996,7 +45139,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45008,7 +45151,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45021,7 +45164,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45029,28 +45172,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45060,25 +45203,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45091,7 +45234,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45103,7 +45246,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45115,7 +45258,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45128,13 +45271,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45142,11 +45285,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45160,7 +45303,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45169,7 +45312,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45185,7 +45328,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45195,7 +45338,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45205,7 +45348,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45216,7 +45359,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45226,7 +45369,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45234,7 +45377,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45245,7 +45388,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45260,7 +45403,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45269,13 +45412,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45284,7 +45427,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45294,7 +45437,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45306,7 +45449,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45316,24 +45459,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45342,7 +45485,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45350,7 +45493,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45359,7 +45502,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45369,7 +45512,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45377,31 +45520,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45409,7 +45552,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45419,46 +45562,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45466,7 +45616,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45476,7 +45626,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45485,7 +45635,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45494,20 +45644,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45516,7 +45666,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45524,7 +45674,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45533,7 +45683,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45543,20 +45693,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45565,13 +45715,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45581,46 +45731,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45630,7 +45780,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45642,7 +45792,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45650,7 +45800,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45658,7 +45808,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45667,7 +45817,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45681,7 +45831,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45691,7 +45841,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45700,7 +45850,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45710,54 +45860,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45768,61 +45918,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45833,7 +45983,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45842,26 +45992,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45872,20 +46022,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45897,52 +46047,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45950,7 +46100,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45960,10 +46110,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45972,10 +46122,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45984,10 +46134,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45996,10 +46146,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46008,10 +46158,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57379,26 +57529,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/fr.po b/doc/translations/fr.po
index aaa417b657..c576784485 100644
--- a/doc/translations/fr.po
+++ b/doc/translations/fr.po
@@ -44,13 +44,14 @@
# Tim Krief <tim@timkrief.com>, 2021.
# Rémi Verschelde <akien@godotengine.org>, 2021.
# blfr <contact.blfr@gmail.com>, 2021.
+# Urbain <urbain.lantres@tutanota.com>, 2021.
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: 2021-10-15 09:31+0000\n"
-"Last-Translator: Rémi Verschelde <akien@godotengine.org>\n"
+"PO-Revision-Date: 2021-10-31 13:39+0000\n"
+"Last-Translator: Urbain <urbain.lantres@tutanota.com>\n"
"Language-Team: French <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/fr/>\n"
"Language: fr\n"
@@ -60,43 +61,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Description"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Tutoriels"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Propriétés"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Méthodes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Propriétés du thème"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Signaux"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Énumérations"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constantes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Description des propriétés"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descriptions des méthodes"
@@ -501,6 +502,24 @@ msgid ""
"See also [method smoothstep]. If you need to perform more advanced "
"transitions, use [Tween] or [AnimationPlayer]."
msgstr ""
+"Retourne une valeur \"assouplie\" de [code]x[/code] sur la base d'une "
+"fonction d'assouplissement définie avec [code]curve[/code]. Cette fonction "
+"d'assouplissement est basée sur un exposant. [code]curve[/code] peut être un "
+"nombre à virgule flottante, avec des valeurs spécifiques conduisant aux "
+"comportements suivants:\n"
+"[codeblock]\n"
+"- Inférieur à -1.0 (exclusif): Ease in-out\n"
+"- 1.0: Linéaire\n"
+"- Entre -1.0 et 0.0 (exclusif): Ease out-in\n"
+"- 0.0: Constante\n"
+"- Entre 0.0 à 1.0 (exclusif): Ease in\n"
+"- 1.0: Linéaire\n"
+"- Supérieur à 1.0 (exclusif): Ease out\n"
+"[/codeblock]\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
+"Voir également [méthode smoothstep]. Si vous avez besoin de réaliser des "
+"transitions plus avancées, utilisez [Tween] ou [AnimationPlayer]."
#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
@@ -1221,6 +1240,17 @@ msgid ""
"distinguishes them from print messages used for debugging purposes, while "
"also displaying a stack trace when an error or warning is printed."
msgstr ""
+"Converti un argument ou plus en chaine de caractères de la meilleur manière "
+"possible et les affiches dans la console\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"=\", a) # Affiche a=[1, 2, 3]\n"
+"[/codeblock]\n"
+"[b]Note : [/b] Pensez à utiliser [method push_error] et [method "
+"push_warning] pour afficher les messages d'erreur et d'avertissement au lieu "
+"de [method print]. Cela les distingue des messages d'impression utilisés à "
+"des fins de débogage, tout en affichant une trace de la pile lorsqu'une "
+"erreur ou un avertissement est affiché."
#: modules/gdscript/doc_classes/@GDScript.xml:702
msgid "Like [method print], but prints only when used in debug mode."
@@ -7641,21 +7671,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7663,7 +7697,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7674,7 +7708,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7682,41 +7716,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7724,61 +7758,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7793,7 +7827,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7802,7 +7836,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7811,7 +7845,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -7828,29 +7862,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -7889,21 +7923,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -7911,7 +7949,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -7922,7 +7960,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7930,14 +7968,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7945,21 +7983,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7974,7 +8012,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7989,7 +8027,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7998,7 +8036,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8007,7 +8045,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8026,7 +8064,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -11735,7 +11773,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -11940,19 +11979,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr "Retourne le bouton d'annulation."
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -12814,26 +12865,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
+msgid "The horizontal space between [Button]'s icon and text."
+msgstr ""
+
+#: doc/classes/Button.xml:92
msgid "Default [StyleBox] for the [Button]."
msgstr "[StyleBox] par défaut pour le [Button]."
-#: doc/classes/Button.xml:92
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -14400,80 +14458,98 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+#, fuzzy
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr "Icône à afficher lorsque le [CheckButton] est coché et désactivé."
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr "La couleur de la police du texte [CheckBox]."
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+#, fuzzy
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr "Icône à afficher lorsque le [CheckButton] est coché et désactivé."
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr "Bouton à cocher. Voir aussi [CheckBox]."
@@ -14517,49 +14593,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr "Icône à afficher lorsque le [CheckButton] est coché et désactivé."
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -16510,26 +16593,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:95
msgid "Default [StyleBox] for the [ColorPickerButton]."
msgstr "[StyleBox] par défaut pour le [ColorPickerButton]."
-#: doc/classes/ColorPickerButton.xml:95
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -21888,7 +21978,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -22015,7 +22106,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -23073,10 +23164,12 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr "Émis à chaque fois que la ressource change."
-#: doc/classes/EditorResourcePicker.xml:89
-#, fuzzy
-msgid "Emitted when the resource value was set and user clicked to edit it."
-msgstr "Émis lorsqu'une interface est supprimée."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
msgid "Helper to generate previews of resources or files."
@@ -29851,16 +29944,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -29868,7 +29963,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -29876,73 +29971,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -29952,7 +30047,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -29962,7 +30057,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -29973,7 +30068,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -29981,7 +30076,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -29989,7 +30084,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -29998,21 +30093,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -30021,7 +30116,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
@@ -30029,19 +30124,19 @@ msgstr ""
"Même chose que [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], mais "
"avec une composante alpha."
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -30049,7 +30144,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30057,7 +30152,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30065,7 +30160,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30073,7 +30168,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30081,7 +30176,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30091,7 +30186,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30101,7 +30196,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30112,31 +30207,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -30151,56 +30246,56 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr "L’image n’a pas d’alpha."
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
#, fuzzy
msgid "Image uses alpha."
msgstr "L'image utilise l'alpha."
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr "Utilisez la compression ST3TC."
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr "Utilisez la compression PVRTC2."
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr "Utilisez la compression PVRTC4."
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr "Utilisez la compression ETC."
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr "Utilisez la compression ETC2."
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -30426,6 +30521,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -30437,7 +30543,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -30447,7 +30553,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -30459,7 +30565,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -30467,17 +30573,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -30487,7 +30593,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -30496,54 +30602,54 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
#, fuzzy
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr "Retourne l'état actuel de ce canal, voir [enum ChannelState]."
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -30551,7 +30657,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -30560,17 +30666,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -30583,7 +30689,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -30595,7 +30701,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -30605,7 +30711,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -30616,7 +30722,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
@@ -30625,7 +30731,7 @@ 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/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -30633,7 +30739,7 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
@@ -30642,13 +30748,13 @@ 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/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -30657,7 +30763,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -30670,12 +30776,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -30690,7 +30805,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -30700,11 +30815,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -30718,7 +30860,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -30731,34 +30873,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr "Arrête la vibration du joypad."
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -30766,83 +30908,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -30850,23 +30992,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -34216,14 +34358,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -34720,26 +34869,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -39426,26 +39582,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -44665,27 +44828,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -44719,6 +44882,14 @@ msgstr "Ajoute un [PackedVector3Array] à la fin de ce tableau."
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -44757,12 +44928,12 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
#, fuzzy
msgid "Changes the int at the given index."
msgstr "Modifie le [Vector2] à l’index donné."
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr "Retourne la taille du tableau."
@@ -44796,7 +44967,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr "Ajoute un [PackedVector3Array] à la fin de ce tableau."
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -46099,18 +46270,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -46118,7 +46277,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -46128,13 +46287,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -46148,14 +46322,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -46164,7 +46338,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -46172,7 +46346,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -46188,20 +46362,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -46209,75 +46383,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -46287,7 +46461,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -46297,27 +46471,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -46325,81 +46499,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -46407,112 +46581,112 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
"Si [code]true[/code], le mouvement linéaire à travers l’axe Z est limité."
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr "Si [code]true[/code], le filtrage est activé."
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -46523,91 +46697,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr "Pile d’appels maximale autorisée pour le débogage de GDScript."
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr "Hotspot pour l’image de curseur de souris personnalisée."
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -46616,13 +46790,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -46632,7 +46806,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -46640,19 +46814,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -46666,45 +46840,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -46713,7 +46887,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -46724,7 +46898,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -46740,14 +46914,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -46755,49 +46929,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -46806,7 +46980,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -46814,7 +46988,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46822,7 +46996,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -46832,7 +47006,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -46841,7 +47015,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -46850,7 +47024,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -46860,7 +47034,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46868,7 +47042,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -46878,7 +47052,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -46888,7 +47062,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46896,7 +47070,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -46905,7 +47079,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46913,7 +47087,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -46925,478 +47099,478 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
#, fuzzy
msgid "If [code]true[/code], logs all output to files."
msgstr "Si [code]true[/code], enregistre toutes les sorties aux fichiers."
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -47404,92 +47578,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -47499,19 +47673,19 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
#, fuzzy
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
@@ -47521,14 +47695,14 @@ msgstr ""
"Taille de la table de hachage utilisée pour l'algorithme de grille de "
"hachage 2D à large phase."
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47541,7 +47715,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47553,7 +47727,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47565,7 +47739,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47578,7 +47752,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -47586,28 +47760,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -47617,25 +47791,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47648,7 +47822,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47660,7 +47834,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47672,7 +47846,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47685,13 +47859,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -47699,11 +47873,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -47717,7 +47891,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -47726,7 +47900,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -47742,7 +47916,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -47752,7 +47926,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -47762,7 +47936,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -47773,7 +47947,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -47783,7 +47957,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -47791,7 +47965,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -47802,7 +47976,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -47817,7 +47991,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -47826,13 +48000,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -47841,7 +48015,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -47851,7 +48025,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -47863,7 +48037,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -47873,24 +48047,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -47899,7 +48073,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -47907,7 +48081,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -47916,7 +48090,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -47926,7 +48100,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -47934,31 +48108,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -47966,7 +48140,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -47976,46 +48150,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -48023,7 +48204,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -48033,7 +48214,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -48042,7 +48223,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -48051,14 +48232,14 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
@@ -48067,7 +48248,7 @@ msgstr ""
"Si [code]true[/code], la [SpinBox] sera modifiable. Sinon, elle sera en "
"lecture seule."
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -48076,7 +48257,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -48084,7 +48265,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -48093,7 +48274,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -48103,13 +48284,13 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
#, fuzzy
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
@@ -48119,7 +48300,7 @@ msgstr ""
"Si [code]true[/code], l’état de la clé est pressé. Si [code]false[/code], "
"l’état de la clé est libéré."
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -48128,13 +48309,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -48144,46 +48325,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -48193,7 +48374,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -48205,7 +48386,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -48213,7 +48394,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -48221,7 +48402,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -48230,7 +48411,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -48244,7 +48425,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -48254,7 +48435,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -48263,7 +48444,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -48273,54 +48454,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -48331,61 +48512,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -48396,7 +48577,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -48405,26 +48586,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -48435,20 +48616,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -48460,52 +48641,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -48513,7 +48694,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -48523,10 +48704,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -48535,10 +48716,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -48547,10 +48728,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -48559,10 +48740,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -48571,10 +48752,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -60276,31 +60457,38 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr "Icône à afficher lorsque le [CheckButton] est coché et désactivé."
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
+msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:45
#, fuzzy
msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
"Le [StyleBox] qui s'affiche en arrière-plan lorsque l'on appuie sur le "
"[CheckButton]."
-#: doc/classes/ToolButton.xml:45
+#: doc/classes/ToolButton.xml:48
msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
-#: doc/classes/ToolButton.xml:48
+#: doc/classes/ToolButton.xml:51
#, fuzzy
msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr "L'espacement entre l'icône de l'élément et le texte."
-#: doc/classes/ToolButton.xml:51
+#: doc/classes/ToolButton.xml:54
#, fuzzy
msgid "Default [StyleBox] for the [ToolButton]."
msgstr "[StyleBox] par défaut pour le [Button]."
-#: doc/classes/ToolButton.xml:54
+#: doc/classes/ToolButton.xml:57
#, fuzzy
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
@@ -72994,6 +73182,10 @@ msgstr ""
"Si [code]true[/code] (vrai), les nœuds enfants sont triés, sinon le tri est "
"désactivé."
+#, fuzzy
+#~ msgid "Emitted when the resource value was set and user clicked to edit it."
+#~ msgstr "Émis lorsqu'une interface est supprimée."
+
#~ msgid "Returns the label used for built-in text."
#~ msgstr "Retourne l’étiquette utilisée pour le texte intégré."
diff --git a/doc/translations/gl.po b/doc/translations/gl.po
index 46edb208d7..b4b213e411 100644
--- a/doc/translations/gl.po
+++ b/doc/translations/gl.po
@@ -21,43 +21,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.7-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Descrición"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Titoriais"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Propiedades"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Métodos"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Propiedades do Tema"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Sinais"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constantes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Descrición de Propiedades"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descrición de Métodos"
@@ -6198,21 +6198,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6220,7 +6224,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6231,7 +6235,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6239,41 +6243,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6281,61 +6285,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6350,7 +6354,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6359,7 +6363,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6368,7 +6372,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6385,29 +6389,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6442,21 +6446,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6464,7 +6472,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6475,7 +6483,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6483,14 +6491,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6498,21 +6506,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6527,7 +6535,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6542,7 +6550,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6551,7 +6559,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6560,7 +6568,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6579,7 +6587,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10146,7 +10154,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10344,19 +10353,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11190,26 +11211,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12668,80 +12696,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12785,49 +12829,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14595,26 +14646,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19826,7 +19884,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -19950,7 +20009,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -20980,8 +21039,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27555,16 +27617,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27572,7 +27636,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27580,73 +27644,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27656,7 +27720,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27666,7 +27730,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27677,7 +27741,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27685,7 +27749,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27693,7 +27757,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27702,21 +27766,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27725,25 +27789,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27751,7 +27815,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27759,7 +27823,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27767,7 +27831,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27775,7 +27839,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27783,7 +27847,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27793,7 +27857,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27803,7 +27867,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27814,31 +27878,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27853,55 +27917,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28124,6 +28188,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28135,7 +28210,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28145,7 +28220,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28157,7 +28232,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28165,17 +28240,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28185,7 +28260,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28194,53 +28269,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28248,7 +28323,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28257,17 +28332,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28280,7 +28355,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28292,7 +28367,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28302,7 +28377,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28313,13 +28388,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28327,19 +28402,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28348,7 +28423,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28361,12 +28436,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28381,7 +28465,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28391,11 +28475,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28409,7 +28520,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28422,34 +28533,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28457,83 +28568,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28541,23 +28652,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31787,14 +31898,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32287,26 +32405,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -36882,26 +37007,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -41968,27 +42100,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42020,6 +42152,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42056,11 +42196,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42092,7 +42232,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43357,18 +43497,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43376,7 +43504,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43386,13 +43514,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43406,14 +43549,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43422,7 +43565,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43430,7 +43573,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43446,20 +43589,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43467,75 +43610,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43545,7 +43688,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43555,27 +43698,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43583,81 +43726,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43665,109 +43808,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43778,91 +43921,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -43871,13 +44014,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -43887,7 +44030,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -43895,19 +44038,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -43921,45 +44064,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -43968,7 +44111,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -43979,7 +44122,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -43995,14 +44138,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44010,49 +44153,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44061,7 +44204,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44069,7 +44212,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44077,7 +44220,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44087,7 +44230,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44096,7 +44239,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44105,7 +44248,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44115,7 +44258,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44123,7 +44266,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44133,7 +44276,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44143,7 +44286,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44151,7 +44294,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44160,7 +44303,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44168,7 +44311,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44180,477 +44323,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44658,92 +44801,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44753,33 +44896,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44792,7 +44935,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44804,7 +44947,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44816,7 +44959,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44829,7 +44972,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -44837,28 +44980,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -44868,25 +45011,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44899,7 +45042,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44911,7 +45054,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44923,7 +45066,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44936,13 +45079,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -44950,11 +45093,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -44968,7 +45111,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -44977,7 +45120,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -44993,7 +45136,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45003,7 +45146,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45013,7 +45156,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45024,7 +45167,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45034,7 +45177,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45042,7 +45185,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45053,7 +45196,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45068,7 +45211,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45077,13 +45220,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45092,7 +45235,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45102,7 +45245,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45114,7 +45257,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45124,24 +45267,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45150,7 +45293,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45158,7 +45301,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45167,7 +45310,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45177,7 +45320,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45185,31 +45328,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45217,7 +45360,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45227,46 +45370,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45274,7 +45424,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45284,7 +45434,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45293,7 +45443,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45302,20 +45452,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45324,7 +45474,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45332,7 +45482,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45341,7 +45491,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45351,20 +45501,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45373,13 +45523,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45389,46 +45539,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45438,7 +45588,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45450,7 +45600,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45458,7 +45608,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45466,7 +45616,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45475,7 +45625,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45489,7 +45639,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45499,7 +45649,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45508,7 +45658,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45518,54 +45668,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45576,61 +45726,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45641,7 +45791,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45650,26 +45800,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45680,20 +45830,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45705,52 +45855,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45758,7 +45908,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45768,10 +45918,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45780,10 +45930,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45792,10 +45942,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45804,10 +45954,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -45816,10 +45966,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57137,26 +57287,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/hi.po b/doc/translations/hi.po
index 0f7e6689bc..641d8c17dd 100644
--- a/doc/translations/hi.po
+++ b/doc/translations/hi.po
@@ -19,43 +19,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.7-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "विवरण"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "शिकà¥à¤·à¤£"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "विशेषता"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "तरीकों"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "थीम विशेषता"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "संकेत"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "गणना"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr ""
@@ -6196,21 +6196,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6218,7 +6222,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6229,7 +6233,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6237,41 +6241,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6279,61 +6283,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6348,7 +6352,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6357,7 +6361,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6366,7 +6370,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6383,29 +6387,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6440,21 +6444,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6462,7 +6470,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6473,7 +6481,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6481,14 +6489,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6496,21 +6504,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6525,7 +6533,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6540,7 +6548,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6549,7 +6557,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6558,7 +6566,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6577,7 +6585,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10144,7 +10152,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10342,19 +10351,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11188,26 +11209,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12666,80 +12694,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12783,49 +12827,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14593,26 +14644,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19824,7 +19882,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -19948,7 +20007,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -20978,8 +21037,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27553,16 +27615,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27570,7 +27634,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27578,73 +27642,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27654,7 +27718,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27664,7 +27728,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27675,7 +27739,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27683,7 +27747,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27691,7 +27755,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27700,21 +27764,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27723,25 +27787,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27749,7 +27813,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27757,7 +27821,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27765,7 +27829,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27773,7 +27837,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27781,7 +27845,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27791,7 +27855,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27801,7 +27865,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27812,31 +27876,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27851,55 +27915,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28122,6 +28186,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28133,7 +28208,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28143,7 +28218,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28155,7 +28230,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28163,17 +28238,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28183,7 +28258,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28192,53 +28267,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28246,7 +28321,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28255,17 +28330,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28278,7 +28353,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28290,7 +28365,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28300,7 +28375,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28311,13 +28386,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28325,19 +28400,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28346,7 +28421,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28359,12 +28434,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28379,7 +28463,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28389,11 +28473,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28407,7 +28518,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28420,34 +28531,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28455,83 +28566,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28539,23 +28650,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31785,14 +31896,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32285,26 +32403,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -36880,26 +37005,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -41966,27 +42098,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42018,6 +42150,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42054,11 +42194,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42090,7 +42230,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43355,18 +43495,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43374,7 +43502,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43384,13 +43512,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43404,14 +43547,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43420,7 +43563,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43428,7 +43571,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43444,20 +43587,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43465,75 +43608,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43543,7 +43686,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43553,27 +43696,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43581,81 +43724,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43663,109 +43806,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43776,91 +43919,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -43869,13 +44012,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -43885,7 +44028,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -43893,19 +44036,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -43919,45 +44062,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -43966,7 +44109,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -43977,7 +44120,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -43993,14 +44136,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44008,49 +44151,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44059,7 +44202,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44067,7 +44210,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44075,7 +44218,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44085,7 +44228,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44094,7 +44237,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44103,7 +44246,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44113,7 +44256,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44121,7 +44264,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44131,7 +44274,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44141,7 +44284,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44149,7 +44292,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44158,7 +44301,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44166,7 +44309,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44178,477 +44321,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44656,92 +44799,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44751,33 +44894,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44790,7 +44933,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44802,7 +44945,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44814,7 +44957,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44827,7 +44970,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -44835,28 +44978,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -44866,25 +45009,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44897,7 +45040,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44909,7 +45052,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44921,7 +45064,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44934,13 +45077,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -44948,11 +45091,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -44966,7 +45109,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -44975,7 +45118,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -44991,7 +45134,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45001,7 +45144,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45011,7 +45154,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45022,7 +45165,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45032,7 +45175,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45040,7 +45183,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45051,7 +45194,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45066,7 +45209,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45075,13 +45218,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45090,7 +45233,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45100,7 +45243,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45112,7 +45255,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45122,24 +45265,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45148,7 +45291,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45156,7 +45299,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45165,7 +45308,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45175,7 +45318,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45183,31 +45326,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45215,7 +45358,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45225,46 +45368,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45272,7 +45422,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45282,7 +45432,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45291,7 +45441,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45300,20 +45450,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45322,7 +45472,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45330,7 +45480,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45339,7 +45489,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45349,20 +45499,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45371,13 +45521,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45387,46 +45537,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45436,7 +45586,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45448,7 +45598,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45456,7 +45606,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45464,7 +45614,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45473,7 +45623,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45487,7 +45637,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45497,7 +45647,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45506,7 +45656,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45516,54 +45666,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45574,61 +45724,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45639,7 +45789,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45648,26 +45798,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45678,20 +45828,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45703,52 +45853,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45756,7 +45906,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45766,10 +45916,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45778,10 +45928,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45790,10 +45940,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45802,10 +45952,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -45814,10 +45964,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57135,26 +57285,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/hu.po b/doc/translations/hu.po
index e439716469..c917fe976a 100644
--- a/doc/translations/hu.po
+++ b/doc/translations/hu.po
@@ -4,12 +4,13 @@
# This file is distributed under the same license as the Godot source code.
#
# Misi <varady.misi@gmail.com>, 2021.
+# Looky1173 <lgl1173and2006@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-10-10 14:03+0000\n"
-"Last-Translator: Misi <varady.misi@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: Looky1173 <lgl1173and2006@gmail.com>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/hu/>\n"
"Language: hu\n"
@@ -19,46 +20,45 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Leírás"
-#: doc/tools/makerst.py
-#, fuzzy
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Útmutatók"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Tulajdonságok"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metódusok"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Theme Properties"
msgstr "Téma Tulajdonságok"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Jelzések"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Enumerations"
msgstr "Számlálók"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Konstansok"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Tulajdonság leírások"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Metódus leírások"
@@ -6212,21 +6212,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6234,7 +6238,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6245,7 +6249,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6253,41 +6257,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6295,61 +6299,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6364,7 +6368,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6373,7 +6377,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6382,7 +6386,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6399,29 +6403,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6456,21 +6460,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6478,7 +6486,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6489,7 +6497,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6497,14 +6505,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6512,21 +6520,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6541,7 +6549,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6556,7 +6564,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6565,7 +6573,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6574,7 +6582,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6593,7 +6601,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10160,7 +10168,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10358,19 +10367,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11204,26 +11225,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12682,80 +12710,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12799,49 +12843,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14609,26 +14660,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19840,7 +19898,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -19964,7 +20023,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -20994,8 +21053,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27569,16 +27631,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27586,7 +27650,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27594,73 +27658,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27670,7 +27734,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27680,7 +27744,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27691,7 +27755,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27699,7 +27763,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27707,7 +27771,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27716,21 +27780,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27739,25 +27803,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27765,7 +27829,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27773,7 +27837,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27781,7 +27845,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27789,7 +27853,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27797,7 +27861,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27807,7 +27871,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27817,7 +27881,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27828,31 +27892,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27867,55 +27931,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28138,6 +28202,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28149,7 +28224,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28159,7 +28234,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28171,7 +28246,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28179,17 +28254,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28199,7 +28274,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28208,53 +28283,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28262,7 +28337,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28271,17 +28346,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28294,7 +28369,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28306,7 +28381,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28316,7 +28391,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28327,13 +28402,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28341,19 +28416,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28362,7 +28437,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28375,12 +28450,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28395,7 +28479,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28405,11 +28489,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28423,7 +28534,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28436,34 +28547,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28471,83 +28582,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28555,23 +28666,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31801,14 +31912,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32301,26 +32419,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -36896,26 +37021,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -41982,27 +42114,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42034,6 +42166,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42070,11 +42210,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42106,7 +42246,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43371,18 +43511,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43390,7 +43518,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43400,13 +43528,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43420,14 +43563,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43436,7 +43579,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43444,7 +43587,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43460,20 +43603,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43481,75 +43624,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43559,7 +43702,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43569,27 +43712,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43597,81 +43740,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43679,109 +43822,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43792,91 +43935,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -43885,13 +44028,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -43901,7 +44044,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -43909,19 +44052,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -43935,45 +44078,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -43982,7 +44125,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -43993,7 +44136,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44009,14 +44152,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44024,49 +44167,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44075,7 +44218,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44083,7 +44226,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44091,7 +44234,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44101,7 +44244,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44110,7 +44253,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44119,7 +44262,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44129,7 +44272,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44137,7 +44280,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44147,7 +44290,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44157,7 +44300,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44165,7 +44308,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44174,7 +44317,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44182,7 +44325,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44194,477 +44337,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44672,92 +44815,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44767,33 +44910,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44806,7 +44949,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44818,7 +44961,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44830,7 +44973,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44843,7 +44986,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -44851,28 +44994,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -44882,25 +45025,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44913,7 +45056,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44925,7 +45068,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44937,7 +45080,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44950,13 +45093,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -44964,11 +45107,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -44982,7 +45125,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -44991,7 +45134,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45007,7 +45150,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45017,7 +45160,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45027,7 +45170,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45038,7 +45181,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45048,7 +45191,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45056,7 +45199,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45067,7 +45210,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45082,7 +45225,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45091,13 +45234,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45106,7 +45249,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45116,7 +45259,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45128,7 +45271,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45138,24 +45281,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45164,7 +45307,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45172,7 +45315,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45181,7 +45324,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45191,7 +45334,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45199,31 +45342,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45231,7 +45374,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45241,46 +45384,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45288,7 +45438,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45298,7 +45448,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45307,7 +45457,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45316,20 +45466,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45338,7 +45488,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45346,7 +45496,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45355,7 +45505,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45365,20 +45515,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45387,13 +45537,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45403,46 +45553,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45452,7 +45602,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45464,7 +45614,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45472,7 +45622,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45480,7 +45630,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45489,7 +45639,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45503,7 +45653,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45513,7 +45663,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45522,7 +45672,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45532,54 +45682,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45590,61 +45740,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45655,7 +45805,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45664,26 +45814,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45694,20 +45844,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45719,52 +45869,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45772,7 +45922,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45782,10 +45932,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45794,10 +45944,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45806,10 +45956,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45818,10 +45968,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -45830,10 +45980,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57151,26 +57301,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/id.po b/doc/translations/id.po
index 6d58474929..3e64a2b4c3 100644
--- a/doc/translations/id.po
+++ b/doc/translations/id.po
@@ -24,43 +24,43 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Deskripsi"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Tutorial"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Properti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metode"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Properti Tema"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Sinyal"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumerasi"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Konstanta"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Deskripsi Properti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Deskripsi Method"
@@ -6414,21 +6414,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6436,7 +6440,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6447,7 +6451,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6455,41 +6459,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6497,61 +6501,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6566,7 +6570,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6575,7 +6579,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6584,7 +6588,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6601,29 +6605,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6662,21 +6666,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6684,7 +6692,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6695,7 +6703,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6703,14 +6711,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6718,21 +6726,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6747,7 +6755,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6762,7 +6770,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6771,7 +6779,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6780,7 +6788,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6799,7 +6807,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10383,7 +10391,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10581,19 +10590,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11438,26 +11459,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12927,80 +12955,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13044,49 +13088,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14861,26 +14912,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20110,7 +20168,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20237,7 +20296,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21272,8 +21331,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27884,16 +27946,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27901,7 +27965,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27909,73 +27973,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27985,7 +28049,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27995,7 +28059,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28006,7 +28070,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28014,7 +28078,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28022,7 +28086,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28031,21 +28095,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28054,25 +28118,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28080,7 +28144,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28088,7 +28152,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28096,7 +28160,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28104,7 +28168,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28112,7 +28176,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28122,7 +28186,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28132,7 +28196,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28143,31 +28207,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28182,55 +28246,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28454,6 +28518,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28465,7 +28540,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28475,7 +28550,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28487,7 +28562,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28495,17 +28570,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28515,7 +28590,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28524,53 +28599,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28578,7 +28653,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28587,17 +28662,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28610,7 +28685,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28622,7 +28697,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28632,7 +28707,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28643,13 +28718,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28657,19 +28732,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28678,7 +28753,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28691,12 +28766,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28711,7 +28795,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28721,11 +28805,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28739,7 +28850,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28752,34 +28863,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28787,83 +28898,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28871,23 +28982,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32144,14 +32255,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32644,26 +32762,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37278,26 +37403,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42387,27 +42519,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42439,6 +42571,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42475,11 +42615,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42511,7 +42651,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43777,18 +43917,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43796,7 +43924,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43806,13 +43934,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43826,14 +43969,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43842,7 +43985,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43850,7 +43993,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43866,20 +44009,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43887,75 +44030,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43965,7 +44108,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43975,27 +44118,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44003,81 +44146,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44085,109 +44228,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44198,91 +44341,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44291,13 +44434,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44307,7 +44450,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44315,19 +44458,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44341,45 +44484,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44388,7 +44531,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44399,7 +44542,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44415,14 +44558,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44430,49 +44573,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44481,7 +44624,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44489,7 +44632,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44497,7 +44640,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44507,7 +44650,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44516,7 +44659,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44525,7 +44668,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44535,7 +44678,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44543,7 +44686,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44553,7 +44696,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44563,7 +44706,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44571,7 +44714,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44580,7 +44723,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44588,7 +44731,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44600,477 +44743,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45078,92 +45221,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45173,33 +45316,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45212,7 +45355,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45224,7 +45367,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45236,7 +45379,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45249,7 +45392,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45257,28 +45400,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45288,25 +45431,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45319,7 +45462,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45331,7 +45474,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45343,7 +45486,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45356,13 +45499,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45370,11 +45513,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45388,7 +45531,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45397,7 +45540,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45413,7 +45556,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45423,7 +45566,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45433,7 +45576,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45444,7 +45587,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45454,7 +45597,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45462,7 +45605,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45473,7 +45616,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45488,7 +45631,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45497,13 +45640,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45512,7 +45655,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45522,7 +45665,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45534,7 +45677,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45544,24 +45687,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45570,7 +45713,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45578,7 +45721,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45587,7 +45730,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45597,7 +45740,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45605,31 +45748,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45637,7 +45780,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45647,46 +45790,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45694,7 +45844,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45704,7 +45854,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45713,7 +45863,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45722,20 +45872,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45744,7 +45894,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45752,7 +45902,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45761,7 +45911,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45771,20 +45921,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45793,13 +45943,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45809,46 +45959,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45858,7 +46008,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45870,7 +46020,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45878,7 +46028,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45886,7 +46036,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45895,7 +46045,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45909,7 +46059,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45919,7 +46069,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45928,7 +46078,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45938,54 +46088,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45996,61 +46146,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46061,7 +46211,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46070,26 +46220,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46100,20 +46250,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46125,52 +46275,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46178,7 +46328,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46188,10 +46338,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46200,10 +46350,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46212,10 +46362,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46224,10 +46374,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46236,10 +46386,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57607,26 +57757,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/it.po b/doc/translations/it.po
index 6b85de60f3..cdc5e42f21 100644
--- a/doc/translations/it.po
+++ b/doc/translations/it.po
@@ -20,12 +20,13 @@
# Daniele Basso <tiziodcaio@gmail.com>, 2021.
# Jacopo Farina <jacopo1.farina@gmail.com>, 2021.
# Riteo Siuga <riteo@posteo.net>, 2021.
+# ZeroKun265 <davidegiambirtone265@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-07-26 03:35+0000\n"
-"Last-Translator: Riteo Siuga <riteo@posteo.net>\n"
+"PO-Revision-Date: 2021-10-31 13:39+0000\n"
+"Last-Translator: ZeroKun265 <davidegiambirtone265@gmail.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/it/>\n"
"Language: it\n"
@@ -33,45 +34,45 @@ 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.7.2-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Descrizione"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Guide"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Proprietà"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metodi"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Proprietà del tema"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Segnali"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumerazioni"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Costanti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Descrizioni delle proprietà"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descrizioni del metodo"
@@ -130,7 +131,6 @@ msgstr ""
"I nomi dei colori supportati sono uguali alle costanti definite in [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -141,12 +141,10 @@ msgstr ""
"Ritorna il valore assoluto del parametro [code]s[/code] (ovvero un numero "
"positivo, sia intero che decimale).\n"
"[codeblock]\n"
-"# a è 1\n"
-"a = abs(-1)\n"
+"a = abs(-1) # a è 1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
-#, fuzzy
msgid ""
"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -159,6 +157,7 @@ msgid ""
msgstr ""
"Restituisce l'arcocoseno di [code]s[/code] in radianti. Usato per prendere "
"l'angolo del coseno di [code]s[/code].\n"
+"[code]s[/code] deve essere compreso tra [code]1[/code] e [code] -1 [/code]\n"
"[codeblock]\n"
"# c è uguale a 0.523599 o 30 gradi se convertito con rad2deg(s)\n"
"c = acos(0.866025)\n"
@@ -438,7 +437,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:238
-#, fuzzy
msgid ""
"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
@@ -447,8 +445,7 @@ msgid ""
msgstr ""
"Converte un angolo espresso in gradi in radianti.\n"
"[codeblock]\n"
-"# r è 3.141593\n"
-"r = deg2rad(180)\n"
+"r = deg2rad(180) # r è 3.141593\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:248
@@ -6767,21 +6764,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6789,7 +6790,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6800,7 +6801,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6808,41 +6809,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6850,61 +6851,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6919,7 +6920,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6928,7 +6929,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6937,7 +6938,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6954,29 +6955,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -7015,21 +7016,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -7037,7 +7042,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -7048,7 +7053,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7056,14 +7061,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7071,21 +7076,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7100,7 +7105,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7115,7 +7120,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7124,7 +7129,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7133,7 +7138,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7152,7 +7157,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10746,7 +10751,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10945,19 +10951,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11802,26 +11820,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13295,80 +13320,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13412,49 +13453,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -15232,26 +15280,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20510,7 +20565,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20637,7 +20693,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21677,8 +21733,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28313,16 +28372,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28330,7 +28391,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28338,73 +28399,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28414,7 +28475,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28424,7 +28485,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28435,7 +28496,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28443,7 +28504,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28451,7 +28512,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28460,21 +28521,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28483,25 +28544,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28509,7 +28570,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28517,7 +28578,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28525,7 +28586,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28533,7 +28594,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28541,7 +28602,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28551,7 +28612,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28561,7 +28622,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28572,31 +28633,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28611,55 +28672,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28884,6 +28945,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28895,7 +28967,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28905,7 +28977,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28917,7 +28989,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28925,17 +28997,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28945,7 +29017,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28954,53 +29026,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -29008,7 +29080,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -29017,17 +29089,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -29040,7 +29112,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -29052,7 +29124,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -29062,7 +29134,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -29073,14 +29145,14 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero."
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -29088,20 +29160,20 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr "Ritorna [code]true[/code] se [Rect2i] contiene un punto."
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -29110,7 +29182,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -29123,12 +29195,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -29143,7 +29224,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -29153,11 +29234,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -29171,7 +29279,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -29184,34 +29292,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -29219,83 +29327,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29303,23 +29411,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32583,14 +32691,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -33084,26 +33199,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37728,26 +37850,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42862,27 +42991,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42914,6 +43043,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42950,11 +43087,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42986,7 +43123,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -44255,18 +44392,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -44274,7 +44399,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -44284,13 +44409,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -44304,14 +44444,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44320,7 +44460,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44328,7 +44468,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44344,20 +44484,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44365,75 +44505,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44443,7 +44583,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44453,27 +44593,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44481,81 +44621,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44563,109 +44703,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44676,91 +44816,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44769,13 +44909,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44785,7 +44925,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44793,19 +44933,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44819,45 +44959,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44866,7 +45006,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44877,7 +45017,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44893,14 +45033,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44908,49 +45048,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44959,7 +45099,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44967,7 +45107,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44975,7 +45115,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44985,7 +45125,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44994,7 +45134,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -45003,7 +45143,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -45013,7 +45153,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45021,7 +45161,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -45031,7 +45171,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -45041,7 +45181,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45049,7 +45189,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -45058,7 +45198,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45066,7 +45206,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -45078,477 +45218,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45556,92 +45696,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45651,33 +45791,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45690,7 +45830,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45702,7 +45842,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45714,7 +45854,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45727,7 +45867,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45735,28 +45875,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45766,25 +45906,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45797,7 +45937,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45809,7 +45949,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45821,7 +45961,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45834,13 +45974,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45848,11 +45988,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45866,7 +46006,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45875,7 +46015,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45891,7 +46031,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45901,7 +46041,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45911,7 +46051,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45922,7 +46062,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45932,7 +46072,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45940,7 +46080,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45951,7 +46091,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45966,7 +46106,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45975,13 +46115,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45990,7 +46130,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -46000,7 +46140,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -46012,7 +46152,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -46022,24 +46162,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -46048,7 +46188,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -46056,7 +46196,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -46065,7 +46205,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -46075,7 +46215,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -46083,31 +46223,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -46115,7 +46255,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -46125,46 +46265,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -46172,7 +46319,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -46182,7 +46329,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -46191,7 +46338,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -46200,20 +46347,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -46222,7 +46369,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -46230,7 +46377,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -46239,7 +46386,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -46249,20 +46396,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -46271,13 +46418,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -46287,46 +46434,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46336,7 +46483,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46348,7 +46495,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46356,7 +46503,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46364,7 +46511,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46373,7 +46520,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46387,7 +46534,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46397,7 +46544,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46406,7 +46553,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46416,54 +46563,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46474,61 +46621,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46539,7 +46686,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46548,26 +46695,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46578,20 +46725,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46603,52 +46750,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46656,7 +46803,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46666,10 +46813,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46678,10 +46825,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46690,10 +46837,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46702,10 +46849,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46714,10 +46861,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -58132,26 +58279,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/ja.po b/doc/translations/ja.po
index 370b853b00..611e762e31 100644
--- a/doc/translations/ja.po
+++ b/doc/translations/ja.po
@@ -13,8 +13,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-09-27 16:04+0000\n"
-"Last-Translator: nitenook <admin@alterbaum.net>\n"
+"PO-Revision-Date: 2021-10-24 20:52+0000\n"
+"Last-Translator: Itoyo Onuki <bettawat@yahoo.co.jp>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ja/>\n"
"Language: ja\n"
@@ -24,43 +24,43 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "説明"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "プロパティ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "メソッド"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "テーマ プロパティ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "シグナル"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "列挙型"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "定数"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "プロパティã®èª¬æ˜Ž"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "メソッドã®èª¬æ˜Ž"
@@ -118,7 +118,6 @@ msgstr ""
"サãƒãƒ¼ãƒˆã•ã‚Œã‚‹è‰²ã®åå‰ã¯ [Color] ã«ã¦å®šæ•°ã¨ã—ã¦å®šç¾©ã•ã‚Œã¦ã„ã‚‹ã‚‚ã®ã¨åŒæ§˜ã§ã™ã€‚"
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -128,12 +127,10 @@ msgid ""
msgstr ""
"パラメータ [code]s[/code] ã®çµ¶å¯¾å€¤ (ã™ãªã‚ã¡æ­£ã®æ•°) ã‚’è¿”ã—ã¾ã™ã€‚\n"
"[codeblock]\n"
-"# a 㯠1 ã«\n"
-"a = abs(-1)\n"
+"a = abs(-1) # a 㯠1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
-#, fuzzy
msgid ""
"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -145,7 +142,9 @@ msgid ""
"[/codeblock]"
msgstr ""
"[code]s[/code] ã®ã‚¢ãƒ¼ã‚¯ã‚³ã‚µã‚¤ãƒ³ã‚’ラジアンã§è¿”ã—ã¾ã™ã€‚コサイン [code]s[/code] "
-"ã®è§’度を得るã®ã«ä½¿ãˆã¾ã™ã€‚\n"
+"ã®è§’度を得るã®ã«ä½¿ãˆã¾ã™ã€‚ [code]s[/code] 㯠[code]-1.0[/code] ãŠã‚ˆã³ "
+"[code]1.0[/code] (ã‚’å«ã‚€) 範囲内ã€ãれ以外ã§ã¯ [method acos] 㯠[constant "
+"NAN] ã‚’è¿”ã—ã¾ã™ã€‚\n"
"[codeblock]\n"
"# c 㯠0.523599。rad2deg(s) ã§å¤‰æ›ã™ã‚Œã° 30 度。\n"
"c = acos(0.866025)\n"
@@ -460,6 +459,23 @@ msgid ""
"See also [method smoothstep]. If you need to perform more advanced "
"transitions, use [Tween] or [AnimationPlayer]."
msgstr ""
+"[code]curve[/code] ã§å®šç¾©ã•ã‚ŒãŸã‚¤ãƒ¼ã‚¸ãƒ³ã‚°é–¢æ•°ã«åŸºã¥ã„ã¦ã€[code]x[/code] ã®"
+"「イージングã•ã‚ŒãŸã€å€¤ã‚’è¿”ã—ã¾ã™ã€‚ã“ã®ã‚¤ãƒ¼ã‚¸ãƒ³ã‚°é–¢æ•°ã¯ã€æŒ‡æ•°ã«åŸºã¥ãã¾ã™ã€‚"
+"[code]curve[/code]ã¯ã„ã‹ãªã‚‹æµ®å‹•å°æ•°ç‚¹æ•°ã§ã‚‚指定ã§ãã€ç‰¹å®šã®å€¤ã§ä¸‹è¨˜ã®ã‚ˆã†ãª"
+"動作をã—ã¾ã™:\n"
+"[codeblock]\n"
+"- -1.0 未満: イーズインアウト\n"
+"- 1.0: ç›´ç·š\n"
+"- -1.0 超ãˆã‹ã‚‰ 0.0 未満: イーズアウトイン\n"
+"- 0.0: ä¸å¤‰\n"
+"- 0.0 超ãˆã‹ã‚‰ 1.0 未満: イーズイン\n"
+"- 1.0: ç›´ç·š\n"
+"- 1.0 超ãˆ: イーズアウト\n"
+"[/codeblock]\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"ease_cheatsheet.png]ease() 曲線値ãƒãƒ¼ãƒˆã‚·ãƒ¼ãƒˆ[/url]\n"
+"[method smoothstep] ã‚‚å‚ç…§ã—ã¦ãã ã•ã„。より高度ãªãƒˆãƒ©ãƒ³ã‚¸ã‚·ãƒ§ãƒ³ã‚’è¡Œã†å¿…è¦ãŒ"
+"ã‚ã‚‹å ´åˆã¯ã€ [Tween] ã‚„ [AnimationPlayer] を使用ã—ã¦ãã ã•ã„。"
#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
@@ -7784,28 +7800,32 @@ msgstr "https://docs.godotengine.org/ja/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
#, fuzzy
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
-"ç¾åœ¨äº¤å·®ã—ã¦ã„ã‚‹ [Area2D] ã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚性能上ã®ç†ç”±ã‹ã‚‰ (è¡çªã¯ã™ã¹ã¦"
-"åŒæ™‚ã«å‡¦ç†ã•ã‚Œã¾ã™)ã€ã“ã®ãƒªã‚¹ãƒˆã¯ã‚ªãƒ–ジェクトãŒç§»å‹•ã—ãŸç›´å¾Œã§ã¯ãªãã€ç‰©ç†ã‚¹"
-"テップ中ã«ä¸€åº¦ã ã‘変更ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
+"ç¾åœ¨äº¤å·®ã—ã¦ã„ã‚‹ [PhysicsBody2D] ã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚性能上ã®ç†ç”±ã‹ã‚‰ (è¡çªã¯"
+"ã™ã¹ã¦åŒæ™‚ã«å‡¦ç†ã•ã‚Œã¾ã™)ã€ã“ã®ãƒªã‚¹ãƒˆã¯ã‚ªãƒ–ジェクトãŒç§»å‹•ã—ãŸç›´å¾Œã§ã¯ãªãã€ç‰©"
+"ç†ã‚¹ãƒ†ãƒƒãƒ—中ã«ä¸€åº¦ã ã‘変更ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
-#: doc/classes/Area.xml:23
+#: doc/classes/Area.xml:24
#, fuzzy
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
"ç¾åœ¨äº¤å·®ã—ã¦ã„ã‚‹ [PhysicsBody2D] ã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚性能上ã®ç†ç”±ã‹ã‚‰ (è¡çªã¯"
"ã™ã¹ã¦åŒæ™‚ã«å‡¦ç†ã•ã‚Œã¾ã™)ã€ã“ã®ãƒªã‚¹ãƒˆã¯ã‚ªãƒ–ジェクトãŒç§»å‹•ã—ãŸç›´å¾Œã§ã¯ãªãã€ç‰©"
"ç†ã‚¹ãƒ†ãƒƒãƒ—中ã«ä¸€åº¦ã ã‘変更ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
-#: doc/classes/Area.xml:30
+#: doc/classes/Area.xml:32
#, fuzzy
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
@@ -7819,7 +7839,7 @@ msgstr ""
"ん。性能ã®ãŸã‚ã«ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ãƒƒãƒ—ã®ãƒªã‚¹ãƒˆã¯ãƒ•ãƒ¬ãƒ¼ãƒ ã”ã¨ã«ä¸€åº¦ã€ç‰©ç†ã‚¹ãƒ†ãƒƒãƒ—ã®"
"å‰ã«æ›´æ–°ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
#, fuzzy
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
@@ -7838,7 +7858,7 @@ msgstr ""
"定ã—ã¾ã™(GridMap自体ã¯ç‰©ç†ãƒœãƒ‡ã‚£ã§ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€å®Ÿè³ªçš„ãªç‰©ç†ãƒœãƒ‡ã‚£ã¨ã—ã¦ã‚¿"
"イルã®ã‚³ãƒªã‚¸ãƒ§ãƒ³ã‚·ã‚§ã‚¤ãƒ—を登録ã—ã¦ã„ã¾ã™)。"
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
#, fuzzy
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
@@ -7850,18 +7870,18 @@ msgstr ""
"表ã—ã¾ã™ã€‚値ã®ç¯„囲㯠[code]0[/code] (減衰ãªã—) ã‹ã‚‰ [code]1[/code] (完全減"
"è¡°) ã§ã™ã€‚"
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr "エリアã®ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒã‚¹ã®åå‰ã§ã™ã€‚"
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
"[code]true[/code] ã§ã‚ã‚Œã°ã€ã“ã®ã‚¨ãƒªã‚¢ã®ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒã‚¹ã¯æ¨™æº–ã®ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒã‚¹"
"を上書ãã—ã¾ã™ã€‚"
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
#, fuzzy
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
@@ -7871,7 +7891,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢å†…ã§ã®é‡åŠ›ã®å¼·ã•ã§ã™ (範囲㯠-1024 ã‹ã‚‰ 1024)。ã“ã®å€¤ã§é‡åŠ›ãƒ™ã‚¯ãƒˆãƒ«"
"ã‚’ä¹—ç®—ã—ã¾ã™ã€‚ã“ã‚Œã¯é‡åŠ›ã®æ–¹å‘を変ãˆãšã«é‡åŠ›ã®åŠ›ã‚’変ãˆã‚‹ã®ã«ä¾¿åˆ©ã§ã™ã€‚"
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
@@ -7879,7 +7899,7 @@ msgstr ""
"é‡åŠ›ç‚¹ã®æ¸›è¡°ä¿‚æ•°ã§ã™ã€‚値ãŒå¤§ãããªã‚‹ã»ã©ã€è·é›¢ã«ã‚ˆã‚‹é‡åŠ›ã®æ¸›å°‘ãŒæ—©ããªã‚Šã¾"
"ã™ã€‚"
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
@@ -7887,7 +7907,7 @@ msgstr ""
"[code]true[/code] ã§ã‚ã‚Œã°ã€é‡åŠ›ã¯ç‰¹å®šã®ç‚¹ ([member gravity_vec] ã§è¨­å®š) ã‹ã‚‰"
"計算ã•ã‚Œã¾ã™ã€‚[member space_override] ã‚‚å‚照。"
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
msgid ""
"The area's gravity vector (not normalized). If gravity is a point (see "
"[member gravity_point]), this will be the point of attraction."
@@ -7895,7 +7915,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢ã®é‡åŠ›ãƒ™ã‚¯ãƒˆãƒ«ã§ã™ (未正è¦åŒ–)。もã—é‡åŠ›ãŒç‚¹ã§ã‚れ㰠([member "
"gravity_point] ã‚’å‚ç…§)ã€ã“ã‚ŒãŒé‡åŠ›ã®ç™ºç”Ÿåœ°ç‚¹ã«ãªã‚Šã¾ã™ã€‚"
-#: doc/classes/Area.xml:68
+#: doc/classes/Area.xml:70
#, fuzzy
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
@@ -7907,13 +7927,13 @@ msgstr ""
"ã¾ã™ã€‚値ã®ç¯„囲㯠[code]0[/code] (減衰ãªã—) ã‹ã‚‰ [code]1[/code] (完全減衰) ã§"
"ã™ã€‚"
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
"[code]true[/code] ã®ã¨ãã€ä»–ã®ãƒ¢ãƒ‹ã‚¿ãƒªãƒ³ã‚°ã—ã¦ã„るエリアãŒã“ã®ã‚¨ãƒªã‚¢ã‚’検出ã§"
"ãã¾ã™ã€‚"
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
@@ -7921,11 +7941,11 @@ msgstr ""
"[code]true[/code] ã®ã¨ãã€ã“ã®ã‚¨ãƒªã‚¢ã¯å…¥ã£ã¦ãã‚‹/出ã¦ã„ãボディやエリアを検出"
"ã—ã¾ã™ã€‚"
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr "ã“ã®ã‚¨ãƒªã‚¢ã®å„ªå…ˆåº¦ã§ã™ã€‚高ã„優先度ã®ã‚¨ãƒªã‚¢ãŒå…ˆã«ãƒ—ロセスã•ã‚Œã¾ã™ã€‚"
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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."
@@ -7933,16 +7953,16 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢ãŒã€é–¢é€£ã™ã‚‹ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã«ãƒªãƒãƒ¼ãƒ–ã‚’é©ç”¨ã™ã‚‹åº¦åˆã„ã§ã™ã€‚範囲㯠"
"[code]0[/code] ã‹ã‚‰ [code]1[/code] ã¾ã§ã§ã€ç²¾åº¦ã¯ [code]0.1[/code] ã§ã™ã€‚"
-#: doc/classes/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
"[code]true[/code]ã®å ´åˆã€ã‚¨ãƒªã‚¢ã¯é–¢é€£ã™ã‚‹ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã«ãƒªãƒãƒ¼ãƒ–ã‚’é©ç”¨ã—ã¾ã™ã€‚"
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr "ã“ã®ã‚¨ãƒªã‚¢ã®é–¢é€£ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªã«ä½¿ç”¨ã™ã‚‹ã€ãƒªãƒãƒ¼ãƒ–ãƒã‚¹åã§ã™ã€‚"
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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."
@@ -7950,7 +7970,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢ã®ãƒªãƒãƒ¼ãƒ–ãŒå‡ä¸€ãªåŠ¹æžœã‚’発æ®ã™ã‚‹åº¦åˆã„ã§ã™ã€‚[code]0[/code] ã‹ã‚‰ "
"[code]1[/code] ã¾ã§ã®ç¯„囲ã§ã€[code]0.1[/code] ã®ç²¾åº¦ã§è¨­å®šã—ã¾ã™ã€‚"
-#: doc/classes/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
@@ -7958,21 +7978,21 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢å†…ã«ãŠã‘ã‚‹é‡åŠ›ãƒ»æ¸›è¡°è¨ˆç®—ã®ã‚ªãƒ¼ãƒãƒ¼ãƒ©ã‚¤ãƒ‰ãƒ¢ãƒ¼ãƒ‰ã§ã™ã€‚設定å¯èƒ½ãªå€¤ã¯"
"[enum SpaceOverride]ã‚’å‚ç…§ã—ã¦ãã ã•ã„。"
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7987,7 +8007,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7996,7 +8016,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -8005,7 +8025,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -8022,11 +8042,11 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr "ã“ã®ã‚¨ãƒªã‚¢ã¯é‡åŠ›/減衰ã®ä½œç”¨ã‚’å—ã‘ã¾ã›ã‚“。"
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
@@ -8034,7 +8054,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢ã¯ã€ã“ã‚Œã¾ã§ã«è¨ˆç®—ã•ã‚ŒãŸå€¤ã«é‡åŠ› / 減衰値を加算ã—ã¾ã™ ([member "
"priority] ã®é †)。"
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
@@ -8042,7 +8062,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢ã¯ã€ã“れより優先度ã®ä½Žã„エリアを無視ã—ã¦ã€ã“ã‚Œã¾ã§ã«è¨ˆç®—ã•ã‚ŒãŸã‚‚ã® "
"([member priority] ã®é †) ã«é‡åŠ› / 減衰値を加ãˆã¾ã™ã€‚"
-#: doc/classes/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
@@ -8050,7 +8070,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢ã¯ã€ã“れより優先度ã®ä½Žã„エリアを無視ã—ã¦ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§ã‚ã£ã¦ã‚‚ã€é‡"
"力 / 減衰値を置ãæ›ãˆã¾ã™ã€‚"
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -8095,28 +8115,34 @@ msgid "https://godotengine.org/asset-library/asset/120"
msgstr "https://docs.godotengine.org/ja/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
+#, fuzzy
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"ç¾åœ¨äº¤å·®ã—ã¦ã„ã‚‹ [Area2D] ã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚性能上ã®ç†ç”±ã‹ã‚‰ (è¡çªã¯ã™ã¹ã¦"
"åŒæ™‚ã«å‡¦ç†ã•ã‚Œã¾ã™)ã€ã“ã®ãƒªã‚¹ãƒˆã¯ã‚ªãƒ–ジェクトãŒç§»å‹•ã—ãŸç›´å¾Œã§ã¯ãªãã€ç‰©ç†ã‚¹"
"テップ中ã«ä¸€åº¦ã ã‘変更ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
-#: doc/classes/Area2D.xml:25
+#: doc/classes/Area2D.xml:26
+#, fuzzy
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"ç¾åœ¨äº¤å·®ã—ã¦ã„ã‚‹ [PhysicsBody2D] ã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚性能上ã®ç†ç”±ã‹ã‚‰ (è¡çªã¯"
"ã™ã¹ã¦åŒæ™‚ã«å‡¦ç†ã•ã‚Œã¾ã™)ã€ã“ã®ãƒªã‚¹ãƒˆã¯ã‚ªãƒ–ジェクトãŒç§»å‹•ã—ãŸç›´å¾Œã§ã¯ãªãã€ç‰©"
"ç†ã‚¹ãƒ†ãƒƒãƒ—中ã«ä¸€åº¦ã ã‘変更ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
-#: doc/classes/Area2D.xml:32
+#: doc/classes/Area2D.xml:34
#, fuzzy
msgid ""
"If [code]true[/code], the given area overlaps the Area2D.\n"
@@ -8130,7 +8156,7 @@ msgstr ""
"ん。性能ã®ãŸã‚ã«ã€ã‚ªãƒ¼ãƒãƒ¼ãƒ©ãƒƒãƒ—ã®ãƒªã‚¹ãƒˆã¯ãƒ•ãƒ¬ãƒ¼ãƒ ã”ã¨ã«ä¸€åº¦ã€ç‰©ç†ã‚¹ãƒ†ãƒƒãƒ—ã®"
"å‰ã«æ›´æ–°ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•ã„。"
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
#, fuzzy
msgid ""
"If [code]true[/code], the given physics body overlaps the Area2D.\n"
@@ -8150,7 +8176,7 @@ msgstr ""
"ã¾ã™ (TileMap自体ã¯ç‰©ç†ãƒœãƒ‡ã‚£ã§ã¯ã‚ã‚Šã¾ã›ã‚“ãŒã€è¡çªã‚·ã‚§ã‚¤ãƒ—付ãã®ã‚¿ã‚¤ãƒ«ã‚’実際"
"ã®ç‰©ç†ãƒœãƒ‡ã‚£ã¨ã—ã¦ç™»éŒ²ã—ã¾ã™)。"
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
#, fuzzy
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
@@ -8162,7 +8188,7 @@ msgstr ""
"表ã—ã¾ã™ã€‚値ã®ç¯„囲㯠[code]0[/code] (減衰ãªã—) ã‹ã‚‰ [code]1[/code] (完全減"
"è¡°) ã§ã™ã€‚"
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
#, fuzzy
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
@@ -8172,7 +8198,7 @@ msgstr ""
"ã“ã®ã‚¨ãƒªã‚¢å†…ã§ã®é‡åŠ›ã®å¼·ã•ã§ã™ (範囲㯠-1024 ã‹ã‚‰ 1024)。ã“ã®å€¤ã§é‡åŠ›ãƒ™ã‚¯ãƒˆãƒ«"
"ã‚’ä¹—ç®—ã—ã¾ã™ã€‚ã“ã‚Œã¯é‡åŠ›ã®æ–¹å‘を変ãˆãšã«é‡åŠ›ã®åŠ›ã‚’変ãˆã‚‹ã®ã«ä¾¿åˆ©ã§ã™ã€‚"
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
#, fuzzy
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
@@ -8184,21 +8210,21 @@ msgstr ""
"ã¾ã™ã€‚値ã®ç¯„囲㯠[code]0[/code] (減衰ãªã—) ã‹ã‚‰ [code]1[/code] (完全減衰) ã§"
"ã™ã€‚"
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8213,7 +8239,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -8228,7 +8254,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8237,7 +8263,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -8246,7 +8272,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8265,7 +8291,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -12620,7 +12646,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -12821,19 +12848,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -13731,7 +13770,7 @@ msgstr ""
#: doc/classes/Button.xml:4
msgid "Standard themed Button."
-msgstr "標準ã®ãƒ†ãƒ¼ãƒžãƒœã‚¿ãƒ³"
+msgstr "標準ã®ãƒ†ãƒ¼ãƒžãƒœã‚¿ãƒ³ã€‚"
#: doc/classes/Button.xml:7
msgid ""
@@ -13835,26 +13874,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -15338,80 +15384,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -15455,49 +15517,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -17317,26 +17386,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -22651,7 +22727,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -22778,7 +22855,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -23823,10 +23900,12 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr "オーディオå†ç”ŸãŒåœæ­¢ã—ãŸã¨ãã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
-#: doc/classes/EditorResourcePicker.xml:89
-#, fuzzy
-msgid "Emitted when the resource value was set and user clicked to edit it."
-msgstr "インスペクタã§ãƒªã‚½ãƒ¼ã‚¹ãŒé¸æŠžã•ã‚ŒãŸã¨ãã«ç™ºä¿¡ã€‚"
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
msgid "Helper to generate previews of resources or files."
@@ -30504,16 +30583,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -30521,7 +30602,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -30529,73 +30610,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -30605,7 +30686,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -30615,7 +30696,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -30626,7 +30707,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -30634,7 +30715,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -30642,7 +30723,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -30651,21 +30732,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -30674,25 +30755,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -30700,7 +30781,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30708,7 +30789,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30716,7 +30797,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30724,7 +30805,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30732,7 +30813,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30742,7 +30823,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30752,7 +30833,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -30763,31 +30844,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -30802,55 +30883,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -31077,6 +31158,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -31088,7 +31180,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -31098,7 +31190,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -31110,7 +31202,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -31118,17 +31210,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -31138,7 +31230,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -31147,53 +31239,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -31201,7 +31293,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -31210,17 +31302,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -31233,7 +31325,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -31245,7 +31337,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -31255,7 +31347,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -31266,7 +31358,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
@@ -31275,7 +31367,7 @@ msgstr ""
"インデックス [code]button[/code] ã®ãƒœã‚¿ãƒ³ãŒæŠ¼ã•ã‚ŒãŸå ´åˆã€[code]true[/code] ã‚’"
"è¿”ã—ã¾ã™ã€‚[enum JoyButtonList] ã‚’å‚ç…§ã—ã¦ãã ã•ã„。"
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -31283,7 +31375,7 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
@@ -31292,13 +31384,13 @@ msgstr ""
"ボタン内ã«ãƒžã‚¦ã‚¹ãŒå…¥ã‚Šã€ã¾ã ãƒœã‚¿ãƒ³ã‹ã‚‰é›¢ã‚Œã¦ã„ãªã„å ´åˆã« [code]true[/code] ã‚’"
"è¿”ã—ã¾ã™ã€‚"
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -31307,7 +31399,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -31320,12 +31412,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -31340,7 +31441,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -31350,11 +31451,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -31368,7 +31496,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -31381,34 +31509,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -31416,83 +31544,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -31500,23 +31628,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -34816,14 +34944,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -35317,26 +35452,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -39971,26 +40113,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -45124,27 +45273,27 @@ msgstr "é…列ã®æœ«å°¾ã«è¦ç´ ã‚’追加ã—ã¾ã™ã€‚"
msgid "Removes an element from the array by index."
msgstr "インデックスã«ã‚ˆã‚Šé…列ã‹ã‚‰è¦ç´ ã‚’削除ã—ã¾ã™ã€‚"
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -45177,6 +45326,14 @@ msgstr "é…列ã®æœ«å°¾ã«è¦ç´ ã‚’追加ã—ã¾ã™ã€‚"
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -45217,12 +45374,12 @@ msgstr ""
"é…列ã®æŒ‡å®šã—ãŸä½ç½®ã«æ–°ã—ã„è¦ç´ ã‚’挿入ã—ã¾ã™ã€‚挿入ã™ã‚‹ä½ç½®ã¯ã€æœ‰åŠ¹ãªä½ç½®ã‹ã€é…"
"列ã®æœ€å¾Œã®ä½ç½® ([code]pos == size()[/code]) ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
#, fuzzy
msgid "Changes the int at the given index."
msgstr "サブノードã®åå‰ã‚’変更ã—ã¾ã™ã€‚"
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -45255,7 +45412,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr "é…列ã®æœ«å°¾ã«è¦ç´ ã‚’追加ã—ã¾ã™ã€‚"
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -46535,18 +46692,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -46554,7 +46699,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -46564,13 +46709,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -46584,14 +46744,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -46600,7 +46760,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -46608,7 +46768,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -46624,20 +46784,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -46645,75 +46805,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -46723,7 +46883,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -46733,27 +46893,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -46761,12 +46921,12 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
@@ -46775,20 +46935,20 @@ msgstr ""
"[code]true[/code] ã®å ´åˆã€ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ [code]bus_idx[/code] ã®ãƒã‚¹ã‚’ミュート"
"ã—ã¾ã™ã€‚"
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
@@ -46797,51 +46957,51 @@ msgstr ""
"[code]true[/code]ã®å ´åˆã€ã‚ªãƒ–ジェクトã¯è·é›¢ã«é–¢ä¿‚ãªãåŒã˜ã‚µã‚¤ã‚ºã§ãƒ¬ãƒ³ãƒ€ãƒªãƒ³ã‚°"
"ã•ã‚Œã¾ã™ã€‚"
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -46849,74 +47009,74 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
@@ -46924,38 +47084,38 @@ msgstr ""
"[code]true[/code] ã®å ´åˆã€ã‚·ãƒ¼ãƒ³ãƒ„リーã«è¿½åŠ ã•ã‚ŒãŸã¨ãã«ã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãŒå†ç”Ÿã•ã‚Œ"
"ã¾ã™ã€‚"
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr "[code]true[/code]ã®å ´åˆã€æ³•ç·šãƒžãƒƒãƒ”ングãŒæœ‰åŠ¹ã«ãªã‚Šã¾ã™ã€‚"
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -46966,91 +47126,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -47059,13 +47219,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -47075,7 +47235,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -47083,19 +47243,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -47109,45 +47269,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -47156,7 +47316,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -47167,7 +47327,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -47183,14 +47343,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -47198,49 +47358,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -47249,7 +47409,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -47257,7 +47417,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -47265,7 +47425,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -47275,7 +47435,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -47284,7 +47444,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -47293,7 +47453,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -47303,7 +47463,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -47311,7 +47471,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -47321,7 +47481,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -47331,7 +47491,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -47339,7 +47499,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -47348,7 +47508,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -47356,7 +47516,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -47368,477 +47528,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -47846,92 +48006,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -47941,33 +48101,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -47980,7 +48140,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -47992,7 +48152,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -48004,7 +48164,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -48017,7 +48177,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -48025,28 +48185,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -48056,25 +48216,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -48087,7 +48247,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -48099,7 +48259,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -48111,7 +48271,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -48124,13 +48284,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -48138,11 +48298,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -48156,7 +48316,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -48165,7 +48325,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -48181,7 +48341,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -48191,7 +48351,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -48201,7 +48361,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -48212,7 +48372,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -48222,7 +48382,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -48230,7 +48390,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -48241,7 +48401,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -48256,7 +48416,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -48265,13 +48425,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -48280,7 +48440,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -48290,7 +48450,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -48302,7 +48462,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -48312,24 +48472,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -48338,7 +48498,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -48346,7 +48506,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -48355,7 +48515,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -48365,7 +48525,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -48373,31 +48533,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -48405,7 +48565,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -48415,46 +48575,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -48462,7 +48629,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -48472,7 +48639,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -48481,7 +48648,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -48490,20 +48657,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -48512,7 +48679,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -48520,7 +48687,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -48529,7 +48696,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -48539,20 +48706,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -48561,13 +48728,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -48577,46 +48744,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -48626,7 +48793,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -48638,7 +48805,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -48646,7 +48813,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -48654,7 +48821,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -48663,7 +48830,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -48677,7 +48844,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -48687,7 +48854,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -48696,7 +48863,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -48706,54 +48873,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -48764,61 +48931,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -48829,7 +48996,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -48838,26 +49005,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -48868,20 +49035,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -48893,54 +49060,54 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
#, fuzzy
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr "サブサーフェス スキャタリング効果ã®å¼·ã•ã€‚"
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
#, fuzzy
msgid "Max radius used for subsurface scattering samples."
msgstr "サブサーフェス スキャタリング効果ã®å¼·ã•ã€‚"
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -48948,7 +49115,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -48958,10 +49125,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -48970,10 +49137,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -48982,10 +49149,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -48994,10 +49161,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -49006,10 +49173,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -60777,28 +60944,35 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:42
#, fuzzy
msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr "ボタンã®é•·æŠ¼ã—ãŒåœæ­¢ã•ã‚ŒãŸã¨ãã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
-#: doc/classes/ToolButton.xml:42
+#: doc/classes/ToolButton.xml:45
msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
-#: doc/classes/ToolButton.xml:45
+#: doc/classes/ToolButton.xml:48
#, fuzzy
msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr "ボタンã®é•·æŠ¼ã—ãŒåœæ­¢ã•ã‚ŒãŸã¨ãã«ç™ºä¿¡ã•ã‚Œã¾ã™ã€‚"
-#: doc/classes/ToolButton.xml:48
+#: doc/classes/ToolButton.xml:51
msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
-#: doc/classes/ToolButton.xml:51
+#: doc/classes/ToolButton.xml:54
msgid "Default [StyleBox] for the [ToolButton]."
msgstr ""
-#: doc/classes/ToolButton.xml:54
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
@@ -72997,6 +73171,22 @@ msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr ""
+#, fuzzy
+#~ msgid ""
+#~ "Returns a list of intersecting [Area]s. For performance reasons "
+#~ "(collisions are all processed at the same time) this list is modified "
+#~ "once during the physics step, not immediately after objects are moved. "
+#~ "Consider using signals instead."
+#~ msgstr ""
+#~ "ç¾åœ¨äº¤å·®ã—ã¦ã„ã‚‹ [Area2D] ã®ãƒªã‚¹ãƒˆã‚’è¿”ã—ã¾ã™ã€‚性能上ã®ç†ç”±ã‹ã‚‰ (è¡çªã¯ã™ã¹"
+#~ "ã¦åŒæ™‚ã«å‡¦ç†ã•ã‚Œã¾ã™)ã€ã“ã®ãƒªã‚¹ãƒˆã¯ã‚ªãƒ–ジェクトãŒç§»å‹•ã—ãŸç›´å¾Œã§ã¯ãªãã€ç‰©"
+#~ "ç†ã‚¹ãƒ†ãƒƒãƒ—中ã«ä¸€åº¦ã ã‘変更ã•ã‚Œã¾ã™ã€‚代ã‚ã‚Šã«ã‚·ã‚°ãƒŠãƒ«ã®ä½¿ç”¨ã‚’考ãˆã¦ãã ã•"
+#~ "ã„。"
+
+#, fuzzy
+#~ msgid "Emitted when the resource value was set and user clicked to edit it."
+#~ msgstr "インスペクタã§ãƒªã‚½ãƒ¼ã‚¹ãŒé¸æŠžã•ã‚ŒãŸã¨ãã«ç™ºä¿¡ã€‚"
+
#~ msgid "Returns the label used for built-in text."
#~ msgstr "組ã¿è¾¼ã¿ãƒ†ã‚­ã‚¹ãƒˆã«ä½¿ç”¨ã•ã‚Œã¦ã„るラベルを返ã—ã¾ã™ã€‚"
diff --git a/doc/translations/ko.po b/doc/translations/ko.po
index 8741f82f9c..055ac1daf8 100644
--- a/doc/translations/ko.po
+++ b/doc/translations/ko.po
@@ -11,12 +11,13 @@
# moolow <copyhyeon@gmail.com>, 2021.
# Jaemin Park <ppparkje@naver.com>, 2021.
# dewcked <dewcked@protonmail.ch>, 2021.
+# ì‹ ë™ê·œ <rlsl0422@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-09-25 15:54+0000\n"
-"Last-Translator: dewcked <dewcked@protonmail.ch>\n"
+"PO-Revision-Date: 2021-10-28 22:08+0000\n"
+"Last-Translator: ì‹ ë™ê·œ <rlsl0422@gmail.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ko/>\n"
"Language: ko\n"
@@ -26,43 +27,43 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "설명"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
-msgstr "튜토리얼"
+msgstr "강좌"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "ì†ì„±"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "메서드"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "테마 ì†ì„±ë“¤"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "시그ë„"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "열거형"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "ìƒìˆ˜"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "ì†ì„± 설명"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "메서드 설명"
@@ -6336,21 +6337,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6358,7 +6363,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6369,7 +6374,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6377,41 +6382,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6419,61 +6424,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6488,7 +6493,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6497,7 +6502,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6506,7 +6511,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6523,29 +6528,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6584,21 +6589,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6606,7 +6615,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6617,7 +6626,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6625,14 +6634,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6640,21 +6649,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6669,7 +6678,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6684,7 +6693,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6693,7 +6702,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6702,7 +6711,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6721,7 +6730,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10307,7 +10316,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10506,19 +10516,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11363,26 +11385,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12855,80 +12884,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12972,49 +13017,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14818,26 +14870,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20132,7 +20191,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20259,7 +20319,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21294,8 +21354,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27914,16 +27977,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27931,7 +27996,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27939,73 +28004,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28015,7 +28080,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28025,7 +28090,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28036,7 +28101,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28044,7 +28109,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28052,7 +28117,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28061,21 +28126,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28084,25 +28149,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28110,7 +28175,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28118,7 +28183,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28126,7 +28191,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28134,7 +28199,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28142,7 +28207,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28152,7 +28217,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28162,7 +28227,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28173,31 +28238,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28212,55 +28277,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28485,6 +28550,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28496,7 +28572,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28506,7 +28582,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28518,7 +28594,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28526,17 +28602,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28546,7 +28622,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28555,53 +28631,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28609,7 +28685,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28618,17 +28694,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28641,7 +28717,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28653,7 +28729,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28663,7 +28739,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28674,13 +28750,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28688,19 +28764,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28709,7 +28785,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28722,12 +28798,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28742,7 +28827,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28752,11 +28837,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28770,7 +28882,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28783,34 +28895,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28818,83 +28930,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28902,23 +29014,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32178,14 +32290,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32678,26 +32797,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37441,26 +37567,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42557,27 +42690,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42609,6 +42742,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42645,11 +42786,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42681,7 +42822,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43948,18 +44089,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43967,7 +44096,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43977,13 +44106,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43997,14 +44141,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44013,7 +44157,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44021,7 +44165,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44037,20 +44181,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44058,75 +44202,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44136,7 +44280,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44146,27 +44290,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44174,81 +44318,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44256,109 +44400,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44369,91 +44513,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44462,13 +44606,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44478,7 +44622,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44486,19 +44630,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44512,45 +44656,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44559,7 +44703,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44570,7 +44714,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44586,14 +44730,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44601,49 +44745,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44652,7 +44796,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44660,7 +44804,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44668,7 +44812,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44678,7 +44822,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44687,7 +44831,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44696,7 +44840,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44706,7 +44850,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44714,7 +44858,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44724,7 +44868,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44734,7 +44878,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44742,7 +44886,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44751,7 +44895,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44759,7 +44903,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44771,477 +44915,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45249,92 +45393,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45344,33 +45488,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45383,7 +45527,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45395,7 +45539,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45407,7 +45551,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45420,7 +45564,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45428,28 +45572,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45459,25 +45603,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45490,7 +45634,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45502,7 +45646,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45514,7 +45658,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45527,13 +45671,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45541,11 +45685,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45559,7 +45703,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45568,7 +45712,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45584,7 +45728,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45594,7 +45738,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45604,7 +45748,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45615,7 +45759,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45625,7 +45769,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45633,7 +45777,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45644,7 +45788,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45659,7 +45803,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45668,13 +45812,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45683,7 +45827,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45693,7 +45837,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45705,7 +45849,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45715,24 +45859,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45741,7 +45885,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45749,7 +45893,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45758,7 +45902,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45768,7 +45912,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45776,31 +45920,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45808,7 +45952,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45818,46 +45962,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45865,7 +46016,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45875,7 +46026,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45884,7 +46035,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45893,20 +46044,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45915,7 +46066,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45923,7 +46074,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45932,7 +46083,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45942,20 +46093,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45964,13 +46115,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45980,46 +46131,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46029,7 +46180,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46041,7 +46192,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46049,7 +46200,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46057,7 +46208,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46066,7 +46217,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46080,7 +46231,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46090,7 +46241,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46099,7 +46250,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46109,54 +46260,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46167,61 +46318,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46232,7 +46383,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46241,26 +46392,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46271,20 +46422,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46296,52 +46447,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46349,7 +46500,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46359,10 +46510,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46371,10 +46522,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46383,10 +46534,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46395,10 +46546,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46407,10 +46558,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57779,26 +57930,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/lv.po b/doc/translations/lv.po
index e1833c8445..33cbdd282e 100644
--- a/doc/translations/lv.po
+++ b/doc/translations/lv.po
@@ -6,12 +6,13 @@
# Agnis Aldiņš <agnis16@gmail.com>, 2020.
# Pierre Stempin <pierre.stempin@gmail.com>, 2020.
# Rihards Kubilis <oldcar@inbox.lv>, 2020.
+# M E <gruffy7932@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2020-11-15 12:43+0000\n"
-"Last-Translator: Rihards Kubilis <oldcar@inbox.lv>\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
+"Last-Translator: M E <gruffy7932@gmail.com>\n"
"Language-Team: Latvian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/lv/>\n"
"Language: lv\n"
@@ -20,51 +21,51 @@ msgstr ""
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=3; plural=(n % 10 == 0 || n % 100 >= 11 && n % 100 <= "
"19) ? 0 : ((n % 10 == 1 && n % 100 != 11) ? 1 : 2);\n"
-"X-Generator: Weblate 4.4-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
-msgstr ""
+msgstr "Apraksts"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
-msgstr ""
+msgstr "PamÄcÄ«bas"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
-msgstr ""
+msgstr "Iestatījumi"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
-msgstr ""
+msgstr "Metodes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
-msgstr ""
+msgstr "Motīva iestatījumi"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "SignÄli"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
-msgstr ""
+msgstr "Uzskaitījumi"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Konstantes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
-msgstr ""
+msgstr "Iestatījumu apraksti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Metožu Apraksts"
#: modules/gdscript/doc_classes/@GDScript.xml:4
msgid "Built-in GDScript functions."
-msgstr ""
+msgstr "IebÅ«vÄ“tÄs GDScript funkcijas."
#: modules/gdscript/doc_classes/@GDScript.xml:7
msgid ""
@@ -72,6 +73,9 @@ msgid ""
"utilities. Everything else is provided by objects. (Keywords: builtin, built "
"in, global functions.)"
msgstr ""
+"Saraksts ar iebÅ«vÄ“tajÄm GDScript funkcijÄm. MatemÄtikas un citas noderÄ«gas "
+"funkcijas. Visu pÄrÄ“jo nodroÅ¡ina objekti. (AtslÄ“gasvÄrdi: iebÅ«vÄ“ts, globÄlas "
+"funkcijas)"
#: modules/gdscript/doc_classes/@GDScript.xml:19
msgid ""
@@ -86,6 +90,15 @@ msgid ""
"red = Color8(255, 0, 0)\n"
"[/codeblock]"
msgstr ""
+"Atgriež krÄsu, kas sastÄdÄ«ta no ciparu sarkanÄ, zaļÄ, zilÄ un alfa kanÄla. "
+"Katram kanÄlam jÄbÅ«t vismaz 8 bitu informÄcijai robežÄs no 0 lÄ«dz 255.\n"
+"[code]r8[/code] sarkanais kanÄls\n"
+"[code]g8[/code] zaļais kanÄls\n"
+"[code]b8[/code] zilais kanÄls\n"
+"[code]a8[/code] alfa kanÄls\n"
+"[codeblock]\n"
+"sarkans = Color8(255, 0, 0)\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:34
msgid ""
@@ -6211,21 +6224,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6233,7 +6250,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6244,7 +6261,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6252,41 +6269,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6294,61 +6311,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6363,7 +6380,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6372,7 +6389,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6381,7 +6398,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6398,29 +6415,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6459,21 +6476,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6481,7 +6502,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6492,7 +6513,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6500,14 +6521,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6515,21 +6536,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6544,7 +6565,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6559,7 +6580,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6568,7 +6589,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6577,7 +6598,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6596,7 +6617,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10180,7 +10201,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10378,19 +10400,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11235,26 +11269,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12723,80 +12764,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12840,49 +12897,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14657,26 +14721,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19906,7 +19977,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20033,7 +20105,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21068,8 +21140,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27679,16 +27754,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27696,7 +27773,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27704,73 +27781,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27780,7 +27857,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27790,7 +27867,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27801,7 +27878,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27809,7 +27886,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27817,7 +27894,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27826,21 +27903,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27849,25 +27926,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27875,7 +27952,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27883,7 +27960,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27891,7 +27968,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27899,7 +27976,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27907,7 +27984,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27917,7 +27994,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27927,7 +28004,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27938,31 +28015,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27977,55 +28054,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28249,6 +28326,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28260,7 +28348,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28270,7 +28358,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28282,7 +28370,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28290,17 +28378,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28310,7 +28398,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28319,53 +28407,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28373,7 +28461,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28382,17 +28470,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28405,7 +28493,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28417,7 +28505,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28427,7 +28515,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28438,13 +28526,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28452,19 +28540,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28473,7 +28561,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28486,12 +28574,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28506,7 +28603,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28516,11 +28613,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28534,7 +28658,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28547,34 +28671,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28582,83 +28706,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28666,23 +28790,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31939,14 +32063,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32439,26 +32570,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37067,26 +37205,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42160,27 +42305,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42212,6 +42357,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42248,11 +42401,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42284,7 +42437,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43550,18 +43703,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43569,7 +43710,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43579,13 +43720,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43599,14 +43755,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43615,7 +43771,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43623,7 +43779,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43639,20 +43795,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43660,75 +43816,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43738,7 +43894,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43748,27 +43904,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43776,81 +43932,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43858,109 +44014,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43971,91 +44127,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44064,13 +44220,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44080,7 +44236,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44088,19 +44244,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44114,45 +44270,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44161,7 +44317,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44172,7 +44328,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44188,14 +44344,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44203,49 +44359,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44254,7 +44410,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44262,7 +44418,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44270,7 +44426,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44280,7 +44436,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44289,7 +44445,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44298,7 +44454,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44308,7 +44464,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44316,7 +44472,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44326,7 +44482,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44336,7 +44492,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44344,7 +44500,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44353,7 +44509,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44361,7 +44517,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44373,477 +44529,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44851,92 +45007,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44946,33 +45102,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44985,7 +45141,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44997,7 +45153,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45009,7 +45165,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45022,7 +45178,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45030,28 +45186,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45061,25 +45217,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45092,7 +45248,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45104,7 +45260,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45116,7 +45272,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45129,13 +45285,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45143,11 +45299,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45161,7 +45317,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45170,7 +45326,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45186,7 +45342,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45196,7 +45352,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45206,7 +45362,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45217,7 +45373,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45227,7 +45383,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45235,7 +45391,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45246,7 +45402,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45261,7 +45417,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45270,13 +45426,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45285,7 +45441,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45295,7 +45451,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45307,7 +45463,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45317,24 +45473,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45343,7 +45499,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45351,7 +45507,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45360,7 +45516,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45370,7 +45526,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45378,31 +45534,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45410,7 +45566,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45420,46 +45576,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45467,7 +45630,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45477,7 +45640,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45486,7 +45649,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45495,20 +45658,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45517,7 +45680,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45525,7 +45688,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45534,7 +45697,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45544,20 +45707,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45566,13 +45729,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45582,46 +45745,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45631,7 +45794,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45643,7 +45806,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45651,7 +45814,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45659,7 +45822,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45668,7 +45831,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45682,7 +45845,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45692,7 +45855,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45701,7 +45864,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45711,54 +45874,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45769,61 +45932,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45834,7 +45997,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45843,26 +46006,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45873,20 +46036,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45898,52 +46061,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45951,7 +46114,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45961,10 +46124,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45973,10 +46136,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45985,10 +46148,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45997,10 +46160,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46009,10 +46172,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57380,26 +57543,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/mr.po b/doc/translations/mr.po
index a1e7498acb..352da4a417 100644
--- a/doc/translations/mr.po
+++ b/doc/translations/mr.po
@@ -19,43 +19,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.4.1-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "शिकवणà¥à¤¯à¤¾"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr ""
@@ -6196,21 +6196,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6218,7 +6222,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6229,7 +6233,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6237,41 +6241,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6279,61 +6283,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6348,7 +6352,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6357,7 +6361,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6366,7 +6370,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6383,29 +6387,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6440,21 +6444,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6462,7 +6470,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6473,7 +6481,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6481,14 +6489,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6496,21 +6504,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6525,7 +6533,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6540,7 +6548,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6549,7 +6557,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6558,7 +6566,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6577,7 +6585,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10144,7 +10152,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10342,19 +10351,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11188,26 +11209,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12666,80 +12694,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12783,49 +12827,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14593,26 +14644,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19824,7 +19882,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -19948,7 +20007,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -20978,8 +21037,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27553,16 +27615,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27570,7 +27634,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27578,73 +27642,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27654,7 +27718,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27664,7 +27728,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27675,7 +27739,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27683,7 +27747,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27691,7 +27755,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27700,21 +27764,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27723,25 +27787,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27749,7 +27813,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27757,7 +27821,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27765,7 +27829,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27773,7 +27837,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27781,7 +27845,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27791,7 +27855,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27801,7 +27865,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27812,31 +27876,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27851,55 +27915,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28122,6 +28186,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28133,7 +28208,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28143,7 +28218,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28155,7 +28230,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28163,17 +28238,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28183,7 +28258,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28192,53 +28267,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28246,7 +28321,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28255,17 +28330,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28278,7 +28353,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28290,7 +28365,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28300,7 +28375,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28311,13 +28386,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28325,19 +28400,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28346,7 +28421,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28359,12 +28434,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28379,7 +28463,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28389,11 +28473,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28407,7 +28518,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28420,34 +28531,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28455,83 +28566,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28539,23 +28650,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31785,14 +31896,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32285,26 +32403,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -36880,26 +37005,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -41966,27 +42098,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42018,6 +42150,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42054,11 +42194,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42090,7 +42230,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43355,18 +43495,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43374,7 +43502,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43384,13 +43512,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43404,14 +43547,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43420,7 +43563,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43428,7 +43571,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43444,20 +43587,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43465,75 +43608,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43543,7 +43686,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43553,27 +43696,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43581,81 +43724,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43663,109 +43806,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43776,91 +43919,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -43869,13 +44012,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -43885,7 +44028,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -43893,19 +44036,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -43919,45 +44062,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -43966,7 +44109,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -43977,7 +44120,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -43993,14 +44136,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44008,49 +44151,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44059,7 +44202,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44067,7 +44210,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44075,7 +44218,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44085,7 +44228,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44094,7 +44237,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44103,7 +44246,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44113,7 +44256,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44121,7 +44264,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44131,7 +44274,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44141,7 +44284,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44149,7 +44292,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44158,7 +44301,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44166,7 +44309,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44178,477 +44321,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44656,92 +44799,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44751,33 +44894,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44790,7 +44933,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44802,7 +44945,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44814,7 +44957,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44827,7 +44970,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -44835,28 +44978,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -44866,25 +45009,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44897,7 +45040,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44909,7 +45052,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44921,7 +45064,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44934,13 +45077,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -44948,11 +45091,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -44966,7 +45109,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -44975,7 +45118,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -44991,7 +45134,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45001,7 +45144,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45011,7 +45154,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45022,7 +45165,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45032,7 +45175,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45040,7 +45183,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45051,7 +45194,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45066,7 +45209,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45075,13 +45218,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45090,7 +45233,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45100,7 +45243,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45112,7 +45255,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45122,24 +45265,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45148,7 +45291,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45156,7 +45299,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45165,7 +45308,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45175,7 +45318,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45183,31 +45326,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45215,7 +45358,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45225,46 +45368,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45272,7 +45422,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45282,7 +45432,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45291,7 +45441,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45300,20 +45450,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45322,7 +45472,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45330,7 +45480,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45339,7 +45489,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45349,20 +45499,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45371,13 +45521,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45387,46 +45537,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45436,7 +45586,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45448,7 +45598,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45456,7 +45606,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45464,7 +45614,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45473,7 +45623,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45487,7 +45637,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45497,7 +45647,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45506,7 +45656,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45516,54 +45666,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45574,61 +45724,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45639,7 +45789,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45648,26 +45798,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45678,20 +45828,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45703,52 +45853,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45756,7 +45906,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45766,10 +45916,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45778,10 +45928,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45790,10 +45940,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45802,10 +45952,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -45814,10 +45964,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57135,26 +57285,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/nb.po b/doc/translations/nb.po
new file mode 100644
index 0000000000..0e6b60e4d0
--- /dev/null
+++ b/doc/translations/nb.po
@@ -0,0 +1,69345 @@
+# LANGUAGE translation of the Godot Engine class reference.
+# Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur.
+# Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md).
+# This file is distributed under the same license as the Godot source code.
+#
+# slasken06 <ask.skivdal@gmail.com>, 2021.
+# Daniel Skogly <daniel@klungo.no>, 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: Godot Engine class reference\n"
+"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
+"PO-Revision-Date: 2021-11-03 13:15+0000\n"
+"Last-Translator: Daniel Skogly <daniel@klungo.no>\n"
+"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/godot-"
+"engine/godot-class-reference/nb_NO/>\n"
+"Language: nb_NO\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.9-dev\n"
+
+#: doc/tools/make_rst.py
+msgid "Description"
+msgstr "Beskrivelse"
+
+#: doc/tools/make_rst.py
+msgid "Tutorials"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Properties"
+msgstr "Egenskaper"
+
+#: doc/tools/make_rst.py
+msgid "Methods"
+msgstr "Metoder"
+
+#: doc/tools/make_rst.py
+msgid "Theme Properties"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Signals"
+msgstr "Signaler"
+
+#: doc/tools/make_rst.py
+msgid "Enumerations"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Constants"
+msgstr "Konstanter"
+
+#: doc/tools/make_rst.py
+msgid "Property Descriptions"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Method Descriptions"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:4
+msgid "Built-in GDScript functions."
+msgstr "Innebygde GDScript-funksjoner."
+
+#: 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:19
+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 ""
+"Returnerer en farge konstruert fra heltall rødt-, grønt-, blått- og "
+"alfakanaler. Hver kanal skal ha 8 bits med informasjon fra 0 til 255.\n"
+"[code]r8[/code] rød kanal\n"
+"[code]g8[/code] grønn kanal\n"
+"[code]b8[/code] blå kanal\n"
+"[code]a8[/code] alfakanal\n"
+"[codeblock]\n"
+"red = Color8(255, 0, 0)\n"
+"[/codeblock]"
+
+#: modules/gdscript/doc_classes/@GDScript.xml:34
+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:45
+msgid ""
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
+"[codeblock]\n"
+"a = abs(-1) # a is 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:55
+msgid ""
+"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
+"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
+"[code]1.0[/code] (inclusive), otherwise, [method acos] will return [constant "
+"NAN].\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:66
+msgid ""
+"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
+"sine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
+"[code]1.0[/code] (inclusive), otherwise, [method asin] will return [constant "
+"NAN].\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:78
+msgid ""
+"Asserts that the [code]condition[/code] is [code]true[/code]. If the "
+"[code]condition[/code] is [code]false[/code], an error is generated. When "
+"running from the editor, the running project will also be paused until you "
+"resume it. This can be used as a stronger form of [method push_error] for "
+"reporting errors to project developers or add-on users.\n"
+"[b]Note:[/b] For performance reasons, the code inside [method assert] is "
+"only executed in debug builds or when running the project from the editor. "
+"Don't include code that has side effects in an [method assert] call. "
+"Otherwise, the project will behave differently when exported in release "
+"mode.\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"
+"var speed = -10\n"
+"assert(speed < 20) # True, the program will continue\n"
+"assert(speed >= 0) # False, the program will stop\n"
+"assert(speed >= 0 and 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:95
+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:107
+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:119
+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:128
+#: 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:135
+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"
+"a = ceil(1.45) # a is 2.0\n"
+"a = ceil(1.001) # a is 2.0\n"
+"[/codeblock]\n"
+"See also [method floor], [method round], [method stepify], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:147
+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:162
+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"
+"a = clamp(1000, 1, 20) # a is 20\n"
+"a = clamp(-10, 1, 20) # a is 1\n"
+"a = clamp(15, 1, 20) # a is 15\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:175
+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:190
+msgid ""
+"Returns the cosine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"a = cos(TAU) # a is 1.0\n"
+"a = cos(PI) # a is -1.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:201
+msgid ""
+"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"print(cosh(1)) # Prints 1.543081\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:211
+msgid "Converts from decibels to linear energy (audio)."
+msgstr "Konverterer fra desibel til lineær energi (lyd)."
+
+#: modules/gdscript/doc_classes/@GDScript.xml:218
+msgid "Deprecated alias for [method step_decimals]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:227
+msgid ""
+"[b]Note:[/b] [code]dectime[/code] has been deprecated and will be removed in "
+"Godot 4.0, please use [method move_toward] instead.\n"
+"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code].\n"
+"[codeblock]\n"
+"a = dectime(60, 10, 0.1)) # a is 59.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:238
+msgid ""
+"Converts an angle expressed in degrees to radians.\n"
+"[codeblock]\n"
+"r = deg2rad(180) # r is 3.141593\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:248
+msgid ""
+"Converts a dictionary (previously created with [method inst2dict]) back to "
+"an instance. Useful for deserializing."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:256
+msgid ""
+"Returns an \"eased\" value of [code]x[/code] based on an easing function "
+"defined with [code]curve[/code]. This easing function is based on an "
+"exponent. The [code]curve[/code] can be any floating-point number, with "
+"specific values leading to the following behaviors:\n"
+"[codeblock]\n"
+"- Lower than -1.0 (exclusive): Ease in-out\n"
+"- 1.0: Linear\n"
+"- Between -1.0 and 0.0 (exclusive): Ease out-in\n"
+"- 0.0: Constant\n"
+"- Between 0.0 to 1.0 (exclusive): Ease in\n"
+"- 1.0: Linear\n"
+"- Greater than 1.0 (exclusive): Ease out\n"
+"[/codeblock]\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
+"See also [method smoothstep]. If you need to perform more advanced "
+"transitions, use [Tween] or [AnimationPlayer]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:274
+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:286
+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 = floor(2.45) # a is 2.0\n"
+"a = floor(2.99) # a is 2.0\n"
+"a = floor(-2.99) # a is -3.0\n"
+"[/codeblock]\n"
+"See also [method ceil], [method round], [method stepify], and [int].\n"
+"[b]Note:[/b] This method returns a float. If you need an integer and "
+"[code]s[/code] is a non-negative number, you can use [code]int(s)[/code] "
+"directly."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:301
+msgid ""
+"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
+"of [code]a[/code].\n"
+"[codeblock]\n"
+"r = fmod(7, 5.5) # r is 1.5\n"
+"[/codeblock]\n"
+"For the integer remainder operation, use the % operator."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:313
+msgid ""
+"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"for i in 7:\n"
+" var x = 0.5 * i - 1.5\n"
+" print(\"%4.1f %4.1f %4.1f\" % [x, fmod(x, 1.5), fposmod(x, 1.5)])\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-1.5 -0.0 0.0\n"
+"-1.0 -1.0 0.5\n"
+"-0.5 -0.5 1.0\n"
+" 0.0 0.0 0.0\n"
+" 0.5 0.5 0.5\n"
+" 1.0 1.0 1.0\n"
+" 1.5 0.0 0.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:336
+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:349
+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:370
+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:380
+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:399
+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:415
+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:430
+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:439
+msgid ""
+"Returns whether [code]s[/code] is an infinity value (either positive "
+"infinity or negative infinity)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:446
+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:453
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:460
+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:468
+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:482
+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]linear_interpolate[/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:497
+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:514
+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:527
+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].\n"
+"This method is a simplified version of [method ResourceLoader.load], which "
+"can be used for more advanced scenarios."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:541
+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:554
+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:566
+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:579
+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:592
+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:609
+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:622
+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:640
+#: 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:648
+msgid ""
+"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"for i in range(-3, 4):\n"
+" print(\"%2d %2d %2d\" % [i, i % 3, posmod(i, 3)])\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-3 0 0\n"
+"-2 -2 1\n"
+"-1 -1 2\n"
+" 0 0 0\n"
+" 1 1 1\n"
+" 2 2 2\n"
+" 3 0 0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:670
+msgid ""
+"Returns the result of [code]base[/code] raised to the power of [code]exp[/"
+"code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Returns 32.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:680
+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:691
+msgid ""
+"Converts one or more arguments of any type to string in the best way "
+"possible and prints them to the console.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"=\", a) # Prints a=[1, 2, 3]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
+"print error and warning messages instead of [method print]. This "
+"distinguishes them from print messages used for debugging purposes, while "
+"also displaying a stack trace when an error or warning is printed."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:702
+msgid "Like [method print], but prints only when used in debug mode."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:708
+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:718
+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:727
+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:739
+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:748
+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:758
+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]\n"
+"[b]Note:[/b] Errors printed this way will not pause project execution. To "
+"print an error message and pause project execution in debug builds, use "
+"[code]assert(false, \"test error\")[/code] instead."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:769
+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:779
+msgid ""
+"Converts an angle expressed in radians to degrees.\n"
+"[codeblock]\n"
+"rad2deg(0.523599) # Returns 30.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:790
+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:800
+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:806
+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:815
+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:827
+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:837
+msgid ""
+"Returns an array with the given range. Range can be 1 argument [code]N[/"
+"code] (0 to [code]N[/code] - 1), two arguments ([code]initial[/code], "
+"[code]final - 1[/code]) or three arguments ([code]initial[/code], "
+"[code]final - 1[/code], [code]increment[/code]). Returns an empty array if "
+"the range isn't valid (e.g. [code]range(2, 5, -1)[/code] or [code]range(5, "
+"5, 1)[/code]).\n"
+"Returns an array with the given range. [code]range()[/code] can have 1 "
+"argument N ([code]0[/code] to [code]N - 1[/code]), two arguments "
+"([code]initial[/code], [code]final - 1[/code]) or three arguments "
+"([code]initial[/code], [code]final - 1[/code], [code]increment[/code]). "
+"[code]increment[/code] can be negative. If [code]increment[/code] is "
+"negative, [code]final - 1[/code] will become [code]final + 1[/code]. Also, "
+"the initial value must be greater than the final value for the loop to run.\n"
+"[codeblock]\n"
+"print(range(4))\n"
+"print(range(2, 5))\n"
+"print(range(0, 6, 2))\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"[0, 1, 2, 3]\n"
+"[2, 3, 4]\n"
+"[0, 2, 4]\n"
+"[/codeblock]\n"
+"To iterate over an [Array] backwards, use:\n"
+"[codeblock]\n"
+"var array = [3, 6, 9]\n"
+"var i := array.size() - 1\n"
+"while i >= 0:\n"
+" print(array[i])\n"
+" i -= 1\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"9\n"
+"6\n"
+"3\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:874
+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:884
+msgid ""
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
+"[codeblock]\n"
+"a = round(2.49) # a is 2.0\n"
+"a = round(2.5) # a is 3.0\n"
+"a = round(2.51) # a is 3.0\n"
+"[/codeblock]\n"
+"See also [method floor], [method ceil], [method stepify], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:897
+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:908
+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:920
+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:930
+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:943
+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(y) = "
+"3*y^2 - 2*y^3[/code] where [code]y = (x-from) / (to-from)[/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]\n"
+"Compared to [method ease] with a curve value of [code]-1.6521[/code], "
+"[method smoothstep] returns the smoothest possible curve with no sudden "
+"changes in the derivative. If you need to perform more advanced transitions, "
+"use [Tween] or [AnimationPlayer].\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, "
+"-1.6521) return values[/url]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:960
+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:971
+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 = step_decimals(5) # n is 0\n"
+"n = step_decimals(1.0005) # n is 4\n"
+"n = step_decimals(0.000000005) # n is 9\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:984
+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.0\n"
+"stepify(3.14159, 0.01) # Returns 3.14\n"
+"[/codeblock]\n"
+"See also [method ceil], [method floor], [method round], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:995
+msgid ""
+"Converts one or more arguments of any type 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:1008
+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:1020
+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:1030
+msgid ""
+"Returns the hyperbolic tangent of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # a is 0.693147\n"
+"b = tanh(a) # b is 0.6\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1041
+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:1057
+msgid ""
+"Returns whether the given class exists in [ClassDB].\n"
+"[codeblock]\n"
+"type_exists(\"Sprite\") # Returns true\n"
+"type_exists(\"Variant\") # Returns false\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1068
+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:1082
+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:1098
+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:1105
+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:1123
+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:1133
+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:1157
+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:1176
+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 ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1207
+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:1210
+msgid ""
+"The circle constant, the circumference of the unit circle in radians. This "
+"is equivalent to [code]PI * 2[/code], or 360 degrees in rotations."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1213
+msgid ""
+"Positive floating-point infinity. This is the result of floating-point "
+"division when the divisor is [code]0.0[/code]. For negative infinity, use "
+"[code]-INF[/code]. Dividing by [code]-0.0[/code] will result in negative "
+"infinity if the numerator is positive, so dividing by [code]0.0[/code] is "
+"not the same as dividing by [code]-0.0[/code] (despite [code]0.0 == -0.0[/"
+"code] returning [code]true[/code]).\n"
+"[b]Note:[/b] Numeric infinity is only a concept with floating-point numbers, "
+"and has no equivalent for integers. Dividing an integer number by [code]0[/"
+"code] will not result in [constant INF] and will result in a run-time error "
+"instead."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1217
+msgid ""
+"\"Not a Number\", an invalid floating-point value. [constant NAN] has "
+"special properties, including that it is not equal to itself ([code]NAN == "
+"NAN[/code] returns [code]false[/code]). It is output by some invalid "
+"operations, such as dividing floating-point [code]0.0[/code] by [code]0.0[/"
+"code].\n"
+"[b]Note:[/b] \"Not a Number\" is only a concept with floating-point numbers, "
+"and has no equivalent for integers. Dividing an integer [code]0[/code] by "
+"[code]0[/code] will not result in [constant NAN] and will result in a run-"
+"time error instead."
+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, scancodes, property hints, etc.\n"
+"Singletons are also documented here, since they can be accessed from "
+"anywhere."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:16
+msgid "The [ARVRServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:19
+msgid "The [AudioServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:22
+msgid "The [CameraServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:25
+msgid "The [ClassDB] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:28
+msgid "The [Engine] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:31
+msgid "The [Geometry] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:34
+msgid "The [IP] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:37
+msgid "The [Input] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:40
+msgid "The [InputMap] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:43
+msgid "The [JSON] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:46
+msgid ""
+"The [JavaClassWrapper] singleton.\n"
+"[b]Note:[/b] Only implemented on Android."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:50
+msgid ""
+"The [JavaScript] singleton.\n"
+"[b]Note:[/b] Only implemented on HTML5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:54
+msgid "The [Marshalls] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:57
+msgid "The [EditorNavigationMeshGenerator] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:60
+msgid "The [OS] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:63
+msgid "The [Performance] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:66
+msgid "The [Physics2DServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:69
+msgid "The [PhysicsServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:72
+msgid "The [ProjectSettings] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:75
+msgid "The [ResourceLoader] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:78
+msgid "The [ResourceSaver] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:81
+msgid "The [TranslationServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:84
+msgid "The [VisualScriptEditor] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:87
+msgid "The [VisualServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:92
+msgid "Left margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:95
+msgid "Top margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:98
+msgid "Right margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:101
+msgid ""
+"Bottom margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:104
+msgid "Top-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:107
+msgid "Top-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:110
+msgid "Bottom-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:113
+msgid "Bottom-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:116
+msgid ""
+"General vertical alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:119
+msgid ""
+"General horizontal alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:122
+msgid "Horizontal left alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:125
+msgid "Horizontal center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:128
+msgid "Horizontal right alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:131
+msgid "Vertical top alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:134
+msgid "Vertical center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:137
+msgid "Vertical bottom alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:140
+msgid "Scancodes with this bit applied are non-printable."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:143
+msgid "Escape key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:146
+msgid "Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:149
+msgid "Shift+Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:152
+msgid "Backspace key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:155
+msgid "Return key (on the main keyboard)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:158
+msgid "Enter key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:161
+msgid "Insert key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:164
+msgid "Delete key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:167
+msgid "Pause key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:170
+msgid "Print Screen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:173
+msgid "System Request key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:176
+msgid "Clear key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:179
+msgid "Home key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:182
+msgid "End key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:185
+msgid "Left arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:188
+msgid "Up arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:191
+msgid "Right arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:194
+msgid "Down arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:197
+msgid "Page Up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:200
+msgid "Page Down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:203
+msgid "Shift key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:206
+msgid "Control key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:209
+msgid "Meta key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:212
+msgid "Alt key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:215
+msgid "Caps Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:218
+msgid "Num Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:221
+msgid "Scroll Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:224
+msgid "F1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:227
+msgid "F2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:230
+msgid "F3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:233
+msgid "F4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:236
+msgid "F5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:239
+msgid "F6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:242
+msgid "F7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:245
+msgid "F8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:248
+msgid "F9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:251
+msgid "F10 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:254
+msgid "F11 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:257
+msgid "F12 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:260
+msgid "F13 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:263
+msgid "F14 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:266
+msgid "F15 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:269
+msgid "F16 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:272
+msgid "Multiply (*) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:275
+msgid "Divide (/) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:278
+msgid "Subtract (-) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:281
+msgid "Period (.) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:284
+msgid "Add (+) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:287
+msgid "Number 0 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:290
+msgid "Number 1 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:293
+msgid "Number 2 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:296
+msgid "Number 3 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:299
+msgid "Number 4 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:302
+msgid "Number 5 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:305
+msgid "Number 6 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:308
+msgid "Number 7 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:311
+msgid "Number 8 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:314
+msgid "Number 9 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:317
+msgid "Left Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:320
+msgid "Right Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:323
+msgid "Context menu key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:326
+msgid "Left Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:329
+msgid "Right Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:332
+msgid "Help key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:335
+msgid "Left Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:338
+msgid "Right Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:341
+msgid ""
+"Media back key. Not to be confused with the Back button on an Android device."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:344
+msgid "Media forward key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:347 doc/classes/@GlobalScope.xml:380
+msgid "Media stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:350
+msgid "Media refresh key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:353
+msgid "Volume down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:356
+msgid "Mute volume key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:359
+msgid "Volume up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:362
+msgid "Bass Boost key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:365
+msgid "Bass up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:368
+msgid "Bass down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:371
+msgid "Treble up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:374
+msgid "Treble down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:377
+msgid "Media play key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:383
+msgid "Previous song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:386
+msgid "Next song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:389
+msgid "Media record key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:392
+msgid "Home page key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:395
+msgid "Favorites key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:398
+msgid "Search key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:401
+msgid "Standby key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:404
+msgid "Open URL / Launch Browser key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:407
+msgid "Launch Mail key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:410
+msgid "Launch Media key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:413
+msgid "Launch Shortcut 0 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:416
+msgid "Launch Shortcut 1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:419
+msgid "Launch Shortcut 2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:422
+msgid "Launch Shortcut 3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:425
+msgid "Launch Shortcut 4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:428
+msgid "Launch Shortcut 5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:431
+msgid "Launch Shortcut 6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:434
+msgid "Launch Shortcut 7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:437
+msgid "Launch Shortcut 8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:440
+msgid "Launch Shortcut 9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:443
+msgid "Launch Shortcut A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:446
+msgid "Launch Shortcut B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:449
+msgid "Launch Shortcut C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:452
+msgid "Launch Shortcut D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:455
+msgid "Launch Shortcut E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:458
+msgid "Launch Shortcut F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:461
+msgid "Unknown key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:464
+msgid "Space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:467
+msgid "! key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:470
+msgid "\" key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:473
+msgid "# key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:476
+msgid "$ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:479
+msgid "% 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 "Number 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:515
+msgid "Number 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:518
+msgid "Number 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:521
+msgid "Number 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:524
+msgid "Number 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:527
+msgid "Number 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:530
+msgid "Number 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:533
+msgid "Number 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:536
+msgid "Number 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:539
+msgid "Number 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:542
+msgid ": key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:545
+msgid "; key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:548
+msgid "< key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:551
+msgid "= key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:554
+msgid "> key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:557
+msgid "? key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:560
+msgid "@ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:563
+msgid "A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:566
+msgid "B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:569
+msgid "C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:572
+msgid "D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:575
+msgid "E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:578
+msgid "F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:581
+msgid "G key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:584
+msgid "H key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:587
+msgid "I key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:590
+msgid "J key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:593
+msgid "K key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:596
+msgid "L key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:599
+msgid "M key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:602
+msgid "N key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:605
+msgid "O key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:608
+msgid "P key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:611
+msgid "Q key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:614
+msgid "R key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:617
+msgid "S key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:620
+msgid "T key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:623
+msgid "U key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:626
+msgid "V key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:629
+msgid "W key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:632
+msgid "X key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:635
+msgid "Y key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:638
+msgid "Z key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:641
+msgid "[ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:644
+msgid "\\ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:647
+msgid "] key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:650
+msgid "^ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:653
+msgid "_ 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 "Non-breakable space 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 "Â¥ 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 "Soft hyphen 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 "² 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 Code mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:872
+msgid "Modifier key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:875
+msgid "Shift key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:878
+msgid "Alt key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:881
+msgid "Meta key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:884
+msgid "Ctrl key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:887
+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:890
+msgid "Keypad key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:893
+msgid "Group Switch key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:896
+msgid "Left mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:899
+msgid "Right mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:902
+msgid "Middle mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:905
+msgid "Extra mouse button 1 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:908
+msgid "Extra mouse button 2 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:911
+msgid "Mouse wheel up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:914
+msgid "Mouse wheel down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:917
+msgid "Mouse wheel left button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:920
+msgid "Mouse wheel right button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:923
+msgid "Left mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:926
+msgid "Right mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:929
+msgid "Middle mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:932
+msgid "Extra mouse button 1 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:935
+msgid "Extra mouse button 2 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:938
+msgid "Invalid button or axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:941
+msgid "Gamepad button 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:944
+msgid "Gamepad button 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:947
+msgid "Gamepad button 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:950
+msgid "Gamepad button 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:953
+msgid "Gamepad button 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:956
+msgid "Gamepad button 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:959
+msgid "Gamepad button 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:962
+msgid "Gamepad button 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:965
+msgid "Gamepad button 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:968
+msgid "Gamepad button 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:971
+msgid "Gamepad button 10."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:974
+msgid "Gamepad button 11."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:977
+msgid "Gamepad button 12."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:980
+msgid "Gamepad button 13."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:983
+msgid "Gamepad button 14."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:986
+msgid "Gamepad button 15."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:989
+msgid "Gamepad button 16."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:992
+msgid "Gamepad button 17."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:995
+msgid "Gamepad button 18."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:998
+msgid "Gamepad button 19."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1001
+msgid "Gamepad button 20."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1004
+msgid "Gamepad button 21."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1007
+msgid "Gamepad button 22."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1010
+msgid "Represents the maximum number of joystick buttons supported."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1013
+msgid "DualShock circle button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1016
+msgid "DualShock X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1019
+msgid "DualShock square button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1022
+msgid "DualShock triangle button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1025
+msgid "Xbox controller B button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1028
+msgid "Xbox controller A button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1031
+msgid "Xbox controller X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1034
+msgid "Xbox controller Y button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1037
+msgid "Nintendo controller A button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1040
+msgid "Nintendo controller B button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1043
+msgid "Nintendo controller X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1046
+msgid "Nintendo controller Y button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1049
+msgid "Grip (side) buttons on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1052
+msgid "Push down on the touchpad or main joystick on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1055
+msgid "Trigger on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1058
+msgid ""
+"A button on the right Oculus Touch controller, X button on the left "
+"controller (also when used in OpenVR)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1061
+msgid ""
+"B button on the right Oculus Touch controller, Y button on the left "
+"controller (also when used in OpenVR)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1064
+msgid "Menu button on either Oculus Touch controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1067
+msgid "Menu button in OpenVR (Except when Oculus Touch controllers are used)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1070
+msgid "Gamepad button Select."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1073
+msgid "Gamepad button Start."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1076
+msgid "Gamepad DPad up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1079
+msgid "Gamepad DPad down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1082
+msgid "Gamepad DPad left."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1085
+msgid "Gamepad DPad right."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1088
+msgid "Gamepad SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1091
+msgid "Gamepad SDL miscellaneous button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1094
+msgid "Gamepad SDL paddle 1 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1097
+msgid "Gamepad SDL paddle 2 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1100
+msgid "Gamepad SDL paddle 3 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1103
+msgid "Gamepad SDL paddle 4 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1106
+msgid "Gamepad SDL touchpad button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1109
+msgid "Gamepad left Shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1112
+msgid "Gamepad left trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1115
+msgid "Gamepad left stick click."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1118
+msgid "Gamepad right Shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1121
+msgid "Gamepad right trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1124
+msgid "Gamepad right stick click."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1127 doc/classes/@GlobalScope.xml:1160
+msgid "Gamepad left stick horizontal axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1130 doc/classes/@GlobalScope.xml:1163
+msgid "Gamepad left stick vertical axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1133 doc/classes/@GlobalScope.xml:1166
+msgid "Gamepad right stick horizontal axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1136 doc/classes/@GlobalScope.xml:1169
+msgid "Gamepad right stick vertical axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1139
+msgid "Generic gamepad axis 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1142
+msgid "Generic gamepad axis 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1145
+msgid "Gamepad left trigger analog axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1148
+msgid "Gamepad right trigger analog axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1151
+msgid "Generic gamepad axis 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1154
+msgid "Generic gamepad axis 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1157
+msgid "Represents the maximum number of joystick axes supported."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1172
+msgid "Gamepad left analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1175
+msgid "Gamepad right analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1178
+msgid "VR Controller analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1181
+msgid "VR Controller analog grip (side buttons)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1184
+msgid ""
+"OpenVR touchpad X axis (Joystick axis on Oculus Touch and Windows MR "
+"controllers)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1187
+msgid ""
+"OpenVR touchpad Y axis (Joystick axis on Oculus Touch and Windows MR "
+"controllers)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1190
+msgid "MIDI note OFF message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1193
+msgid "MIDI note ON message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1196
+msgid "MIDI aftertouch message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1199
+msgid "MIDI control change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1202
+msgid "MIDI program change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1205
+msgid "MIDI channel pressure message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1208
+msgid "MIDI pitch bend message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1211
+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:1223
+msgid "Generic error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1226
+msgid "Unavailable error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1229
+msgid "Unconfigured error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1232
+msgid "Unauthorized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1235
+msgid "Parameter range error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1238
+msgid "Out of memory (OOM) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1241
+msgid "File: Not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1244
+msgid "File: Bad drive error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1247
+msgid "File: Bad path error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1250
+msgid "File: No permission error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1253
+msgid "File: Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1256
+msgid "File: Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1259
+msgid "File: Can't write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1262
+msgid "File: Can't read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1265
+msgid "File: Unrecognized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1268
+msgid "File: Corrupt error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1271
+msgid "File: Missing dependencies error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1274
+msgid "File: End of file (EOF) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1277
+msgid "Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1280
+msgid "Can't create error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1283
+msgid "Query failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1286
+msgid "Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1289
+msgid "Locked error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1292
+msgid "Timeout error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1295
+msgid "Can't connect error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1298
+msgid "Can't resolve error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1301
+msgid "Connection error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1304
+msgid "Can't acquire resource error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1307
+msgid "Can't fork process error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1310
+msgid "Invalid data error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1313
+msgid "Invalid parameter error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1316
+msgid "Already exists error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1319
+msgid "Does not exist error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1322
+msgid "Database: Read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1325
+msgid "Database: Write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1328
+msgid "Compilation failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1331
+msgid "Method not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1334
+msgid "Linking failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1337
+msgid "Script failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1340
+msgid "Cycling link (import cycle) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1343
+msgid "Invalid declaration error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1346
+msgid "Duplicate symbol error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1349
+msgid "Parse error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1352
+msgid "Busy error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1355
+msgid "Skip error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1358
+msgid "Help error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1361
+msgid "Bug error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1364
+msgid ""
+"Printer on fire error. (This is an easter egg, no engine methods return this "
+"error code.)"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1367
+msgid "No hint for the edited property."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1370
+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:1373
+msgid ""
+"Hints that a 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:1376
+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:1379
+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:1382 doc/classes/@GlobalScope.xml:1385
+msgid "Deprecated hint, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1388
+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:1391
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1394
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1397
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1400
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1403
+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:1406
+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:1409
+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:1412
+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:1415
+msgid ""
+"Hints that a property is an instance of a [Resource]-derived type, "
+"optionally specified via the hint string (e.g. [code]\"Texture\"[/code]). "
+"Editing it will show a popup menu of valid resource types to instantiate."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1418
+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:1421
+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:1424
+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:1427
+msgid "Hints that an image is compressed using lossy compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1430
+msgid "Hints that an image is compressed using lossless compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1433
+msgid "The property is serialized and saved in the scene file (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1436
+msgid "The property is shown in the editor inspector (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1439 doc/classes/@GlobalScope.xml:1442
+msgid "Deprecated usage flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1445
+msgid "The property can be checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1448
+msgid "The property is checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1451
+msgid "The property is a translatable string."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1454
+msgid "Used to group properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1457
+msgid "Used to categorize properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1460
+msgid "The property does not save its state in [PackedScene]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1463
+msgid "Editing the property prompts the user for restarting the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1466
+msgid ""
+"The property is a script variable which should be serialized and saved in "
+"the scene file."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1469
+msgid "Default usage (storage, editor and network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1472
+msgid ""
+"Default usage for translatable strings (storage, editor, network and "
+"internationalized)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1475
+msgid ""
+"Default usage but without showing the property in the editor (storage, "
+"network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1478
+msgid "Flag for a normal method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1481
+msgid "Flag for an editor method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1484 doc/classes/@GlobalScope.xml:1490
+#: doc/classes/@GlobalScope.xml:1496
+msgid "Deprecated method flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1487
+msgid "Flag for a constant method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1493
+msgid "Flag for a virtual method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1499
+msgid "Default method flags."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1502
+msgid "Variable is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1505
+msgid "Variable is of type [bool]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1508
+msgid "Variable is of type [int]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1511
+msgid "Variable is of type [float] (real)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1514
+msgid "Variable is of type [String]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1517
+msgid "Variable is of type [Vector2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1520
+msgid "Variable is of type [Rect2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1523
+msgid "Variable is of type [Vector3]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1526
+msgid "Variable is of type [Transform2D]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1529
+msgid "Variable is of type [Plane]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1532
+msgid "Variable is of type [Quat]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1535
+msgid "Variable is of type [AABB]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1538
+msgid "Variable is of type [Basis]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1541
+msgid "Variable is of type [Transform]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1544
+msgid "Variable is of type [Color]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1547
+msgid "Variable is of type [NodePath]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1550
+msgid "Variable is of type [RID]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1553
+msgid "Variable is of type [Object]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1556
+msgid "Variable is of type [Dictionary]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1559
+msgid "Variable is of type [Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1562
+msgid "Variable is of type [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1565
+msgid "Variable is of type [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1568
+msgid "Variable is of type [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1571
+msgid "Variable is of type [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1574
+msgid "Variable is of type [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1577
+msgid "Variable is of type [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1580
+msgid "Variable is of type [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1583
+msgid "Represents the size of the [enum Variant.Type] enum."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1586
+msgid "Equality operator ([code]==[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1589
+msgid "Inequality operator ([code]!=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1592
+msgid "Less than operator ([code]<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1595
+msgid "Less than or equal operator ([code]<=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1598
+msgid "Greater than operator ([code]>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1601
+msgid "Greater than or equal operator ([code]>=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1604
+msgid "Addition operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1607
+msgid "Subtraction operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1610
+msgid "Multiplication operator ([code]*[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1613
+msgid "Division operator ([code]/[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1616
+msgid "Unary negation operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1619
+msgid "Unary plus operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1622
+msgid "Remainder/modulo operator ([code]%[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1625
+msgid "String concatenation operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1628
+msgid "Left shift operator ([code]<<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1631
+msgid "Right shift operator ([code]>>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1634
+msgid "Bitwise AND operator ([code]&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1637
+msgid "Bitwise OR operator ([code]|[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1640
+msgid "Bitwise XOR operator ([code]^[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1643
+msgid "Bitwise NOT operator ([code]~[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1646
+msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1649
+msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1652
+msgid "Logical XOR operator (not implemented in GDScript)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1655
+msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1658
+msgid "Logical IN operator ([code]in[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1661
+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.\n"
+"It uses floating-point coordinates. The 2D counterpart to [AABB] is "
+"[Rect2].\n"
+"[b]Note:[/b] Unlike [Rect2], [AABB] does not have a variant that uses "
+"integer coordinates."
+msgstr ""
+
+#: doc/classes/AABB.xml:12 doc/classes/Basis.xml:13 doc/classes/Plane.xml:10
+#: doc/classes/Rect2.xml:12 doc/classes/Transform.xml:11
+#: doc/classes/Transform2D.xml:11 doc/classes/Vector2.xml:11
+#: doc/classes/Vector3.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/math/index.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:13 doc/classes/Rect2.xml:13 doc/classes/Vector2.xml:12
+#: doc/classes/Vector3.xml:12
+msgid "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:14 doc/classes/Rect2.xml:14 doc/classes/Vector2.xml:13
+#: doc/classes/Vector3.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:22
+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:35
+msgid ""
+"Returns [code]true[/code] if this [AABB] completely encloses another one."
+msgstr ""
+
+#: doc/classes/AABB.xml:42
+msgid "Returns this [AABB] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/AABB.xml:48
+msgid "Returns the volume of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:55
+msgid "Gets the position of the 8 endpoints of the [AABB] in space."
+msgstr ""
+
+#: doc/classes/AABB.xml:61
+msgid "Returns the normalized longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:67
+msgid ""
+"Returns the index of the longest axis of the [AABB] (according to "
+"[Vector3]'s [code]AXIS_*[/code] constants)."
+msgstr ""
+
+#: doc/classes/AABB.xml:73
+msgid "Returns the scalar length of the longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:79
+msgid "Returns the normalized shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:85
+msgid ""
+"Returns the index of the shortest axis of the [AABB] (according to "
+"[Vector3]::AXIS* enum)."
+msgstr ""
+
+#: doc/classes/AABB.xml:91
+msgid "Returns the scalar length of the shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:98
+msgid ""
+"Returns the support point in a given direction. This is useful for collision "
+"detection algorithms."
+msgstr ""
+
+#: doc/classes/AABB.xml:105
+msgid ""
+"Returns a copy of the [AABB] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/AABB.xml:111
+msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:117
+msgid "Returns [code]true[/code] if the [AABB] is empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:124
+msgid "Returns [code]true[/code] if the [AABB] contains a point."
+msgstr ""
+
+#: doc/classes/AABB.xml:131
+msgid ""
+"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
+"returned on failure."
+msgstr ""
+
+#: doc/classes/AABB.xml:138
+msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
+msgstr ""
+
+#: doc/classes/AABB.xml:145
+msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
+msgstr ""
+
+#: doc/classes/AABB.xml:153
+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:160
+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:167
+msgid ""
+"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:173 doc/classes/Rect2.xml:132
+msgid ""
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
+msgstr ""
+
+#: doc/classes/AABB.xml:176 doc/classes/Rect2.xml:135
+msgid "Beginning corner. Typically has values lower than [member end]."
+msgstr ""
+
+#: doc/classes/AABB.xml:179 doc/classes/Rect2.xml:138
+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:18
+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.\n"
+"You can use [method remove_button] method to remove a button created with "
+"this method from the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:27
+msgid ""
+"Adds a button with label [code]name[/code] and a cancel action to the dialog "
+"and returns the created button.\n"
+"You can use [method remove_button] method to remove a button created with "
+"this method from the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:34
+msgid ""
+"Returns the label used for built-in text.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:41
+msgid ""
+"Returns the OK [Button] instance.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:49
+msgid ""
+"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
+"dialog will be accepted."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:56
+msgid ""
+"Removes the [code]button[/code] from the dialog. Does NOT free the "
+"[code]button[/code]. The [code]button[/code] must be a [Button] added with "
+"[method add_button] or [method add_cancel] method. After removal, pressing "
+"the [code]button[/code] will no longer emit this dialog's [signal "
+"custom_action] signal or cancel this dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:62
+msgid "Sets autowrapping for the text in the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:65
+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:69
+msgid "The text displayed by the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:76
+msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:82
+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:46
+msgid "Close this AES context so it can be started again. See [method start]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:52
+msgid ""
+"Get the current IV state for this context (IV gets updated when calling "
+"[method update]). You normally don't need this function.\n"
+"[b]Note:[/b] 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:62
+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:69
+msgid ""
+"Run the desired operation for this AES context. Will return a "
+"[PoolByteArray] containing the result of encrypting (or decrypting) the "
+"given [code]src[/code]. See [method start] for mode of operation.\n"
+"[b]Note:[/b] The size of [code]src[/code] must be a multiple of 16. Apply "
+"some padding if needed."
+msgstr ""
+
+#: doc/classes/AESContext.xml:76
+msgid "AES electronic codebook encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:79
+msgid "AES electronic codebook decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:82
+msgid "AES cipher blocker chaining encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:85
+msgid "AES cipher blocker chaining decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:88
+msgid "Maximum value for the mode enum."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:4
+msgid "Sprite node that can use multiple textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel.\n"
+"[b]Note:[/b] You can associate a set of normal maps by creating additional "
+"[SpriteFrames] resources with a [code]_normal[/code] suffix. For example, "
+"having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/"
+"code] will make it so the [code]run[/code] animation uses the normal map."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:11 doc/classes/AnimatedSprite3D.xml:10
+#: doc/classes/AnimationPlayer.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:12 doc/classes/Area2D.xml:11
+#: doc/classes/AudioStreamPlayer.xml:12 doc/classes/Button.xml:24
+#: doc/classes/CanvasLayer.xml:12 doc/classes/CollisionShape2D.xml:11
+#: doc/classes/ColorRect.xml:10 doc/classes/Input.xml:11
+#: doc/classes/InputEvent.xml:12 doc/classes/InputEventAction.xml:11
+#: doc/classes/Label.xml:12 doc/classes/Particles2D.xml:15
+#: doc/classes/Timer.xml:11 doc/classes/VisibilityNotifier2D.xml:12
+msgid "https://godotengine.org/asset-library/asset/515"
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:18 doc/classes/AnimatedSprite3D.xml:16
+msgid "Returns [code]true[/code] if an animation is currently being played."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:26
+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/AnimatedSprite.xml:32 doc/classes/AnimatedSprite3D.xml:29
+msgid "Stops the current animation (does not reset the frame counter)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:38 doc/classes/AnimatedSprite3D.xml:35
+msgid ""
+"The current animation from the [code]frames[/code] resource. If this value "
+"changes, the [code]frame[/code] counter is reset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:41 doc/classes/SpriteBase3D.xml:48
+msgid "If [code]true[/code], texture will be centered."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:44 doc/classes/Sprite.xml:39
+#: doc/classes/SpriteBase3D.xml:54 doc/classes/TextureButton.xml:21
+#: doc/classes/TextureRect.xml:20
+msgid "If [code]true[/code], texture is flipped horizontally."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:47 doc/classes/Sprite.xml:42
+#: doc/classes/SpriteBase3D.xml:57 doc/classes/TextureButton.xml:24
+#: doc/classes/TextureRect.xml:23
+msgid "If [code]true[/code], texture is flipped vertically."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:50 doc/classes/AnimatedSprite3D.xml:38
+msgid "The displayed animation frame's index."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:53 doc/classes/AnimatedSprite3D.xml:41
+msgid "The [SpriteFrames] resource containing the animation(s)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:56 doc/classes/Sprite.xml:58
+#: doc/classes/SpriteBase3D.xml:63
+msgid "The texture's drawing offset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:59 doc/classes/AnimatedSprite3D.xml:44
+msgid "If [code]true[/code], the [member animation] is currently playing."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:62
+msgid "The animation speed is multiplied by this value."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:68 doc/classes/AnimatedSprite3D.xml:50
+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/AnimatedSprite.xml:73 doc/classes/AnimatedSprite3D.xml:55
+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:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:23
+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 [AnimatedSprite], it isn't a [Node], "
+"but has the advantage of being usable anywhere a [Texture] 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.\n"
+"[b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each "
+"frame needs to be a separate [Texture]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:19
+msgid "Returns the given frame's delay value."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:26
+msgid "Returns the given frame's [Texture]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:34
+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:49
+msgid ""
+"Assigns a [Texture] 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:56
+msgid "Sets the currently visible frame of the texture."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:60
+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:64
+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:67
+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:70
+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:75
+msgid ""
+"The maximum number of frames supported by [AnimatedTexture]. If you need "
+"more frames in your animation, use [AnimationPlayer] or [AnimatedSprite]."
+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] or [AnimationTreePlayer] 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:12
+msgid "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html"
+msgstr ""
+
+#: doc/classes/Animation.xml:28
+msgid "Adds a track to the Animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:36
+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:45
+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:54
+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:62
+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:71
+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:80
+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:91
+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:101
+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:110
+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:119
+msgid ""
+"Sets the stream of the key identified by [code]key_idx[/code] to value "
+"[code]stream[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:127
+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:135
+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:143
+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:154
+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:163
+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:172
+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:181
+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:190
+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:196
+msgid "Clear the animation (clear all tracks and reset all)."
+msgstr ""
+
+#: doc/classes/Animation.xml:204
+msgid ""
+"Adds a new track that is a copy of the given track from [code]to_animation[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:211
+msgid ""
+"Returns the index of the specified track. If the track is not found, return "
+"-1."
+msgstr ""
+
+#: doc/classes/Animation.xml:217
+msgid "Returns the amount of tracks in the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:226
+msgid ""
+"Returns all the key indices of a method track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:234
+msgid "Returns the method name of a method track."
+msgstr ""
+
+#: doc/classes/Animation.xml:242
+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:249
+msgid "Removes a track by specifying the track index."
+msgstr ""
+
+#: doc/classes/Animation.xml:258
+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:265
+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:272
+msgid "Returns the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:279
+msgid "Returns the amount of keys in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:287
+msgid "Returns the time at which the key is located."
+msgstr ""
+
+#: doc/classes/Animation.xml:295
+msgid ""
+"Returns the transition curve (easing) for a specific key (see the built-in "
+"math function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:303
+msgid "Returns the value of a given key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:310
+msgid ""
+"Gets the path of a track. For more information on the path format, see "
+"[method track_set_path]."
+msgstr ""
+
+#: doc/classes/Animation.xml:317
+msgid "Gets the type of a track."
+msgstr ""
+
+#: doc/classes/Animation.xml:327
+msgid "Insert a generic key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:334
+msgid ""
+"Returns [code]true[/code] if the track at index [code]idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/Animation.xml:341
+msgid ""
+"Returns [code]true[/code] if the given track is imported. Else, return "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:348
+msgid "Moves a track down."
+msgstr ""
+
+#: doc/classes/Animation.xml:356
+msgid ""
+"Changes the index position of track [code]idx[/code] to the one defined in "
+"[code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:363
+msgid "Moves a track up."
+msgstr ""
+
+#: doc/classes/Animation.xml:371
+msgid "Removes a key by index in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:379
+msgid "Removes a key by position (seconds) in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:387
+msgid "Enables/disables the given track. Tracks are enabled by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:395
+msgid "Sets the given track as imported or not."
+msgstr ""
+
+#: doc/classes/Animation.xml:403
+msgid ""
+"If [code]true[/code], the track at [code]idx[/code] wraps the interpolation "
+"loop."
+msgstr ""
+
+#: doc/classes/Animation.xml:411
+msgid "Sets the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:420
+msgid "Sets the time of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:429
+msgid ""
+"Sets the transition curve (easing) for a specific key (see the built-in math "
+"function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:438
+msgid "Sets the value of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:446
+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:455
+msgid ""
+"Swaps the track [code]idx[/code]'s index position with the track "
+"[code]with_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:466
+msgid "Insert a transform key for a transform track."
+msgstr ""
+
+#: doc/classes/Animation.xml:474
+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:483
+msgid ""
+"Returns all the key indices of a value track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:490
+msgid "Returns the update mode of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:498
+msgid ""
+"Returns the interpolated value at the given time (in seconds). The "
+"[code]track_idx[/code] must be the index of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:506
+msgid "Sets the update mode (see [enum UpdateMode]) of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:512
+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:516
+msgid ""
+"A flag indicating that the animation must loop. This is used for correct "
+"interpolation of animation cycles, and for hinting the player that it must "
+"restart the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:519
+msgid "The animation step value."
+msgstr ""
+
+#: doc/classes/Animation.xml:525
+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:531
+msgid ""
+"Value tracks set values in node properties, but only those which can be "
+"Interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:534
+msgid ""
+"Transform tracks are used to change node local transforms or skeleton pose "
+"bones. Transitions are interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:537
+msgid "Method tracks call functions with given arguments per key."
+msgstr ""
+
+#: doc/classes/Animation.xml:540
+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:543
+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:546
+msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/Animation.xml:549
+msgid "No interpolation (nearest value)."
+msgstr ""
+
+#: doc/classes/Animation.xml:552
+msgid "Linear interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:555
+msgid "Cubic interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:558
+msgid "Update between keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:561
+msgid "Update at the keyframes and hold the value."
+msgstr ""
+
+#: doc/classes/Animation.xml:564
+msgid "Update at the keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:567
+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:21
+#: doc/classes/AnimationNodeTransition.xml:10 doc/classes/AnimationTree.xml:11
+#: doc/classes/AnimationTreePlayer.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html"
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:18
+msgid ""
+"Adds an input to the node. This is only useful for nodes created for use in "
+"an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:29
+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:41
+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:54
+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:60
+msgid "Gets the text caption for this node (used by some editors)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:67
+msgid ""
+"Gets a child node by index (used by editors inheriting from "
+"[AnimationRootNode])."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:73
+msgid ""
+"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
+"Only useful when inheriting [AnimationRootNode]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:79
+msgid ""
+"Amount of inputs in this node, only useful for nodes that go into "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:86
+msgid "Gets the name of an input by index."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:93
+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:100
+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:106
+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:112
+msgid ""
+"Returns [code]true[/code] whether you want the blend tree editor to display "
+"filter editing on this node."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:119
+msgid "Returns [code]true[/code] whether a given path is filtered."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:127
+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:136
+msgid "Removes an input, call this only when inactive."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:144
+msgid "Adds or removes a path for the filter."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:152
+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:158
+msgid "If [code]true[/code], filtering is enabled."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:164
+msgid "Called when the node was removed from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:169
+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:175
+msgid "Do not use filtering."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:178
+msgid "Paths matching the filter will be allowed to pass."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:181
+msgid "Paths matching the filter will be discarded."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:184
+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:21
+#: doc/classes/AnimationNodeBlend2.xml:18
+#: 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/AnimationNodeAdd3.xml:15
+#: doc/classes/AnimationNodeAnimation.xml:12
+#: doc/classes/AnimationNodeBlend2.xml:12
+#: doc/classes/AnimationNodeBlendSpace2D.xml:13
+#: doc/classes/AnimationNodeOneShot.xml:11
+#: doc/classes/AnimationNodeOutput.xml:11
+#: doc/classes/AnimationNodeTransition.xml:12
+#: doc/classes/AnimationPlayer.xml:14 doc/classes/AnimationTree.xml:12
+#: doc/classes/AudioEffectReverb.xml:11 doc/classes/Camera.xml:10
+#: doc/classes/CollisionShape.xml:13 doc/classes/CylinderShape.xml:10
+#: doc/classes/Environment.xml:19 doc/classes/GIProbe.xml:14
+#: doc/classes/GIProbeData.xml:8 doc/classes/KinematicBody.xml:16
+#: doc/classes/Light.xml:11 doc/classes/Material.xml:11 doc/classes/Mesh.xml:13
+#: doc/classes/MeshInstance.xml:13 doc/classes/Particles.xml:14
+#: doc/classes/Quat.xml:13 doc/classes/Skeleton.xml:13
+#: doc/classes/SpotLight.xml:12 doc/classes/StaticBody.xml:12
+#: doc/classes/WorldEnvironment.xml:15
+msgid "https://godotengine.org/asset-library/asset/678"
+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:11
+#: doc/classes/AnimationNodeBlend2.xml:11
+#: doc/classes/AnimationNodeOutput.xml:10
+#: doc/classes/AnimationNodeTimeScale.xml:11
+#: doc/classes/AnimationNodeTransition.xml:11 doc/classes/Area.xml:10
+#: doc/classes/Basis.xml:17 doc/classes/BoxShape.xml:12
+#: doc/classes/CollisionShape.xml:12 modules/gridmap/doc_classes/GridMap.xml:15
+#: doc/classes/KinematicBody.xml:14 doc/classes/Mesh.xml:12
+#: doc/classes/MeshInstance.xml:12 doc/classes/MeshLibrary.xml:11
+#: doc/classes/ProjectSettings.xml:14 doc/classes/Transform.xml:15
+msgid "https://godotengine.org/asset-library/asset/125"
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:18
+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:22
+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:28
+msgid "Returns the number of points on the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:35
+msgid ""
+"Returns the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:42
+#: doc/classes/AnimationNodeBlendSpace2D.xml:52
+msgid "Returns the position of the point at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:49
+msgid "Removes the point at index [code]point[/code] from the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:57
+#: doc/classes/AnimationNodeBlendSpace2D.xml:88
+msgid ""
+"Changes the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:65
+#: doc/classes/AnimationNodeBlendSpace2D.xml:96
+msgid ""
+"Updates the position of the point at index [code]point[/code] on the blend "
+"axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:71
+msgid ""
+"The blend space's axis's upper limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:74
+msgid ""
+"The blend space's axis's lower limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:77
+msgid "Position increment to snap to when moving a point on the axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:80
+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:22
+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:32
+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:38
+msgid "Returns the number of points in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:45
+msgid ""
+"Returns the [AnimationRootNode] referenced by the point at index "
+"[code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:58
+msgid "Returns the number of triangles in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:66
+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:73
+msgid "Removes the point at index [code]point[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:80
+msgid ""
+"Removes the triangle at index [code]triangle[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:102
+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:105
+msgid ""
+"Controls the interpolation between animations. See [enum BlendMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:108
+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:111
+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:114
+msgid "Position increment to snap to when moving a point."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:117
+msgid "Name of the blend space's X axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:120
+msgid "Name of the blend space's Y axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:126
+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:132
+msgid "The interpolation between animations is linear."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:135
+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:138
+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:19
+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:28
+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:36
+msgid "Disconnects the node connected to the specified input."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:43
+msgid "Returns the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:50
+msgid ""
+"Returns the position of the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:57
+msgid ""
+"Returns [code]true[/code] if a sub-node with specified [code]name[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:64
+msgid "Removes a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:72
+msgid "Changes the name of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:80
+msgid "Modifies the position of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:86
+msgid "The global offset of all sub-nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:91
+msgid "The connection was successful."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:94
+msgid "The input node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:97
+msgid "The specified input port is out of range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:100
+msgid "The output node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:103
+msgid "Input and output nodes are the same."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:106
+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:28
+msgid ""
+"If [code]true[/code], the sub-animation will restart automatically after "
+"finishing."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:31
+msgid "The delay after which the automatic restart is triggered, in seconds."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:34
+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:24
+msgid ""
+"Adds a new node to the graph. The [code]position[/code] is used for display "
+"in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:33
+msgid "Adds a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:39
+#: doc/classes/AnimationNodeStateMachine.xml:72
+msgid "Returns the graph's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:45
+msgid "Returns the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:52
+msgid "Returns the animation node with the given name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:59
+msgid "Returns the given animation node's name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:66
+msgid "Returns the given node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:79
+msgid "Returns the given transition."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:85
+msgid "Returns the number of connections in the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:92
+msgid "Returns the given transition's start node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:99
+msgid "Returns the given transition's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:106
+msgid "Returns [code]true[/code] if the graph contains the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:114
+msgid ""
+"Returns [code]true[/code] if there is a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:121
+msgid "Deletes the given node from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:129
+msgid "Deletes the transition between the two specified nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:136
+msgid "Deletes the given transition by index."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:144
+msgid "Renames the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:152
+msgid "Replaces the node and keeps its transitions unchanged."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:159
+msgid "Sets the given node as the graph end point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:166
+msgid "Sets the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:174
+msgid "Sets the node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:181
+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:26
+msgid "Returns the currently playing animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:32
+msgid "Returns the playback position within the current animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:38
+msgid ""
+"Returns the current travel path as computed internally by the A* algorithm."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:44
+msgid "Returns [code]true[/code] if an animation is playing."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:51
+msgid "Starts playing the given animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:57
+msgid "Stops the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:64
+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/3.4/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 animation graph. Use this node type to play an [Animation] from the "
+"start or a certain playback position inside the [AnimationNodeBlendTree]. "
+"After setting the time and changing the animation playback, the seek node "
+"automatically goes into sleep mode on the next process frame by setting its "
+"[code]seek_position[/code] value to [code]-1.0[/code].\n"
+"[codeblock]\n"
+"# Play child animation from the start.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 0.0)\n"
+"# Alternative syntax (same result as above).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 0.0\n"
+"\n"
+"# Play child animation from 12 second timestamp.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 12.0)\n"
+"# Alternative syntax (same result as above).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
+"[/codeblock]"
+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:44
+msgid "The number of available input ports for this node."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:47
+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:22
+msgid ""
+"Adds [code]animation[/code] to the player accessible with the key "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:29
+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:36
+msgid "Returns the name of the next animation in the queue."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:44
+msgid ""
+"Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] "
+"animation completes."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:50
+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:56
+msgid "Clears all queued, unplayed animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:63
+msgid ""
+"Returns the name of [code]animation[/code] or an empty string if not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:70
+msgid ""
+"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
+"not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:76
+msgid "Returns the list of stored animation names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:84
+msgid ""
+"Gets the blend time (in seconds) between two animations, referenced by their "
+"names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:90
+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:96
+msgid ""
+"Returns a list of the animation names that are currently queued to play."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:103
+msgid ""
+"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
+"with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:109
+msgid "Returns [code]true[/code] if playing an animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:119
+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:129
+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:137
+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:145
+msgid "Removes the animation with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:153
+msgid ""
+"Renames an existing animation with key [code]name[/code] to [code]newname[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:161
+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:170
+msgid ""
+"Specifies a blend time (in seconds) between two animations, referenced by "
+"their names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:177
+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:184
+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:187
+msgid "The name of the animation to play when the scene loads."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:190
+msgid ""
+"The name of the currently playing animation. If no animation is playing, the "
+"property's value is an empty string. Changing this value does not restart "
+"the animation. See [method play] for more information on playing "
+"animations.\n"
+"[b]Note:[/b] While this property appears in the inspector, it's not meant to "
+"be edited, and it's not saved in the scene. This property is mainly used to "
+"get the currently playing animation, and internally for animation playback "
+"tracks. For more information, see [Animation]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:194
+msgid "The length (in seconds) of the currently being played animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:197
+msgid "The position (in seconds) of the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:200
+msgid "The call mode to use for Call Method tracks."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:203
+msgid ""
+"If [code]true[/code], updates animations in response to process-related "
+"notifications."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:206
+msgid ""
+"The default time in which to blend animations. Ranges from 0 to 4096 with "
+"0.01 precision."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:209
+msgid "The process notification in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:212
+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:215
+msgid ""
+"This is used by the editor. If set to [code]true[/code], the scene will be "
+"saved with the effects of the reset animation applied (as if it had been "
+"seeked to time 0), then reverted after saving.\n"
+"In other words, the saved scene file will contain the \"default pose\", as "
+"defined by the reset animation, if any, with the editor keeping the values "
+"that the nodes had before saving."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:219
+msgid "The node from which node path references will travel."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:227
+msgid ""
+"Emitted when a queued animation plays after the previous animation was "
+"finished. See [method queue].\n"
+"[b]Note:[/b] The signal is not emitted when the animation is changed via "
+"[method play] or from [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:234
+msgid "Notifies when an animation finished playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:240
+msgid "Notifies when an animation starts playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:245
+msgid ""
+"Notifies when the caches have been cleared, either automatically, or "
+"manually via [method clear_caches]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:251 doc/classes/AnimationTreePlayer.xml:505
+msgid ""
+"Process animation during the physics process. This is especially useful when "
+"animating physics bodies."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:254 doc/classes/AnimationTreePlayer.xml:508
+msgid "Process animation during the idle process."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:257
+msgid ""
+"Do not process animation. Use [method advance] to process the animation "
+"manually."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:260
+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:263
+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 ""
+"A node to be used for advanced animation transitions in an "
+"[AnimationPlayer].\n"
+"[b]Note:[/b] 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:19
+msgid "Manually advance the animations by the specified time (in seconds)."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:25
+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. See also [member root_motion_track] and [RootMotionView]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:38
+msgid "If [code]true[/code], the [AnimationTree] will be processing."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:41
+msgid "The path to the [AnimationPlayer] used for animating."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:44
+msgid ""
+"The process mode of this [AnimationTree]. See [enum AnimationProcessMode] "
+"for available modes."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:47
+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. See also [method get_root_motion_transform] and "
+"[RootMotionView]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:51
+msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:56
+msgid ""
+"The animations will progress during the physics frame (i.e. [method Node."
+"_physics_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:59
+msgid ""
+"The animations will progress during the idle frame (i.e. [method Node."
+"_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:62
+msgid "The animations will only progress manually (see [method advance])."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:4
+msgid ""
+"[i]Deprecated.[/i] Animation player that uses a node graph for blending "
+"animations. Superseded by [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:7
+msgid ""
+"[i]Deprecated.[/i] A node graph tool for blending multiple animations bound "
+"to an [AnimationPlayer]. Especially useful for animating characters or other "
+"skeleton-based rigs. It can combine several animations to form a desired "
+"pose.\n"
+"It takes [Animation]s from an [AnimationPlayer] node and mixes them "
+"depending on the graph.\n"
+"See [AnimationTree] for a more full-featured replacement of this node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:20
+msgid "Adds a [code]type[/code] node to the graph with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:27
+msgid ""
+"Shifts position in the animation timeline. [code]delta[/code] is the time in "
+"seconds to shift. Events between the current frame and [code]delta[/code] "
+"are handled."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:34
+msgid ""
+"Returns the [AnimationPlayer]'s [Animation] bound to the "
+"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:41
+msgid ""
+"Returns the name of the [member master_player]'s [Animation] bound to this "
+"animation node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:48
+msgid ""
+"Returns the absolute playback timestamp of the animation node with name "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:56
+msgid ""
+"Binds a new [Animation] from the [member master_player] to the "
+"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:65
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the animation node with ID "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:73
+msgid ""
+"Binds the [Animation] named [code]source[/code] from [member master_player] "
+"to the animation node [code]id[/code]. Recalculates caches."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:82
+msgid ""
+"Returns whether node [code]id[/code] and [code]dst_id[/code] are connected "
+"at the specified slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:89
+msgid "Returns the blend amount of a Blend2 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:97
+msgid ""
+"Sets the blend amount of a Blend2 node given its name and value.\n"
+"A Blend2 node blends two animations (A and B) with the amount between 0 and "
+"1.\n"
+"At 0, output is input A. Towards 1, the influence of A gets lessened, the "
+"influence of B gets raised. At 1, output is input B."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:108
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the Blend2 node with name "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:115
+msgid "Returns the blend amount of a Blend3 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:123
+msgid ""
+"Sets the blend amount of a Blend3 node given its name and value.\n"
+"A Blend3 Node blends three animations (A, B-, B+) with the amount between -1 "
+"and 1.\n"
+"At -1, output is input B-. From -1 to 0, the influence of B- gets lessened, "
+"the influence of A gets raised and the influence of B+ is 0. At 0, output is "
+"input A. From 0 to 1, the influence of A gets lessened, the influence of B+ "
+"gets raised and the influence of B+ is 0. At 1, output is input B+."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:132
+msgid "Returns the blend amount of a Blend4 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:140
+msgid ""
+"Sets the blend amount of a Blend4 node given its name and value.\n"
+"A Blend4 Node blends two pairs of animations.\n"
+"The two pairs are blended like Blend2 and then added together."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:151
+msgid ""
+"Connects node [code]id[/code] to [code]dst_id[/code] at the specified input "
+"slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:159
+msgid ""
+"Disconnects nodes connected to [code]id[/code] at the specified input slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:165
+msgid "Returns a [PoolStringArray] containing the name of all nodes."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:172
+msgid "Returns the mix amount of a Mix node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:180
+msgid ""
+"Sets the mix amount of a Mix node given its name and value.\n"
+"A Mix node adds input b to input a by the amount given by ratio."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:188
+msgid "Check if a node exists (by name)."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:195
+msgid ""
+"Returns the input count for a given node. Different types of nodes have "
+"different amount of inputs."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:203
+msgid "Returns the input source for a given node input."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:210
+msgid "Returns position of a node in the graph given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:217
+msgid "Gets the node type, will return from [enum NodeType] enum."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:225
+msgid "Renames a node in the graph."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:233
+msgid "Sets the position of a node in the graph given its name and position."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:240
+msgid "Returns the autostart delay of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:247
+msgid "Returns the autostart random delay of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:254
+msgid "Returns the fade in time of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:261
+msgid "Returns the fade out time of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:268
+msgid "Returns whether a OneShot node will auto restart given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:275
+msgid "Returns whether a OneShot node is active given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:283
+msgid ""
+"Sets the autorestart property of a OneShot node given its name and value."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:291
+msgid ""
+"Sets the autorestart delay of a OneShot node given its name and value in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:299
+msgid ""
+"Sets the autorestart random delay of a OneShot node given its name and value "
+"in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:307
+msgid ""
+"Sets the fade in time of a OneShot node given its name and value in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:315
+msgid ""
+"Sets the fade out time of a OneShot node given its name and value in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:324
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the OneShot node with ID "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:331
+msgid "Starts a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:338
+msgid "Stops the OneShot node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:344
+msgid ""
+"Manually recalculates the cache of track information generated from "
+"animation nodes. Needed when external sources modify the animation nodes' "
+"state."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:351
+msgid "Removes the animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:357
+msgid "Resets this [AnimationTreePlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:364
+msgid ""
+"Returns the time scale value of the TimeScale node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:372
+msgid ""
+"Sets the time scale of the TimeScale node with name [code]id[/code] to "
+"[code]scale[/code].\n"
+"The TimeScale node is used to speed [Animation]s up if the scale is above 1 "
+"or slow them down if it is below 1.\n"
+"If applied after a blend or mix, affects all input animations to that blend "
+"or mix."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:382
+msgid ""
+"Sets the time seek value of the TimeSeek node with name [code]id[/code] to "
+"[code]seconds[/code].\n"
+"This functions as a seek in the [Animation] or the blend or mix of "
+"[Animation]s input in it."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:391
+msgid ""
+"Deletes the input at [code]input_idx[/code] for the transition node with "
+"name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:398
+msgid ""
+"Returns the index of the currently evaluated input for the transition node "
+"with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:405
+msgid ""
+"Returns the number of inputs for the transition node with name [code]id[/"
+"code]. You can add inputs by right-clicking on the transition node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:412
+msgid ""
+"Returns the cross fade time for the transition node with name [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:420
+msgid ""
+"Returns [code]true[/code] if the input at [code]input_idx[/code] on the "
+"transition node with name [code]id[/code] is set to automatically advance to "
+"the next input upon completion."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:428
+msgid ""
+"The transition node with name [code]id[/code] sets its current input at "
+"[code]input_idx[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:437
+msgid ""
+"The transition node with name [code]id[/code] advances to its next input "
+"automatically when the input at [code]input_idx[/code] completes."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:445
+msgid ""
+"Resizes the number of inputs available for the transition node with name "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:453
+msgid ""
+"The transition node with name [code]id[/code] sets its cross fade time to "
+"[code]time_sec[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:459
+msgid ""
+"If [code]true[/code], the [AnimationTreePlayer] is able to play animations."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:462
+msgid ""
+"The node from which to relatively access other nodes.\n"
+"It accesses the bones, so it should point to the same node the "
+"[AnimationPlayer] would point its Root Node at."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:466
+msgid ""
+"The path to the [AnimationPlayer] from which this [AnimationTreePlayer] "
+"binds animations to animation nodes.\n"
+"Once set, [Animation] nodes can be added to the [AnimationTreePlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:470
+msgid "The thread in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:475
+msgid "Output node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:478
+msgid "Animation node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:481
+msgid "OneShot node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:484
+msgid "Mix node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:487
+msgid "Blend2 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:490
+msgid "Blend3 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:493
+msgid "Blend4 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:496
+msgid "TimeScale node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:499
+msgid "TimeSeek node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:502
+msgid "Transition node."
+msgstr ""
+
+#: doc/classes/Area.xml:4
+msgid "3D area for detection and physics and audio influence."
+msgstr ""
+
+#: doc/classes/Area.xml:7
+msgid ""
+"3D area that detects [CollisionObject] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping) and route audio to custom audio buses."
+msgstr ""
+
+#: doc/classes/Area.xml:11 doc/classes/QuadMesh.xml:10
+#: doc/classes/Viewport.xml:17 doc/classes/ViewportTexture.xml:11
+msgid "https://godotengine.org/asset-library/asset/127"
+msgstr ""
+
+#: doc/classes/Area.xml:17
+msgid ""
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:24
+msgid ""
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:32
+msgid ""
+"If [code]true[/code], the given area overlaps the Area.\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/Area.xml:40
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area.\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 [PhysicsBody] 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/Area.xml:48
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
+msgid "The name of the area's audio bus."
+msgstr ""
+
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
+msgid ""
+"If [code]true[/code], the area's audio bus overrides the default audio bus."
+msgstr ""
+
+#: doc/classes/Area.xml:58
+msgid ""
+"The area's gravity intensity (in meters per second squared). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
+msgid ""
+"The falloff factor for point gravity. The greater the value, the faster "
+"gravity decreases with distance."
+msgstr ""
+
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
+msgid ""
+"If [code]true[/code], gravity is calculated from a point (set via [member "
+"gravity_vec]). See also [member space_override]."
+msgstr ""
+
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
+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/Area.xml:70
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
+msgid "If [code]true[/code], other monitoring areas can detect this area."
+msgstr ""
+
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
+msgid ""
+"If [code]true[/code], the area detects bodies or areas entering and exiting "
+"it."
+msgstr ""
+
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
+msgid "The area's priority. Higher priority areas are processed first."
+msgstr ""
+
+#: doc/classes/Area.xml:83
+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/Area.xml:86
+msgid "If [code]true[/code], the area applies reverb to its associated audio."
+msgstr ""
+
+#: doc/classes/Area.xml:89
+msgid "The reverb bus name to use for this area's associated audio."
+msgstr ""
+
+#: doc/classes/Area.xml:92
+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/Area.xml:95 doc/classes/Area2D.xml:85
+msgid ""
+"Override mode for gravity and damping calculations within this area. See "
+"[enum SpaceOverride] for possible values."
+msgstr ""
+
+#: doc/classes/Area.xml:102
+msgid ""
+"Emitted when another Area enters this Area. Requires [member monitoring] to "
+"be set to [code]true[/code].\n"
+"[code]area[/code] the other Area."
+msgstr ""
+
+#: doc/classes/Area.xml:109
+msgid ""
+"Emitted when another Area exits this Area. Requires [member monitoring] to "
+"be set to [code]true[/code].\n"
+"[code]area[/code] the other Area."
+msgstr ""
+
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
+msgid ""
+"Emitted when one of another Area's [Shape]s enters one of this Area's "
+"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area's [CollisionObject] used "
+"by the [PhysicsServer].\n"
+"[code]area[/code] the other Area.\n"
+"[code]area_shape_index[/code] the index of the [Shape] of the other Area "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]area."
+"shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this Area used by "
+"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area.xml:142
+msgid ""
+"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
+"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/Area.xml:149
+msgid ""
+"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
+"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
+msgid ""
+"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
+"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
+"code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody] or [MeshLibrary]'s "
+"[CollisionObject] used by the [PhysicsServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the [PhysicsBody] "
+"or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the [PhysicsBody] "
+"or [GridMap] used by the [PhysicsServer]. Get the [CollisionShape] node with "
+"[code]body.shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this Area used by "
+"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
+msgid "This area does not affect gravity/damping."
+msgstr ""
+
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order)."
+msgstr ""
+
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
+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/Area.xml:191 doc/classes/Area2D.xml:181
+msgid ""
+"This area replaces any gravity/damping, even the defaults, ignoring any "
+"lower priority areas."
+msgstr ""
+
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
+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/Area2D.xml:4
+msgid "2D area for detection and physics and audio 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) and route audio to a custom audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html"
+msgstr ""
+
+#: doc/classes/Area2D.xml:12 doc/classes/CollisionShape2D.xml:12
+#: doc/classes/RectangleShape2D.xml:10
+msgid "https://godotengine.org/asset-library/asset/121"
+msgstr ""
+
+#: doc/classes/Area2D.xml:13 doc/classes/Camera2D.xml:12
+#: doc/classes/KinematicBody2D.xml:15 doc/classes/TileMap.xml:12
+#: doc/classes/TileSet.xml:12
+msgid "https://godotengine.org/asset-library/asset/120"
+msgstr ""
+
+#: doc/classes/Area2D.xml:19
+msgid ""
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:26
+msgid ""
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:34
+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, the list of overlaps is updated once per frame and before "
+"the physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:42
+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 bodies themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:50
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/2d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:60
+msgid ""
+"The area's gravity intensity (in pixels per second squared). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:72
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:92
+msgid ""
+"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
+"to be set to [code]true[/code].\n"
+"[code]area[/code] the other Area2D."
+msgstr ""
+
+#: doc/classes/Area2D.xml:99
+msgid ""
+"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
+"to be set to [code]true[/code].\n"
+"[code]area[/code] the other Area2D."
+msgstr ""
+
+#: doc/classes/Area2D.xml:109
+msgid ""
+"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
+"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area2D's [CollisionObject2D] "
+"used by the [Physics2DServer].\n"
+"[code]area[/code] the other Area2D.\n"
+"[code]area_shape_index[/code] the index of the [Shape2D] of the other Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:122
+msgid ""
+"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
+"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area2D's [CollisionObject2D] "
+"used by the [Physics2DServer].\n"
+"[code]area[/code] the other Area2D.\n"
+"[code]area_shape_index[/code] the index of the [Shape2D] of the other Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:132
+msgid ""
+"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
+"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
+"if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:139
+msgid ""
+"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
+"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
+"if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:149
+msgid ""
+"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
+"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
+"[code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision "
+"[Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:162
+msgid ""
+"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
+"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
+"[code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision "
+"[Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:4
+msgid "A generic array datatype."
+msgstr ""
+
+#: doc/classes/Array.xml:7
+msgid ""
+"A generic array that 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 is 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] Concatenating with the [code]+=[/code] operator will create a "
+"new array, which has a cost. If you want to append another array to an "
+"existing array, [method append_array] is more efficient.\n"
+"[b]Note:[/b] Arrays are always passed by reference. To get a copy of an "
+"array that can be modified independently of the original array, use [method "
+"duplicate].\n"
+"[b]Note:[/b] When declaring an array with [code]const[/code], the array "
+"itself can still be mutated by defining the values at individual indices or "
+"pushing/removing elements. Using [code]const[/code] will only prevent "
+"assigning the constant with another value after it was initialized."
+msgstr ""
+
+#: doc/classes/Array.xml:34
+msgid "Constructs an array from a [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:41
+msgid "Constructs an array from a [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:48
+msgid "Constructs an array from a [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:55
+msgid "Constructs an array from a [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:62
+msgid "Constructs an array from a [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:69
+msgid "Constructs an array from a [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:76
+msgid "Constructs an array from a [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:82 doc/classes/PoolByteArray.xml:23
+#: doc/classes/PoolColorArray.xml:23 doc/classes/PoolIntArray.xml:24
+#: doc/classes/PoolRealArray.xml:24 doc/classes/PoolStringArray.xml:24
+#: doc/classes/PoolVector2Array.xml:24 doc/classes/PoolVector3Array.xml:23
+msgid ""
+"Appends an element at the end of the array (alias of [method push_back])."
+msgstr ""
+
+#: doc/classes/Array.xml:88
+msgid ""
+"Appends another array at the end of this array.\n"
+"[codeblock]\n"
+"var array1 = [1, 2, 3]\n"
+"var array2 = [4, 5, 6]\n"
+"array1.append_array(array2)\n"
+"print(array1) # Prints [1, 2, 3, 4, 5, 6].\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:100
+msgid ""
+"Returns the last element of the array. Prints an error and returns "
+"[code]null[/code] if the array is empty.\n"
+"[b]Note:[/b] Calling this function is not the same as writing [code]array[-1]"
+"[/code]. If the array is empty, accessing by index will pause project "
+"execution when running from the editor."
+msgstr ""
+
+#: doc/classes/Array.xml:109
+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:120
+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 declared in the [code]obj[/code]. "
+"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"
+"[codeblock]\n"
+"func cardinal_to_algebraic(a):\n"
+" match a:\n"
+" \"one\":\n"
+" return 1\n"
+" \"two\":\n"
+" return 2\n"
+" \"three\":\n"
+" return 3\n"
+" \"four\":\n"
+" return 4\n"
+" _:\n"
+" return 0\n"
+"\n"
+"func compare(a, b):\n"
+" return cardinal_to_algebraic(a) < cardinal_to_algebraic(b)\n"
+"\n"
+"func _ready():\n"
+" var a = [\"one\", \"two\", \"three\", \"four\"]\n"
+" # `compare` is defined in this object, so we use `self` as the `obj` "
+"parameter.\n"
+" print(a.bsearch_custom(\"three\", self, \"compare\", true)) # Expected "
+"value is 2.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Calling [method bsearch_custom] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:148
+msgid ""
+"Clears the array. This is equivalent to using [method resize] with a size of "
+"[code]0[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:155
+msgid "Returns the number of times an element is in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:162
+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:169 doc/classes/PoolByteArray.xml:61
+#: doc/classes/PoolColorArray.xml:35 doc/classes/PoolIntArray.xml:36
+#: doc/classes/PoolRealArray.xml:36 doc/classes/PoolStringArray.xml:36
+#: doc/classes/PoolVector2Array.xml:36 doc/classes/PoolVector3Array.xml:35
+msgid "Returns [code]true[/code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:175
+msgid ""
+"Removes the first occurrence of a value from the array. To remove an element "
+"by index, use [method remove] instead.\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the removed "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the removed element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:185
+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:192
+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:198
+msgid ""
+"Returns the first element of the array. Prints an error and returns "
+"[code]null[/code] if the array is empty.\n"
+"[b]Note:[/b] Calling this function is not the same as writing [code]array[0]"
+"[/code]. If the array is empty, accessing by index will pause project "
+"execution when running from the editor."
+msgstr ""
+
+#: doc/classes/Array.xml:206
+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"
+"[/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:224
+msgid ""
+"Returns a hashed integer value representing the array and its contents.\n"
+"[b]Note:[/b] Arrays with equal contents can still produce different hashes. "
+"Only the exact same arrays will produce the same hashed integer value."
+msgstr ""
+
+#: doc/classes/Array.xml:232
+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]).\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the inserted "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the newly inserted element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:239 doc/classes/PoolByteArray.xml:96
+#: doc/classes/PoolColorArray.xml:48 doc/classes/PoolIntArray.xml:49
+#: doc/classes/PoolRealArray.xml:49 doc/classes/PoolStringArray.xml:49
+#: doc/classes/PoolVector2Array.xml:49 doc/classes/PoolVector3Array.xml:48
+msgid "Reverses the order of the elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:245
+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:251
+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:258
+msgid ""
+"Removes and returns the element of the array at index [code]position[/code]. "
+"If negative, [code]position[/code] is considered relative to the end of the "
+"array. Leaves the array untouched and returns [code]null[/code] if the array "
+"is empty or if it's accessed out of bounds. An error message is printed when "
+"the array is accessed out of bounds, but not when the array is empty.\n"
+"[b]Note:[/b] On large arrays, this method can be slower than [method "
+"pop_back] as it will reindex the array's elements that are located after the "
+"removed element. The larger the array and the lower the index of the removed "
+"element, the slower [method pop_at] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:265
+msgid ""
+"Removes and returns the last element of the array. Returns [code]null[/code] "
+"if the array is empty, without printing an error message. See also [method "
+"pop_front]."
+msgstr ""
+
+#: doc/classes/Array.xml:271
+msgid ""
+"Removes and returns the first element of the array. Returns [code]null[/"
+"code] if the array is empty, without printing an error message. See also "
+"[method pop_back].\n"
+"[b]Note:[/b] On large arrays, this method is much slower than [method "
+"pop_back] as it will reindex all the array's elements every time it's "
+"called. The larger the array, the slower [method pop_front] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:278
+msgid ""
+"Appends an element at the end of the array. See also [method push_front]."
+msgstr ""
+
+#: doc/classes/Array.xml:284
+msgid ""
+"Adds an element at the beginning of the array. See also [method push_back].\n"
+"[b]Note:[/b] On large arrays, this method is much slower than [method "
+"push_back] as it will reindex all the array's elements every time it's "
+"called. The larger the array, the slower [method push_front] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:291
+msgid ""
+"Removes an element from the array by index. If the index does not exist in "
+"the array, nothing happens. To remove an element by searching for its value, "
+"use [method erase] instead.\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the removed "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the removed element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:299
+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:307
+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:312
+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:318
+msgid "Returns the number of elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:328
+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:333
+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:346
+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"
+"For two elements [code]a[/code] and [code]b[/code], if the given method "
+"returns [code]true[/code], element [code]b[/code] will be after element "
+"[code]a[/code] in the array.\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 = PoolVector3Array()\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 = MeshInstance.new()\n"
+"m.mesh = arr_mesh\n"
+"[/codeblock]\n"
+"The [MeshInstance] is ready to be added to the [SceneTree] to be shown.\n"
+"See also [ImmediateGeometry], [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/3.4/tutorials/content/procedural_geometry/"
+"arraymesh.html"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:36
+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:46
+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."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:54
+msgid "Removes all blend shapes from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:60
+msgid "Removes all surfaces from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:66
+msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:73
+msgid "Returns the name of the blend shape at this index."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:81
+msgid ""
+"Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for "
+"lightmapping."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:87
+msgid "Will regenerate normal maps for the [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:101
+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:108
+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:115
+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:122
+msgid ""
+"Returns the format mask of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:129
+msgid "Gets the name assigned to this surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:136
+msgid ""
+"Returns the primitive type of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:143
+msgid ""
+"Removes a surface at position [code]surf_idx[/code], shifting greater "
+"surfaces one [code]surf_idx[/code] slot down."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:151
+msgid "Sets a name for a given surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:160
+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:167
+msgid "Sets the blend shape mode to one of [enum Mesh.BlendShapeMode]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:170 doc/classes/PrimitiveMesh.xml:26
+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:175
+msgid "Default value used for index_array_len when no indices are present."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:178
+msgid "Amount of weights/bone indices per vertex (always 4)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:181
+msgid "[PoolVector3Array], [PoolVector2Array], or [Array] of vertex positions."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:184
+msgid "[PoolVector3Array] of vertex normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:187
+msgid ""
+"[PoolRealArray] 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:190
+msgid "[PoolColorArray] of vertex colors."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:193
+msgid "[PoolVector2Array] for UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:196
+msgid "[PoolVector2Array] for second UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:199
+msgid ""
+"[PoolRealArray] or [PoolIntArray] of bone indices. Each element in groups of "
+"4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:202
+msgid "[PoolRealArray] of bone weights. Each element in groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:205
+msgid ""
+"[PoolIntArray] 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:209 doc/classes/Mesh.xml:225
+#: doc/classes/VisualServer.xml:3270
+msgid "Represents the size of the [enum ArrayType] enum."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:212
+msgid "Array format will include vertices (mandatory)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:215
+msgid "Array format will include normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:218
+msgid "Array format will include tangents."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:221
+msgid "Array format will include a color array."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:224
+msgid "Array format will include UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:227
+msgid "Array format will include another set of UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:230
+msgid "Array format will include bone indices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:233
+msgid "Array format will include bone weights."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:236
+msgid "Index array will be used."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:4
+msgid "An anchor point in AR space."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:7
+msgid ""
+"The [ARVRAnchor] 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/ARVRAnchor.xml:17
+msgid "Returns the name given to this anchor."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:23
+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/ARVRAnchor.xml:29
+msgid ""
+"If provided by the [ARVRInterface], 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/ARVRAnchor.xml:35
+msgid ""
+"Returns a plane aligned with our anchor; handy for intersection testing."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:41
+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/ARVRAnchor.xml:47
+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/ARVRAnchor.xml:54
+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/ARVRCamera.xml:4
+msgid ""
+"A camera node with a few overrules for AR/VR applied, such as location "
+"tracking."
+msgstr ""
+
+#: doc/classes/ARVRCamera.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 "
+"ARVR 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 "
+"ARVR Controller, the render thread has access to the most up-to-date "
+"tracking data of the HMD and the location of the ARVRCamera can lag a few "
+"milliseconds behind what is used for rendering as a result."
+msgstr ""
+
+#: doc/classes/ARVRCamera.xml:11 doc/classes/ARVRController.xml:12
+#: doc/classes/ARVRInterface.xml:11 doc/classes/ARVROrigin.xml:13
+#: doc/classes/ARVRPositionalTracker.xml:12 doc/classes/ARVRServer.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html"
+msgstr ""
+
+#: doc/classes/ARVRController.xml:4
+msgid "A spatial node representing a spatially-tracked controller."
+msgstr ""
+
+#: doc/classes/ARVRController.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 "
+"ARVRController nodes to your scene.\n"
+"The position of the controller node is automatically updated by the "
+"[ARVRServer]. This makes this node ideal to add child nodes to visualize the "
+"controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:18
+msgid ""
+"If active, returns the name of the associated controller if provided by the "
+"AR/VR SDK used."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:24
+msgid ""
+"Returns the hand holding this controller, if known. See [enum "
+"ARVRPositionalTracker.TrackerHand]."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:30
+msgid ""
+"Returns [code]true[/code] if the bound controller is active. ARVR systems "
+"attempt to track active controllers."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:37
+msgid ""
+"Returns the value of the given axis for things like triggers, touchpads, "
+"etc. that are embedded into the controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:43
+msgid ""
+"Returns the ID of the joystick object bound to this. Every controller "
+"tracked by the [ARVRServer] that has buttons and axis will also be "
+"registered as a joystick within Godot. This means that all the normal "
+"joystick tracking and input mapping will work for buttons and axis found on "
+"the AR/VR controllers. This ID is purely offered as information so you can "
+"link up the controller with its joystick entry."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:49
+msgid ""
+"If provided by the [ARVRInterface], this returns a mesh associated with the "
+"controller. This can be used to visualize the controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:56
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button[/code] is "
+"pressed. See [enum JoystickList], in particular the [code]JOY_VR_*[/code] "
+"constants."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:62
+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 [ARVRServer] 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/ARVRController.xml:68
+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 ARVRPositionalTracker.rumble] accordingly.\n"
+"This is a useful property to animate if you want the controller to vibrate "
+"for a limited duration."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:76
+msgid "Emitted when a button on this controller is pressed."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:82
+msgid "Emitted when a button on this controller is released."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:88
+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/ARVRInterface.xml:4
+msgid "Base class for an AR/VR interface implementation."
+msgstr ""
+
+#: doc/classes/ARVRInterface.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 ARVRScriptInterface 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 "
+"[ARVRServer]."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:17
+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/ARVRInterface.xml:23
+msgid ""
+"Returns a combination of [enum Capabilities] flags providing information "
+"about the capabilities of this interface."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:29
+msgid "Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:35
+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/ARVRInterface.xml:41
+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/ARVRInterface.xml:47
+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/ARVRInterface.xml:57
+msgid ""
+"Returns [code]true[/code] if the current output of this interface is in "
+"stereo."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:63
+msgid "Turns the interface off."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:69
+msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:72
+msgid "[code]true[/code] if this interface been initialized."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:75
+msgid "[code]true[/code] if this is the primary interface."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:80
+msgid "No ARVR capabilities."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:83
+msgid ""
+"This interface can work with normal rendering output (non-HMD based AR)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:86
+msgid "This interface supports stereoscopic rendering."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:89
+msgid "This interface supports AR (video background and real world tracking)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:92
+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/ARVRInterface.xml:95
+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/ARVRInterface.xml:98
+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/ARVRInterface.xml:101
+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/ARVRInterface.xml:104
+msgid "Tracking is behaving as expected."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:107
+msgid ""
+"Tracking is hindered by excessive motion (the player is moving faster than "
+"tracking can keep up)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:110
+msgid ""
+"Tracking is hindered by insufficient features, it's too dark (for camera-"
+"based tracking), player is blocked, etc."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:113
+msgid ""
+"We don't know the status of the tracking or this interface does not provide "
+"feedback."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:116
+msgid ""
+"Tracking is not functional (camera not plugged in or obscured, lighthouses "
+"turned off, etc.)."
+msgstr ""
+
+#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:4
+msgid "GDNative wrapper for an ARVR interface."
+msgstr ""
+
+#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:7
+msgid ""
+"This is a wrapper class for GDNative implementations of the ARVR interface. "
+"To use a GDNative ARVR interface, simply instantiate this object and set "
+"your GDNative library containing the ARVR interface implementation."
+msgstr ""
+
+#: doc/classes/ARVROrigin.xml:4
+msgid "The origin point in AR/VR."
+msgstr ""
+
+#: doc/classes/ARVROrigin.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 ARVRCamera, ARVRController and ARVRAnchor 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 ARVROrigin 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/ARVROrigin.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 [ARVRServer] itself."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:4
+msgid "A tracked object."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.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 [ARVRServer].\n"
+"The [ARVRController] and [ARVRAnchor] 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/ARVRPositionalTracker.xml:18
+msgid ""
+"Returns the hand holding this tracker, if known. See [enum TrackerHand] "
+"constants."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:24
+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/ARVRPositionalTracker.xml:30
+msgid ""
+"Returns the mesh related to a controller or anchor point if one is available."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:36
+msgid "Returns the controller or anchor point's name if available."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:42
+msgid "Returns the controller's orientation matrix."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:48
+msgid "Returns the world-space controller position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:54
+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 "
+"[ARVRController] and [ARVRAnchor] nodes."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:60
+msgid "Returns [code]true[/code] if this device tracks orientation."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:66
+msgid "Returns [code]true[/code] if this device tracks position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:73
+msgid "Returns the transform combining this device's orientation and position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:79
+msgid "Returns the tracker's type."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:85
+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/ARVRPositionalTracker.xml:90
+msgid "The hand this tracker is held in is unknown or not applicable."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:93
+msgid "This tracker is the left hand controller."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:96
+msgid "This tracker is the right hand controller."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:4
+msgid "Server for AR and VR features."
+msgstr ""
+
+#: doc/classes/ARVRServer.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/ARVRServer.xml:17
+msgid "Registers an [ARVRInterface] object."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:24
+msgid ""
+"Registers a new [ARVRPositionalTracker] that tracks a spatial location in "
+"real space."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:32
+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/ARVRServer.xml:44
+msgid ""
+"Clears our current primary interface if it is set to the provided interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:51
+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/ARVRServer.xml:57
+msgid "Returns the primary interface's transformation."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:64
+msgid ""
+"Returns the interface registered at a given index in our list of interfaces."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:70
+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/ARVRServer.xml:76
+msgid ""
+"Returns a list of available interfaces the ID and name of each interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:82
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [ARVRServer] commit of "
+"the AR/VR eyes to [VisualServer]. The value comes from an internal call to "
+"[method OS.get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:88
+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/ARVRServer.xml:94
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [ARVRServer] process "
+"callback. The value comes from an internal call to [method OS."
+"get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:100
+msgid ""
+"Returns the reference frame transform. Mostly used internally and exposed "
+"for GDNative build interfaces."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:107
+msgid "Returns the positional tracker at the given ID."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:113
+msgid "Returns the number of trackers currently registered."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:120
+msgid "Removes this interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:127
+msgid "Removes this positional tracker."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:133
+msgid "The primary [ARVRInterface] currently bound to the [ARVRServer]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:136
+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/ARVRServer.xml:143
+msgid "Emitted when a new interface has been added."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:149
+msgid "Emitted when an interface is removed."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:157
+msgid ""
+"Emitted when a new tracker has been added. If you don't use a fixed number "
+"of controllers or if you're using [ARVRAnchor]s for an AR solution, it is "
+"important to react to this signal to add the appropriate [ARVRController] or "
+"[ARVRAnchor] nodes related to this new tracker."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:165
+msgid ""
+"Emitted when a tracker is removed. You should remove any [ARVRController] or "
+"[ARVRAnchor] 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/ARVRServer.xml:171
+msgid "The tracker tracks the location of a controller."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:174
+msgid "The tracker tracks the location of a base station."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:177
+msgid "The tracker tracks the location and size of an AR anchor."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:180
+msgid "Used internally to filter trackers of any known type."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:183
+msgid "Used internally if we haven't set the tracker type yet."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:186
+msgid "Used internally to select all trackers."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:189
+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/ARVRServer.xml:192
+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/ARVRServer.xml:195
+msgid ""
+"Does not reset the orientation of the HMD, only the position of the player "
+"gets centered."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:4
+msgid "Container that preserves its child controls' aspect ratio."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:7
+msgid ""
+"Arranges child controls in a way to preserve their aspect ratio "
+"automatically whenever the container is resized. Solves the problem where "
+"the container size is dynamic and the contents' size needs to adjust "
+"accordingly without losing proportions."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:15
+msgid "Specifies the horizontal relative position of child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:18
+msgid "Specifies the vertical relative position of child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:21
+msgid ""
+"The aspect ratio to enforce on child controls. This is the width divided by "
+"the height. The ratio depends on the [member stretch_mode]."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:24
+msgid "The stretch mode used to align child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:29
+msgid ""
+"The height of child controls is automatically adjusted based on the width of "
+"the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:32
+msgid ""
+"The width of child controls is automatically adjusted based on the height of "
+"the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:35
+msgid ""
+"The bounding rectangle of child controls is automatically adjusted to fit "
+"inside the container while keeping the aspect ratio."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:38
+msgid ""
+"The width and height of child controls is automatically adjusted to make "
+"their bounding rectangle cover the entire area of the container while "
+"keeping the aspect ratio.\n"
+"When the bounding rectangle of child controls exceed the container's size "
+"and [member Control.rect_clip_content] is enabled, this allows to show only "
+"the container's area restricted by its own bounding rectangle."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:42
+msgid ""
+"Aligns child controls with the beginning (left or top) of the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:45
+msgid "Aligns child controls with the center of the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:48
+msgid "Aligns child controls with the end (right or bottom) of the container."
+msgstr ""
+
+#: doc/classes/AStar.xml:4
+msgid ""
+"An implementation of A* to find the 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.\n"
+"If the default [method _estimate_cost] and [method _compute_cost] methods "
+"are used, or if the supplied [method _estimate_cost] method returns a lower "
+"bound of the cost, then the paths returned by A* will be the lowest-cost "
+"paths. Here, the cost of a path equals the sum of the [method _compute_cost] "
+"results of all segments in the path multiplied by the [code]weight_scale[/"
+"code]s of the endpoints of the respective segments. If the default methods "
+"are used and the [code]weight_scale[/code]s of all points are set to "
+"[code]1.0[/code], then this equals the sum of Euclidean distances of all "
+"segments in the path."
+msgstr ""
+
+#: doc/classes/AStar.xml:31
+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:40
+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:50
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
+"be 1 or larger.\n"
+"The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point. Thus, all else being equal, "
+"the algorithm prefers points with lower [code]weight_scale[/code]s to form a "
+"path.\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:65
+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:71 doc/classes/AStar2D.xml:56
+msgid "Clears all the points and segments."
+msgstr ""
+
+#: doc/classes/AStar.xml:80
+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:95
+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:101 doc/classes/AStar2D.xml:85
+msgid "Returns the next available point ID with no point associated to it."
+msgstr ""
+
+#: doc/classes/AStar.xml:109 doc/classes/AStar2D.xml:93
+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:117
+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:133
+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:154 doc/classes/AStar2D.xml:138
+msgid ""
+"Returns the capacity of the structure backing the points, useful in "
+"conjunction with [code]reserve_space[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:161
+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:179 doc/classes/AStar2D.xml:163
+msgid "Returns the number of points currently in the points pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:187
+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.\n"
+"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
+"will return an empty [PoolVector3Array] and will print an error message."
+msgstr ""
+
+#: doc/classes/AStar.xml:195 doc/classes/AStar2D.xml:179
+msgid ""
+"Returns the position of the point associated with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:202 doc/classes/AStar2D.xml:186
+msgid ""
+"Returns the weight scale of the point associated with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:208 doc/classes/AStar2D.xml:192
+msgid "Returns an array of all points."
+msgstr ""
+
+#: doc/classes/AStar.xml:215 doc/classes/AStar2D.xml:199
+msgid ""
+"Returns whether a point associated with the given [code]id[/code] exists."
+msgstr ""
+
+#: doc/classes/AStar.xml:222 doc/classes/AStar2D.xml:206
+msgid ""
+"Returns whether a point is disabled or not for pathfinding. By default, all "
+"points are enabled."
+msgstr ""
+
+#: doc/classes/AStar.xml:229 doc/classes/AStar2D.xml:213
+msgid ""
+"Removes the point associated with the given [code]id[/code] from the points "
+"pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:236 doc/classes/AStar2D.xml:220
+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:244 doc/classes/AStar2D.xml:228
+msgid ""
+"Disables or enables the specified point for pathfinding. Useful for making a "
+"temporary obstacle."
+msgstr ""
+
+#: doc/classes/AStar.xml:252 doc/classes/AStar2D.xml:236
+msgid ""
+"Sets the [code]position[/code] for the point with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:260 doc/classes/AStar2D.xml:244
+msgid ""
+"Sets the [code]weight_scale[/code] for the point with the given [code]id[/"
+"code]. The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point."
+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:17
+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:26
+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:36
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
+"be 1 or larger.\n"
+"The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point. Thus, all else being equal, "
+"the algorithm prefers points with lower [code]weight_scale[/code]s to form a "
+"path.\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:50
+msgid "Returns whether there is a connection/segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:65
+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:79
+msgid "Deletes the segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:101
+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:117
+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:145
+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:171
+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.\n"
+"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
+"will return an empty [PoolVector2Array] and will print an error message."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:4
+msgid ""
+"Crops out one part of a texture, such as a texture from a texture atlas."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:7
+msgid ""
+"[Texture] resource that crops out one part of the [member atlas] texture, "
+"defined by [member region]. The main use case is cropping out textures from "
+"a texture atlas, which is a big texture file that packs multiple smaller "
+"textures. Consists of a [Texture] for the [member atlas], a [member region] "
+"that defines the area of [member atlas] to use, and a [member margin] that "
+"defines the border width.\n"
+"[AtlasTexture] cannot be used in an [AnimatedTexture], cannot be tiled in "
+"nodes such as [TextureRect], and does not work properly if used inside of "
+"other [AtlasTexture] resources. Multiple [AtlasTexture] resources can be "
+"used to crop multiple textures from the atlas. Using a texture atlas helps "
+"to optimize video memory costs and render calls compared to using multiple "
+"small files.\n"
+"[b]Note:[/b] AtlasTextures don't support repetition. The [constant Texture."
+"FLAG_REPEAT] and [constant Texture.FLAG_MIRRORED_REPEAT] flags are ignored "
+"when using an AtlasTexture."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:17
+msgid "The texture that contains the atlas. Can be any [Texture] subtype."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:20
+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:24
+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:27
+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/AudioEffect.xml:10 doc/classes/AudioEffectRecord.xml:11
+#: doc/classes/AudioServer.xml:12 doc/classes/AudioStream.xml:12
+#: doc/classes/AudioStreamPlayer.xml:15
+msgid "https://godotengine.org/asset-library/asset/527"
+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/AudioEffectCapture.xml:4
+msgid "Captures audio from an audio bus in real-time."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:7
+msgid ""
+"AudioEffectCapture is an AudioEffect which copies all audio frames from the "
+"attached audio effect bus into its internal ring buffer.\n"
+"Application code should consume these audio frames from this ring buffer "
+"using [method get_buffer] and process it as needed, for example to capture "
+"data from a microphone, implement application defined effects, or to "
+"transmit audio over the network."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:17
+msgid ""
+"Returns [code]true[/code] if at least [code]frames[/code] audio frames are "
+"available to read in the internal ring buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:23
+msgid "Clears the internal ring buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:30
+msgid ""
+"Gets the next [code]frames[/code] audio samples from the internal ring "
+"buffer.\n"
+"Returns a [PoolVector2Array] containing exactly [code]frames[/code] audio "
+"samples if available, or an empty [PoolVector2Array] if insufficient data "
+"was available."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:37
+msgid "Returns the total size of the internal ring buffer in frames."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:43
+msgid ""
+"Returns the number of audio frames discarded from the audio bus due to full "
+"buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:49
+msgid ""
+"Returns the number of frames available to read using [method get_buffer]."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:55
+msgid "Returns the number of audio frames inserted from the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:61
+msgid ""
+"Length of the internal ring buffer, in seconds. Setting the buffer length "
+"will have no effect if already initialized."
+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:93
+msgid "The effect's raw signal."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:96 doc/classes/AudioEffectChorus.xml:114
+#: doc/classes/AudioEffectChorus.xml:132 doc/classes/AudioEffectChorus.xml:150
+msgid "The voice's cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:99 doc/classes/AudioEffectChorus.xml:117
+#: doc/classes/AudioEffectChorus.xml:135 doc/classes/AudioEffectChorus.xml:153
+msgid "The voice's signal delay."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:102 doc/classes/AudioEffectChorus.xml:120
+#: doc/classes/AudioEffectChorus.xml:138 doc/classes/AudioEffectChorus.xml:156
+msgid "The voice filter's depth."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:105 doc/classes/AudioEffectChorus.xml:123
+#: doc/classes/AudioEffectChorus.xml:141 doc/classes/AudioEffectChorus.xml:159
+msgid "The voice's volume."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:108 doc/classes/AudioEffectChorus.xml:126
+#: doc/classes/AudioEffectChorus.xml:144 doc/classes/AudioEffectChorus.xml:162
+msgid "The voice's pan level."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:111 doc/classes/AudioEffectChorus.xml:129
+#: doc/classes/AudioEffectChorus.xml:147 doc/classes/AudioEffectChorus.xml:165
+msgid "The voice's filter rate."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:168
+msgid "The amount of voices in the effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:171
+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 distorted."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:8
+msgid ""
+"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:12
+#: doc/classes/AudioEffectFilter.xml:10
+#: doc/classes/AudioEffectHighShelfFilter.xml:9
+#: doc/classes/AudioEffectLowShelfFilter.xml:9 doc/classes/AudioServer.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html"
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:18
+msgid "Distortion power. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:21
+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:24
+msgid "Distortion type."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:27
+msgid ""
+"Increases or decreases the volume after the effect. Value can range from -80 "
+"to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:30
+msgid ""
+"Increases or decreases the volume before the effect. Value can range from "
+"-60 to 60."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:35
+msgid ""
+"Digital distortion effect which cuts off peaks at the top and bottom of the "
+"waveform."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:40
+msgid ""
+"Low-resolution digital distortion effect. You can use it to emulate the "
+"sound of early digital audio devices."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:43
+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:46
+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:16
+msgid "Returns the number of bands of the equalizer."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:23
+msgid "Returns the band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:31
+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:16
+msgid "Threshold frequency for the filter, in Hz."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:21
+msgid "Gain amount of the frequencies after the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:24
+msgid "Amount of boost in the frequency range 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/AudioEffectHighShelfFilter.xml:4
+msgid "Reduces all frequencies above the [member AudioEffectFilter.cutoff_hz]."
+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/AudioEffectLowShelfFilter.xml:4
+msgid "Reduces all frequencies below the [member AudioEffectFilter.cutoff_hz]."
+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:16
+msgid ""
+"The size of the [url=https://en.wikipedia.org/wiki/"
+"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
+"smooth out the effect over time, but have greater latency. The effects of "
+"this higher latency are especially noticeable on sounds that have sudden "
+"amplitude changes."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:19
+msgid ""
+"The oversampling factor to use. Higher values result in better quality, but "
+"are more demanding on the CPU and may cause audio cracking if the CPU can't "
+"keep up."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:22
+msgid ""
+"The pitch scale to use. [code]1.0[/code] is the default pitch and plays "
+"sounds unaltered. [member pitch_scale] can range from [code]0.0[/code] "
+"(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than "
+"the initial pitch)."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:27
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:28
+msgid ""
+"Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, "
+"but least stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:30
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:31
+msgid ""
+"Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but "
+"less stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:33
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:34
+msgid ""
+"Use a buffer of 1024 samples for the Fast Fourier transform. This is a "
+"compromise between latency and stability over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:36
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:37
+msgid ""
+"Use a buffer of 2048 samples for the Fast Fourier transform. High latency, "
+"but stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:39
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:40
+msgid ""
+"Use a buffer of 4096 samples for the Fast Fourier transform. Highest "
+"latency, but most stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:42
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:43
+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/3.4/tutorials/audio/"
+"recording_with_microphone.html"
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:17
+msgid "Returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:23
+msgid "Returns whether the recording is active or not."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:30
+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:36
+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:17
+msgid ""
+"Defines how reflective the imaginary room's walls are. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:20
+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:23
+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:26
+msgid "Output percent of predelay. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:29
+msgid ""
+"Time between the original signal and the early reflections of the reverb "
+"signal, in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:32
+msgid ""
+"Dimensions of simulated room. Bigger means more echoes. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:35
+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:38
+msgid ""
+"Output percent of modified sound. At 0, only original sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:4
+msgid "Audio effect that can be used for real-time audio visualizations."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:7
+msgid ""
+"This audio effect does not affect sound output, but can be used for real-"
+"time audio visualizations.\n"
+"See also [AudioStreamGenerator] for procedurally generating sounds."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:11
+msgid "Audio Spectrum Demo"
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:12
+#: doc/classes/AudioStreamGenerator.xml:13
+#: doc/classes/AudioStreamGeneratorPlayback.xml:11
+msgid "Godot 3.2 will get new audio features"
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:18
+msgid ""
+"The length of the buffer to keep (in seconds). Higher values keep data "
+"around for longer, but require more memory."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:21
+msgid ""
+"The size of the [url=https://en.wikipedia.org/wiki/"
+"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
+"smooth out the spectrum analysis over time, but have greater latency. The "
+"effects of this higher latency are especially noticeable with sudden "
+"amplitude changes."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:21
+msgid "Use the average value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:24
+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:11 doc/classes/AudioStreamPlayer.xml:13
+msgid "https://godotengine.org/asset-library/asset/525"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:13 doc/classes/AudioStream.xml:13
+#: doc/classes/AudioStreamPlayer.xml:16 doc/classes/CanvasItem.xml:17
+msgid "https://godotengine.org/asset-library/asset/528"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:20
+msgid "Adds a bus at [code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:29
+msgid ""
+"Adds an [AudioEffect] effect to the bus [code]bus_idx[/code] at "
+"[code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:35
+msgid ""
+"Name of the current device for audio input (see [method "
+"capture_get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:41
+msgid "Returns the names of all audio input devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:48
+msgid "Sets which audio input device is used for audio capture."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:54
+msgid "Generates an [AudioBusLayout] using the available buses and effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:61
+msgid ""
+"Returns the amount of channels of the bus at index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:69
+msgid ""
+"Returns the [AudioEffect] at position [code]effect_idx[/code] in bus "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:76
+msgid "Returns the number of effects on the bus at [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:85
+msgid ""
+"Returns the [AudioEffectInstance] assigned to the given bus and effect "
+"indices (and optionally channel)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:92
+msgid "Returns the index of the bus with the name [code]bus_name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:99
+msgid "Returns the name of the bus with the index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:107
+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:115
+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:122
+msgid ""
+"Returns the name of the bus that the bus at index [code]bus_idx[/code] sends "
+"to."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:129
+msgid "Returns the volume of the bus at index [code]bus_idx[/code] in dB."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:135
+msgid "Returns the names of all audio devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:141
+msgid "Returns the sample rate at the output of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:147
+msgid "Returns the audio driver's output latency."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:153
+msgid "Returns the speaker configuration."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:159
+msgid "Returns the relative time since the last mix occurred."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:165
+msgid "Returns the relative time until the next mix occurs."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:172 doc/classes/AudioServer.xml:232
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is bypassing "
+"effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:180 doc/classes/AudioServer.xml:241
+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:187 doc/classes/AudioServer.xml:256
+msgid "If [code]true[/code], the bus at index [code]bus_idx[/code] is muted."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:194 doc/classes/AudioServer.xml:280
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is in solo mode."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:200
+msgid ""
+"Locks the audio driver's main loop.\n"
+"[b]Note:[/b] Remember to unlock it afterwards."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:209
+msgid ""
+"Moves the bus from index [code]index[/code] to index [code]to_index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:216
+msgid "Removes the bus at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:224
+msgid ""
+"Removes the effect at index [code]effect_idx[/code] from the bus at index "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:248
+msgid "Overwrites the currently used [AudioBusLayout]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:264
+msgid ""
+"Sets the name of the bus at index [code]bus_idx[/code] to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:272
+msgid ""
+"Connects the output of the bus at [code]bus_idx[/code] to the bus named "
+"[code]send[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:288
+msgid ""
+"Sets the volume of the bus at index [code]bus_idx[/code] to [code]volume_db[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:297
+msgid "Swaps the position of two effects in bus [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:303
+msgid ""
+"Unlocks the audio driver's main loop. (After locking it, you should always "
+"unlock it.)"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:309
+msgid "Number of available audio buses."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:312
+msgid ""
+"Name of the current device for audio output (see [method get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:315
+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:321
+msgid "Emitted when the [AudioBusLayout] changes."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:327
+msgid "Two or fewer speakers were detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:330
+msgid "A 3.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:333
+msgid "A 5.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:336
+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:11
+#: doc/classes/AudioStreamPlayer2D.xml:12
+#: doc/classes/AudioStreamPlayer3D.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:11 doc/classes/AudioStreamGenerator.xml:12
+#: doc/classes/AudioStreamGeneratorPlayback.xml:10
+#: doc/classes/AudioStreamPlayback.xml:10 doc/classes/AudioStreamPlayer.xml:14
+msgid "https://godotengine.org/asset-library/asset/526"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:19
+msgid "Returns the length of the audio stream in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:4
+msgid "Audio stream that generates sounds procedurally."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:7
+msgid ""
+"This audio stream does not play back sounds, but expects a script to "
+"generate audio data for it instead. See also "
+"[AudioStreamGeneratorPlayback].\n"
+"See also [AudioEffectSpectrumAnalyzer] for performing real-time audio "
+"spectrum analysis.\n"
+"[b]Note:[/b] Due to performance constraints, this class is best used from C# "
+"or from a compiled language via GDNative. If you still want to use this "
+"class from GDScript, consider using a lower [member mix_rate] such as 11,025 "
+"Hz or 22,050 Hz."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:19
+msgid ""
+"The length of the buffer to generate (in seconds). Lower values result in "
+"less latency, but require the script to generate audio data faster, "
+"resulting in increased CPU usage and more risk for audio cracking if the CPU "
+"can't keep up."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:22
+msgid ""
+"The sample rate to use (in Hz). Higher values are more demanding for the CPU "
+"to generate, but result in better quality.\n"
+"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
+"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
+"[code]48000[/code].\n"
+"According to the [url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], "
+"there is no quality difference to human hearing when going past 40,000 Hz "
+"(since most humans can only hear up to ~20,000 Hz, often less). If you are "
+"generating lower-pitched sounds such as voices, lower sample rates such as "
+"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
+"quality."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:4
+msgid "Plays back audio generated using [AudioStreamGenerator]."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:7
+msgid ""
+"This class is meant to be used with [AudioStreamGenerator] to play back the "
+"generated audio in real-time."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:18
+msgid ""
+"Returns [code]true[/code] if a buffer of the size [code]amount[/code] can be "
+"pushed to the audio sample data buffer without overflowing it, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:24
+msgid "Clears the audio sample data buffer."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:30
+msgid ""
+"Returns the number of audio data frames left to play. If this returned "
+"number reaches [code]0[/code], the audio will stop playing until frames are "
+"added again. Therefore, make sure your script can always generate and push "
+"new audio frames fast enough to avoid audio cracking."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:42
+msgid ""
+"Pushes several audio data frames to the buffer. This is usually more "
+"efficient than [method push_frame] in C# and compiled languages via "
+"GDNative, but [method push_buffer] may be [i]less[/i] efficient in GDScript."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:49
+msgid ""
+"Pushes a single audio data frame to the buffer. This is usually less "
+"efficient than [method push_buffer] in C# and compiled languages via "
+"GDNative, but [method push_frame] may be [i]more[/i] efficient in GDScript."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:4
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:7
+msgid "MP3 audio stream driver."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:15
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:15
+msgid "Contains the audio data in bytes."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:18
+#: 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/minimp3/doc_classes/AudioStreamMP3.xml:21
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:21
+msgid "Time in seconds at which the stream starts after being looped."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:4
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:7
+msgid "OGG Vorbis audio stream driver."
+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.\n"
+"To play audio positionally, use [AudioStreamPlayer2D] or "
+"[AudioStreamPlayer3D] instead of [AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:22
+msgid "Returns the position in the [AudioStream] in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:28
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:35
+msgid "Plays the audio from the given [code]from_position[/code], in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:42 doc/classes/AudioStreamPlayer2D.xml:38
+#: doc/classes/AudioStreamPlayer3D.xml:39
+msgid "Sets the position from which audio will be played, in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:48 doc/classes/AudioStreamPlayer2D.xml:44
+#: doc/classes/AudioStreamPlayer3D.xml:45
+msgid "Stops the audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:54 doc/classes/AudioStreamPlayer2D.xml:56
+msgid "If [code]true[/code], audio plays when added to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:57 doc/classes/AudioStreamPlayer2D.xml:59
+msgid "Bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:60
+msgid ""
+"If the audio configuration has more than two speakers, this sets the target "
+"channels. See [enum MixTarget] constants."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:63 doc/classes/AudioStreamPlayer2D.xml:65
+#: doc/classes/AudioStreamPlayer3D.xml:91
+msgid ""
+"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
+"sample rate."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:66 doc/classes/AudioStreamPlayer2D.xml:68
+#: doc/classes/AudioStreamPlayer3D.xml:94
+msgid "If [code]true[/code], audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:69 doc/classes/AudioStreamPlayer2D.xml:71
+msgid "The [AudioStream] object to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:72 doc/classes/AudioStreamPlayer2D.xml:74
+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:75
+msgid "Volume of sound, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:81 doc/classes/AudioStreamPlayer2D.xml:83
+#: doc/classes/AudioStreamPlayer3D.xml:112
+msgid "Emitted when the audio stops playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:87
+msgid "The audio will be played only on the first channel."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:90
+msgid "The audio will be played on all surround channels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:93
+msgid ""
+"The audio will be played on the second channel, which is usually the center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:4
+msgid "Plays positional sound in 2D space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:7
+msgid ""
+"Plays audio that dampens with distance from screen center.\n"
+"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
+"[b]Note:[/b] Hiding an [AudioStreamPlayer2D] node does not disable its audio "
+"output. To temporarily disable an [AudioStreamPlayer2D]'s audio output, set "
+"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
+"audible to human hearing)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:18
+#: doc/classes/AudioStreamPlayer3D.xml:19
+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:31
+#: doc/classes/AudioStreamPlayer3D.xml:32
+msgid ""
+"Plays the audio from the given position [code]from_position[/code], in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:50
+#: doc/classes/AudioStreamPlayer3D.xml:51
+msgid "Areas in which this sound plays."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:53
+msgid "Dampens audio over distance with this as an exponent."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:62
+msgid "Maximum distance from which audio is still hearable."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:77
+msgid "Base volume without dampening."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:4
+msgid "Plays positional 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. For greater realism, "
+"a low-pass filter is automatically applied to distant sounds. This can be "
+"disabled by setting [member attenuation_filter_cutoff_hz] to [code]20500[/"
+"code].\n"
+"By default, audio is heard from the camera position. This can be changed by "
+"adding a [Listener] node to the scene and enabling it by calling [method "
+"Listener.make_current] on it.\n"
+"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
+"[b]Note:[/b] Hiding an [AudioStreamPlayer3D] node does not disable its audio "
+"output. To temporarily disable an [AudioStreamPlayer3D]'s audio output, set "
+"[member unit_db] to a very low value like [code]-100[/code] (which isn't "
+"audible to human hearing)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:25
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer3D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:54
+msgid ""
+"Dampens audio using a low-pass filter above this frequency, in Hz. To "
+"disable the dampening effect entirely, set this to [code]20500[/code] as "
+"this frequency is above the human hearing limit."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:57
+msgid "Amount how much the filter affects the loudness, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:60
+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:63
+msgid ""
+"If [code]true[/code], audio plays when the AudioStreamPlayer3D node is added "
+"to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:66
+msgid "The bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:69
+msgid ""
+"Decides in which step the [url=https://en.wikipedia.org/wiki/"
+"Doppler_effect]Doppler effect[/url] should be calculated.\n"
+"[b]Note:[/b] Only effective if the current [Camera]'s [member Camera."
+"doppler_tracking] property is set to a value other than [constant Camera."
+"DOPPLER_TRACKING_DISABLED]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:73
+msgid "The angle in which the audio reaches cameras undampened."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:76
+msgid ""
+"If [code]true[/code], the audio should be dampened according to the "
+"direction of the sound."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:79
+msgid ""
+"Dampens audio if camera is outside of [member emission_angle_degrees] and "
+"[member emission_angle_enabled] is set by this factor, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:82
+msgid "Sets the absolute maximum of the soundlevel, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:85
+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:88
+msgid ""
+"Decides if audio should pause when source is outside of [member "
+"max_distance] range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:97
+msgid "The [AudioStream] resource to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:100
+msgid ""
+"If [code]true[/code], the playback is paused. You can resume it by setting "
+"[member stream_paused] to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:103
+msgid "The base sound level unaffected by dampening, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:106
+msgid ""
+"The factor for the attenuation effect. Higher values make the sound audible "
+"over a larger distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:118
+msgid "Linear dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:121
+msgid "Squared dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:124
+msgid "Logarithmic dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:127
+msgid ""
+"No dampening of loudness according to distance. The sound will still be "
+"heard positionally, unlike an [AudioStreamPlayer]. [constant "
+"ATTENUATION_DISABLED] can be combined with a [member max_distance] value "
+"greater than [code]0.0[/code] to achieve linear attenuation clamped to a "
+"sphere of a defined size."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:130
+msgid ""
+"Mix this audio in, even when it's out of range. This increases CPU usage, "
+"but keeps the sound playing at the correct position if the camera leaves and "
+"enters the [AudioStreamPlayer3D]'s [member max_distance] radius."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:133
+msgid ""
+"Pause this audio when it gets out of range. This decreases CPU usage, but "
+"will cause the sound to restart if the camera leaves and enters the "
+"[AudioStreamPlayer3D]'s [member max_distance] radius."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:136
+msgid "Disables doppler tracking."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:139
+msgid "Executes doppler tracking in idle step (every rendered frame)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:142
+msgid ""
+"Executes doppler tracking in physics step (every simulated physics frame)."
+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. "
+"See also [AudioStreamGenerator] for procedural audio generation."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:17
+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:24
+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:28
+msgid "Audio format. See [enum Format] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:31
+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:34
+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:37
+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:40
+msgid ""
+"The sample rate for mixing this audio. Higher values require more storage "
+"space, but result in better quality.\n"
+"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
+"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
+"[code]48000[/code].\n"
+"According to the [url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], "
+"there is no quality difference to human hearing when going past 40,000 Hz "
+"(since most humans can only hear up to ~20,000 Hz, often less). If you are "
+"using lower-pitched sounds such as voices, lower sample rates such as "
+"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
+"quality."
+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 buffered 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/BakedLightmap.xml:4
+msgid "Prerendered indirect light map for a scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:7
+msgid ""
+"Baked lightmaps are an alternative workflow for adding indirect (or baked) "
+"lighting to a scene. Unlike the [GIProbe] approach, baked lightmaps work "
+"fine on low-end PCs and mobile devices as they consume almost no resources "
+"in run-time.\n"
+"[b]Note:[/b] Due to how lightmaps work, most properties only have a visible "
+"effect once lightmaps are baked again."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:19
+msgid ""
+"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
+"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
+"[member light_data]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:25
+msgid ""
+"When enabled, the lightmapper will merge the textures for all meshes into a "
+"single large layered texture. Not supported in GLES2."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:28
+msgid ""
+"Maximum size of each lightmap layer, only used when [member atlas_generate] "
+"is enabled."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:31
+msgid ""
+"Raycasting bias used during baking to avoid floating point precision issues."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:34
+msgid ""
+"The energy multiplier for each bounce. Higher values will make indirect "
+"lighting brighter. A value of [code]1.0[/code] represents physically "
+"accurate behavior, but higher values can be used to make indirect lighting "
+"propagate more visibly when using a low number of bounces. This can be used "
+"to speed up bake times by lowering the number of [member bounces] then "
+"increasing [member bounce_indirect_energy]. Unlike [member BakedLightmapData."
+"energy], this property does not affect direct lighting emitted by light "
+"nodes, emissive materials and the environment.\n"
+"[b]Note:[/b] [member bounce_indirect_energy] only has an effect if [member "
+"bounces] is set to a value greater than or equal to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:38
+msgid ""
+"Number of light bounces that are taken into account during baking. See also "
+"[member bounce_indirect_energy]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:41
+msgid "Grid size used for real-time capture information on dynamic objects."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:44
+msgid ""
+"When enabled, an octree containing the scene's lighting information will be "
+"computed. This octree will then be used to light dynamic objects in the "
+"scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:47
+msgid ""
+"Bias value to reduce the amount of light proagation in the captured octree."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:50
+msgid "Bake quality of the capture data."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:53
+msgid ""
+"If a baked mesh doesn't have a UV2 size hint, this value will be used to "
+"roughly compute a suitable lightmap size."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:56
+msgid ""
+"The environment color when [member environment_mode] is set to [constant "
+"ENVIRONMENT_MODE_CUSTOM_COLOR]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:59
+msgid ""
+"The energy scaling factor when when [member environment_mode] is set to "
+"[constant ENVIRONMENT_MODE_CUSTOM_COLOR] or [constant "
+"ENVIRONMENT_MODE_CUSTOM_SKY]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:62
+msgid ""
+"The [Sky] resource to use when [member environment_mode] is set o [constant "
+"ENVIRONMENT_MODE_CUSTOM_SKY]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:65
+msgid "The rotation of the baked custom sky."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:68
+msgid ""
+"Minimum ambient light for all the lightmap texels. This doesn't take into "
+"account any occlusion from the scene's geometry, it simply ensures a minimum "
+"amount of light on all the lightmap texels. Can be used for artistic control "
+"on shadow color."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:71
+msgid "Decides which environment to use during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:74
+msgid ""
+"Size of the baked lightmap. Only meshes inside this region will be included "
+"in the baked lightmap, also used as the bounds of the captured region for "
+"dynamic lighting."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:77
+msgid ""
+"Deprecated, in previous versions it determined the location where lightmaps "
+"were be saved."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:80
+msgid "The calculated light data."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:83
+msgid ""
+"Determines the amount of samples per texel used in indrect light baking. The "
+"amount of samples for each quality level can be configured in the project "
+"settings."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:86
+msgid ""
+"Store full color values in the lightmap textures. When disabled, lightmap "
+"textures will store a single brightness channel. Can be disabled to reduce "
+"disk usage if the scene contains only white lights or you don't mind losing "
+"color information in indirect lighting."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:89
+msgid ""
+"When enabled, a lightmap denoiser will be used to reduce the noise inherent "
+"to Monte Carlo based global illumination."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:92
+msgid ""
+"If [code]true[/code], stores the lightmap textures in a high dynamic range "
+"format (EXR). If [code]false[/code], stores the lightmap texture in a low "
+"dynamic range PNG image. This can be set to [code]false[/code] to reduce "
+"disk usage, but light values over 1.0 will be clamped and you may see "
+"banding caused by the reduced precision.\n"
+"[b]Note:[/b] Setting [member use_hdr] to [code]true[/code] will decrease "
+"lightmap banding even when using the GLES2 backend or if [member "
+"ProjectSettings.rendering/quality/depth/hdr] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:98
+msgid "The lowest bake quality mode. Fastest to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:101
+msgid "The default bake quality mode."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:104
+msgid "A higher bake quality mode. Takes longer to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:107
+msgid "The highest bake quality mode. Takes the longest to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:110
+msgid "Baking was successful."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:113
+msgid ""
+"Returns if no viable save path is found. This can happen where an [member "
+"image_path] is not specified or when the save location is invalid."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:116 doc/classes/SpatialMaterial.xml:622
+msgid "Currently unused."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:119
+msgid "Returns when the baker cannot save per-mesh textures to file."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:122
+msgid "The size of the generated lightmaps is too large."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:125
+msgid "Some mesh contains UV2 values outside the [code][0,1][/code] range."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:128
+msgid "Returns if user cancels baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
+msgid "No environment is used during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:140
+msgid "The baked environment is automatically picked from the current scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:143
+msgid "A custom sky is used as environment during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:146
+msgid "A custom solid color is used as environment during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmapData.xml:56
+msgid ""
+"Global energy multiplier for baked and dynamic capture objects. This can be "
+"changed at run-time without having to bake lightmaps again.\n"
+"To adjust only the energy of indirect lighting (without affecting direct "
+"lighting or emissive materials), adjust [member BakedLightmap."
+"bounce_indirect_energy] and bake lightmaps again."
+msgstr ""
+
+#: doc/classes/BakedLightmapData.xml:60
+msgid ""
+"Controls whether dynamic capture objects receive environment lighting or not."
+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:15
+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:22
+msgid ""
+"Called when the button is toggled (only if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:28
+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:34
+msgid ""
+"Returns [code]true[/code] if the mouse has entered the button and has not "
+"left it yet."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:41
+msgid ""
+"Changes the [member pressed] state of the button, without emitting [signal "
+"toggled]. Use when you just want to change the state of the button without "
+"sending the pressed event (e.g. when initializing scene). Only works if "
+"[member toggle_mode] is [code]true[/code].\n"
+"[b]Note:[/b] This method doesn't unpress other buttons in its button [member "
+"group]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:48
+msgid ""
+"Determines when the button is considered clicked, one of the [enum "
+"ActionMode] constants."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:51
+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:55
+msgid ""
+"If [code]true[/code], the button is in disabled state and can't be clicked "
+"or toggled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:58
+msgid ""
+"[i]Deprecated.[/i] This property has been deprecated due to redundancy and "
+"will be removed in Godot 4.0. This property no longer has any effect when "
+"set. Please use [member Control.focus_mode] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:62
+msgid "[ButtonGroup] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:65
+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:69
+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). Only works if "
+"[member toggle_mode] is [code]true[/code].\n"
+"[b]Note:[/b] Setting [member pressed] will result in [signal toggled] to be "
+"emitted. If you want to change the pressed state without emitting that "
+"signal, use [method set_pressed_no_signal]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:73
+msgid "[ShortCut] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:76
+msgid ""
+"If [code]true[/code], the button will add information about its shortcut in "
+"the tooltip."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:79
+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:85
+msgid "Emitted when the button starts being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:90
+msgid "Emitted when the button stops being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:95
+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:102
+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:108
+msgid ""
+"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
+"buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:111
+msgid "The state of buttons are pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:114
+msgid "The state of buttons are hovered."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:117
+msgid "The state of buttons are disabled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:120
+msgid "The state of buttons are both hovered and pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:123
+msgid "Require just a press to consider the button clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:126
+msgid ""
+"Require a press and a subsequent release before considering the button "
+"clicked."
+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:14 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms."
+"html"
+msgstr ""
+
+#: doc/classes/Basis.xml:15 doc/classes/Transform.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:16 doc/classes/Line2D.xml:11
+#: doc/classes/Transform.xml:14 doc/classes/Transform2D.xml:13
+#: doc/classes/Vector2.xml:15 doc/classes/Vector3.xml:15
+msgid "https://godotengine.org/asset-library/asset/584"
+msgstr ""
+
+#: doc/classes/Basis.xml:18 doc/classes/CylinderShape.xml:12
+#: doc/classes/Dictionary.xml:88 doc/classes/DynamicFont.xml:18
+#: doc/classes/DynamicFontData.xml:10 doc/classes/File.xml:29
+#: doc/classes/Input.xml:12 doc/classes/InputEvent.xml:13
+#: doc/classes/InputEventAction.xml:12 doc/classes/InputEventMouseMotion.xml:12
+#: doc/classes/KinematicBody.xml:15 doc/classes/RayCast.xml:15
+#: doc/classes/StaticBody.xml:13 doc/classes/SurfaceTool.xml:22
+#: doc/classes/TextureButton.xml:12 doc/classes/TextureRect.xml:11
+#: doc/classes/Thread.xml:13 doc/classes/VBoxContainer.xml:10
+msgid "https://godotengine.org/asset-library/asset/676"
+msgstr ""
+
+#: doc/classes/Basis.xml:19 doc/classes/Line2D.xml:12
+#: doc/classes/Transform.xml:16 doc/classes/Transform2D.xml:14
+msgid "https://godotengine.org/asset-library/asset/583"
+msgstr ""
+
+#: doc/classes/Basis.xml:26
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr ""
+
+#: doc/classes/Basis.xml:33
+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:42
+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:51
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
+msgstr ""
+
+#: doc/classes/Basis.xml:57
+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:64
+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:71
+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:77
+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:83
+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:89
+msgid "Returns the inverse of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:97
+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.\n"
+"[b]Note:[/b] For complicated reasons, the epsilon argument is always "
+"discarded. Don't use the epsilon argument, it does nothing."
+msgstr ""
+
+#: doc/classes/Basis.xml:104
+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:112
+msgid ""
+"Introduce an additional rotation around the given axis by phi (radians). The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:119
+msgid ""
+"Introduce an additional scaling specified by the given 3D scaling factor."
+msgstr ""
+
+#: doc/classes/Basis.xml:127
+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:134
+msgid "Transposed dot product with the X axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:141
+msgid "Transposed dot product with the Y axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:148
+msgid "Transposed dot product with the Z axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:154
+msgid "Returns the transposed version of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:161
+msgid "Returns a vector transformed (multiplied) by the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:168
+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:175 doc/classes/Transform2D.xml:150
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:178 doc/classes/Transform2D.xml:153
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:181
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:186
+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:190
+msgid ""
+"The basis that will flip something along the X axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:193
+msgid ""
+"The basis that will flip something along the Y axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:196
+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:16
+msgid ""
+"Creates a bitmap with the specified size, filled with [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:24
+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:31
+msgid "Returns bitmap's value at the specified position."
+msgstr ""
+
+#: doc/classes/BitMap.xml:37
+msgid "Returns bitmap's dimensions."
+msgstr ""
+
+#: doc/classes/BitMap.xml:43
+msgid ""
+"Returns the amount of bitmap elements that are set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:51
+msgid ""
+"Applies morphological dilation to the bitmap. The first argument is the "
+"dilation amount, Rect2 is the area where the dilation will be applied."
+msgstr ""
+
+#: doc/classes/BitMap.xml:66
+msgid ""
+"Sets the bitmap's element at the specified position, to the specified value."
+msgstr ""
+
+#: doc/classes/BitMap.xml:74
+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:21
+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:30
+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:37
+msgid "Adds a texture to the [BitmapFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:43
+msgid "Clears all the font data and settings."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:50
+msgid ""
+"Creates a BitmapFont from the [code]*.fnt[/code] file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:58
+msgid "Returns a kerning pair as a difference."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:65
+msgid "Returns the font atlas texture at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:71
+msgid "Returns the number of textures in the BitmapFont atlas."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:77
+msgid "Ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:80
+msgid "If [code]true[/code], distance field hint is enabled."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:83
+msgid "The fallback font."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:86
+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:18
+msgid "Stores the node's current transforms in [member rest]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:24
+msgid ""
+"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:30
+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:36
+msgid ""
+"Length of the bone's representation drawn in the editor's viewport in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:39
+msgid ""
+"Rest transform of the bone. You can reset the node's transforms to this "
+"value using [method apply_rest]."
+msgstr ""
+
+#: doc/classes/BoneAttachment.xml:4
+msgid "A node that will attach to a bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment.xml:7
+msgid ""
+"This node must be the child of a [Skeleton] node. You can then select a bone "
+"for this node to attach to. The BoneAttachment node will copy the transform "
+"of the selected bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment.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 a 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:47
+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:54
+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:61
+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 controls vertically or horizontally, and rearranges the "
+"controls automatically when their minimum size changes."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:16
+msgid ""
+"Adds a control to the box as a spacer. If [code]true[/code], [code]begin[/"
+"code] will insert the spacer control in front of other children."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:22
+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:28
+msgid "Aligns children with the beginning of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:31
+msgid "Aligns children with the center of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:34
+msgid "Aligns children with the end of the container."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:4
+msgid "Box shape resource."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:7
+msgid "3D box shape that can be a child of a [PhysicsBody] or [Area]."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:10 doc/classes/CapsuleShape.xml:10
+#: doc/classes/ConcavePolygonShape.xml:11 doc/classes/ConvexPolygonShape.xml:10
+#: doc/classes/CylinderShape.xml:11 doc/classes/ProjectSettings.xml:13
+#: doc/classes/RigidBody.xml:16 doc/classes/SphereShape.xml:10
+#: doc/classes/StaticBody.xml:11
+msgid "https://godotengine.org/asset-library/asset/675"
+msgstr ""
+
+#: doc/classes/BoxShape.xml:11 doc/classes/CollisionShape.xml:11
+#: modules/gridmap/doc_classes/GridMap.xml:16 doc/classes/KinematicBody.xml:13
+#: doc/classes/Mesh.xml:11 doc/classes/MeshInstance.xml:11
+#: doc/classes/MeshLibrary.xml:10
+msgid "https://godotengine.org/asset-library/asset/126"
+msgstr ""
+
+#: doc/classes/BoxShape.xml:18
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node.\n"
+"[b]Note:[/b] Buttons do not interpret touch input and therefore don't "
+"support multitouch, since mouse emulation can only press one button at a "
+"given time. Use [TouchScreenButton] for buttons that trigger gameplay "
+"movement or actions, as [TouchScreenButton] supports multitouch."
+msgstr ""
+
+#: doc/classes/Button.xml:25 doc/classes/Dictionary.xml:89
+#: doc/classes/GridContainer.xml:12 doc/classes/OS.xml:10
+#: doc/classes/PoolStringArray.xml:11 doc/classes/ProjectSettings.xml:15
+#: doc/classes/ResourceLoader.xml:11 doc/classes/RichTextLabel.xml:17
+msgid "https://godotengine.org/asset-library/asset/677"
+msgstr ""
+
+#: doc/classes/Button.xml:31
+msgid ""
+"Text alignment policy for the button's text, use one of the [enum TextAlign] "
+"constants."
+msgstr ""
+
+#: doc/classes/Button.xml:34
+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:37
+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:40
+msgid "Flat buttons don't display decoration."
+msgstr ""
+
+#: doc/classes/Button.xml:43
+msgid ""
+"Button's icon, if text is present the icon will be placed before the text."
+msgstr ""
+
+#: doc/classes/Button.xml:46 doc/classes/LinkButton.xml:18
+msgid "The button's text that will be displayed inside the button's area."
+msgstr ""
+
+#: doc/classes/Button.xml:51
+msgid "Align the text to the left."
+msgstr ""
+
+#: doc/classes/Button.xml:54
+msgid "Align the text to the center."
+msgstr ""
+
+#: doc/classes/Button.xml:57
+msgid "Align the text to the right."
+msgstr ""
+
+#: doc/classes/Button.xml:62
+msgid "[StyleBox] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:65
+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:68
+msgid "[Font] of the [Button]'s text."
+msgstr ""
+
+#: doc/classes/Button.xml:71
+msgid "Default text [Color] of the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:74
+msgid "Text [Color] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:77
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/Button.xml:80
+msgid "Text [Color] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:83
+msgid "Text [Color] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/Button.xml:86
+msgid "[StyleBox] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:89
+msgid "The horizontal space between [Button]'s icon and text."
+msgstr ""
+
+#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
+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:16
+msgid ""
+"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
+"[member BaseButton.group])."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:22
+msgid "Returns the current pressed button."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:33
+msgid "Emitted when one of the buttons of the group is pressed."
+msgstr ""
+
+#: doc/classes/Camera.xml:4
+msgid "Camera node, displays from a point of view."
+msgstr ""
+
+#: doc/classes/Camera.xml:7
+msgid ""
+"Camera 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/Camera.xml:17
+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/Camera.xml:23
+msgid "Returns the camera's RID from the [VisualServer]."
+msgstr ""
+
+#: doc/classes/Camera.xml:29
+msgid ""
+"Returns the transform of the camera plus the vertical ([member v_offset]) "
+"and horizontal ([member h_offset]) offsets; and any other adjustments made "
+"to the position and orientation of the camera by subclassed cameras such as "
+"[ClippedCamera], [InterpolatedCamera] and [ARVRCamera]."
+msgstr ""
+
+#: doc/classes/Camera.xml:36
+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/Camera.xml:42
+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/Camera.xml:49
+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/Camera.xml:56
+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/Camera.xml:63
+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/Camera.xml:71
+msgid ""
+"Returns the 3D point in world space 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/Camera.xml:78
+msgid ""
+"Returns a normal vector in world space, 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/Camera.xml:85
+msgid ""
+"Returns a 3D position in world space, 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/Camera.xml:93
+msgid ""
+"Enables or disables the given [code]layer[/code] in the [member cull_mask]."
+msgstr ""
+
+#: doc/classes/Camera.xml:103
+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/Camera.xml:112
+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/Camera.xml:121
+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/Camera.xml:128
+msgid ""
+"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
+"3D point in world space.\n"
+"[b]Note:[/b] When using this to position GUI elements over a 3D viewport, "
+"use [method is_position_behind] to prevent them from appearing if the 3D "
+"point is behind the camera:\n"
+"[codeblock]\n"
+"# This code block is part of a script that inherits from Spatial.\n"
+"# `control` is a reference to a node inheriting from Control.\n"
+"control.visible = not get_viewport().get_camera()."
+"is_position_behind(global_transform.origin)\n"
+"control.rect_position = get_viewport().get_camera()."
+"unproject_position(global_transform.origin)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Camera.xml:141
+msgid ""
+"The culling mask that describes which 3D render layers are rendered by this "
+"camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:144
+msgid ""
+"If [code]true[/code], the ancestor [Viewport] is currently using this camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:147
+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. The Doppler "
+"effect is only simulated for [AudioStreamPlayer3D] nodes that have [member "
+"AudioStreamPlayer3D.doppler_tracking] set to a value other than [constant "
+"AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED].\n"
+"[b]Note:[/b] To toggle the Doppler effect preview in the editor, use the "
+"Perspective menu in the top-left corner of the 3D viewport and toggle "
+"[b]Enable Doppler[/b]."
+msgstr ""
+
+#: doc/classes/Camera.xml:151
+msgid "The [Environment] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:154
+msgid ""
+"The distance to the far culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera.xml:157
+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]70.0[/code]) "
+"is equivalent to a horizontal FOV of:\n"
+"- ~86.07 degrees in a 4:3 viewport\n"
+"- ~96.50 degrees in a 16:10 viewport\n"
+"- ~102.45 degrees in a 16:9 viewport\n"
+"- ~117.06 degrees in a 21:9 viewport"
+msgstr ""
+
+#: doc/classes/Camera.xml:165
+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/Camera.xml:168
+msgid "The horizontal (X) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera.xml:171
+msgid ""
+"The axis to lock during [member fov]/[member size] adjustments. Can be "
+"either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/Camera.xml:174
+msgid ""
+"The distance to the near culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera.xml:177
+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/Camera.xml:180
+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/Camera.xml:183
+msgid "The vertical (Y) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera.xml:188
+msgid ""
+"Perspective projection. Objects on the screen becomes smaller when they are "
+"far away."
+msgstr ""
+
+#: doc/classes/Camera.xml:191
+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/Camera.xml:194
+msgid ""
+"Frustum projection. This mode allows adjusting [member frustum_offset] to "
+"create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/Camera.xml:197
+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/Camera.xml:200
+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/Camera.xml:203
+msgid ""
+"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] simulation (default)."
+msgstr ""
+
+#: doc/classes/Camera.xml:206
+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/Camera.xml:209
+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/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, but "
+"more functionality may be desired to change how the camera works. To make "
+"your own custom camera node, inherit it 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:13 doc/classes/TileMap.xml:13
+#: doc/classes/TileSet.xml:13
+msgid "https://godotengine.org/asset-library/asset/112"
+msgstr ""
+
+#: doc/classes/Camera2D.xml:14 doc/classes/Environment.xml:18
+#: doc/classes/WorldEnvironment.xml:14
+msgid "https://godotengine.org/asset-library/asset/110"
+msgstr ""
+
+#: doc/classes/Camera2D.xml:20
+msgid "Aligns the camera to the tracked node."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:26
+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:38
+msgid "Returns the camera position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:44
+msgid ""
+"Returns the location of the [Camera2D]'s screen-center, relative to the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:51
+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:58
+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:64
+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:70
+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:79
+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:87
+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:93
+msgid "The Camera2D's anchor point. See [enum AnchorMode] constants."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:96
+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:99
+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:102
+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:105
+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:108
+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:111
+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:114
+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:117
+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:120
+msgid ""
+"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:123
+msgid ""
+"If [code]true[/code], draws the camera's limits rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:126
+msgid ""
+"If [code]true[/code], draws the camera's screen rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:129
+msgid ""
+"Bottom scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:132
+msgid ""
+"Left scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:135
+msgid ""
+"Right scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:138
+msgid ""
+"If [code]true[/code], the camera smoothly stops when reaches its limits.\n"
+"This has no effect if smoothing is disabled.\n"
+"[b]Note:[/b] To immediately update the camera's position to be within limits "
+"without smoothing, even with this setting enabled, invoke [method "
+"reset_smoothing]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:143
+msgid ""
+"Top scroll limit in pixels. The camera stops moving when reaching this value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:146
+msgid ""
+"The camera's offset, useful for looking around or camera shake animations."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:149
+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:153
+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:157
+msgid "The camera's process callback. See [enum Camera2DProcessMode]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:160
+msgid "If [code]true[/code], the camera rotates with the target."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:163
+msgid ""
+"If [code]true[/code], the camera smoothly moves towards the target at "
+"[member smoothing_speed]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:166
+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:169
+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:174
+msgid ""
+"The camera's position is fixed so that the top-left corner is always at the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:177
+msgid ""
+"The camera's position takes into account vertical/horizontal offsets and the "
+"screen size."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:180 doc/classes/ClippedCamera.xml:89
+msgid "The camera updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:183 doc/classes/ClippedCamera.xml:92
+msgid "The camera updates with the [code]_process[/code] callback."
+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.\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/CameraFeed.xml:16
+msgid "Returns the unique ID for this feed."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:22
+msgid "Returns the camera's name."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:28
+msgid "Returns the position of camera on the device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:34
+msgid "If [code]true[/code], the feed is active."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:37
+msgid "The transform applied to the camera's image."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:42
+msgid "No image set for the feed."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:45
+msgid "Feed supplies RGB images."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:48
+msgid "Feed supplies YCbCr images that need to be converted to RGB."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:51
+msgid ""
+"Feed supplies separate Y and CbCr images that need to be combined and "
+"converted to RGB."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:54
+msgid "Unspecified position."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:57
+msgid "Camera is mounted at the front of the device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:60
+msgid "Camera is mounted at the back of the device."
+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."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:17
+msgid "Adds a camera feed to the camera server."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:23
+msgid "Returns an array of [CameraFeed]s."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:30
+msgid "Returns the [CameraFeed] with this id."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:36
+msgid "Returns the number of [CameraFeed]s registered."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:43
+msgid "Removes a [CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:51
+msgid "Emitted when a [CameraFeed] is added (e.g. webcam is plugged in)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:57
+msgid "Emitted when a [CameraFeed] is removed (e.g. webcam is unplugged)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:63
+msgid "The RGBA camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:66
+msgid "The YCbCr camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:69
+msgid "The Y component camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:72
+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:23
+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/3.4/tutorials/2d/2d_transforms.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:18
+#: doc/classes/Node2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:37
+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:48
+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:57
+msgid "Draws a colored circle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:69
+msgid "Draws a colored polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:80
+msgid ""
+"Draws a line from a 2D point to another, with a given color and width. It "
+"can be optionally antialiased."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:91
+msgid ""
+"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
+"related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:101
+msgid ""
+"Draws multiple, parallel lines with a uniform [code]color[/code].\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
+"not implemented and have no effect."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:112
+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].\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
+"not implemented and have no effect."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:122
+msgid ""
+"Draws a [MultiMesh] in 2D with the provided texture. See "
+"[MultiMeshInstance2D] for related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:134
+msgid "Draws a polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:144
+msgid ""
+"Draws interconnected line segments with a uniform [code]color[/code] and "
+"[code]width[/code] and optional antialiasing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:154
+msgid ""
+"Draws interconnected line segments with a uniform [code]width[/code], "
+"segment-by-segment coloring, and optional antialiasing. Colors assigned to "
+"line segments match by index between [code]points[/code] and [code]colors[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:166
+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:177
+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. If "
+"[code]antialiased[/code] is [code]true[/code], the lines will be "
+"antialiased.\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are only "
+"effective if [code]filled[/code] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:187
+msgid ""
+"Sets a custom transform for drawing via components. Anything drawn "
+"afterwards will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:194
+msgid ""
+"Sets a custom transform for drawing via matrix. Anything drawn afterwards "
+"will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:205
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (bottom-left corner using the baseline of the font). "
+"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:222
+msgid "Draws a styled rectangle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:232
+msgid "Draws a texture at a given position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:244
+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:257
+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:263 doc/classes/Spatial.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:269
+msgid "Returns the [RID] of the [World2D] canvas where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:275
+msgid "Returns the canvas item RID used by [VisualServer] for this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:281
+msgid "Returns the transform matrix of this item's canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:287
+msgid "Returns the global position of the mouse."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:293
+msgid "Returns the global transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:299
+msgid ""
+"Returns the global transform matrix of this item in relation to the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:305
+msgid "Returns the mouse position relative to this item's position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:311
+msgid "Returns the transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:317
+msgid "Returns the viewport's boundaries as a [Rect2]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:323
+msgid "Returns this item's transform in relation to the viewport."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:329
+msgid "Returns the [World2D] where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:335
+msgid "Hide the [CanvasItem] if it's currently visible."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:341
+msgid ""
+"Returns [code]true[/code] if local transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:347
+msgid ""
+"Returns [code]true[/code] if the node is set as top-level. See [method "
+"set_as_toplevel]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:353
+msgid ""
+"Returns [code]true[/code] if global transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:359 doc/classes/Spatial.xml:89
+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:366
+msgid "Assigns [code]screen_point[/code] as this node's new local transform."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:373
+msgid ""
+"Transformations issued by [code]event[/code]'s inputs are applied in local "
+"space instead of global space."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:380
+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:387
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"local transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:394
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"global transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:400
+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:406
+msgid ""
+"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
+"called on idle time to request redraw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:412
+msgid ""
+"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:415
+msgid "The material applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:418
+msgid "The color applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:421
+msgid ""
+"The color applied to textures on this [CanvasItem]. This is not inherited by "
+"children [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:424
+msgid "If [code]true[/code], the object draws behind its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:427
+msgid "If [code]true[/code], the object draws on top of its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:430
+msgid ""
+"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
+"is used as this one's material."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:433
+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:440
+msgid ""
+"Emitted when the [CanvasItem] must redraw. This can only be connected "
+"realtime, as deferred will not allow drawing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:445
+msgid "Emitted when becoming hidden."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:450
+msgid ""
+"Emitted when the item's [Rect2] boundaries (position or size) have changed, "
+"or when an action is taking place that may have impacted these boundaries (e."
+"g. changing [member Sprite.texture])."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:455
+msgid "Emitted when the visibility (hidden/visible) changes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:461 doc/classes/CanvasItemMaterial.xml:39
+msgid ""
+"Mix blending mode. Colors are assumed to be independent of the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:464 doc/classes/CanvasItemMaterial.xml:42
+msgid "Additive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:467 doc/classes/CanvasItemMaterial.xml:45
+msgid "Subtractive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:470 doc/classes/CanvasItemMaterial.xml:48
+msgid "Multiplicative blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:473 doc/classes/CanvasItemMaterial.xml:51
+msgid ""
+"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:476
+msgid ""
+"Disables blending mode. Colors including alpha are written as-is. Only "
+"applicable for render targets with a transparent background. No lighting "
+"will be applied."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:479
+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:482
+msgid "The [CanvasItem] is requested to draw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:485
+msgid "The [CanvasItem]'s visibility has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:488
+msgid "The [CanvasItem] has entered the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:491
+msgid "The [CanvasItem] has exited the canvas."
+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 [Texture] for a "
+"[Particles2D] 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 [Texture] for a "
+"[Particles2D] 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 [Particles2D] 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: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/3.4/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 middle cylindrical part of the capsule (without the "
+"hemispherical ends).\n"
+"[b]Note:[/b] The capsule's total height is equal to [member mid_height] + 2 "
+"* [member radius]."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:19
+msgid "Number of radial segments on the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:22
+msgid "Radius of the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:25
+msgid "Number of rings along the height of the capsule."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:4 doc/classes/CapsuleShape.xml:7
+msgid "Capsule shape for collisions."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:16 doc/classes/CapsuleShape2D.xml:15
+msgid "The capsule's height."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:19 doc/classes/CapsuleShape2D.xml:18
+msgid "The capsule's radius."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:4 doc/classes/CapsuleShape2D.xml:7
+msgid "Capsule shape for 2D 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:15
+msgid ""
+"https://docs.godotengine.org/en/3.4/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 [RichTextLabel] is paused (see [member Node."
+"pause_mode]). Resets when the text in the [RichTextLabel] is changed.\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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:22
+msgid "The vertical offset used when rendering the check icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:25
+msgid "The check icon to display when the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:34
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is focused."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:37
+msgid "The [Font] to use for the [CheckBox] text."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:40
+msgid "The [CheckBox] text's font color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:43
+msgid "The [CheckBox] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
+msgid "The [CheckBox] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:52
+msgid "The [CheckBox] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:55
+msgid "The [CheckBox] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:58
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:61
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
+"pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:64
+msgid "The separation between the check icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
+msgid "The [StyleBox] to display as a background."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:70
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:73
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:78
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:83
+msgid "The check icon to display when the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:22
+msgid "The vertical offset used when rendering the toggle icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:25
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:28
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is focused."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:31
+msgid "The [Font] to use for the [CheckButton] text."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:34
+msgid "The [CheckButton] text's font color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:37
+msgid "The [CheckButton] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:40
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:43
+msgid "The [CheckButton] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:46
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:55
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered "
+"and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:58
+msgid "The separation between the toggle icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:64
+msgid "The icon to display when the [CheckButton] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:67
+msgid "The icon to display when the [CheckButton] is unchecked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:70
+msgid "The icon to display when the [CheckButton] is checked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:73
+msgid "The icon to display when the [CheckButton] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:76
+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:16
+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:23
+msgid "Returns whether the specified [code]class[/code] is available or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:30
+msgid ""
+"Returns a category associated with the class for use in documentation and "
+"the Asset Library. Debug mode required."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:39
+msgid ""
+"Returns an array with all the keys in [code]enum[/code] of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:47
+msgid ""
+"Returns an array with all the enums of [code]class[/code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:55
+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:64
+msgid ""
+"Returns which enum the integer constant [code]name[/code] of [code]class[/"
+"code] or its ancestry belongs to."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:72
+msgid ""
+"Returns an array with the names all the integer constants of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:80
+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].\n"
+"[b]Note:[/b] In exported release builds the debug info is not available, so "
+"the returned dictionaries will contain only method names."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:89
+msgid ""
+"Returns the value of [code]property[/code] of [code]class[/code] or its "
+"ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:97
+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:105
+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:122
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an enum called "
+"[code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:130
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an integer constant "
+"called [code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:139
+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:147
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has a signal called "
+"[code]signal[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:156
+msgid ""
+"Sets [code]property[/code] value of [code]class[/code] to [code]value[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:162
+msgid "Returns the names of all the classes available."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:169
+msgid ""
+"Returns the names of all the classes that directly or indirectly inherit "
+"from [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:176
+msgid "Returns the parent class of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:183
+msgid "Creates an instance of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:190
+msgid "Returns whether this [code]class[/code] is enabled or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:198
+msgid ""
+"Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] "
+"or not."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:4
+msgid "A [Camera] that includes collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:7
+msgid ""
+"This node extends [Camera] to add collisions with [Area] and/or "
+"[PhysicsBody] nodes. The camera cannot move through colliding objects."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:16
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"node."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:23
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"[RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:29
+msgid "Removes all collision exceptions."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:35
+msgid "Returns the distance the camera has been offset due to a collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:42
+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/ClippedCamera.xml:50
+msgid "Removes a collision exception with the specified node."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:57
+msgid "Removes a collision exception with the specified [RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:65
+msgid ""
+"Sets the specified bit index to the [code]value[/code].\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:72
+msgid "If [code]true[/code], the camera stops on contact with [Area]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:75
+msgid "If [code]true[/code], the camera stops on contact with [PhysicsBody]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:78
+msgid ""
+"The camera's collision mask. Only objects in at least one collision layer "
+"matching the mask will be detected. See [url=https://docs.godotengine.org/"
+"en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks]Collision layers and masks[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:81
+msgid ""
+"The camera's collision margin. The camera can't get closer than this "
+"distance to a colliding object."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:84
+msgid "The camera's process callback. See [enum ProcessMode]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:4
+msgid "Base node for collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:7
+msgid ""
+"CollisionObject is the base class for physics objects. It can hold any "
+"number of collision [Shape]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject 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/CollisionObject.xml:20
+msgid ""
+"Receives unhandled [InputEvent]s. [code]position[/code] is the location in "
+"world space of the mouse pointer on the surface of the shape with index "
+"[code]shape_idx[/code] and [code]normal[/code] is the normal vector of the "
+"surface at that point. Connect to the [signal input_event] signal to easily "
+"pick up these events."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:27 doc/classes/CollisionObject2D.xml:25
+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/CollisionObject.xml:34 doc/classes/CollisionObject2D.xml:32
+msgid ""
+"Returns whether or not the specified [code]bit[/code] of the [member "
+"collision_layer] is set."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:41 doc/classes/CollisionObject2D.xml:39
+msgid ""
+"Returns whether or not the specified [code]bit[/code] of the [member "
+"collision_mask] is set."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:47 doc/classes/CollisionObject2D.xml:45
+msgid "Returns the object's [RID]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:53 doc/classes/CollisionObject2D.xml:58
+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/CollisionObject.xml:60 doc/classes/CollisionObject2D.xml:65
+msgid "If [code]true[/code], the shape owner and its shapes are disabled."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:67 doc/classes/CollisionObject2D.xml:79
+msgid "Removes the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:75 doc/classes/CollisionObject2D.xml:87
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the the [member collision_layer].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the the [member collision_layer]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:84 doc/classes/CollisionObject2D.xml:96
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the the [member collision_mask].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the the [member collision_mask]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:92 doc/classes/CollisionObject2D.xml:104
+msgid "Returns the [code]owner_id[/code] of the given shape."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:100
+msgid "Adds a [Shape] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:107 doc/classes/CollisionObject2D.xml:119
+msgid "Removes all shapes from the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:114 doc/classes/CollisionObject2D.xml:126
+msgid "Returns the parent object of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:122
+msgid "Returns the [Shape] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:129 doc/classes/CollisionObject2D.xml:141
+msgid "Returns the number of shapes the given shape owner contains."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:137
+msgid ""
+"Returns the child index of the [Shape] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:144
+msgid "Returns the shape owner's [Transform]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:152 doc/classes/CollisionObject2D.xml:164
+msgid "Removes a shape from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:160 doc/classes/CollisionObject2D.xml:172
+msgid "If [code]true[/code], disables the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:168
+msgid "Sets the [Transform] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:174
+msgid ""
+"The physics layers this CollisionObject3D is in. Collision objects can exist "
+"in one or more of 32 different layers. See also [member collision_mask].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:178
+msgid ""
+"The physics layers this CollisionObject3D scans. Collision objects can scan "
+"one or more of 32 different layers. See also [member collision_layer].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:182
+msgid ""
+"If [code]true[/code], the [CollisionObject] will continue to receive input "
+"events as the mouse is dragged across its shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:185
+msgid ""
+"If [code]true[/code], the [CollisionObject]'s shapes will respond to "
+"[RayCast]s."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:196
+msgid ""
+"Emitted when the object receives an unhandled [InputEvent]. [code]position[/"
+"code] is the location in world space of the mouse pointer on the surface of "
+"the shape with index [code]shape_idx[/code] and [code]normal[/code] is the "
+"normal vector of the surface at that point."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:201
+msgid "Emitted when the mouse pointer enters any of this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:206
+msgid "Emitted when the mouse pointer exits all this object's shapes."
+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:18
+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:52
+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: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:112
+msgid "Adds a [Shape2D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:134
+msgid "Returns the [Shape2D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:149
+msgid ""
+"Returns the child index of the [Shape2D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:156
+msgid "Returns the shape owner's [Transform2D]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:180
+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:188
+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:196
+msgid "Sets the [Transform2D] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:202
+msgid ""
+"The physics layers this CollisionObject2D is in. Collision objects can exist "
+"in one or more of 32 different layers. See also [member collision_mask].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:206
+msgid ""
+"The physics layers this CollisionObject2D scans. Collision objects can scan "
+"one or more of 32 different layers. See also [member collision_layer].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:210
+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:219
+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:224
+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:229
+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/CollisionPolygon.xml:4
+msgid "Editor-only class for defining a collision polygon in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.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 [Shape] "
+"for gameplay. Properties modified during gameplay will have no effect."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:15
+msgid ""
+"Length that the resulting collision extends in either direction "
+"perpendicular to its polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:18
+msgid "If [code]true[/code], no collision will be produced."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:21
+msgid ""
+"The collision margin for the generated [Shape]. See [member Shape.margin] "
+"for more details."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:24
+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/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 [PoolVector2Array], 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/CollisionShape.xml:4
+msgid "Node that represents collision shape data in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionShape.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 [Area] to give it a detection shape, or add it to a "
+"[PhysicsBody] to create a solid object. [b]IMPORTANT[/b]: this is an Editor-"
+"only helper to create shapes, use [method CollisionObject."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:10 doc/classes/CollisionShape2D.xml:10
+#: doc/classes/Physics2DDirectBodyState.xml:10
+#: doc/classes/Physics2DDirectSpaceState.xml:10 doc/classes/PhysicsBody.xml:10
+#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsDirectBodyState.xml:10
+#: doc/classes/PhysicsDirectSpaceState.xml:10 doc/classes/RigidBody.xml:14
+#: doc/classes/Shape.xml:10 doc/classes/Shape2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html"
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:19
+msgid ""
+"Sets the collision shape's shape to the addition of all its convexed "
+"[MeshInstance] siblings geometry."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:26
+msgid ""
+"If this method exists within a script it will be called whenever the shape "
+"resource has been modified."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:32
+msgid "A disabled collision shape has no effect in the world."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:35 doc/classes/CollisionShape2D.xml:28
+msgid "The actual shape owned by this collision shape."
+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:13 doc/classes/KinematicBody2D.xml:14
+#: doc/classes/RectangleShape2D.xml:11 doc/classes/TileMap.xml:17
+#: doc/classes/TileSet.xml:17
+msgid "https://godotengine.org/asset-library/asset/113"
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:19
+msgid ""
+"A disabled collision shape has no effect in the world. This property should "
+"be changed with [method Object.set_deferred]."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:22
+msgid ""
+"Sets whether this collision shape should only detect collision on one side "
+"(top or bottom)."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:25
+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/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].\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"color_constants.png]Color constants cheatsheet[/url]"
+msgstr ""
+
+#: doc/classes/Color.xml:14 doc/classes/ColorPickerButton.xml:13
+msgid "https://godotengine.org/asset-library/asset/517"
+msgstr ""
+
+#: doc/classes/Color.xml:15 doc/classes/ColorPicker.xml:11
+msgid "https://godotengine.org/asset-library/asset/146"
+msgstr ""
+
+#: doc/classes/Color.xml:16 doc/classes/ColorPickerButton.xml:12
+msgid "https://godotengine.org/asset-library/asset/133"
+msgstr ""
+
+#: doc/classes/Color.xml:23
+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 in RGBA format (each byte "
+"represents a color channel).\n"
+"[codeblock]\n"
+"var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:49
+msgid ""
+"Constructs a color from RGB values, typically between 0 and 1. Alpha will be "
+"1.\n"
+"[codeblock]\n"
+"var color = Color(0.2, 1.0, 0.7) # Similar to Color8(51, 255, 178, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:62
+msgid ""
+"Constructs a color from RGBA values, typically between 0 and 1.\n"
+"[codeblock]\n"
+"var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to Color8(51, 255, 178, "
+"204)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:72
+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:83
+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:94
+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:108
+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:117
+msgid ""
+"Returns the color's grayscale representation.\n"
+"The gray value is calculated as [code](r + g + b) / 3[/code].\n"
+"[codeblock]\n"
+"var c = Color(0.2, 0.45, 0.82)\n"
+"var gray = c.gray() # A value of 0.466667\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:128
+msgid ""
+"Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
+"[codeblock]\n"
+"var color = Color(0.3, 0.4, 0.9)\n"
+"var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:139
+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:146
+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:158
+msgid ""
+"Returns the linear interpolation with another color. The interpolation "
+"factor [code]weight[/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.linear_interpolate(c2, 0.5) # Equivalent to Color(0.5, 0.5, "
+"0.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:169
+msgid ""
+"Returns the color converted to a 32-bit integer in ABGR format (each byte "
+"represents a color channel). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr32()) # Prints 4281565439\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:179
+msgid ""
+"Returns the color converted to a 64-bit integer in ABGR format (each word "
+"represents a color channel). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr64()) # Prints -225178692812801\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:189
+msgid ""
+"Returns the color converted to a 32-bit integer in ARGB format (each byte "
+"represents a color channel). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb32()) # Prints 4294934323\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:199
+msgid ""
+"Returns the color converted to a 64-bit integer in ARGB format (each word "
+"represents a color channel). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb64()) # Prints -2147470541\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:210
+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:222
+msgid ""
+"Returns the color converted to a 32-bit integer in RGBA format (each byte "
+"represents a color channel). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba32()) # Prints 4286526463\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:232
+msgid ""
+"Returns the color converted to a 64-bit integer in RGBA format (each word "
+"represents a color channel). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba64()) # Prints -140736629309441\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:242
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:245
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:248
+msgid "The color's blue component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:251
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:254
+msgid "The color's green component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:257
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:260
+msgid "The HSV hue of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:263
+msgid "The color's red component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:266
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:269
+msgid "The HSV saturation of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:272
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:277
+msgid "Alice blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:280
+msgid "Antique white color."
+msgstr ""
+
+#: doc/classes/Color.xml:283
+msgid "Aqua color."
+msgstr ""
+
+#: doc/classes/Color.xml:286
+msgid "Aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:289
+msgid "Azure color."
+msgstr ""
+
+#: doc/classes/Color.xml:292
+msgid "Beige color."
+msgstr ""
+
+#: doc/classes/Color.xml:295
+msgid "Bisque color."
+msgstr ""
+
+#: doc/classes/Color.xml:298
+msgid "Black color."
+msgstr ""
+
+#: doc/classes/Color.xml:301
+msgid "Blanche almond color."
+msgstr ""
+
+#: doc/classes/Color.xml:304
+msgid "Blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:307
+msgid "Blue violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:310
+msgid "Brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:313
+msgid "Burly wood color."
+msgstr ""
+
+#: doc/classes/Color.xml:316
+msgid "Cadet blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:319
+msgid "Chartreuse color."
+msgstr ""
+
+#: doc/classes/Color.xml:322
+msgid "Chocolate color."
+msgstr ""
+
+#: doc/classes/Color.xml:325
+msgid "Coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:328
+msgid "Cornflower color."
+msgstr ""
+
+#: doc/classes/Color.xml:331
+msgid "Corn silk color."
+msgstr ""
+
+#: doc/classes/Color.xml:334
+msgid "Crimson color."
+msgstr ""
+
+#: doc/classes/Color.xml:337
+msgid "Cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:340
+msgid "Dark blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:343
+msgid "Dark cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:346
+msgid "Dark goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:349
+msgid "Dark gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:352
+msgid "Dark green color."
+msgstr ""
+
+#: doc/classes/Color.xml:355
+msgid "Dark khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:358
+msgid "Dark magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:361
+msgid "Dark olive green color."
+msgstr ""
+
+#: doc/classes/Color.xml:364
+msgid "Dark orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:367
+msgid "Dark orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:370
+msgid "Dark red color."
+msgstr ""
+
+#: doc/classes/Color.xml:373
+msgid "Dark salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:376
+msgid "Dark sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:379
+msgid "Dark slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:382
+msgid "Dark slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:385
+msgid "Dark turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:388
+msgid "Dark violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:391
+msgid "Deep pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:394
+msgid "Deep sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:397
+msgid "Dim gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:400
+msgid "Dodger blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:403
+msgid "Firebrick color."
+msgstr ""
+
+#: doc/classes/Color.xml:406
+msgid "Floral white color."
+msgstr ""
+
+#: doc/classes/Color.xml:409
+msgid "Forest green color."
+msgstr ""
+
+#: doc/classes/Color.xml:412
+msgid "Fuchsia color."
+msgstr ""
+
+#: doc/classes/Color.xml:415
+msgid "Gainsboro color."
+msgstr ""
+
+#: doc/classes/Color.xml:418
+msgid "Ghost white color."
+msgstr ""
+
+#: doc/classes/Color.xml:421
+msgid "Gold color."
+msgstr ""
+
+#: doc/classes/Color.xml:424
+msgid "Goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:427
+msgid "Gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:430
+msgid "Green color."
+msgstr ""
+
+#: doc/classes/Color.xml:433
+msgid "Green yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:436
+msgid "Honeydew color."
+msgstr ""
+
+#: doc/classes/Color.xml:439
+msgid "Hot pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:442
+msgid "Indian red color."
+msgstr ""
+
+#: doc/classes/Color.xml:445
+msgid "Indigo color."
+msgstr ""
+
+#: doc/classes/Color.xml:448
+msgid "Ivory color."
+msgstr ""
+
+#: doc/classes/Color.xml:451
+msgid "Khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:454
+msgid "Lavender color."
+msgstr ""
+
+#: doc/classes/Color.xml:457
+msgid "Lavender blush color."
+msgstr ""
+
+#: doc/classes/Color.xml:460
+msgid "Lawn green color."
+msgstr ""
+
+#: doc/classes/Color.xml:463
+msgid "Lemon chiffon color."
+msgstr ""
+
+#: doc/classes/Color.xml:466
+msgid "Light blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:469
+msgid "Light coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:472
+msgid "Light cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:475
+msgid "Light goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:478
+msgid "Light gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:481
+msgid "Light green color."
+msgstr ""
+
+#: doc/classes/Color.xml:484
+msgid "Light pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:487
+msgid "Light salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:490
+msgid "Light sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:493
+msgid "Light sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:496
+msgid "Light slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:499
+msgid "Light steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:502
+msgid "Light yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:505
+msgid "Lime color."
+msgstr ""
+
+#: doc/classes/Color.xml:508
+msgid "Lime green color."
+msgstr ""
+
+#: doc/classes/Color.xml:511
+msgid "Linen color."
+msgstr ""
+
+#: doc/classes/Color.xml:514
+msgid "Magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:517
+msgid "Maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:520
+msgid "Medium aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:523
+msgid "Medium blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:526
+msgid "Medium orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:529
+msgid "Medium purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:532
+msgid "Medium sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:535
+msgid "Medium slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:538
+msgid "Medium spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:541
+msgid "Medium turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:544
+msgid "Medium violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:547
+msgid "Midnight blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:550
+msgid "Mint cream color."
+msgstr ""
+
+#: doc/classes/Color.xml:553
+msgid "Misty rose color."
+msgstr ""
+
+#: doc/classes/Color.xml:556
+msgid "Moccasin color."
+msgstr ""
+
+#: doc/classes/Color.xml:559
+msgid "Navajo white color."
+msgstr ""
+
+#: doc/classes/Color.xml:562
+msgid "Navy blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:565
+msgid "Old lace color."
+msgstr ""
+
+#: doc/classes/Color.xml:568
+msgid "Olive color."
+msgstr ""
+
+#: doc/classes/Color.xml:571
+msgid "Olive drab color."
+msgstr ""
+
+#: doc/classes/Color.xml:574
+msgid "Orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:577
+msgid "Orange red color."
+msgstr ""
+
+#: doc/classes/Color.xml:580
+msgid "Orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:583
+msgid "Pale goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:586
+msgid "Pale green color."
+msgstr ""
+
+#: doc/classes/Color.xml:589
+msgid "Pale turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:592
+msgid "Pale violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:595
+msgid "Papaya whip color."
+msgstr ""
+
+#: doc/classes/Color.xml:598
+msgid "Peach puff color."
+msgstr ""
+
+#: doc/classes/Color.xml:601
+msgid "Peru color."
+msgstr ""
+
+#: doc/classes/Color.xml:604
+msgid "Pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:607
+msgid "Plum color."
+msgstr ""
+
+#: doc/classes/Color.xml:610
+msgid "Powder blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:613
+msgid "Purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:616
+msgid "Rebecca purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:619
+msgid "Red color."
+msgstr ""
+
+#: doc/classes/Color.xml:622
+msgid "Rosy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:625
+msgid "Royal blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:628
+msgid "Saddle brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:631
+msgid "Salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:634
+msgid "Sandy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:637
+msgid "Sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:640
+msgid "Seashell color."
+msgstr ""
+
+#: doc/classes/Color.xml:643
+msgid "Sienna color."
+msgstr ""
+
+#: doc/classes/Color.xml:646
+msgid "Silver color."
+msgstr ""
+
+#: doc/classes/Color.xml:649
+msgid "Sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:652
+msgid "Slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:655
+msgid "Slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:658
+msgid "Snow color."
+msgstr ""
+
+#: doc/classes/Color.xml:661
+msgid "Spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:664
+msgid "Steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:667
+msgid "Tan color."
+msgstr ""
+
+#: doc/classes/Color.xml:670
+msgid "Teal color."
+msgstr ""
+
+#: doc/classes/Color.xml:673
+msgid "Thistle color."
+msgstr ""
+
+#: doc/classes/Color.xml:676
+msgid "Tomato color."
+msgstr ""
+
+#: doc/classes/Color.xml:679
+msgid "Transparent color (white with no alpha)."
+msgstr ""
+
+#: doc/classes/Color.xml:682
+msgid "Turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:685
+msgid "Violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:688
+msgid "Web gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:691
+msgid "Web green color."
+msgstr ""
+
+#: doc/classes/Color.xml:694
+msgid "Web maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:697
+msgid "Web purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:700
+msgid "Wheat color."
+msgstr ""
+
+#: doc/classes/Color.xml:703
+msgid "White color."
+msgstr ""
+
+#: doc/classes/Color.xml:706
+msgid "White smoke color."
+msgstr ""
+
+#: doc/classes/Color.xml:709
+msgid "Yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:712
+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.\n"
+"[b]Note:[/b] This control is the color picker widget itself. You can use a "
+"[ColorPickerButton] instead if you need a button that brings up a "
+"[ColorPicker] in a pop-up."
+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:26
+msgid ""
+"Removes the given color from the list of color presets of this color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:32
+msgid "Returns the list of colors in the presets of the color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:38 doc/classes/ColorPickerButton.xml:33
+msgid "The currently selected color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:41
+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:44
+msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:47
+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:51
+msgid "If [code]true[/code], the \"add preset\" button is enabled."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:54
+msgid "If [code]true[/code], saved color presets are visible."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:57
+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:65
+msgid "Emitted when the color is changed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:71
+msgid "Emitted when a preset is added."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:77
+msgid "Emitted when a preset is removed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:85
+msgid "The icon for the \"Add Preset\" button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:88
+msgid "Custom texture for the hue selection slider on the right."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:93
+msgid "The width of the hue selection slider."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:98
+msgid "The margin around the [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:101
+msgid ""
+"The indicator used to signalize that the color value is outside the 0-1 "
+"range."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:106
+msgid "The icon for the screen color picker button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:109
+msgid "The height of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:112
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node.\n"
+"[b]Note:[/b] By default, the button may not be wide enough for the color "
+"preview swatch to be visible. Make sure to set [member Control."
+"rect_min_size] to a big enough value to give the button enough space."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:19
+msgid ""
+"Returns the [ColorPicker] that this node toggles.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:26
+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.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:36
+msgid ""
+"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
+"be visible."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:44
+msgid "Emitted when the color changes."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:49
+msgid ""
+"Emitted when the [ColorPicker] is created (the button is pressed for the "
+"first time)."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:54
+msgid "Emitted when the [ColorPicker] is closed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:62
+msgid "The background of the color preview rect on the button."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:65
+msgid "[StyleBox] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:68
+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:71
+msgid "[Font] of the [ColorPickerButton]'s text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:74
+msgid "Default text [Color] of the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:77
+msgid "Text [Color] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:80
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:86
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:89
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:92
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
+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 rectangle filled with a solid [member color]. If you need to "
+"display the border alone, consider using [ReferenceRect] instead."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:16
+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/ConcavePolygonShape.xml:4
+msgid "Concave polygon shape."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:7
+msgid ""
+"Concave polygon shape resource, which can be set into a [PhysicsBody] or "
+"area. This shape is created by feeding a list of triangles.\n"
+"[b]Note:[/b] When used for collision, [ConcavePolygonShape] is intended to "
+"work with static [PhysicsBody] nodes like [StaticBody] and will not work "
+"with [KinematicBody] or [RigidBody] with a mode other than Static."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:17
+msgid "Returns the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:24
+msgid "Sets the faces (an array of triangles)."
+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/ConeTwistJoint.xml:4
+msgid "A twist joint between two 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:7
+msgid ""
+"The joint can rotate the bodies across an axis defined by the local x-axes "
+"of the [Joint].\n"
+"The twist axis is initiated as the X axis of the [Joint].\n"
+"Once the Bodies swing, the twist axis is calculated as the middle of the x-"
+"axes of the Joint in the local space of the two Bodies. See also "
+"[Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:30 doc/classes/ConeTwistJoint.xml:62
+#: doc/classes/PhysicsServer.xml:1076
+msgid ""
+"The speed with which the swing or twist will take place.\n"
+"The higher, the faster."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:34 doc/classes/ConeTwistJoint.xml:69
+#: doc/classes/PhysicsServer.xml:1083
+msgid ""
+"Defines, how fast the swing- and twist-speed-difference on both sides gets "
+"synced."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:37 doc/classes/ConeTwistJoint.xml:66
+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/ConeTwistJoint.xml:40 doc/classes/ConeTwistJoint.xml:52
+#: doc/classes/PhysicsServer.xml:1066
+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 [ConeTwistJoint].\n"
+"If below 0.05, this behavior is locked."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:46 doc/classes/ConeTwistJoint.xml:58
+#: doc/classes/PhysicsServer.xml:1072
+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/ConeTwistJoint.xml:72 doc/classes/Generic6DOFJoint.xml:384
+#: doc/classes/HingeJoint.xml:99 doc/classes/Light.xml:124
+#: doc/classes/SliderJoint.xml:165
+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 World!\"\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 create a simple [ConfigFile] and save it "
+"on disk:\n"
+"[codeblock]\n"
+"# Create new ConfigFile object.\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# Store some values.\n"
+"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
+"config.set_value(\"Player1\", \"best_score\", 10)\n"
+"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
+"config.set_value(\"Player2\", \"best_score\", 9001)\n"
+"\n"
+"# Save it to a file (overwrite if already exists).\n"
+"config.save(\"user://scores.cfg\")\n"
+"[/codeblock]\n"
+"This example shows how the above file could be loaded:\n"
+"[codeblock]\n"
+"var score_data = {}\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# Load data from a file.\n"
+"var err = config.load(\"user://scores.cfg\")\n"
+"\n"
+"# If the file didn't load, ignore it.\n"
+"if err != OK:\n"
+" return\n"
+"\n"
+"# Iterate over all sections.\n"
+"for player in config.get_sections():\n"
+" # Fetch the data for each section.\n"
+" var player_name = config.get_value(player, \"player_name\")\n"
+" var player_score = config.get_value(player, \"best_score\")\n"
+" score_data[player_name] = player_score\n"
+"[/codeblock]\n"
+"Any operation that mutates the ConfigFile such as [method set_value], "
+"[method clear], or [method erase_section], only changes what is loaded in "
+"memory. If you want to write the change to a file, you have to save the "
+"changes with [method save], [method save_encrypted], or [method "
+"save_encrypted_pass].\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.\n"
+"[b]Note:[/b] The file extension given to a ConfigFile does not have any "
+"impact on its formatting or behavior. By convention, the [code].cfg[/code] "
+"extension is used here, but any other extension such as [code].ini[/code] is "
+"also valid. Since neither [code].cfg[/code] nor [code].ini[/code] are "
+"standardized, Godot's ConfigFile formatting may differ from files written by "
+"other programs."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:59
+msgid "Removes the entire contents of the config."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:66
+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:74
+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:81
+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:87
+msgid "Returns an array of all defined section identifiers."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:96
+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:103
+msgid "Returns [code]true[/code] if the specified section exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:111
+msgid "Returns [code]true[/code] if the specified section-key pair exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:118
+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:127
+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:136
+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:144
+msgid ""
+"Parses 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:152
+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:161
+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:170
+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:180
+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:19
+msgid ""
+"Returns the cancel button.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+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:18
+msgid ""
+"Fit a child control in a given rect. This is mainly a helper for creating "
+"custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:24
+msgid ""
+"Queue resort of the contained children. This is called automatically anyway, "
+"but can be called upon request."
+msgstr ""
+
+#: doc/classes/Container.xml:31
+msgid "Emitted when sorting the children is needed."
+msgstr ""
+
+#: doc/classes/Container.xml:37
+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 "
+"[method MainLoop._input_event]. Call [method accept_event] so no other node "
+"receives the event. Once you accept 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_*_override[/code] methods, "
+"like [method add_font_override]. You can override the theme with the "
+"inspector.\n"
+"[b]Note:[/b] Theme items are [i]not[/i] [Object] properties. This means you "
+"can't access their values using [method Object.get] and [method Object.set]. "
+"Instead, use [method get_color], [method get_constant], [method get_font], "
+"[method get_icon], [method get_stylebox], and the [code]add_*_override[/"
+"code] methods provided by this class."
+msgstr ""
+
+#: doc/classes/Control.xml:17
+msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html"
+msgstr ""
+
+#: doc/classes/Control.xml:19
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html"
+msgstr ""
+
+#: doc/classes/Control.xml:20
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/gui"
+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:33
+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:41
+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 the parent's rectangle and the parent has either "
+"[member rect_clip_content] or [method _clips_input] enabled.\n"
+"[b]Note:[/b] Event position is relative to the control origin."
+msgstr ""
+
+#: doc/classes/Control.xml:62
+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. The [code]for_text[/"
+"code] includes the contents of the [member hint_tooltip] property.\n"
+"The returned node must be of type [Control] or Control-derived. It can have "
+"child nodes of any type. It is freed when the tooltip disappears, so make "
+"sure you always provide a new instance (if you want to use a pre-existing "
+"node from your scene tree, you can duplicate it and pass the duplicated "
+"instance). When [code]null[/code] or a non-Control node is returned, the "
+"default tooltip will be used instead.\n"
+"The returned node will be added as child to a [PopupPanel], so you should "
+"only provide the contents of that panel. That [PopupPanel] can be themed "
+"using [method Theme.set_stylebox] for the type [code]\"TooltipPanel\"[/code] "
+"(see [member hint_tooltip] for an example).\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 a 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 a custom scene instance:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var tooltip = preload(\"res://SomeTooltipScene.tscn\").instance()\n"
+" tooltip.get_node(\"Label\").text = for_text\n"
+" return tooltip\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:85
+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:93
+msgid ""
+"Creates a local override for a theme [Color] with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override cannot be removed, but it can be overridden with "
+"the corresponding default value.\n"
+"See also [method get_color].\n"
+"[b]Example of overriding a label's color and resetting it later:[/b]\n"
+"[codeblock]\n"
+"# Given the child Label node \"MyLabel\", override its font color with a "
+"custom value.\n"
+"$MyLabel.add_color_override(\"font_color\", Color(1, 0.5, 0))\n"
+"# Reset the font color of the child label.\n"
+"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", \"Label"
+"\"))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:109
+msgid ""
+"Creates a local override for a theme constant with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override cannot be removed, but it can be overridden with "
+"the corresponding default value.\n"
+"See also [method get_constant]."
+msgstr ""
+
+#: doc/classes/Control.xml:118
+msgid ""
+"Creates a local override for a theme [Font] with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value.\n"
+"See also [method get_font]."
+msgstr ""
+
+#: doc/classes/Control.xml:127
+msgid ""
+"Creates a local override for a theme icon with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value.\n"
+"See also [method get_icon]."
+msgstr ""
+
+#: doc/classes/Control.xml:136
+msgid ""
+"Creates a local override for a theme shader with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value."
+msgstr ""
+
+#: doc/classes/Control.xml:144
+msgid ""
+"Creates a local override for a theme [StyleBox] with the specified "
+"[code]name[/code]. Local overrides always take precedence when fetching "
+"theme items for the control. An override can be removed by assigning it a "
+"[code]null[/code] value.\n"
+"See also [method get_stylebox].\n"
+"[b]Example of modifying a property in a StyleBox by duplicating it:[/b]\n"
+"[codeblock]\n"
+"# The snippet below assumes the child node MyButton has a StyleBoxFlat "
+"assigned.\n"
+"# Resources are shared across instances, so we need to duplicate it\n"
+"# to avoid modifying the appearance of all other buttons.\n"
+"var new_stylebox_normal = $MyButton.get_stylebox(\"normal\").duplicate()\n"
+"new_stylebox_normal.border_width_top = 3\n"
+"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
+"$MyButton.add_stylebox_override(\"normal\", new_stylebox_normal)\n"
+"# Remove the stylebox override.\n"
+"$MyButton.add_stylebox_override(\"normal\", null)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:165
+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:180
+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:193
+msgid ""
+"Finds the next (below in the tree) [Control] that can receive the focus."
+msgstr ""
+
+#: doc/classes/Control.xml:199
+msgid ""
+"Finds the previous (above in the tree) [Control] that can receive the focus."
+msgstr ""
+
+#: doc/classes/Control.xml:207
+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:215
+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:221
+msgid ""
+"Returns [member margin_left] and [member margin_top]. See also [member "
+"rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:229
+msgid ""
+"Returns a [Color] from the first matching [Theme] in the tree if that "
+"[Theme] has a color item with the specified [code]name[/code] and "
+"[code]theme_type[/code]. If [code]theme_type[/code] is omitted the class "
+"name of the current control is used as the type. If the type is a class name "
+"its parent classes are also checked, in order of inheritance.\n"
+"For the current control its local overrides are considered first (see "
+"[method add_color_override]), then its assigned [member theme]. After the "
+"current control, each parent control and its assigned [member theme] are "
+"considered; controls without a [member theme] assigned are skipped. If no "
+"matching [Theme] is found in the tree, a custom project [Theme] (see [member "
+"ProjectSettings.gui/theme/custom]) and the default [Theme] are used.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Get the font color defined for the current Control's class, if it "
+"exists.\n"
+" modulate = get_color(\"font_color\")\n"
+" # Get the font color defined for the Button class.\n"
+" modulate = get_color(\"font_color\", \"Button\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:243
+msgid ""
+"Returns combined minimum size from [member rect_min_size] and [method "
+"get_minimum_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:251
+msgid ""
+"Returns a constant from the first matching [Theme] in the tree if that "
+"[Theme] has a constant item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:259
+msgid ""
+"Returns the mouse cursor shape the control displays on mouse hover. See "
+"[enum CursorShape]."
+msgstr ""
+
+#: doc/classes/Control.xml:266
+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:279
+msgid "Returns [member margin_right] and [member margin_bottom]."
+msgstr ""
+
+#: doc/classes/Control.xml:286
+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:292
+msgid ""
+"Returns the control that has the keyboard focus or [code]null[/code] if none."
+msgstr ""
+
+#: doc/classes/Control.xml:300
+msgid ""
+"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
+"has a font item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:307
+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:315
+msgid ""
+"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
+"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:323
+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:329
+msgid "Returns the minimum size for this control. See [member rect_min_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:335
+msgid "Returns the width/height occupied in the parent control."
+msgstr ""
+
+#: doc/classes/Control.xml:341
+msgid "Returns the parent control node."
+msgstr ""
+
+#: doc/classes/Control.xml:347
+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:353
+msgid "Returns the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:361
+msgid ""
+"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
+"[Theme] has a stylebox item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:368
+msgid ""
+"Returns the default font from the first matching [Theme] in the tree if that "
+"[Theme] has a valid [member Theme.default_font] value.\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:376
+msgid ""
+"Returns the tooltip, which will appear when the cursor is resting over this "
+"control. See [member hint_tooltip]."
+msgstr ""
+
+#: doc/classes/Control.xml:382
+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:392
+msgid ""
+"Steal the focus from another control and become the focused control (see "
+"[member focus_mode])."
+msgstr ""
+
+#: doc/classes/Control.xml:400
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a color item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:408
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme [Color] "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_color_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:417
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a constant item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:425
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme constant "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_constant_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:432
+msgid ""
+"Returns [code]true[/code] if this is the current focused control. See "
+"[member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:440
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a font item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:448
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme [Font] "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_font_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:457
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:465
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme icon with "
+"the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_icon_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:473
+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:482
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme shader "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_shader_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:491
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a stylebox item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:499
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme "
+"[StyleBox] with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_stylebox_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:506
+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:512
+msgid ""
+"Give up the focus. No other control will be able to receive keyboard input."
+msgstr ""
+
+#: doc/classes/Control.xml:522
+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:534
+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:543
+msgid ""
+"Sets both anchor preset and margin preset. See [method set_anchors_preset] "
+"and [method set_margins_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:551
+msgid ""
+"Sets the anchors to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is the code equivalent to using the Layout menu in the 2D "
+"editor.\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's position will "
+"also be updated."
+msgstr ""
+
+#: doc/classes/Control.xml:559
+msgid ""
+"Sets [member margin_left] and [member margin_top] at the same time. "
+"Equivalent of changing [member rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:566
+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:594
+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. You should not free the control, and you should not keep a reference "
+"to the control beyond the duration of the drag. It will be deleted "
+"automatically after the drag has ended.\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:612
+msgid "Sets [member margin_right] and [member margin_bottom] at the same time."
+msgstr ""
+
+#: doc/classes/Control.xml:620
+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:628
+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:637
+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:646
+msgid ""
+"Sets the margins to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is the code equivalent to using the Layout menu in the 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:656
+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:664
+msgid "Sets the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:672
+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:680
+msgid ""
+"Displays a control as modal. Control must be a subwindow. Modal controls "
+"capture the input signals until closed or the area outside them is accessed. "
+"When a modal control loses focus, or the ESC key is pressed, they "
+"automatically hide. Modal controls are used extensively for popup dialogs "
+"and menus.\n"
+"If [code]exclusive[/code] is [code]true[/code], other controls will not "
+"receive input and clicking outside this control will not close it."
+msgstr ""
+
+#: doc/classes/Control.xml:688
+msgid ""
+"Moves the mouse cursor to [code]to_position[/code], relative to [member "
+"rect_position] of this [Control]."
+msgstr ""
+
+#: doc/classes/Control.xml:694
+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:697
+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:700
+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:703
+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:706
+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:709
+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:712
+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:715
+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:718
+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:721
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"Tab 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:725
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"Shift+Tab 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:729
+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:732
+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:735
+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.\n"
+"The tooltip popup will use either a default implementation, or a custom one "
+"that you can provide by overriding [method _make_custom_tooltip]. The "
+"default tooltip includes a [PopupPanel] and [Label] whose theme properties "
+"can be customized using [Theme] methods with the [code]\"TooltipPanel\"[/"
+"code] and [code]\"TooltipLabel\"[/code] respectively. For example:\n"
+"[codeblock]\n"
+"var style_box = StyleBoxFlat.new()\n"
+"style_box.set_bg_color(Color(1, 1, 0))\n"
+"style_box.set_border_width_all(2)\n"
+"# We assume here that the `theme` property has been assigned a custom Theme "
+"beforehand.\n"
+"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
+"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:747
+msgid ""
+"Enables whether input should propagate when you close the control as modal.\n"
+"If [code]false[/code], stops event handling at the viewport input event "
+"handling. The viewport first hides the modal and after marks the input as "
+"handled."
+msgstr ""
+
+#: doc/classes/Control.xml:751
+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:755
+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:759
+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:763
+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:767
+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:771
+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:774
+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:777
+msgid ""
+"The node's global position, relative to the world (usually to the top-left "
+"corner of the window)."
+msgstr ""
+
+#: doc/classes/Control.xml:780
+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:783
+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:786
+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:789
+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:792
+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/3.4/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:797
+msgid ""
+"The size of the node's bounding rectangle, in pixels. [Container] nodes "
+"update this property automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:800
+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:803
+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:806
+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:809
+msgid ""
+"Changing this property replaces the current [Theme] resource this node and "
+"all its [Control] children use."
+msgstr ""
+
+#: doc/classes/Control.xml:815
+msgid "Emitted when the node gains keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:820
+msgid "Emitted when the node loses keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:826
+msgid "Emitted when the node receives an [InputEvent]."
+msgstr ""
+
+#: doc/classes/Control.xml:831
+msgid "Emitted when the node's minimum size changes."
+msgstr ""
+
+#: doc/classes/Control.xml:836
+msgid "Emitted when a modal [Control] is closed. See [method show_modal]."
+msgstr ""
+
+#: doc/classes/Control.xml:841
+msgid ""
+"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it.\n"
+"[b]Note:[/b] [signal mouse_entered] will not be emitted if the mouse enters "
+"a child [Control] node before entering the parent's [code]Rect[/code] area, "
+"at least until the mouse is moved to reach the parent's [code]Rect[/code] "
+"area."
+msgstr ""
+
+#: doc/classes/Control.xml:847
+msgid ""
+"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it.\n"
+"[b]Note:[/b] [signal mouse_exited] will be emitted if the mouse enters a "
+"child [Control] node, even if the mouse cursor is still inside the parent's "
+"[code]Rect[/code] area."
+msgstr ""
+
+#: doc/classes/Control.xml:853
+msgid "Emitted when the control changes size."
+msgstr ""
+
+#: doc/classes/Control.xml:858
+msgid ""
+"Emitted when one of the size flags changes. See [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:864
+msgid "The node cannot grab focus. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:867
+msgid ""
+"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:870
+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:873
+msgid ""
+"Sent when the node changes size. Use [member rect_size] to get the new size."
+msgstr ""
+
+#: doc/classes/Control.xml:876
+msgid "Sent when the mouse pointer enters the node."
+msgstr ""
+
+#: doc/classes/Control.xml:879
+msgid "Sent when the mouse pointer exits the node."
+msgstr ""
+
+#: doc/classes/Control.xml:882
+msgid "Sent when the node grabs focus."
+msgstr ""
+
+#: doc/classes/Control.xml:885
+msgid "Sent when the node loses focus."
+msgstr ""
+
+#: doc/classes/Control.xml:888
+msgid ""
+"Sent when the node's [member theme] changes, right before Godot redraws the "
+"control. Happens when you call one of the [code]add_*_override[/code] "
+"methods."
+msgstr ""
+
+#: doc/classes/Control.xml:891
+msgid "Sent when an open modal dialog closes. See [method show_modal]."
+msgstr ""
+
+#: doc/classes/Control.xml:894
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has begun being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:897
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has stopped being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:900
+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:903
+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:906
+msgid ""
+"Show the system's pointing hand mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:909
+msgid "Show the system's cross mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:912
+msgid ""
+"Show the system's wait mouse cursor, often an hourglass, when the user "
+"hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:915
+msgid ""
+"Show the system's busy mouse cursor when the user hovers the node. Often an "
+"hourglass."
+msgstr ""
+
+#: doc/classes/Control.xml:918
+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:921
+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:924
+msgid ""
+"Show the system's forbidden mouse cursor when the user hovers the node. "
+"Often a crossed circle."
+msgstr ""
+
+#: doc/classes/Control.xml:927
+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:930
+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:933
+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:936
+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:939
+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:942
+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:945
+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:948
+msgid ""
+"Show the system's help mouse cursor when the user hovers the node, a "
+"question mark."
+msgstr ""
+
+#: doc/classes/Control.xml:951
+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:954
+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:957
+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:960
+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:963
+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:966
+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:969
+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:972
+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:975
+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:978
+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:981
+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:984
+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:987
+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:990
+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:993
+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:996
+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:999
+msgid "The control will be resized to its minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:1002
+msgid "The control's width will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1005
+msgid "The control's height will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1008
+msgid "The control's size will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1011
+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:1014
+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:1017
+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:1020
+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:1023
+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:1026
+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:1029
+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:1032
+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:1035
+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:1038
+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:1041
+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:1044
+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:1047
+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/ConvexPolygonShape.xml:4
+msgid "Convex polygon shape for 3D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape.xml:7
+msgid ""
+"Convex polygon shape resource, which can be added to a [PhysicsBody] or area."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape.xml:16
+msgid "The list of 3D points forming the convex polygon shape."
+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:17
+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 Geometry.convex_hull_2d] for details."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:23
+msgid ""
+"The polygon's list of vertices. Can be in either clockwise or "
+"counterclockwise order."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:4
+msgid "CPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:7
+msgid ""
+"CPU-based 3D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [Particles], which provides the same functionality with hardware "
+"acceleration, but may not run on older devices.\n"
+"[b]Note:[/b] Unlike [Particles], the visibility rect is generated on-the-fly "
+"and doesn't need to be configured by the user."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:18
+msgid ""
+"Sets this node's properties to match a given [Particles] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:25 doc/classes/CPUParticles2D.xml:26
+msgid "Returns the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:32 doc/classes/CPUParticles2D.xml:33
+msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:39 doc/classes/CPUParticles2D.xml:40
+msgid ""
+"Returns the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:46 doc/classes/CPUParticles2D.xml:47
+msgid ""
+"Returns the enabled state of the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:52 doc/classes/CPUParticles2D.xml:53
+msgid "Restarts the particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:60 doc/classes/CPUParticles2D.xml:61
+msgid "Sets the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:68 doc/classes/CPUParticles2D.xml:69
+msgid "Sets the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:76 doc/classes/CPUParticles2D.xml:77
+msgid ""
+"Sets the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:84 doc/classes/CPUParticles2D.xml:85
+msgid "Enables or disables the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:90 doc/classes/CPUParticles2D.xml:91
+#: doc/classes/Particles.xml:47 doc/classes/Particles2D.xml:33
+msgid ""
+"The number of particles emitted in one emission cycle (corresponding to the "
+"[member lifetime]).\n"
+"[b]Note:[/b] Changing [member amount] will reset the particle emission, "
+"therefore removing all particles that were already emitted before changing "
+"[member amount]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:94 doc/classes/CPUParticles2D.xml:95
+msgid "Initial rotation applied to each particle, in degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:97 doc/classes/CPUParticles2D.xml:98
+msgid "Each particle's rotation will be animated along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:100 doc/classes/CPUParticles2D.xml:101
+#: doc/classes/ParticlesMaterial.xml:84
+msgid "Rotation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:103 doc/classes/CPUParticles2D.xml:104
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:106 doc/classes/CPUParticles2D.xml:107
+msgid "Each particle's angular velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:109 doc/classes/CPUParticles2D.xml:110
+#: doc/classes/ParticlesMaterial.xml:94
+msgid "Angular velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:112 doc/classes/CPUParticles2D.xml:113
+#: doc/classes/ParticlesMaterial.xml:97
+msgid "Particle animation offset."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:115 doc/classes/CPUParticles2D.xml:116
+msgid "Each particle's animation offset will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:118 doc/classes/CPUParticles2D.xml:119
+#: doc/classes/ParticlesMaterial.xml:103
+msgid "Animation offset randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:121 doc/classes/CPUParticles2D.xml:122
+#: doc/classes/ParticlesMaterial.xml:106
+msgid "Particle animation speed."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:124 doc/classes/CPUParticles2D.xml:125
+msgid "Each particle's animation speed will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:127 doc/classes/CPUParticles2D.xml:128
+#: doc/classes/ParticlesMaterial.xml:112
+msgid "Animation speed randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:130
+msgid ""
+"Each particle's initial color. To have particle display color in a "
+"[SpatialMaterial] make sure to set [member SpatialMaterial."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:133 doc/classes/ParticlesMaterial.xml:118
+msgid ""
+"Each particle's color will vary along this [GradientTexture] over its "
+"lifetime (multiplied with [member color])."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:136 doc/classes/CPUParticles2D.xml:137
+#: doc/classes/ParticlesMaterial.xml:121
+msgid "The rate at which particles lose velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:139 doc/classes/CPUParticles2D.xml:140
+msgid "Damping will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:142 doc/classes/CPUParticles2D.xml:143
+#: doc/classes/ParticlesMaterial.xml:127
+msgid "Damping randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:145 doc/classes/CPUParticles2D.xml:146
+#: doc/classes/ParticlesMaterial.xml:130
+msgid "Unit vector specifying the particles' emission direction."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:148 doc/classes/CPUParticles2D.xml:149
+#: doc/classes/Particles.xml:51 doc/classes/Particles2D.xml:37
+msgid "Particle draw order. Uses [enum DrawOrder] values."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:151
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:154 doc/classes/CPUParticles2D.xml:152
+msgid ""
+"Sets the [Color]s to modulate particles by when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:157 doc/classes/CPUParticles2D.xml:155
+msgid ""
+"Sets the direction the particles will be emitted in when using [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:160 doc/classes/CPUParticles2D.xml:158
+msgid ""
+"Sets the initial positions to spawn particles when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:163
+msgid ""
+"The axis for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:166
+msgid ""
+"The height for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:169
+msgid ""
+"The inner radius for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:172
+msgid ""
+"The radius for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:175 doc/classes/CPUParticles2D.xml:164
+msgid ""
+"Particles will be emitted inside this region. See [enum EmissionShape] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:178
+msgid ""
+"The sphere's radius if [enum EmissionShape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:181 doc/classes/CPUParticles2D.xml:170
+#: doc/classes/Particles.xml:69 doc/classes/Particles2D.xml:40
+msgid "If [code]true[/code], particles are being emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:184 doc/classes/CPUParticles2D.xml:173
+#: doc/classes/Particles2D.xml:43
+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/CPUParticles.xml:187
+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/CPUParticles.xml:190 doc/classes/CPUParticles2D.xml:179
+#: doc/classes/ParticlesMaterial.xml:166
+msgid "Align Y axis of particle with the direction of its velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:193 doc/classes/ParticlesMaterial.xml:169
+msgid "If [code]true[/code], particles will not move on the z axis."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:196 doc/classes/ParticlesMaterial.xml:172
+msgid "If [code]true[/code], particles rotate around Y axis by [member angle]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:199
+msgid ""
+"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
+"particles to X/Z plane."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:202 doc/classes/CPUParticles2D.xml:182
+#: doc/classes/Particles.xml:78 doc/classes/Particles2D.xml:49
+msgid ""
+"If [code]true[/code], results in fractional delta calculation which has a "
+"smoother particles display effect."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:205 doc/classes/CPUParticles2D.xml:185
+#: doc/classes/ParticlesMaterial.xml:178
+msgid "Gravity applied to every particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:208 doc/classes/CPUParticles2D.xml:188
+#: doc/classes/ParticlesMaterial.xml:181
+msgid "Initial hue variation applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:211 doc/classes/CPUParticles2D.xml:191
+msgid "Each particle's hue will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:214 doc/classes/CPUParticles2D.xml:194
+#: doc/classes/ParticlesMaterial.xml:187
+msgid "Hue variation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:217 doc/classes/CPUParticles2D.xml:197
+#: doc/classes/ParticlesMaterial.xml:190
+msgid ""
+"Initial velocity magnitude for each particle. Direction comes from [member "
+"spread] and the node's orientation."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:220 doc/classes/CPUParticles2D.xml:200
+#: doc/classes/ParticlesMaterial.xml:193
+msgid "Initial velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:223 doc/classes/CPUParticles2D.xml:203
+#: doc/classes/Particles.xml:81 doc/classes/Particles2D.xml:52
+msgid "The amount of time each particle will exist (in seconds)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:226 doc/classes/CPUParticles2D.xml:206
+#: doc/classes/ParticlesMaterial.xml:196
+msgid "Particle lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:229 doc/classes/CPUParticles2D.xml:209
+#: doc/classes/ParticlesMaterial.xml:199
+msgid ""
+"Linear acceleration applied to each particle in the direction of motion."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:232 doc/classes/CPUParticles2D.xml:212
+msgid "Each particle's linear acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:235 doc/classes/CPUParticles2D.xml:215
+#: doc/classes/ParticlesMaterial.xml:205
+msgid "Linear acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:238 doc/classes/CPUParticles2D.xml:218
+#: doc/classes/Particles.xml:84 doc/classes/Particles2D.xml:55
+msgid ""
+"If [code]true[/code], particles use the parent node's coordinate space. If "
+"[code]false[/code], they use global coordinates."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:241
+msgid ""
+"The [Mesh] used for each particle. If [code]null[/code], particles will be "
+"spheres."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:244 doc/classes/CPUParticles2D.xml:225
+#: doc/classes/Particles2D.xml:62
+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/CPUParticles.xml:247
+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/CPUParticles.xml:251 doc/classes/CPUParticles2D.xml:231
+msgid "Each particle's orbital velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:254 doc/classes/CPUParticles2D.xml:234
+#: doc/classes/ParticlesMaterial.xml:215
+msgid "Orbital velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:257 doc/classes/CPUParticles2D.xml:237
+#: doc/classes/Particles2D.xml:65
+msgid "Particle system starts as if it had already run for this many seconds."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:260 doc/classes/CPUParticles2D.xml:240
+#: doc/classes/ParticlesMaterial.xml:218
+msgid ""
+"Radial acceleration applied to each particle. Makes particle accelerate away "
+"from origin."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:263 doc/classes/CPUParticles2D.xml:243
+msgid "Each particle's radial acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:266 doc/classes/CPUParticles2D.xml:246
+#: doc/classes/ParticlesMaterial.xml:224
+msgid "Radial acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:269 doc/classes/CPUParticles2D.xml:249
+#: doc/classes/Particles2D.xml:71
+msgid "Emission lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:272 doc/classes/CPUParticles2D.xml:252
+#: doc/classes/ParticlesMaterial.xml:227
+msgid "Initial scale applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:275 doc/classes/CPUParticles2D.xml:255
+msgid "Each particle's scale will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:278 doc/classes/CPUParticles2D.xml:258
+#: doc/classes/ParticlesMaterial.xml:233
+msgid "Scale randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:281 doc/classes/CPUParticles2D.xml:261
+#: doc/classes/Particles2D.xml:74
+msgid ""
+"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
+"be used to pause the particles."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:284
+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/CPUParticles.xml:287 doc/classes/CPUParticles2D.xml:267
+#: doc/classes/ParticlesMaterial.xml:239
+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/CPUParticles.xml:290 doc/classes/CPUParticles2D.xml:270
+msgid "Each particle's tangential acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:293 doc/classes/CPUParticles2D.xml:273
+#: doc/classes/ParticlesMaterial.xml:245
+msgid "Tangential acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:298 doc/classes/CPUParticles2D.xml:281
+#: doc/classes/Particles.xml:109 doc/classes/Particles2D.xml:86
+msgid "Particles are drawn in the order emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:301 doc/classes/CPUParticles2D.xml:284
+#: doc/classes/Particles.xml:112 doc/classes/Particles2D.xml:89
+msgid "Particles are drawn in order of remaining lifetime."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:304 doc/classes/Particles.xml:115
+msgid "Particles are drawn in order of depth."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:307 doc/classes/CPUParticles2D.xml:287
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:310 doc/classes/CPUParticles2D.xml:290
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:313 doc/classes/CPUParticles2D.xml:293
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:316 doc/classes/CPUParticles2D.xml:296
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:319 doc/classes/CPUParticles2D.xml:299
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:322 doc/classes/CPUParticles2D.xml:302
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:325 doc/classes/CPUParticles2D.xml:305
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set damping properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:328 doc/classes/CPUParticles2D.xml:308
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angle properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:331 doc/classes/CPUParticles2D.xml:311
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set scale properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:334 doc/classes/CPUParticles2D.xml:314
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:337 doc/classes/CPUParticles2D.xml:317
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:340 doc/classes/CPUParticles2D.xml:320
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:343 doc/classes/CPUParticles2D.xml:323
+#: doc/classes/ParticlesMaterial.xml:295
+msgid "Represents the size of the [enum Parameter] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:346 doc/classes/CPUParticles2D.xml:326
+msgid "Use with [method set_particle_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:349
+msgid "Use with [method set_particle_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:352
+msgid "Use with [method set_particle_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:355 doc/classes/CPUParticles2D.xml:335
+#: doc/classes/GeometryInstance.xml:109 doc/classes/ParticlesMaterial.xml:307
+#: doc/classes/SpatialMaterial.xml:564
+msgid "Represents the size of the [enum Flags] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:358 doc/classes/CPUParticles2D.xml:338
+#: doc/classes/ParticlesMaterial.xml:310
+msgid "All particles will be emitted from a single point."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:361 doc/classes/ParticlesMaterial.xml:313
+msgid "Particles will be emitted in the volume of a sphere."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:364 doc/classes/ParticlesMaterial.xml:316
+msgid "Particles will be emitted in the volume of a box."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:367 doc/classes/CPUParticles2D.xml:347
+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/CPUParticles.xml:370 doc/classes/CPUParticles2D.xml:350
+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/CPUParticles.xml:373 doc/classes/ParticlesMaterial.xml:325
+msgid "Particles will be emitted in a ring or cylinder."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:376 doc/classes/CPUParticles2D.xml:353
+#: doc/classes/ParticlesMaterial.xml:328
+msgid "Represents the size of the [enum EmissionShape] enum."
+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 [Particles2D], which provides the same functionality with hardware "
+"acceleration, but may not run on older devices.\n"
+"[b]Note:[/b] Unlike [Particles2D], the visibility rect is generated on-the-"
+"fly and doesn't need to be configured by the user."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:12 doc/classes/Particles2D.xml:14
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html"
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:19
+msgid ""
+"Sets this node's properties to match a given [Particles2D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:131
+msgid ""
+"Each particle's initial color. If [member texture] is defined, it will be "
+"multiplied by this color."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:134
+msgid ""
+"Each particle's color will vary along this [Gradient] (multiplied with "
+"[member color])."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:161
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_RECTANGLE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:167
+msgid ""
+"The sphere's radius if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:176 doc/classes/Particles.xml:75
+#: doc/classes/Particles2D.xml:46
+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:221 doc/classes/Particles2D.xml:58
+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:228
+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:264 doc/classes/ParticlesMaterial.xml:236
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:276 doc/classes/Particles2D.xml:77
+msgid "Particle texture. If [code]null[/code], particles will be squares."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:329 doc/classes/CPUParticles2D.xml:332
+msgid "Present for consistency with 3D particle nodes, not used in 2D."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:341
+msgid ""
+"Particles will be emitted on the surface of a sphere flattened to two "
+"dimensions."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:344
+msgid "Particles will be emitted in the area of a rectangle."
+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:47
+msgid ""
+"Compares two [PoolByteArray]s for equality without leaking timing "
+"information in order to prevent timing attacks.\n"
+"See [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
+"string-comparison-with-double-hmac-strategy]this blog post[/url] for more "
+"information."
+msgstr ""
+
+#: doc/classes/Crypto.xml:56
+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:65
+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:73
+msgid ""
+"Generates a [PoolByteArray] of cryptographically secure random bytes with "
+"given [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:80
+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:90
+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:107
+msgid ""
+"Generates an [url=https://en.wikipedia.org/wiki/HMAC]HMAC[/url] digest of "
+"[code]msg[/code] using [code]key[/code]. The [code]hash_type[/code] "
+"parameter is the hashing algorithm that is used for the inner and outer "
+"hashes.\n"
+"Currently, only [constant HashingContext.HASH_SHA256] and [constant "
+"HashingContext.HASH_SHA1] are supported."
+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:127
+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:17
+msgid ""
+"Return [code]true[/code] if this CryptoKey only has the public part, and not "
+"the private one."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:25
+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 be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:34
+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:42
+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 be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:50
+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/CSGBox.xml:4
+msgid "A CSG Box shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:7
+msgid "This node allows you to create a box for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:15
+msgid "Depth of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:18
+msgid "Height of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:21
+msgid "The material used to render the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:24
+msgid "Width of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner.xml:4
+msgid "A CSG node that allows you to combine other CSG modifiers."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner.xml:7
+msgid ""
+"For complex arrangements of shapes, it is sometimes needed to add structure "
+"to your CSG nodes. The CSGCombiner 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 CSGCombiner node, and a set of separate operations on a "
+"second set of shapes that are children of a second CSGCombiner 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/CSGCylinder.xml:4
+msgid "A CSG Cylinder shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:7
+msgid ""
+"This node allows you to create a cylinder (or cone) for use with the CSG "
+"system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.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/CSGCylinder.xml:18
+msgid "The height of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:21
+msgid "The material used to render the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:24
+msgid "The radius of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.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/CSGCylinder.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/CSGMesh.xml:4
+msgid "A CSG Mesh shape that uses a mesh resource."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh.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/CSGMesh.xml:15
+msgid "The [Material] used in drawing the CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh.xml:18
+msgid ""
+"The [Mesh] resource to use as a CSG shape.\n"
+"[b]Note:[/b] When using an [ArrayMesh], avoid meshes with vertex normals "
+"unless a flat shader is required. By default, CSGMesh will ignore the mesh's "
+"vertex normals and use a smooth shader calculated using the faces' normals. "
+"If a flat shader is required, ensure that all faces' vertex normals are "
+"parallel."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:4
+msgid "Extrudes a 2D polygon shape to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:7
+msgid ""
+"An array of 2D points is extruded to quickly and easily create a variety of "
+"3D meshes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:15
+msgid ""
+"When [member mode] is [constant MODE_DEPTH], the depth of the extrusion."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:18
+msgid ""
+"Material to use for the resulting mesh. The UV maps the top half of the "
+"material to the extruded shape (U along the the length of the extrusions and "
+"V around the outline of the [member polygon]), the bottom-left quarter to "
+"the front end face, and the bottom-right quarter to the back end face."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:21
+msgid "The [member mode] used to extrude the [member polygon]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:24
+msgid ""
+"When [member mode] is [constant MODE_PATH], by default, the top half of the "
+"[member material] is stretched along the entire length of the extruded "
+"shape. If [code]false[/code] the top half of the material is repeated every "
+"step of the extrusion."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:27
+msgid ""
+"When [member mode] is [constant MODE_PATH], the path interval or ratio of "
+"path points to extrusions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:30
+msgid ""
+"When [member mode] is [constant MODE_PATH], this will determine if the "
+"interval should be by distance ([constant PATH_INTERVAL_DISTANCE]) or "
+"subdivision fractions ([constant PATH_INTERVAL_SUBDIVIDE])."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:33
+msgid ""
+"When [member mode] is [constant MODE_PATH], if [code]true[/code] the ends of "
+"the path are joined, by adding an extrusion between the last and first "
+"points of the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:36
+msgid ""
+"When [member mode] is [constant MODE_PATH], if [code]true[/code] the "
+"[Transform] of the [CSGPolygon] is used as the starting point for the "
+"extrusions, not the [Transform] of the [member path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:39
+msgid ""
+"When [member mode] is [constant MODE_PATH], the location of the [Path] "
+"object used to extrude the [member polygon]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:42
+msgid ""
+"When [member mode] is [constant MODE_PATH], the [enum PathRotation] method "
+"used to rotate the [member polygon] as it is extruded."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:45
+msgid ""
+"When [member mode] is [constant MODE_PATH], extrusions that are less than "
+"this angle, will be merged together to reduce polygon count."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:48
+msgid ""
+"When [member mode] is [constant MODE_PATH], this is the distance along the "
+"path, in meters, the texture coordinates will tile. When set to 0, texture "
+"coordinates will match geometry exactly with no tiling."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:51
+msgid "The point array that defines the 2D polygon that is extruded."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:54
+msgid "If [code]true[/code], applies smooth shading to the extrusions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:57
+msgid ""
+"When [member mode] is [constant MODE_SPIN], the total number of degrees the "
+"[member polygon] is rotated when extruding."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:60
+msgid ""
+"When [member mode] is [constant MODE_SPIN], the number of extrusions made."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:65
+msgid "The [member polygon] shape is extruded along the negative Z axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:68
+msgid ""
+"The [member polygon] shape is extruded by rotating it around the Y axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:71
+msgid ""
+"The [member polygon] shape is extruded along the [Path] specified in [member "
+"path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:74
+msgid ""
+"The [member polygon] shape is not rotated.\n"
+"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
+"ensure viable shapes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:78
+msgid ""
+"The [member polygon] shape is rotated along the path, but it is not rotated "
+"around the path axis.\n"
+"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
+"ensure viable shapes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:82
+msgid ""
+"The [member polygon] shape follows the path and its rotations around the "
+"path axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:85
+msgid ""
+"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
+"will determine the distance, in meters, each interval of the path will "
+"extrude."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:88
+msgid ""
+"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
+"will subdivide the polygons along the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive.xml:4
+msgid "Base class for CSG primitives."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive.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/CSGPrimitive.xml:15
+msgid "Invert the faces of the mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:4
+msgid "The CSG base class."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.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/CSGShape.xml:16
+#: modules/csg/doc_classes/CSGShape.xml:23 doc/classes/RayCast2D.xml:60
+#: doc/classes/SoftBody.xml:30 doc/classes/SoftBody.xml:37
+msgid "Returns an individual bit on the collision mask."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:29
+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/CSGShape.xml:35
+msgid ""
+"Returns [code]true[/code] if this is a root shape and is thus the object "
+"that is rendered."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:43 doc/classes/SoftBody.xml:66
+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/CSGShape.xml:51 doc/classes/SoftBody.xml:74
+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/CSGShape.xml:57
+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/CSGShape.xml:60
+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. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:65
+msgid ""
+"The physics layers this CSG shape scans for collisions. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:68
+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/CSGShape.xml:71
+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/CSGShape.xml:74
+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/CSGShape.xml:79
+msgid ""
+"Geometry of both primitives is merged, intersecting geometry is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:82
+msgid "Only intersecting geometry remains, the rest is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:85
+msgid ""
+"The second shape is subtracted from the first, leaving a dent with its shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:4
+msgid "A CSG Sphere shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:7
+msgid "This node allows you to create a sphere for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:15
+msgid "The material used to render the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:18
+msgid "Number of vertical slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:21
+msgid "Radius of the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:24
+msgid "Number of horizontal slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.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/CSGTorus.xml:4
+msgid "A CSG Torus shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:7
+msgid "This node allows you to create a torus for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:15
+msgid "The inner radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:18
+msgid "The material used to render the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:21
+msgid "The outer radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:24
+msgid "The number of edges each ring of the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:27
+msgid "The number of slices the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.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/3.4/getting_started/scripting/c_sharp/index."
+"html"
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:18
+#: modules/gdnative/doc_classes/PluginScript.xml:13
+msgid "Returns a new instance of the script."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:4
+msgid "A CubeMap is a 6-sided 3D texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:7
+msgid ""
+"A 6-sided 3D texture typically used for faking reflections. It can be used "
+"to make an object look as if it's reflecting its surroundings. This usually "
+"delivers much better performance than other reflection methods."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:15
+msgid "Returns the [CubeMap]'s height."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:22
+msgid ""
+"Returns an [Image] for a side of the [CubeMap] using one of the [enum Side] "
+"constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:28
+msgid "Returns the [CubeMap]'s width."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:36
+msgid ""
+"Sets an [Image] for a side of the [CubeMap] using one of the [enum Side] "
+"constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:42
+msgid ""
+"The render flags for the [CubeMap]. See the [enum Flags] constants for "
+"details."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:45
+msgid ""
+"The lossy storage quality of the [CubeMap] if the storage mode is set to "
+"[constant STORAGE_COMPRESS_LOSSY]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:48
+msgid "The [CubeMap]'s storage mode. See [enum Storage] constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:53
+msgid "Store the [CubeMap] without any compression."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:56
+msgid "Store the [CubeMap] with strong compression that reduces image quality."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:59
+msgid ""
+"Store the [CubeMap] with moderate compression that doesn't reduce image "
+"quality."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:62
+msgid "Identifier for the left face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:65
+msgid "Identifier for the right face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:68
+msgid "Identifier for the bottom face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:71
+msgid "Identifier for the top face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:74
+msgid "Identifier for the front face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:77
+msgid "Identifier for the back face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:80
+msgid "Generate mipmaps, to enable smooth zooming out of the texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:83
+msgid "Repeat (instead of clamp to edge)."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:86
+msgid "Turn on magnifying filter, to enable smooth zooming in of the texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:89
+msgid "Default flags. Generate mipmaps, repeat, and filter are enabled."
+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].\n"
+"[b]Note:[/b] When using a large textured [CubeMesh] (e.g. as a floor), you "
+"may stumble upon UV jittering issues depending on the camera angle. To solve "
+"this, increase [member subdivide_depth], [member subdivide_height] and "
+"[member subdivide_width] until you no longer notice UV jittering."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:17
+msgid "Size of the cuboid mesh."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:20
+msgid "Number of extra edge loops inserted along the Z axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:23
+msgid "Number of extra edge loops inserted along the Y axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:26
+msgid "Number of extra edge loops inserted along the X axis."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:4
+msgid "Parent of all nodes that can be culled by the Portal system."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:7
+msgid ""
+"Provides common functionality to nodes that can be culled by the [Portal] "
+"system.\n"
+"[code]Static[/code] and [code]Dynamic[/code] objects are the most "
+"efficiently managed objects in the system, but there are some caveats. They "
+"are expected to be present initially when [Room]s are converted using the "
+"[RoomManager] [code]rooms_convert[/code] function, and their lifetime should "
+"be the same as the game level (i.e. present until you call "
+"[code]rooms_clear[/code] on the [RoomManager]. Although you shouldn't "
+"create / delete these objects during gameplay, you can manage their "
+"visibility with the standard [code]hide[/code] and [code]show[/code] "
+"commands.\n"
+"[code]Roaming[/code] objects on the other hand, require extra processing to "
+"keep track of which [Room] they are within. This enables them to be culled "
+"effectively, wherever they are.\n"
+"[code]Global[/code] objects are not culled by the portal system, and use "
+"view frustum culling only.\n"
+"Objects that are not [code]Static[/code] or [code]Dynamic[/code] can be "
+"freely created and deleted during the lifetime of the game level."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:19
+msgid ""
+"When set to [code]0[/code], [CullInstance]s will be autoplaced in the [Room] "
+"with the highest priority.\n"
+"When set to a value other than [code]0[/code], the system will attempt to "
+"autoplace in a [Room] with the [code]autoplace_priority[/code], if it is "
+"present.\n"
+"This can be used to control autoplacement of building exteriors in an outer "
+"[RoomGroup]."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:24
+msgid ""
+"When a manual bound has not been explicitly specified for a [Room], the "
+"convex hull bound will be estimated from the geometry of the objects within "
+"the room. This setting determines whether the geometry of an object is "
+"included in this estimate of the room bound.\n"
+"[b]Note:[/b] This setting is only relevant when the object is set to "
+"[code]PORTAL_MODE_STATIC[/code] or [code]PORTAL_MODE_DYNAMIC[/code], and for "
+"[Portal]s."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:28
+msgid ""
+"When using [Room]s and [Portal]s, this specifies how the [CullInstance] is "
+"processed in the system."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:33
+msgid ""
+"Use for instances within [Room]s that will [b]not move[/b] - e.g. walls, "
+"floors.\n"
+"[b]Note:[/b] If you attempt to delete a [code]PORTAL_MODE_STATIC[/code] "
+"instance while the room graph is loaded (converted), it will unload the room "
+"graph and deactivate portal culling. This is because the [b]room graph[/b] "
+"data has been invalidated. You will need to reconvert the rooms using the "
+"[RoomManager] to activate the system again."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:37
+msgid ""
+"Use for instances within rooms that will move but [b]not change room[/b] - e."
+"g. moving platforms.\n"
+"[b]Note:[/b] If you attempt to delete a [code]PORTAL_MODE_DYNAMIC[/code] "
+"instance while the room graph is loaded (converted), it will unload the room "
+"graph and deactivate portal culling. This is because the [b]room graph[/b] "
+"data has been invalidated. You will need to reconvert the rooms using the "
+"[RoomManager] to activate the system again."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:41
+msgid "Use for instances that will move [b]between[/b] [Room]s - e.g. players."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:44
+msgid ""
+"Use for instances that will be frustum culled only - e.g. first person "
+"weapon, debug."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:47
+msgid ""
+"Use for instances that will not be shown at all - e.g. [b]manual room "
+"bounds[/b] (specified by prefix [i]'Bound_'[/i])."
+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:20
+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:26
+msgid "Recomputes the baked cache of points for the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:32
+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:38 doc/classes/Curve2D.xml:27
+#: doc/classes/Curve3D.xml:27
+msgid "Removes all points from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:44 doc/classes/Curve2D.xml:61
+#: doc/classes/Curve3D.xml:74
+msgid "Returns the number of points describing the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:51
+msgid ""
+"Returns the left [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:58
+msgid ""
+"Returns the left tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:65
+msgid "Returns the curve coordinates for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:72
+msgid ""
+"Returns the right [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:79
+msgid ""
+"Returns the right tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:86
+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:93
+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:100
+msgid "Removes the point at [code]index[/code] from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:108
+msgid ""
+"Sets the left [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:116
+msgid ""
+"Sets the left tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:124
+msgid "Sets the offset from [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:132
+msgid ""
+"Sets the right [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:140
+msgid ""
+"Sets the right tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:148
+msgid ""
+"Assigns the vertical position [code]y[/code] to the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:154
+msgid "The number of points to include in the baked (i.e. cached) curve data."
+msgstr ""
+
+#: doc/classes/Curve.xml:157
+msgid "The maximum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:160
+msgid "The minimum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:166
+msgid "Emitted when [member max_value] or [member min_value] is changed."
+msgstr ""
+
+#: doc/classes/Curve.xml:172
+msgid "The tangent on this side of the point is user-defined."
+msgstr ""
+
+#: doc/classes/Curve.xml:175
+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:178
+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:20 doc/classes/Curve3D.xml:20
+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:33 doc/classes/Curve3D.xml:33
+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:39
+msgid "Returns the cache of points as a [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:46
+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:54 doc/classes/Curve3D.xml:67
+msgid ""
+"Returns the closest baked 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:68
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. The returned position is relative 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:75
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. The returned position is relative 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:82
+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:90
+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:99
+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:108 doc/classes/Curve3D.xml:138
+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:115 doc/classes/Curve3D.xml:145
+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:123 doc/classes/Curve3D.xml:153
+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. The position is relative to the vertex."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:131 doc/classes/Curve3D.xml:161
+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. The position is relative to the vertex."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:139 doc/classes/Curve3D.xml:169
+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:147 doc/classes/Curve3D.xml:186
+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:156
+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 [Path], 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:39
+msgid "Returns the cache of points as a [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:45
+msgid "Returns the cache of tilts as a [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:51
+msgid ""
+"Returns the cache of up vectors as a [PoolVector3Array].\n"
+"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:59
+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:81
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. The returned position is relative 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:88
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. The returned position is relative 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:95
+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:102
+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:110
+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:119
+msgid ""
+"Returns a point 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 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/Curve3D.xml:129
+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:177
+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 [PathFollow], this "
+"tilt is an offset over the natural tilt the [PathFollow] calculates."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:195
+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:198
+msgid ""
+"If [code]true[/code], the curve will bake up vectors used for orientation. "
+"This is used when [member PathFollow.rotation_mode] is set to [constant "
+"PathFollow.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 [code]0.0[/code]."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:15
+msgid ""
+"Bottom radius of the cylinder. If set to [code]0.0[/code], the bottom faces "
+"will not be generated, resulting in a conic shape."
+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. Higher values result in a more "
+"detailed cylinder/cone at the cost of performance."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:24
+msgid ""
+"Number of edge rings along the height of the cylinder. Changing [member "
+"rings] does not have any visual impact unless a shader or procedural mesh "
+"tool is used to alter the vertex data. Higher values result in more "
+"subdivisions, which can be used to create smoother-looking effects with "
+"shaders or procedural mesh tools (at the cost of performance). When not "
+"altering the vertex data using a shader or procedural mesh tool, [member "
+"rings] should be kept to its default value."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:27
+msgid ""
+"Top radius of the cylinder. If set to [code]0.0[/code], the top faces will "
+"not be generated, resulting in a conic shape."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:4 doc/classes/CylinderShape.xml:7
+msgid "Cylinder shape for collisions."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:18
+msgid "The cylinder's height."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:21
+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/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 a 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_dict = {} # Creates an empty dictionary.\n"
+"\n"
+"var dict_variable_key = \"Another key name\"\n"
+"var dict_variable_value = \"value2\"\n"
+"var another_dict = {\n"
+" \"Some key name\": \"value1\",\n"
+" dict_variable_key: dict_variable_value,\n"
+"}\n"
+"\n"
+"var points_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"\n"
+"# Alternative Lua-style syntax.\n"
+"# Doesn't require quotes around keys, but only string constants can be used "
+"as key names.\n"
+"# Additionally, key names must start with a letter or an underscore.\n"
+"# Here, `some_key` is a string literal, not a variable!\n"
+"another_dict = {\n"
+" some_key = 42,\n"
+"}\n"
+"[/codeblock]\n"
+"You can access a dictionary's values by referencing the appropriate key. In "
+"the above example, [code]points_dict[\"White\"][/code] will return [code]50[/"
+"code]. You can also write [code]points_dict.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_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"func _ready():\n"
+" # We can't use dot syntax here as `my_color` is a variable.\n"
+" var points = points_dict[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_dict = {\"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_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"points_dict[\"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_dict.sub_dict."
+"sub_key` or `my_dict[\"sub_dict\"][\"sub_key\"]`.\n"
+"# Indexing styles can be mixed and matched depending on your needs.\n"
+"var my_dict = {\n"
+" \"String Key\": 5,\n"
+" 4: [1, 2, 3],\n"
+" 7: \"Hello\",\n"
+" \"sub_dict\": {\"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"
+"var dict1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"var dict2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dict1 == dict2) # 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"
+"var dict1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"var dict2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dict1.hash() == dict2.hash()) # Will print true.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] When declaring a dictionary with [code]const[/code], the "
+"dictionary itself can still be mutated by defining the values of individual "
+"keys. Using [code]const[/code] will only prevent assigning the constant with "
+"another value after it was initialized."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:87
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:94
+msgid "Clear the dictionary, removing all key/value pairs."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:101
+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:107
+msgid "Returns [code]true[/code] if the dictionary is empty."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:114
+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.\n"
+"[b]Note:[/b] Don't erase elements while iterating over the dictionary. You "
+"can iterate over the [method keys] array instead."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:123
+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:130
+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 the keys in the given "
+"array."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:150
+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:163
+msgid "Returns the list of keys in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:169
+msgid "Returns the number of keys in the dictionary."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:175
+msgid "Returns the list of values in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:4
+msgid "Directional light from a distance, as from the Sun."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:7
+msgid ""
+"A directional light is a type of [Light] 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 DirectionalLight transform "
+"(origin) is ignored. Only the basis is used to determine light direction."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:10 doc/classes/Light.xml:10
+#: doc/classes/OmniLight.xml:11 doc/classes/SpotLight.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html"
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:16
+msgid ""
+"Amount of extra bias for shadow splits that are far away. If self-shadowing "
+"occurs only on the splits far away, increasing this value can fix them."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:19
+msgid ""
+"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
+"transitions between splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:22
+msgid ""
+"Optimizes shadow rendering for detail versus movement. See [enum "
+"ShadowDepthRange]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:25
+msgid "The maximum distance for shadow splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:28
+msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:31
+msgid ""
+"Can be used to fix special cases of self shadowing when objects are "
+"perpendicular to the light."
+msgstr ""
+
+#: doc/classes/DirectionalLight.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/DirectionalLight.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/DirectionalLight.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/DirectionalLight.xml:46
+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/DirectionalLight.xml:49
+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/DirectionalLight.xml:52
+msgid ""
+"Splits the view frustum in 4 areas, each with its own shadow map. This is "
+"the slowest directional shadow mode."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:55
+msgid ""
+"Keeps the shadow stable when the camera moves, at the cost of lower "
+"effective shadow resolution."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:58
+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], 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"
+"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
+"files), and their source asset will not be included in the exported game, as "
+"only the imported version is used. Use [ResourceLoader] to access imported "
+"resources.\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:28 doc/classes/File.xml:28
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem."
+"html"
+msgstr ""
+
+#: doc/classes/Directory.xml:35
+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:44
+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:51
+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:58
+msgid ""
+"Returns whether the target directory exists. The argument can be relative to "
+"the current directory, or an absolute path."
+msgstr ""
+
+#: doc/classes/Directory.xml:65
+msgid ""
+"Returns whether the target file exists. The argument can be relative to the "
+"current directory, or an absolute path."
+msgstr ""
+
+#: doc/classes/Directory.xml:71
+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:77
+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:84
+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 exist, the method returns an empty String."
+msgstr ""
+
+#: doc/classes/Directory.xml:90
+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:96
+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:103
+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:111
+msgid ""
+"Initializes the stream used to list all files and directories using the "
+"[method get_next] function, closing the currently 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:119
+msgid ""
+"Closes the current stream opened with [method list_dir_begin] (whether it "
+"has been fully processed with [method get_next] does not matter)."
+msgstr ""
+
+#: doc/classes/Directory.xml:126
+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:134
+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:142
+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:150
+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:159
+msgid ""
+"Renames (move) the [code]from[/code] file or directory to the [code]to[/"
+"code] destination. Both arguments should be paths to files or directories, "
+"either relative or absolute. If the destination file or directory 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/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:70
+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:77
+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 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 fallback "
+"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. Supported formats are TrueType ([code].ttf[/code]), "
+"OpenType ([code].otf[/code]) and Web Open Font Format 1 ([code].woff[/"
+"code]). Web Open Font Format 2 ([code].woff2[/code]) is [i]not[/i] "
+"supported.\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 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 > Generate Fonts[/b], click [b]Options[/b], choose "
+"the desired features then generate the font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:25
+msgid "Adds a fallback font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:31
+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:39
+msgid "Returns the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:45
+msgid "Returns the number of fallback fonts."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:52
+msgid ""
+"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:59
+msgid "Removes the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:67
+msgid "Sets the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:75
+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:81
+msgid "Extra spacing at the bottom in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:84
+msgid ""
+"Extra spacing for each character in pixels.\n"
+"This can be a negative number to make the distance between characters "
+"smaller."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:88
+msgid ""
+"Extra spacing for the space character (in addition to [member "
+"extra_spacing_char]) in pixels.\n"
+"This can be a negative number to make the distance between words smaller."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:92
+msgid "Extra spacing at the top in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:95
+msgid "The font data."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:98
+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:102
+msgid "The font outline's thickness in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:105
+msgid "The font size in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:108
+msgid ""
+"If [code]true[/code], filtering is used. This makes the font blurry instead "
+"of pixelated when scaling it if font oversampling is disabled or "
+"ineffective. It's recommended to enable this when using the font in a "
+"control whose size changes over time, unless a pixel art aesthetic is "
+"desired."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:111
+msgid ""
+"If [code]true[/code], mipmapping is used. This improves the font's "
+"appearance when downscaling it if font oversampling is disabled or "
+"ineffective."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:116
+msgid "Spacing at the top."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:119
+msgid "Spacing at the bottom."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:122
+msgid "Spacing for each character."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:125
+msgid "Spacing for the space character."
+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:16
+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:19
+msgid "The path to the vector font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:22
+msgid "The font hinting mode used by FreeType. See [enum Hinting] for options."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:27
+msgid "Disables font hinting (smoother but less crisp)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:30
+msgid "Use the light font hinting mode."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:33
+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 the project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:7
+msgid ""
+"Editor export plugins are automatically activated whenever the user exports "
+"the project. Their most common use is to determine what files are being "
+"included in the exported project. For each plugin, [method _export_begin] is "
+"called at the beginning of the export process and then [method _export_file] "
+"is called for each exported file."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:19
+msgid ""
+"Virtual method to be overridden by the user. It is called when the export "
+"starts and provides all information about the export. [code]features[/code] "
+"is the list of features for the export, [code]is_debug[/code] is [code]true[/"
+"code] for debug builds, [code]path[/code] is the target path for the "
+"exported project. [code]flags[/code] is only used when running a runnable "
+"profile, e.g. when using native run on Android."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:25
+msgid ""
+"Virtual method to be overridden by the user. Called when the export is "
+"finished."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:34
+msgid ""
+"Virtual method to be overridden by the user. Called for each exported file, "
+"providing arguments that can be used to identify the file. [code]path[/code] "
+"is the path of the file, [code]type[/code] is the [Resource] represented by "
+"the file (e.g. [PackedScene]) and [code]features[/code] is the list of "
+"features for the export.\n"
+"Calling [method skip] inside this callback will make the file not included "
+"in the export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:44
+msgid ""
+"Adds a custom file to be exported. [code]path[/code] is the virtual path "
+"that can be used to load the file, [code]file[/code] is the binary data of "
+"the file. If [code]remap[/code] is [code]true[/code], file will not be "
+"exported, but instead remapped to the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:51
+msgid ""
+"Adds an iOS bundle file from the given [code]path[/code] to the exported "
+"project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:58
+msgid ""
+"Adds a C++ code to the iOS export. The final code is created from the code "
+"appended by each active export plugin."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:65
+msgid ""
+"Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's "
+"Xcode project and embeds it into resulting binary.\n"
+"[b]Note:[/b] For static libraries (*.a) works in same way as [method "
+"add_ios_framework].\n"
+"This method should not be used for System libraries as they are already "
+"present on the device."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:74
+msgid ""
+"Adds a static library (*.a) or dynamic library (*.dylib, *.framework) to "
+"Linking Phase in iOS's Xcode project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:81
+msgid "Adds linker flags for the iOS export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:88
+msgid "Adds content for iOS Property List files."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:95
+msgid "Adds a static lib from the given [code]path[/code] to the iOS project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:103
+msgid ""
+"Adds a shared object with the given [code]tags[/code] and destination "
+"[code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:109
+msgid ""
+"To be called inside [method _export_file]. Skips the current file, so it's "
+"not included in the export."
+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:17
+msgid "Returns the specified [code]feature[/code]'s human-readable name."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:24
+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:31
+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:39
+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:46
+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:53
+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:60
+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:68
+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:76
+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:85
+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:93
+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:99
+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:102
+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:105
+msgid ""
+"The AssetLib tab. If this feature is disabled, the AssetLib tab won't "
+"display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:108
+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:111
+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:114
+msgid ""
+"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
+"be visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:117
+msgid ""
+"The Import dock. If this feature is disabled, the Import dock won't be "
+"visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:120 doc/classes/SpatialMaterial.xml:471
+msgid "Represents the size of the [enum Feature] enum."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:4
+msgid "A modified version of [FileDialog] used by the editor."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:15
+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:22
+msgid "Removes all filters except for \"All Files (*)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:28
+msgid ""
+"Returns the [code]VBoxContainer[/code] used to display the file system.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:35
+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:41
+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:44
+msgid "The currently occupied directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:47
+msgid "The currently selected file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:50
+msgid "The file system path in the address bar."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:54
+msgid ""
+"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
+"overwriting files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:57
+msgid ""
+"The view format in which the [EditorFileDialog] displays resources to the "
+"user."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:60
+msgid ""
+"The purpose of the [EditorFileDialog], which defines the allowed behaviors."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:64
+msgid ""
+"If [code]true[/code], hidden files and directories will be visible in the "
+"[EditorFileDialog]."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:72
+msgid "Emitted when a directory is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:78
+msgid "Emitted when a file is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:84
+msgid "Emitted when multiple files are selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:90
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"open the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:93
+msgid ""
+"The [EditorFileDialog] can select multiple files. Accepting the window will "
+"open all files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:96
+msgid ""
+"The [EditorFileDialog] can select only one directory. Accepting the window "
+"will open the directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:99
+msgid ""
+"The [EditorFileDialog] can select a file or directory. Accepting the window "
+"will open it."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:102
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"save the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:105
+msgid ""
+"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:108
+msgid ""
+"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:111
+msgid "The [EditorFileDialog] can view the entire local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:114
+msgid "The [EditorFileDialog] displays resources as thumbnails."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:117
+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:17
+msgid ""
+"Returns the resource type of the file, given the full path. This returns a "
+"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
+"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:23
+msgid "Gets the root directory object."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:30
+msgid "Returns a view into the filesystem at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:36
+msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:42
+msgid "Returns [code]true[/code] of the filesystem is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:48
+msgid "Scan the filesystem for changes."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:54
+msgid "Check if the source of any imported resource changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:61
+msgid ""
+"Update a file information. Call this if an external program (not Godot) "
+"modified the file."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:67
+msgid "Scans the script files and updates the list of custom class names."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:74
+msgid "Emitted if the filesystem changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:80
+msgid "Emitted if a resource is reimported."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:86
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:92
+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:16
+msgid ""
+"Returns the index of the directory with name [code]name[/code] or [code]-1[/"
+"code] if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:23
+msgid ""
+"Returns the index of the file with name [code]name[/code] or [code]-1[/code] "
+"if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:30
+msgid "Returns the name of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:36
+msgid "Returns the number of files in this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:43
+msgid ""
+"Returns [code]true[/code] if the file at index [code]idx[/code] imported "
+"properly."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:50
+msgid "Returns the path to the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:57
+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:64
+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:71
+msgid ""
+"Returns the resource type of the file at index [code]idx[/code]. This "
+"returns a string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/"
+"code], [i]not[/i] a file extension such as [code]\".gd\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:77
+msgid "Returns the name of this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:83
+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:89
+msgid "Returns the path to this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:96
+msgid "Returns the subdirectory at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:102
+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 (see "
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_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\"\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"
+" return ResourceSaver.save(filename, mesh)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:51 doc/classes/ResourceImporter.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins."
+"html"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:58
+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:64
+msgid ""
+"Gets the order of this importer to be run when importing resources. "
+"Importers with [i]lower[/i] import orders will be called first, and higher "
+"values will be called later. Use this to ensure the importer runs after the "
+"dependencies are already imported. The default import order is [code]0[/"
+"code] unless overridden by a specific importer. See [enum ResourceImporter."
+"ImportOrder] for some predefined values."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:70
+msgid "Gets the unique name of the importer."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:78
+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:93
+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:100
+msgid "Gets the name of the options preset at this index."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:106
+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:112
+msgid ""
+"Gets the list of file extensions to associate with this loader (case-"
+"insensitive). e.g. [code][\"obj\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:118
+msgid ""
+"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
+"\"[/code] or [code]\"Animation\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:124
+msgid ""
+"Gets the extension used to save this resource in the [code].import[/code] "
+"directory (see [member ProjectSettings.application/config/"
+"use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:130
+msgid ""
+"Gets the name to display in the import window. You should choose this name "
+"as a continuation to \"Import as\", e.g. \"Import as Special Mesh\"."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:141
+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 [Sprite] 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:16
+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:28
+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:34
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:40
+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:46
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:53
+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:61
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:66
+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 ""
+"These plugins allow 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:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
+"inspector_plugins.html"
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:23
+msgid "Adds a custom control, which is not necessarily a property editor."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:31
+msgid ""
+"Adds a property editor for an individual property. The [code]editor[/code] "
+"control must extend [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:40
+msgid ""
+"Adds an editor that allows modifying multiple properties. The [code]editor[/"
+"code] control must extend [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:47
+msgid "Returns [code]true[/code] if this object can be handled by this plugin."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:54
+msgid "Called to allow adding controls at the beginning of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:62
+msgid "Called to allow adding controls at the beginning of the category."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:68
+msgid "Called to allow adding controls at the end of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:80
+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:17
+msgid ""
+"Edits the given [Node]. The node will be also selected if it's inside the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:24
+msgid "Edits the given [Resource]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:30
+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.\n"
+"[b]Warning:[/b] Removing and freeing this node will render the editor "
+"useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:37
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:43
+msgid "Returns the edited (current) scene's root [Node]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:49
+msgid ""
+"Returns the actual scale of the editor UI ([code]1.0[/code] being 100% "
+"scale). This can be used to adjust position and dimensions of the UI added "
+"by plugins.\n"
+"[b]Note:[/b] This value is set via the [code]interface/editor/display_scale[/"
+"code] and [code]interface/editor/custom_display_scale[/code] editor "
+"settings. Editor must be restarted for changes to be properly applied."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:56
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+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.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:70
+msgid ""
+"Returns the editor's [FileSystemDock] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:77
+msgid ""
+"Returns the editor's [EditorInspector] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:84
+msgid "Returns an [Array] with the file paths of the currently opened scenes."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+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:96
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:102
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:108
+msgid ""
+"Returns the editor's [ScriptEditor] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:115
+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:121
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:130
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
+"Inspector dock. If [code]inspector_only[/code] is [code]true[/code], plugins "
+"will not attempt to edit [code]object[/code]."
+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:143
+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:151
+msgid ""
+"Returns mesh previews rendered at the given size as an [Array] of [Texture]s."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:158
+msgid "Opens the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:164
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:171
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:177
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:184
+msgid "Reloads the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:190
+msgid ""
+"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
+"code] (see [@GlobalScope] constants)."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:198
+msgid "Saves the scene as a file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:205
+msgid ""
+"Selects the file, with the path provided by [code]file[/code], in the "
+"FileSystem dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:212
+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:220
+msgid ""
+"Sets the enabled status of a plugin. The plugin name is the same as its "
+"directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:226
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:232
+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/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/3.4/tutorials/plugins/editor/index.html"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:18
+msgid ""
+"Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:26
+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:34
+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:44
+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:56
+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 "
+"(ie, \"Spatial\", \"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:66
+msgid ""
+"Registers a new [EditorExportPlugin]. Export plugins are used to perform "
+"tasks when the project is being exported.\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:74
+msgid ""
+"Registers a new [EditorImportPlugin]. Import plugins are used to import "
+"custom and unsupported assets as a custom [Resource] type.\n"
+"[b]Note:[/b] If you want to import custom 3D asset formats use [method "
+"add_scene_import_plugin] instead.\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:83
+msgid ""
+"Registers a new [EditorInspectorPlugin]. Inspector plugins are used to "
+"extend [EditorInspector] and provide custom configuration tools for your "
+"object's properties.\n"
+"[b]Note:[/b] Always use [method remove_inspector_plugin] to remove the "
+"registered [EditorInspectorPlugin] when your [EditorPlugin] is disabled to "
+"prevent leaks and an unexpected behavior.\n"
+"[codeblock]\n"
+"const MyInspectorPlugin = preload(\"res://addons/your_addon/path/to/your/"
+"script.gd\")\n"
+"var inspector_plugin = MyInspectorPlugin.new()\n"
+"\n"
+"func _enter_tree():\n"
+" add_inspector_plugin(inspector_plugin)\n"
+"\n"
+"func _exit_tree():\n"
+" remove_inspector_plugin(inspector_plugin)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:101
+msgid ""
+"Registers a new [EditorSceneImporter]. Scene importers are used to import "
+"custom 3D asset formats as scenes."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:108
+msgid ""
+"Registers a new [EditorSpatialGizmoPlugin]. Gizmo plugins are used to add "
+"custom gizmos to the 3D preview viewport for a [Spatial].\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:119
+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:127
+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:133
+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:140
+msgid ""
+"This method is called when the editor is about to run the project. The "
+"plugin can then perform required operations before the project runs.\n"
+"This method must return a boolean. If this method returns [code]false[/"
+"code], the project will not run. The run is aborted immediately, so this "
+"also prevents all other plugins' [method build] methods from running."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:147
+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:153
+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:160
+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:166
+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:173
+msgid ""
+"Called by the engine when the 2D editor's viewport is updated. Use the "
+"[code]overlay[/code] [Control] for drawing. You can update the viewport "
+"manually by calling [method update_overlays].\n"
+"[codeblock]\n"
+"func forward_canvas_draw_over_viewport(overlay):\n"
+" # Draw a circle at cursor position.\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64, Color."
+"white)\n"
+"\n"
+"func forward_canvas_gui_input(event):\n"
+" if event is InputEventMouseMotion:\n"
+" # Redraw viewport when cursor is moved.\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:192
+msgid ""
+"This method is the same as [method forward_canvas_draw_over_viewport], "
+"except it draws on top of everything. Useful when you need an extra layer "
+"that shows over anything else.\n"
+"You need to enable calling of this method by using [method "
+"set_force_draw_over_forwarding_enabled]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:200
+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:222
+msgid ""
+"Called by the engine when the 3D editor's viewport is updated. Use the "
+"[code]overlay[/code] [Control] for drawing. You can update the viewport "
+"manually by calling [method update_overlays].\n"
+"[codeblock]\n"
+"func forward_spatial_draw_over_viewport(overlay):\n"
+" # Draw a circle at cursor position.\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64)\n"
+"\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" if event is InputEventMouseMotion:\n"
+" # Redraw viewport when cursor is moved.\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:241
+msgid ""
+"This method is the same as [method forward_spatial_draw_over_viewport], "
+"except it draws on top of everything. Useful when you need an extra layer "
+"that shows over anything else.\n"
+"You need to enable calling of this method by using [method "
+"set_force_draw_over_forwarding_enabled]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:250
+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:271
+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:277
+msgid ""
+"Returns the [EditorInterface] object that gives you control over Godot "
+"editor's window and its functionalities."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:283
+msgid ""
+"Override this method in your plugin to return a [Texture] 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:305
+msgid ""
+"Gets the Editor's dialogue used for making scripts.\n"
+"[b]Note:[/b] Users can configure it before use.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:313
+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:319
+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:326
+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:333
+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:339
+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:345
+msgid "Minimizes the bottom panel."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:352
+msgid "Makes a specific item in the bottom panel visible."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:359
+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:366
+msgid "Queue save the project's editor layout."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:373
+msgid "Removes an Autoload [code]name[/code] from the list."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:380
+msgid ""
+"Removes the control from the bottom panel. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:388
+msgid ""
+"Removes the control from the specified container. You have to manually "
+"[method Node.queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:395
+msgid ""
+"Removes the control from the dock. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:402
+msgid "Removes a custom type added by [method add_custom_type]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:409
+msgid "Removes an export plugin registered by [method add_export_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:416
+msgid "Removes an import plugin registered by [method add_import_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:423
+msgid "Removes an inspector plugin registered by [method add_import_plugin]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:430
+msgid ""
+"Removes a scene importer registered by [method add_scene_import_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:437
+msgid "Removes a gizmo plugin registered by [method add_spatial_gizmo_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:444
+msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:450
+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:456
+msgid ""
+"Enables calling of [method forward_canvas_force_draw_over_viewport] for the "
+"2D editor and [method forward_spatial_force_draw_over_viewport] for the 3D "
+"editor when their viewports are updated. You need to call this method only "
+"once and it will work permanently for this plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:462
+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:469
+msgid "Restore the state saved by [method get_state]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:476
+msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:482
+msgid ""
+"Updates the overlays of the 2D and 3D editor viewport. Causes methods "
+"[method forward_canvas_draw_over_viewport], [method "
+"forward_canvas_force_draw_over_viewport], [method "
+"forward_spatial_draw_over_viewport] and [method "
+"forward_spatial_force_draw_over_viewport] to be called."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:490
+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:501
+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:507
+msgid ""
+"Emitted when user closes a scene. The argument is file path to a closed "
+"scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:553
+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:16
+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:26
+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:32
+msgid "Gets the edited object."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:38
+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:44
+msgid "Must be implemented to provide a custom tooltip to the property editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:51
+msgid ""
+"Puts the [code]editor[/code] control below the property label. The control "
+"must be previously added using [method Node.add_child]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:57
+msgid "When this virtual function is called, you must update your editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:63
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:66
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:69
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is drawn "
+"with the editor theme's warning color. This is used for editable children's "
+"properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:72
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:75
+msgid "Set this property to change the label (if you want to show one)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:78
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:86
+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:93
+msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:100
+msgid ""
+"Do not emit this manually, use the [method emit_changed] method instead."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:107
+msgid "Emitted when a property was checked. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:113
+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:120
+msgid "Emit it if you want to key a property with a single value."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:127
+msgid ""
+"If you want a sub-resource to be edited, emit this signal with the resource."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:134
+msgid "Emitted when selected. Used internally."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:4
+msgid "Godot editor's control for selecting [Resource] type properties."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:7
+msgid ""
+"This [Control] node is used in the editor's Inspector dock to allow editing "
+"of [Resource] type properties. It provides options for creating, loading, "
+"saving and converting resources. Can be used with [EditorInspectorPlugin] to "
+"recreate the same behavior.\n"
+"[b]Note:[/b] This [Control] does not include any editor for the resource, as "
+"editing is controlled by the Inspector dock itself or sub-Inspectors."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:32
+msgid ""
+"Returns a list of all allowed types and subtypes corresponding to the "
+"[member base_type]. If the [member base_type] is empty, an empty list is "
+"returned."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:46
+msgid ""
+"This virtual method can be implemented to handle context menu items not "
+"handled by default. See [method set_create_options]."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:53
+msgid ""
+"This virtual method is called when updating the context menu of "
+"[EditorResourcePicker]. Implement this method to override the \"New ...\" "
+"items with your own options. [code]menu_node[/code] is a reference to the "
+"[PopupMenu] node.\n"
+"[b]Note:[/b] Implement [method handle_menu_selected] to handle these custom "
+"items."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:61
+msgid ""
+"Sets the toggle mode state for the main button. Works only if [member "
+"toggle_mode] is set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:67
+msgid ""
+"The base type of allowed resource types. Can be a comma-separated list of "
+"several options."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:70
+msgid "If [code]true[/code], the value can be selected and edited."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:73
+msgid "The edited resource value."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:76
+msgid ""
+"If [code]true[/code], the main button with the resource preview works in the "
+"toggle mode. Use [method set_toggle_pressed] to manually set the state."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:83
+msgid "Emitted when the value of the edited resource was changed."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+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:17
+msgid "Create an own, custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:24
+msgid ""
+"Check if the resource changed, if so, it will be invalidated and the "
+"corresponding signal emitted."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:34
+msgid ""
+"Queue the [code]resource[/code] being edited for preview. Once the preview "
+"is ready, the [code]receiver[/code]'s [code]receiver_func[/code] will be "
+"called. The [code]receiver_func[/code] must take the following four "
+"arguments: [String] path, [Texture] preview, [Texture] thumbnail_preview, "
+"[Variant] userdata. [code]userdata[/code] can be anything, and will be "
+"returned when [code]receiver_func[/code] is called.\n"
+"[b]Note:[/b] If it was not possible to create the preview the "
+"[code]receiver_func[/code] will still be called, but the preview will be "
+"null."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:45
+msgid ""
+"Queue a resource file located at [code]path[/code] for preview. Once the "
+"preview is ready, the [code]receiver[/code]'s [code]receiver_func[/code] "
+"will be called. The [code]receiver_func[/code] must take the following four "
+"arguments: [String] path, [Texture] preview, [Texture] thumbnail_preview, "
+"[Variant] userdata. [code]userdata[/code] can be anything, and will be "
+"returned when [code]receiver_func[/code] is called.\n"
+"[b]Note:[/b] If it was not possible to create the preview the "
+"[code]receiver_func[/code] will still be called, but the preview will be "
+"null."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:53
+msgid "Removes a custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:61
+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:15
+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:24
+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:34
+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:42
+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:50
+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 ""
+
+#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:4
+msgid "FBX 3D asset importer."
+msgstr ""
+
+#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:7
+msgid ""
+"This is an FBX 3D asset importer with full support for most FBX features.\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/3.4/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:35
+msgid ""
+"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:41
+msgid "Returns the resource folder the imported scene file is located in."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:48
+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 [code]Ctrl+Shift+X[/code]) 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:25
+msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:32
+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:39
+msgid "Returns the [EditorInterface] singleton instance."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:45
+msgid "Returns the Editor's currently active scene."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:4
+msgid ""
+"Godot editor's control for selecting the [code]script[/code] property of a "
+"[Node]."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:7
+msgid ""
+"Similar to [EditorResourcePicker] this [Control] node is used in the "
+"editor's Inspector dock, but only to edit the [code]script[/code] property "
+"of a [Node]. Default options for creating new resources of all possible "
+"subtypes are replaced with dedicated buttons that open the \"Attach Node "
+"Script\" dialog. Can be used with [EditorInspectorPlugin] to recreate the "
+"same behavior.\n"
+"[b]Note:[/b] You must set the [member script_owner] for the custom context "
+"menu items to work."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:16
+msgid "The owner [Node] of the script property that holds the edited resource."
+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:17
+msgid ""
+"Adds a node to the selection.\n"
+"[b]Note:[/b] The newly selected node will not be automatically edited in the "
+"inspector. If you want to edit a node, use [method EditorInterface."
+"edit_node]."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:24
+msgid "Clear the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:30
+msgid "Gets the list of selected nodes."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:36
+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:43
+msgid "Removes a node from the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:50
+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:28
+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:51
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:57
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:66
+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:72
+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:78
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:85
+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:91
+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:100
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:107
+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:114
+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:121
+msgid "Sets the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:130
+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:139
+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:146
+msgid ""
+"Sets the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:154
+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:161
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:167
+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/EditorSpatialGizmo.xml:4
+msgid "Custom gizmo for editing Spatial objects."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:7
+msgid ""
+"Custom gizmo that is used for providing custom visualization and editing "
+"(handles) for 3D Spatial objects. See [EditorSpatialGizmoPlugin] for more "
+"information."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:16
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:23
+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/EditorSpatialGizmo.xml:33
+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/EditorSpatialGizmo.xml:44
+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/EditorSpatialGizmo.xml:54
+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/EditorSpatialGizmo.xml:63
+msgid ""
+"Adds an unscaled billboard for visualization. Call this function during "
+"[method redraw]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:69
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:78
+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/EditorSpatialGizmo.xml:86
+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/EditorSpatialGizmo.xml:94
+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/EditorSpatialGizmo.xml:100
+msgid ""
+"Returns the [EditorSpatialGizmoPlugin] that owns this gizmo. It's useful to "
+"retrieve materials using [method EditorSpatialGizmoPlugin.get_material]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:106
+msgid "Returns the Spatial node associated with this gizmo."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:113
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:119
+msgid ""
+"This function is called when the [Spatial] this gizmo refers to changes (the "
+"[method Spatial.update_gizmo] is called)."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:128
+msgid ""
+"This function is used when the user drags a gizmo handle (previously added "
+"with [method add_handles]) in screen coordinates.\n"
+"The [Camera] is also provided so screen coordinates can be converted to "
+"raycasts."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:136
+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/EditorSpatialGizmo.xml:143
+msgid ""
+"Sets the reference [Spatial] node for the gizmo. [code]node[/code] must "
+"inherit from [Spatial]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:4
+msgid "Used by the editor to define Spatial gizmo types."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:7
+msgid ""
+"EditorSpatialGizmoPlugin allows you to define a new type of Gizmo. There are "
+"two main ways to do so: extending [EditorSpatialGizmoPlugin] for the simpler "
+"gizmos, or creating a new [EditorSpatialGizmo] type. See the tutorial in the "
+"documentation for more info."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos."
+"html"
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:18
+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/EditorSpatialGizmoPlugin.xml:24
+msgid ""
+"Override this method to define whether the gizmo can be hidden or not. "
+"Returns [code]true[/code] if not overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:34
+msgid ""
+"Override this method to commit gizmo handles. Called for this plugin's "
+"active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:41
+msgid ""
+"Override this method to return a custom [EditorSpatialGizmo] for the spatial "
+"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
+"also [method has_gizmo]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:50
+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 EditorSpatialGizmo.add_handles]. "
+"Should not be overridden.\n"
+"You can optionally provide a texture to use instead of the default icon."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:61
+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 EditorSpatialGizmo."
+"add_unscaled_billboard]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:72
+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 EditorSpatialGizmo.add_mesh] and "
+"[method EditorSpatialGizmo.add_lines]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:80
+msgid ""
+"Override this method to provide gizmo's handle names. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:88
+msgid ""
+"Gets actual value of a handle from gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:96
+msgid ""
+"Gets material from the internal list of materials. If an "
+"[EditorSpatialGizmo] is provided, it will try to get the corresponding "
+"variant (selected and/or editable)."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:102
+msgid ""
+"Override this method to provide the name that will appear in the gizmo "
+"visibility menu."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:108
+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/EditorSpatialGizmoPlugin.xml:116
+msgid ""
+"Override this method to define which Spatial nodes have a gizmo from this "
+"plugin. Whenever a [Spatial] node is added to a scene this method is called, "
+"if it returns [code]true[/code] the node gets a generic [EditorSpatialGizmo] "
+"assigned and is added to this plugin's list of active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:124
+msgid ""
+"Gets whether a handle is highlighted or not. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:130
+msgid ""
+"Override this method to define whether a Spatial with this gizmo should be "
+"selectable even when the gizmo is hidden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:137
+msgid ""
+"Callback to redraw the provided gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:147
+msgid ""
+"Update the value of a handle after it has been updated. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpinSlider.xml:4
+msgid "Godot editor's control for editing numeric values."
+msgstr ""
+
+#: doc/classes/EditorSpinSlider.xml:7
+msgid ""
+"This [Control] node is used in the editor's Inspector dock to allow editing "
+"of numeric values. Can be used with [EditorInspectorPlugin] to recreate the "
+"same behavior."
+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:16
+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:23
+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:36
+msgid ""
+"Returns a [Dictionary] containing the path of the detected file change "
+"mapped to an integer signifying what kind of 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:48
+msgid "Returns the project name of the VCS working directory."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:54
+msgid ""
+"Returns the name of the VCS if the VCS has been initialized, else return an "
+"empty string."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:61
+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:67
+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:73
+msgid ""
+"Returns [code]true[/code] if the VCS addon has been initialized, else "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:79
+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:86
+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:93
+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:15
+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:25
+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:33
+msgid ""
+"Returns a Dictionary of Arrays of donor names.\n"
+"{[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]}"
+msgstr ""
+
+#: doc/classes/Engine.xml:40
+msgid ""
+"Returns the total number of frames drawn. On headless platforms, or if the "
+"render loop is disabled with [code]--disable-render-loop[/code] via command "
+"line, [method get_frames_drawn] always returns [code]0[/code]. See [method "
+"get_idle_frames]."
+msgstr ""
+
+#: doc/classes/Engine.xml:46
+msgid "Returns the frames per second of the running game."
+msgstr ""
+
+#: doc/classes/Engine.xml:52
+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] and [method "
+"get_physics_frames].\n"
+"[method get_idle_frames] can be used to run expensive logic less often "
+"without relying on a [Timer]:\n"
+"[codeblock]\n"
+"func _process(_delta):\n"
+" if Engine.get_idle_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 idle (render) frames "
+"here.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:64
+msgid ""
+"Returns Dictionary of licenses used by Godot and included third party "
+"components."
+msgstr ""
+
+#: doc/classes/Engine.xml:70
+msgid "Returns Godot license text."
+msgstr ""
+
+#: doc/classes/Engine.xml:76
+msgid "Returns the main loop object (see [MainLoop] and [SceneTree])."
+msgstr ""
+
+#: doc/classes/Engine.xml:82
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]physics frame[/b]. See also [method "
+"get_idle_frames].\n"
+"[method get_physics_frames] can be used to run expensive logic less often "
+"without relying on a [Timer]:\n"
+"[codeblock]\n"
+"func _physics_process(_delta):\n"
+" if Engine.get_physics_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 physics frames here.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:94
+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:101
+msgid ""
+"Returns a global singleton with given [code]name[/code]. Often used for "
+"plugins, e.g. [code]GodotPayment[/code] on Android."
+msgstr ""
+
+#: doc/classes/Engine.xml:107
+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:130
+msgid ""
+"Returns [code]true[/code] if a singleton with given [code]name[/code] exists "
+"in global scope."
+msgstr ""
+
+#: doc/classes/Engine.xml:136
+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:142
+msgid ""
+"If [code]true[/code], the script is currently running inside the editor. "
+"This is useful for [code]tool[/code] scripts to conditionally draw editor "
+"helpers, or prevent accidentally running \"game\" code that would affect the "
+"scene state while in the editor:\n"
+"[codeblock]\n"
+"if Engine.editor_hint:\n"
+" draw_gizmos()\n"
+"else:\n"
+" simulate_physics()\n"
+"[/codeblock]\n"
+"See [url=https://docs.godotengine.org/en/3.4/tutorials/misc/"
+"running_code_in_the_editor.html]Running code in the editor[/url] in the "
+"documentation for more information.\n"
+"[b]Note:[/b] To detect whether the script is run from an editor [i]build[/i] "
+"(e.g. when pressing [code]F5[/code]), use [method OS.has_feature] with the "
+"[code]\"editor\"[/code] argument instead. [code]OS.has_feature(\"editor\")[/"
+"code] will evaluate to [code]true[/code] both when the code is running in "
+"the editor and when running the project from the editor, but it will "
+"evaluate to [code]false[/code] when the code is run from an exported project."
+msgstr ""
+
+#: doc/classes/Engine.xml:153
+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:156
+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 the in-game clock and real clock but 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.\n"
+"[b]Note:[/b] For best results, when using a custom physics interpolation "
+"solution, the physics jitter fix should be disabled by setting [member "
+"physics_jitter_fix] to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Engine.xml:160
+msgid ""
+"If [code]false[/code], stops printing error and warning messages to the "
+"console and editor Output log. This can be used to hide error and warning "
+"messages during unit test suite runs. This property is equivalent to the "
+"[member ProjectSettings.application/run/disable_stderr] project setting.\n"
+"[b]Warning:[/b] If you set this to [code]false[/code] anywhere in the "
+"project, important error messages may be hidden even if they are emitted "
+"from other scripts. If this is set to [code]false[/code] in a [code]@tool[/"
+"code] script, this will also impact the editor itself. Do [i]not[/i] report "
+"bugs before ensuring error messages are enabled (as they are by default).\n"
+"[b]Note:[/b] This property does not impact the editor's Errors tab when "
+"running a project from the editor."
+msgstr ""
+
+#: doc/classes/Engine.xml:165
+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:168
+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\n"
+"These effects will only apply when the [Viewport]'s intended usage is \"3D\" "
+"or \"3D Without Effects\". This can be configured for the root Viewport with "
+"[member ProjectSettings.rendering/quality/intended_usage/"
+"framebuffer_allocation], or for specific Viewports via the [member Viewport."
+"usage] property."
+msgstr ""
+
+#: doc/classes/Environment.xml:15 doc/classes/WorldEnvironment.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/"
+"environment_and_post_processing.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:17 doc/classes/Material.xml:10
+#: doc/classes/Mesh.xml:10 doc/classes/MeshInstance.xml:10
+#: doc/classes/WorldEnvironment.xml:13
+msgid "https://godotengine.org/asset-library/asset/123"
+msgstr ""
+
+#: doc/classes/Environment.xml:26
+msgid ""
+"Returns [code]true[/code] if the glow level [code]idx[/code] is specified, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Environment.xml:34
+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:40
+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:43
+msgid ""
+"Applies the provided [Texture] 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:46
+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:49
+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:52
+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:55
+msgid "The ambient light's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:58
+msgid ""
+"The ambient light's energy. The higher the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Environment.xml:61
+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:64
+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:67
+msgid "The maximum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:70
+msgid "The minimum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:73
+msgid ""
+"The scale of the auto exposure effect. Affects the intensity of auto "
+"exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:76
+msgid ""
+"The speed of the auto exposure effect. Affects the time needed for the "
+"camera to perform auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:79
+msgid "The ID of the camera feed to show in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:82
+msgid ""
+"The maximum layer ID to display. Only effective when using the [constant "
+"BG_CANVAS] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:85
+msgid ""
+"The [Color] displayed for clear areas of the scene. Only effective when "
+"using the [constant BG_COLOR] or [constant BG_COLOR_SKY] background modes)."
+msgstr ""
+
+#: doc/classes/Environment.xml:88
+msgid "The power of the light emitted by the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:91
+msgid "The background mode. See [enum BGMode] for possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:94
+msgid "The [Sky] resource defined as background."
+msgstr ""
+
+#: doc/classes/Environment.xml:97
+msgid "The [Sky] resource's custom field of view."
+msgstr ""
+
+#: doc/classes/Environment.xml:100
+msgid "The [Sky] resource's rotation expressed as a [Basis]."
+msgstr ""
+
+#: doc/classes/Environment.xml:103
+msgid "The [Sky] resource's rotation expressed as Euler angles in radians."
+msgstr ""
+
+#: doc/classes/Environment.xml:106
+msgid "The [Sky] resource's rotation expressed as Euler angles in degrees."
+msgstr ""
+
+#: doc/classes/Environment.xml:109
+msgid "The amount of far blur for the depth-of-field effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:112
+msgid ""
+"The distance from the camera where the far blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:115
+msgid "If [code]true[/code], enables the depth-of-field far blur effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:118
+msgid ""
+"The depth-of-field far blur's quality. Higher values can mitigate the "
+"visible banding effect seen at higher strengths, but are much slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:121
+msgid "The length of the transition between the no-blur area and far blur."
+msgstr ""
+
+#: doc/classes/Environment.xml:124
+msgid "The amount of near blur for the depth-of-field effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:127
+msgid ""
+"Distance from the camera where the near blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:130
+msgid "If [code]true[/code], enables the depth-of-field near blur effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:133
+msgid ""
+"The depth-of-field near blur's quality. Higher values can mitigate the "
+"visible banding effect seen at higher strengths, but are much slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:136
+msgid "The length of the transition between the near blur and no-blur area."
+msgstr ""
+
+#: doc/classes/Environment.xml:139
+msgid "The fog's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:142
+msgid "The fog's depth starting distance from the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:145
+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:148
+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:151
+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 Camera.far] value."
+msgstr ""
+
+#: doc/classes/Environment.xml:154
+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:157
+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:160
+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:163
+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:166
+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:169
+msgid ""
+"The intensity of the depth fog color transition when looking towards the "
+"sun. The sun's direction is determined automatically using the "
+"DirectionalLight node in the scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:172
+msgid "The depth fog's [Color] when looking towards the sun."
+msgstr ""
+
+#: doc/classes/Environment.xml:175
+msgid ""
+"The intensity of the fog light transmittance effect. Amount of light that "
+"the fog transmits."
+msgstr ""
+
+#: doc/classes/Environment.xml:178
+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:181
+msgid ""
+"Smooths out the blockiness created by sampling higher levels, at the cost of "
+"performance.\n"
+"[b]Note:[/b] When using the GLES2 renderer, this is only available if the "
+"GPU supports the [code]GL_EXT_gpu_shader4[/code] extension."
+msgstr ""
+
+#: doc/classes/Environment.xml:185
+msgid "The glow blending mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:188
+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:191
+msgid "If [code]true[/code], the glow effect is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:194
+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:197
+msgid "The bleed scale of the HDR glow."
+msgstr ""
+
+#: doc/classes/Environment.xml:200
+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:203
+msgid ""
+"Takes more samples during downsample pass of glow. This ensures that single "
+"pixels are captured by glow which makes the glow look smoother and more "
+"stable during movement. However, it is very expensive and makes the glow "
+"post process take twice as long."
+msgstr ""
+
+#: doc/classes/Environment.xml:206
+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:209
+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:212
+msgid "If [code]true[/code], the 2th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:215
+msgid "If [code]true[/code], the 3th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:218
+msgid "If [code]true[/code], the 4th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:221
+msgid "If [code]true[/code], the 5th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:224
+msgid "If [code]true[/code], the 6th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:227
+msgid ""
+"If [code]true[/code], the 7th level of glow is enabled. This is the most "
+"\"global\" level (blurriest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:230
+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:233
+msgid "The depth tolerance for screen-space reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:236
+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:239
+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:242
+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:245
+msgid ""
+"The maximum number of steps for screen-space reflections. Higher values are "
+"slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:248
+msgid ""
+"If [code]true[/code], screen-space reflections will take the material "
+"roughness into account."
+msgstr ""
+
+#: doc/classes/Environment.xml:251
+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:254
+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:257
+msgid ""
+"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:260
+msgid "The screen-space ambient occlusion color."
+msgstr ""
+
+#: doc/classes/Environment.xml:263
+msgid "The screen-space ambient occlusion edge sharpness."
+msgstr ""
+
+#: doc/classes/Environment.xml:266
+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:269
+msgid ""
+"The primary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius]."
+msgstr ""
+
+#: doc/classes/Environment.xml:272
+msgid ""
+"The secondary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius2]."
+msgstr ""
+
+#: doc/classes/Environment.xml:275
+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:278
+msgid ""
+"The screen-space ambient occlusion quality. Higher qualities will make "
+"better use of small objects for ambient occlusion, but are slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:281
+msgid "The primary screen-space ambient occlusion radius."
+msgstr ""
+
+#: doc/classes/Environment.xml:284
+msgid ""
+"The secondary screen-space ambient occlusion radius. If set to a value "
+"higher than [code]0[/code], enables the secondary screen-space ambient "
+"occlusion effect which can be used to improve the effect's appearance (at "
+"the cost of performance)."
+msgstr ""
+
+#: doc/classes/Environment.xml:287
+msgid "The default exposure used for tonemapping."
+msgstr ""
+
+#: doc/classes/Environment.xml:290
+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:293
+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:298
+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:301
+msgid ""
+"Clears the background using the clear color defined in [member "
+"ProjectSettings.rendering/environment/default_clear_color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:304
+msgid "Clears the background using a custom clear color."
+msgstr ""
+
+#: doc/classes/Environment.xml:307
+msgid "Displays a user-defined sky in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:310
+msgid ""
+"Clears the background using a custom clear color and allows defining a sky "
+"for shading and reflection. This mode is slightly faster than [constant "
+"BG_SKY] and should be preferred in scenes where reflections can be visible, "
+"but the sky itself never is (e.g. top-down camera)."
+msgstr ""
+
+#: doc/classes/Environment.xml:313
+msgid "Displays a [CanvasLayer] in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid "Displays a camera feed in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Represents the size of the [enum BGMode] enum."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid ""
+"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
+"flare, bright sources."
+msgstr ""
+
+#: doc/classes/Environment.xml:325
+msgid ""
+"Screen glow blending mode. Increases brightness, used frequently with bloom."
+msgstr ""
+
+#: doc/classes/Environment.xml:328
+msgid ""
+"Soft light glow blending mode. Modifies contrast, exposes shadows and "
+"highlights (vivid bloom)."
+msgstr ""
+
+#: doc/classes/Environment.xml:331
+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:334
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:337
+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:340
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:343
+msgid ""
+"Academy Color Encoding System tonemapper operator. Performs an aproximation "
+"of the ACES tonemapping curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:346
+msgid ""
+"High quality Academy Color Encoding System tonemapper operator that matches "
+"the industry standard. Performs a more physically accurate curve fit which "
+"better simulates how light works in the real world. The color of lights and "
+"emissive materials will become lighter as the emissive energy increases, and "
+"will eventually become white if the light is bright enough to saturate the "
+"camera sensor."
+msgstr ""
+
+#: doc/classes/Environment.xml:349
+msgid "Low depth-of-field blur quality (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:352
+msgid "Medium depth-of-field blur quality."
+msgstr ""
+
+#: doc/classes/Environment.xml:355
+msgid "High depth-of-field blur quality (slowest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:358
+msgid "No blur for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:361
+msgid "1×1 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:364
+msgid "2×2 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:367
+msgid "3×3 blur for the screen-space ambient occlusion effect (slowest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:370
+msgid "Low quality for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:373
+msgid "Low quality for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:376
+msgid "Low quality for the screen-space ambient occlusion effect (slowest)."
+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:35
+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:42
+msgid "Returns the error text if [method parse] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:48
+msgid "Returns [code]true[/code] if [method execute] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:56
+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/ExternalTexture.xml:4
+msgid "Enable OpenGL ES external texture extension."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:7
+msgid ""
+"Enable support for the OpenGL ES external texture extension as defined by "
+"[url=https://www.khronos.org/registry/OpenGL/extensions/OES/"
+"OES_EGL_image_external.txt]OES_EGL_image_external[/url].\n"
+"[b]Note:[/b] This is only supported for Android platforms."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:16
+msgid "Returns the external texture name."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:23
+msgid "External texture size."
+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/3.4/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation.\n"
+"[b]Note:[/b] To access project resources once exported, it is recommended to "
+"use [ResourceLoader] instead of the [File] API, as some files are converted "
+"to engine-specific formats and their original source files might not be "
+"present in the exported PCK package.\n"
+"[b]Note:[/b] Files are automatically closed only if the process exits "
+"\"normally\" (such as by clicking the window manager's close button or "
+"pressing [b]Alt + F4[/b]). If you stop the project execution by pressing "
+"[b]F8[/b] while the project is running, the file won't be closed as the game "
+"process will be killed. You can work around this by calling [method flush] "
+"at regular intervals."
+msgstr ""
+
+#: doc/classes/File.xml:35
+msgid ""
+"Closes the currently opened file and prevents subsequent read/write "
+"operations. Use [method flush] to persist the data to disk without closing "
+"the file."
+msgstr ""
+
+#: doc/classes/File.xml:41
+msgid ""
+"Returns [code]true[/code] if the file cursor has already read past the end "
+"of the file.\n"
+"[b]Note:[/b] [code]eof_reached() == false[/code] cannot be used to check "
+"whether there is more data available. To loop while there is more data "
+"available, use:\n"
+"[codeblock]\n"
+"while file.get_position() < file.get_len():\n"
+" # Read data\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/File.xml:53
+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 their source asset will not be included in the exported game, as "
+"only the imported version is used. See [method ResourceLoader.exists] for an "
+"alternative approach that takes resource remapping into account."
+msgstr ""
+
+#: doc/classes/File.xml:60
+msgid ""
+"Writes the file's buffer to disk. Flushing is automatically performed when "
+"the file is closed. This means you don't need to call [method flush] "
+"manually before closing a file using [method close]. Still, calling [method "
+"flush] can be used to ensure the data is safe even if the project crashes "
+"instead of being closed gracefully.\n"
+"[b]Note:[/b] Only call [method flush] when you actually need it. Otherwise, "
+"it will decrease performance due to constant disk writes."
+msgstr ""
+
+#: doc/classes/File.xml:67
+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:73
+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:79
+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:85
+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:91
+msgid ""
+"Returns the whole file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:99
+msgid "Returns next [code]len[/code] bytes of the file as a [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/File.xml:106
+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, and cannot be a double quotation mark.\n"
+"Text is interpreted as being UTF-8 encoded. Text values must be enclosed in "
+"double quotes if they include the delimiter character. Double quotes within "
+"a text value can be escaped by doubling their occurrence.\n"
+"For example, the following CSV lines are valid and will be properly parsed "
+"as two strings each:\n"
+"[codeblock]\n"
+"Alice,\"Hello, Bob!\"\n"
+"Bob,Alice! What a surprise!\n"
+"Alice,\"I thought you'd reply with \"\"Hello, world\"\".\"\n"
+"[/codeblock]\n"
+"Note how the second line can omit the enclosing quotes as it does not "
+"include the delimiter. However it [i]could[/i] very well use quotes, it was "
+"only written without for demonstration purposes. The third line must use "
+"[code]\"\"[/code] for each quotation mark that needs to be interpreted as "
+"such instead of the end of a text value."
+msgstr ""
+
+#: doc/classes/File.xml:120
+msgid "Returns the next 64 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:126
+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:132
+msgid "Returns the next 32 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:138
+msgid "Returns the size of the file in bytes."
+msgstr ""
+
+#: doc/classes/File.xml:144
+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:152
+msgid ""
+"Returns an MD5 String representing the file at the given path or an empty "
+"[String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:159
+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:165
+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:172
+msgid "Returns the path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:178
+msgid "Returns the absolute path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:184
+msgid "Returns the file cursor's position."
+msgstr ""
+
+#: doc/classes/File.xml:190
+msgid "Returns the next bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:197
+msgid ""
+"Returns a SHA-256 [String] representing the file at the given path or an "
+"empty [String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:204
+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:211
+msgid "Returns [code]true[/code] if the file is currently opened."
+msgstr ""
+
+#: doc/classes/File.xml:219
+msgid "Opens the file for writing or reading, depending on the flags."
+msgstr ""
+
+#: doc/classes/File.xml:228
+msgid ""
+"Opens a compressed file for reading or writing.\n"
+"[b]Note:[/b] [method open_compressed] can only read files that were saved by "
+"Godot, not third-party compression formats. See [url=https://github.com/"
+"godotengine/godot/issues/28999]GitHub issue #28999[/url] for a workaround."
+msgstr ""
+
+#: doc/classes/File.xml:238
+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:248
+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:255
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the beginning of the file)."
+msgstr ""
+
+#: doc/classes/File.xml:262
+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:270
+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:297
+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:306
+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:314
+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:323
+msgid "Stores the given array of bytes in the file."
+msgstr ""
+
+#: doc/classes/File.xml:331
+msgid ""
+"Store the given [PoolStringArray] 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:339
+msgid "Stores a floating-point number as 64 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:346
+msgid "Stores a floating-point number as 32 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:353
+msgid ""
+"Appends [code]line[/code] to the file followed by a line return character "
+"([code]\\n[/code]), encoding the text as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:360
+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:368
+msgid "Stores a floating-point number in the file."
+msgstr ""
+
+#: doc/classes/File.xml:375
+msgid ""
+"Appends [code]string[/code] to the file without a line return, encoding the "
+"text as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:383
+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).\n"
+"[b]Note:[/b] Not all properties are included. Only properties that are "
+"configured with the [constant PROPERTY_USAGE_STORAGE] flag set will be "
+"serialized. You can add a new usage flag to a property by overriding the "
+"[method Object._get_property_list] method in your class. You can also check "
+"how property usage is configured by calling [method Object."
+"_get_property_list]. See [enum PropertyUsageFlags] for the possible usage "
+"flags."
+msgstr ""
+
+#: doc/classes/File.xml:390
+msgid ""
+"If [code]true[/code], the file is read with big-endian [url=https://en."
+"wikipedia.org/wiki/Endianness]endianness[/url]. If [code]false[/code], the "
+"file is read with little-endian endianness. If in doubt, leave this to "
+"[code]false[/code] as most files are written with little-endian endianness.\n"
+"[b]Note:[/b] [member endian_swap] is only about the file format, not the CPU "
+"type. The CPU endianness doesn't affect the default endianness for files "
+"written.\n"
+"[b]Note:[/b] This is always reset to [code]false[/code] whenever you open "
+"the file. Therefore, you must set [member endian_swap] [i]after[/i] opening "
+"the file, not before."
+msgstr ""
+
+#: doc/classes/File.xml:397
+msgid ""
+"Opens the file for read operations. The cursor is positioned at the "
+"beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:400
+msgid ""
+"Opens the file for write operations. The file is created if it does not "
+"exist, and truncated if it does."
+msgstr ""
+
+#: doc/classes/File.xml:403
+msgid ""
+"Opens the file for read and write operations. Does not truncate the file. "
+"The cursor is positioned at the beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:406
+msgid ""
+"Opens the file for read and write operations. The file is created if it does "
+"not exist, and truncated if it does. The cursor is positioned at the "
+"beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:409
+msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
+msgstr ""
+
+#: doc/classes/File.xml:412
+msgid ""
+"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
+"compression method."
+msgstr ""
+
+#: doc/classes/File.xml:415
+msgid ""
+"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
+"method."
+msgstr ""
+
+#: doc/classes/File.xml:418
+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 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:16
+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:22
+msgid "Clear all the added filters in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:28
+msgid "Clear currently selected items in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:34
+msgid ""
+"Returns the LineEdit for the selected file.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:41
+msgid ""
+"Returns the vertical box container of the dialog, custom controls can be "
+"added to it.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:48
+msgid "Invalidate and update the current dialog content list."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:54
+msgid ""
+"The file system access scope. See enum [code]Access[/code] constants.\n"
+"[b]Warning:[/b] Currently, in sandboxed environments such as HTML5 builds or "
+"sandboxed macOS apps, FileDialog cannot access the host file system. See "
+"[url=https://github.com/godotengine/godot-proposals/issues/1123]godot-"
+"proposals#1123[/url]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:58
+msgid "The current working directory of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:61
+msgid "The currently selected file of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:64
+msgid "The currently selected file path of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:68
+msgid ""
+"The available file type filters. For example, this shows only [code].png[/"
+"code] and [code].gd[/code] files: [code]set_filters(PoolStringArray([\"*."
+"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:71
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"enum [code]Mode[/code] constants."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:74
+msgid ""
+"If [code]true[/code], changing the [code]Mode[/code] property will set the "
+"window title accordingly (e.g. setting mode to [constant MODE_OPEN_FILE] "
+"will change the window title to \"Open a File\")."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:77
+msgid "If [code]true[/code], the dialog will show hidden files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:85
+msgid "Emitted when the user selects a directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:91
+msgid ""
+"Emitted when the user selects a file by double-clicking it or pressing the "
+"[b]OK[/b] button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:97
+msgid "Emitted when the user selects multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:103
+msgid "The dialog allows selecting one, and only one file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:106
+msgid "The dialog allows selecting multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:109
+msgid ""
+"The dialog only allows selecting a directory, disallowing the selection of "
+"any file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:112
+msgid "The dialog allows selecting one file or directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:115
+msgid "The dialog will warn when a file exists."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:118
+msgid ""
+"The dialog only allows accessing files under the [Resource] path "
+"([code]res://[/code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:121
+msgid ""
+"The dialog only allows accessing files under user data path ([code]user://[/"
+"code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:124
+msgid "The dialog allows accessing files on the whole file system."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:129
+msgid "Custom icon for files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:132
+msgid "The color modulation applied to the file icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:135
+msgid ""
+"The color tint for disabled files (when the [FileDialog] is used in open "
+"folder mode)."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:138
+msgid "Custom icon for folders."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:141
+msgid "The color modulation applied to the folder icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:144
+msgid "Custom icon for the parent folder arrow."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:147
+msgid "Custom icon for the reload button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:150
+msgid "Custom icon for the toggle hidden button."
+msgstr ""
+
+#: doc/classes/float.xml:4
+msgid "Float built-in type."
+msgstr ""
+
+#: doc/classes/float.xml:7
+msgid ""
+"The [float] built-in type is a 64-bit double-precision floating-point "
+"number, equivalent to [code]double[/code] in C++. This type has 14 reliable "
+"decimal digits of precision. The [float] type can be stored in [Variant], "
+"which is the generic type used by the engine. The maximum value of [float] "
+"is approximately [code]1.79769e308[/code], and the minimum is approximately "
+"[code]-1.79769e308[/code].\n"
+"Most methods and properties in the engine use 32-bit single-precision "
+"floating-point numbers instead, equivalent to [code]float[/code] in C++, "
+"which have 6 reliable decimal digits of precision. For data structures such "
+"as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers.\n"
+"Math done using the [float] type is not guaranteed to be exact or "
+"deterministic, and will often result in small errors. You should usually use "
+"the [method @GDScript.is_equal_approx] and [method @GDScript.is_zero_approx] "
+"methods instead of [code]==[/code] to compare [float] values for equality."
+msgstr ""
+
+#: doc/classes/float.xml:12
+msgid "https://en.wikipedia.org/wiki/Double-precision_floating-point_format"
+msgstr ""
+
+#: doc/classes/float.xml:13
+msgid "https://en.wikipedia.org/wiki/Single-precision_floating-point_format"
+msgstr ""
+
+#: doc/classes/float.xml:20
+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:34
+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.\n"
+"[b]Note:[/b] If a [DynamicFont] doesn't contain a character used in a "
+"string, the character in question will be replaced with codepoint "
+"[code]0xfffd[/code] if it's available in the [DynamicFont]. If this "
+"replacement character isn't available in the DynamicFont, the character will "
+"be hidden without displaying any replacement character in the string.\n"
+"[b]Note:[/b] If a [BitmapFont] doesn't contain a character used in a string, "
+"the character in question will be hidden without displaying any replacement "
+"character in the string.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Font.xml:24
+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:37
+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:43
+msgid "Returns the font ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:51
+msgid ""
+"Returns the size of a character, optionally taking kerning into account if "
+"the next character is provided. Note that the height returned is the font "
+"height (see [method get_height]) and has no relation to the glyph height."
+msgstr ""
+
+#: doc/classes/Font.xml:57
+msgid "Returns the font descent (number of pixels below the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:63
+msgid "Returns the total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Font.xml:70
+msgid ""
+"Returns the size of a string, taking kerning and advance into account. Note "
+"that the height returned is the font height (see [method get_height]) and "
+"has no relation to the string."
+msgstr ""
+
+#: doc/classes/Font.xml:78
+msgid ""
+"Returns the size that the string would have with word wrapping enabled with "
+"a fixed [code]width[/code]."
+msgstr ""
+
+#: doc/classes/Font.xml:84
+msgid "Returns [code]true[/code] if the font has an outline."
+msgstr ""
+
+#: doc/classes/Font.xml:95
+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:16
+msgid ""
+"Calls the referenced function previously set in [member function] or [method "
+"@GDScript.funcref]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:23
+msgid ""
+"Calls the referenced function previously set in [member 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:29
+msgid "Returns whether the object still exists and has the function assigned."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:36
+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 ""
+
+#: doc/classes/FuncRef.xml:42
+msgid "The name of the referenced function."
+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 [ARVRInterfaceGDNative]. 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/3.4/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:17
+msgid ""
+"Returns paths to all dependency libraries for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:23
+msgid ""
+"Returns the path to the dynamic library file for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:29
+msgid ""
+"This resource in INI-style [ConfigFile] format, as in [code].gdnlib[/code] "
+"files."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:32
+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:36
+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:40
+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:44
+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/3.4/getting_started/scripting/gdscript/index."
+"html"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:17
+msgid "Returns byte code for the script source code."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:23
+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 ""
+"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 "
+"function call can then be resumed later by calling [method resume] on this "
+"state object."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:16
+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:24
+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"
+"This function returns what the resumed function call returns, possibly "
+"another function state if yielded again."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.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/Generic6DOFJoint.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/Generic6DOFJoint.xml:93
+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/Generic6DOFJoint.xml:97
+msgid "If [code]true[/code], rotation across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:100
+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/Generic6DOFJoint.xml:103
+msgid ""
+"The maximum amount of force that can occur, when rotating around the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:106
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:109
+msgid ""
+"The amount of rotational restitution across the X axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:112
+msgid "The speed of all rotations across the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:115
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:118
+msgid ""
+"The amount of rotational damping across the Y axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:121
+msgid "If [code]true[/code], rotation across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:124
+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/Generic6DOFJoint.xml:127
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:130
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:133
+msgid ""
+"The amount of rotational restitution across the Y axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:136
+msgid "The speed of all rotations across the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:139
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:142
+msgid ""
+"The amount of rotational damping across the Z axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:145
+msgid "If [code]true[/code], rotation across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:148
+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/Generic6DOFJoint.xml:151
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:154
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:157
+msgid ""
+"The amount of rotational restitution across the Z axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:160
+msgid "The speed of all rotations across the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:163
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:166
+msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:169
+msgid "Maximum acceleration for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:172
+msgid "Target speed for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:175
+msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:178
+msgid "Maximum acceleration for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:181
+msgid "Target speed for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:184
+msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:187
+msgid "Maximum acceleration for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:190
+msgid "Target speed for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:217
+msgid "The amount of damping that happens at the X motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:220
+msgid "If [code]true[/code], the linear motion across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:223
+msgid "The minimum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:226
+msgid ""
+"The amount of restitution on the X axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:229
+msgid ""
+"A factor applied to the movement across the X axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:232
+msgid "The maximum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:235
+msgid "The amount of damping that happens at the Y motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:238
+msgid "If [code]true[/code], the linear motion across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:241
+msgid "The minimum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:244
+msgid ""
+"The amount of restitution on the Y axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:247
+msgid ""
+"A factor applied to the movement across the Y axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:250
+msgid "The maximum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:253
+msgid "The amount of damping that happens at the Z motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:256
+msgid "If [code]true[/code], the linear motion across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:259
+msgid "The minimum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:262
+msgid ""
+"The amount of restitution on the Z axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:265
+msgid ""
+"A factor applied to the movement across the Z axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:268
+msgid "The maximum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:271
+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/Generic6DOFJoint.xml:274
+msgid ""
+"The maximum force the linear motor can apply on the X axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:277
+msgid "The speed that the linear motor will attempt to reach on the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:280
+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/Generic6DOFJoint.xml:283
+msgid ""
+"The maximum force the linear motor can apply on the Y axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:286
+msgid "The speed that the linear motor will attempt to reach on the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:289
+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/Generic6DOFJoint.xml:292
+msgid ""
+"The maximum force the linear motor can apply on the Z axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:295
+msgid "The speed that the linear motor will attempt to reach on the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:324 doc/classes/PhysicsServer.xml:1086
+msgid "The minimum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:327 doc/classes/PhysicsServer.xml:1089
+msgid "The maximum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:330
+msgid ""
+"A factor applied to the movement across the axes. The lower, the slower the "
+"movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:333
+msgid ""
+"The amount of restitution on the axes' movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:336 doc/classes/PhysicsServer.xml:1098
+msgid ""
+"The amount of damping that happens at the linear motion across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:339
+msgid "The velocity the linear motor will try to reach."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:342
+msgid ""
+"The maximum force the linear motor will apply while trying to reach the "
+"velocity target."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:351 doc/classes/PhysicsServer.xml:1107
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:354 doc/classes/PhysicsServer.xml:1110
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:357
+msgid "The speed of all rotations across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:360 doc/classes/PhysicsServer.xml:1116
+msgid ""
+"The amount of rotational damping across the axes. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:363 doc/classes/PhysicsServer.xml:1119
+msgid ""
+"The amount of rotational restitution across the axes. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:366 doc/classes/PhysicsServer.xml:1122
+msgid ""
+"The maximum amount of force that can occur, when rotating around the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:369
+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/Generic6DOFJoint.xml:372 doc/classes/PhysicsServer.xml:1128
+msgid "Target speed for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:375 doc/classes/PhysicsServer.xml:1131
+msgid "Maximum acceleration for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:387
+msgid "If enabled, linear motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:390
+msgid "If enabled, rotational motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:397
+msgid "If enabled, there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:400
+msgid "If enabled, there is a linear motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:403 doc/classes/HingeJoint.xml:108
+msgid "Represents the size of the [enum Flag] enum."
+msgstr ""
+
+#: doc/classes/Geometry.xml:4
+msgid "Helper node to calculate generic geometry operations."
+msgstr ""
+
+#: doc/classes/Geometry.xml:7
+msgid ""
+"Geometry 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/Geometry.xml:16
+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/Geometry.xml:27
+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/Geometry.xml:37
+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/Geometry.xml:45
+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/Geometry.xml:53
+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/Geometry.xml:62
+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/Geometry.xml:69
+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/Geometry.xml:77
+msgid ""
+"Mutually excludes common area defined by intersection of [code]polygon_a[/"
+"code] and [code]polygon_b[/code] (see [method intersect_polygons_2d]) 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/Geometry.xml:87
+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/Geometry.xml:96
+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/Geometry.xml:105
+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/Geometry.xml:114
+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/Geometry.xml:124
+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 [PoolVector3Array] 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/Geometry.xml:134
+msgid ""
+"Given the two 2D segments ([code]p1[/code], [code]q1[/code]) and ([code]p2[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PoolVector2Array] that contains this point "
+"on ([code]p1[/code], [code]q1[/code]) as well the accompanying point on "
+"([code]p2[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry.xml:141
+msgid "Used internally by the engine."
+msgstr ""
+
+#: doc/classes/Geometry.xml:149
+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/Geometry.xml:158
+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/Geometry.xml:167
+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/Geometry.xml:175
+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/Geometry.xml:182
+msgid ""
+"Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in "
+"clockwise order, otherwise returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:192
+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/Geometry.xml:200
+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/Geometry.xml:208
+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 multiple inner "
+"polygons (holes) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:218
+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 = PoolVector2Array([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/Geometry.xml:237
+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/Geometry.xml:250
+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/Geometry.xml:261
+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/Geometry.xml:271
+msgid ""
+"Given the 2D segment ([code]segment_from[/code], [code]segment_to[/code]), "
+"returns the position on the segment (as a number between 0 and 1) at which "
+"the segment hits the circle that is located at position "
+"[code]circle_position[/code] and has radius [code]circle_radius[/code]. If "
+"the segment does not intersect the circle, -1 is returned (this is also the "
+"case if the line extending the segment would intersect the circle, but the "
+"segment does not)."
+msgstr ""
+
+#: doc/classes/Geometry.xml:280
+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 [PoolVector3Array] "
+"containing the point the intersection and the hull's normal. If no "
+"intersecion is found, an the returned array is empty."
+msgstr ""
+
+#: doc/classes/Geometry.xml:290
+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 [PoolVector3Array]. "
+"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/Geometry.xml:300
+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/Geometry.xml:310
+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 [PoolVector3Array]. If "
+"yes, returns a [PoolVector3Array] containing the point of intersection and "
+"the sphere's normal at the point of intersection."
+msgstr ""
+
+#: doc/classes/Geometry.xml:321
+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/Geometry.xml:328
+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 [PoolIntArray] 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 [PoolIntArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Geometry.xml:335
+msgid ""
+"Triangulates the polygon specified by the points in [code]polygon[/code]. "
+"Returns a [PoolIntArray] 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 [PoolIntArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Geometry.xml:341
+msgid ""
+"Create regions where either subject or clip polygons (or both) are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:344
+msgid ""
+"Create regions where subject polygons are filled except where clip polygons "
+"are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:347
+msgid "Create regions where both subject and clip polygons are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:350
+msgid ""
+"Create regions where either subject or clip polygons are filled but not "
+"where both are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:353
+msgid ""
+"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:356
+msgid ""
+"While flattened paths can never perfectly trace an arc, they are "
+"approximated by a series of arc chords."
+msgstr ""
+
+#: doc/classes/Geometry.xml:359
+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/Geometry.xml:362
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polygon."
+msgstr ""
+
+#: doc/classes/Geometry.xml:365
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polyline."
+msgstr ""
+
+#: doc/classes/Geometry.xml:368
+msgid "Endpoints are squared off with no extension."
+msgstr ""
+
+#: doc/classes/Geometry.xml:371
+msgid "Endpoints are squared off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry.xml:374
+msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:4
+msgid "Base node for geometry-based visual instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:7
+msgid ""
+"Base node for geometry-based visual instances. Shares some common "
+"functionality like visibility and custom materials."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:16
+msgid ""
+"Returns the [enum GeometryInstance.Flags] that have been set for this object."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:23
+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/GeometryInstance.xml:31
+msgid ""
+"Sets the [enum GeometryInstance.Flags] specified. See [enum GeometryInstance."
+"Flags] for options."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:37
+msgid ""
+"The selected shadow casting flag. See [enum ShadowCastingSetting] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:40
+msgid ""
+"The extra distance added to the GeometryInstance's bounding box ([AABB]) to "
+"increase its cull box."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:43
+msgid ""
+"When disabled, the mesh will be taken into account when computing indirect "
+"lighting, but the resulting lightmap will not be saved. Useful for emissive "
+"only materials or shadow casters."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:46
+msgid ""
+"Scale factor for the generated baked lightmap. Useful for adding detail to "
+"certain mesh instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:49
+msgid ""
+"The GeometryInstance's max LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:53
+msgid ""
+"The GeometryInstance's max LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:57
+msgid ""
+"The GeometryInstance's min LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:61
+msgid ""
+"The GeometryInstance's min LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:65
+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/GeometryInstance.xml:69
+msgid ""
+"If [code]true[/code], this GeometryInstance will be used when baking lights "
+"using a [GIProbe] or [BakedLightmap]."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:74
+msgid "The generated lightmap texture will have the original size."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:77
+msgid "The generated lightmap texture will be twice as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:80
+msgid "The generated lightmap texture will be 4 times as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:83
+msgid "The generated lightmap texture will be 8 times as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:88
+msgid "Will not cast any shadows."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:91
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance.\n"
+"Will take culling into account, so faces not being rendered will not be "
+"taken into account when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:95
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance.\n"
+"Will not take culling into account, so all faces will be taken into account "
+"when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:99
+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/GeometryInstance.xml:103
+msgid ""
+"Will allow the GeometryInstance to be used when baking lights using a "
+"[GIProbe] or [BakedLightmap]."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:106
+msgid ""
+"Unused in this class, exposed for consistency with [enum VisualServer."
+"InstanceFlags]."
+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/voxel_cone_tracing/"
+"high_quality].\n"
+"[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light "
+"leaks (avoid one-sided walls). For interior levels, enclose your level "
+"geometry in a sufficiently large box and bridge the loops to close the "
+"mesh.\n"
+"[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot "
+"emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can "
+"emit light in a [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html"
+msgstr ""
+
+#: doc/classes/GIProbe.xml:22
+msgid ""
+"Bakes the effect from all [GeometryInstance]s marked with [member "
+"GeometryInstance.use_in_baked_light] and [Light]s marked with either "
+"[constant Light.BAKE_INDIRECT] or [constant Light.BAKE_ALL]. 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:28
+msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:34
+msgid ""
+"Offsets the lookup of the light contribution from the [GIProbe]. This can be "
+"used to avoid self-shadowing, but may introduce light leaking at higher "
+"values. This and [member normal_bias] should be played around with to "
+"minimize self-shadowing and light leaking.\n"
+"[b]Note:[/b] [code]bias[/code] should usually be above 1.0 as that is the "
+"size of the voxels."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:38
+msgid ""
+"[i]Deprecated.[/i] This property has been deprecated due to known bugs and "
+"no longer has any effect when enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:41
+msgid "The [GIProbeData] resource that holds the data for this [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:44
+msgid ""
+"The maximum brightness that the [GIProbe] will recognize. Brightness will be "
+"scaled within this range."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:47
+msgid ""
+"Energy multiplier. Makes the lighting contribution from the [GIProbe] "
+"brighter."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:50
+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:53
+msgid ""
+"If [code]true[/code], ignores the sky contribution when calculating lighting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:56
+msgid ""
+"Offsets the lookup into the [GIProbe] based on the object's normal "
+"direction. Can be used to reduce some self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:59
+msgid ""
+"How much light propagates through the probe internally. A higher value "
+"allows light to spread further."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:62
+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:67
+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:70
+msgid "Use 128 subdivisions. This is the default quality setting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:73
+msgid "Use 256 subdivisions."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:76
+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:79
+msgid "Represents the size of the [enum Subdiv] enum."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:13
+msgid ""
+"The [Color] of the light. Defaults to white. A black color causes the light "
+"to have no effect."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:16
+msgid ""
+"The inner angle of the cone in a spotlight. Must be less than or equal to "
+"the outer cone angle.\n"
+"Within this angle, the light is at full brightness. Between the inner and "
+"outer cone angles, there is a transition from full brightness to zero "
+"brightness. When creating a Godot [SpotLight], the ratio between the inner "
+"and outer cone angles is used to calculate the attenuation of the light."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:20
+msgid ""
+"The intensity of the light. This is expressed in candelas (lumens per "
+"steradian) for point and spot lights, and lux (lumens per m²) for "
+"directional lights. When creating a Godot light, this value is converted to "
+"a unitless multiplier."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:23
+msgid ""
+"The outer angle of the cone in a spotlight. Must be greater than or equal to "
+"the inner angle.\n"
+"At this angle, the light drops off to zero brightness. Between the inner and "
+"outer cone angles, there is a transition from full brightness to zero "
+"brightness. If this angle is a half turn, then the spotlight emits in all "
+"directions. When creating a Godot [SpotLight], the outer cone angle is used "
+"as the angle of the spotlight."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:27
+msgid ""
+"The range of the light, beyond which the light has no effect. GLTF lights "
+"with no range defined behave like physical lights (which have infinite "
+"range). When creating a Godot light, the range is clamped to 4096."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:30
+msgid ""
+"The type of the light. The values accepted by Godot are \"point\", \"spot\", "
+"and \"directional\", which correspond to Godot's [OmniLight], [SpotLight], "
+"and [DirectionalLight] respectively."
+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/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:17
+msgid ""
+"Adds the specified color to the end of the ramp, with the specified offset."
+msgstr ""
+
+#: doc/classes/Gradient.xml:24
+msgid "Returns the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:31
+msgid "Returns the offset of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:37
+msgid "Returns the number of colors in the ramp."
+msgstr ""
+
+#: doc/classes/Gradient.xml:44
+msgid "Returns the interpolated color specified by [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:51
+msgid "Removes the color at the index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:59
+msgid "Sets the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:67
+msgid "Sets the offset for the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:73
+msgid "Gradient's colors returned as a [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:76
+msgid "Gradient's offsets returned as a [PoolRealArray]."
+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:18
+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:25
+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:32
+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:38
+msgid "Removes all connections between nodes."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:48
+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:58
+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:64
+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:70
+msgid ""
+"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
+"the top left of the graph. You can use this method to reposition the toolbar "
+"or to add your own custom controls to it.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:81
+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:89
+msgid "Returns whether it's possible to connect slots of the specified types."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:97
+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:104
+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:111
+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:122
+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:129
+msgid "Sets the specified [code]node[/code] as the one selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:136
+msgid "If [code]true[/code], the minimap is visible."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:139
+msgid "The opacity of the minimap rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:142
+msgid ""
+"The size of the minimap rectangle. The map itself is based on the size of "
+"the grid area and is scaled to fit this rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:146
+msgid ""
+"If [code]true[/code], enables disconnection of existing connections in the "
+"GraphEdit by dragging the right end."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:149
+msgid "The scroll offset."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:152
+msgid ""
+"If [code]true[/code], makes a label with the current zoom level visible. The "
+"zoom value is displayed in percents."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:155
+msgid "The snapping distance in pixels."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:158
+msgid "If [code]true[/code], enables snapping."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:161
+msgid "The current zoom value."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:164
+msgid "The upper zoom limit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:167
+msgid "The lower zoom limit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:170
+msgid "The step of each zoom level."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:176
+msgid "Emitted at the beginning of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:181
+msgid "Emitted at the end of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:189
+msgid ""
+"Emitted when user dragging connection from input port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:198
+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:206
+msgid ""
+"Emitted when user dragging connection from output port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:211
+msgid "Emitted when the user presses [code]Ctrl + C[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:216
+msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:225
+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:230
+msgid ""
+"Emitted when a GraphNode is attempted to be duplicated in the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:236
+msgid "Emitted when a GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:246
+msgid "Emitted when the user presses [code]Ctrl + V[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:252
+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:258
+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:272
+msgid "The background drawn under the grid."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:275
+msgid "Color of major grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:278
+msgid "Color of minor grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:283
+msgid "The icon for the zoom out button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:286
+msgid "The icon for the zoom in button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:289
+msgid ""
+"The horizontal range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:292
+msgid "The vertical range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:295
+msgid "The icon for the zoom reset button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:298
+msgid "The fill color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:301
+msgid "The outline color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:304
+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:17
+msgid "Disables all input and output slots of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:24
+msgid "Disables input and output slot whose index is [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:31
+msgid "Returns the [Color] of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:37
+msgid ""
+"Returns the number of enabled input slots (connections) to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:44
+msgid "Returns the position of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:51
+msgid "Returns the type of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:58
+msgid "Returns the [Color] of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:64
+msgid ""
+"Returns the number of enabled output slots (connections) of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:71
+msgid "Returns the position of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:78
+msgid "Returns the type of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:85
+msgid "Returns the left (input) [Color] of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:92
+msgid "Returns the right (output) [Color] of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:99
+msgid "Returns the left (input) type of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:106
+msgid "Returns the right (output) type of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:113
+msgid ""
+"Returns [code]true[/code] if left (input) side of the slot [code]idx[/code] "
+"is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:120
+msgid ""
+"Returns [code]true[/code] if right (output) side of the slot [code]idx[/"
+"code] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:135
+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.\n"
+"Individual properties can be set using one of the [code]set_slot_*[/code] "
+"methods. You must enable at least one side of the slot to do so."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:149
+msgid ""
+"Sets the [Color] of the left (input) side of the slot [code]idx[/code] to "
+"[code]color_left[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:157
+msgid ""
+"Sets the [Color] of the right (output) side of the slot [code]idx[/code] to "
+"[code]color_right[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:165
+msgid ""
+"Toggles the left (input) side of the slot [code]idx[/code]. If "
+"[code]enable_left[/code] is [code]true[/code], a port will appear on the "
+"left side and the slot will be able to be connected from this side."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:173
+msgid ""
+"Toggles the right (output) side of the slot [code]idx[/code]. If "
+"[code]enable_right[/code] is [code]true[/code], a port will appear on the "
+"right side and the slot will be able to be connected from this side."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:181
+msgid ""
+"Sets the left (input) type of the slot [code]idx[/code] to [code]type_left[/"
+"code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:189
+msgid ""
+"Sets the right (output) type of the slot [code]idx[/code] to "
+"[code]type_right[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:195
+msgid "If [code]true[/code], the GraphNode is a comment node."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:198
+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:202
+msgid "Sets the overlay shown above the GraphNode. See [enum Overlay]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:205
+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:209
+msgid "If [code]true[/code], the GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:212
+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:216
+msgid "The text displayed in the GraphNode's title bar."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:222
+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:229
+msgid "Emitted when the GraphNode is dragged."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:234
+msgid "Emitted when the GraphNode is moved."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:239
+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:245
+msgid ""
+"Emitted when the GraphNode is requested to be resized. Happens on dragging "
+"the resizer handle (see [member resizable])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:251
+msgid "Emitted when any GraphNode's slot is updated."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:257
+msgid "No overlay is shown."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:260
+msgid "Show overlay set in the [code]breakpoint[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:263
+msgid "Show overlay set in the [code]position[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:268
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_BREAKPOINT]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:271
+msgid ""
+"The icon for the close button, visible when [member show_close] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:274
+msgid "The color modulation applied to the close button icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:277 doc/classes/WindowDialog.xml:41
+msgid "The vertical offset of the close button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:280
+msgid "The [StyleBox] used when [member comment] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:283
+msgid ""
+"The [StyleBox] used when [member comment] is enabled and the [GraphNode] is "
+"focused."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:290
+msgid "The default background for [GraphNode]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:293
+msgid "The icon used for representing ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:296
+msgid "Horizontal offset for the ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:299
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_POSITION]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:302
+msgid "The icon used for resizer, visible when [member resizable] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:305
+msgid "The color modulation applied to the resizer icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:308
+msgid "The background used when the [GraphNode] is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:311
+msgid "The vertical distance between ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:314
+msgid "Color of the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:317
+msgid "Font used for the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:320
+msgid "Vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:4
+msgid ""
+"Grid container used to arrange Control-derived children in a grid like "
+"layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:7
+msgid ""
+"GridContainer will arrange its Control-derived 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.\n"
+"[b]Note:[/b] GridContainer only works with child nodes inheriting from "
+"Control. It won't rearrange child nodes inheriting from Node2D."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:18
+msgid ""
+"The number of columns in the [GridContainer]. If modified, [GridContainer] "
+"reorders its Control-derived children to accommodate the new layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:26
+msgid "The horizontal separation of children nodes."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:29
+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.\n"
+"[b]Note:[/b] GridMap doesn't extend [VisualInstance] and therefore can't be "
+"hidden or cull masked based on [member VisualInstance.layers]. If you make a "
+"light not affect the first layer, the whole GridMap won't be lit by the "
+"light in question."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:14
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html"
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:22
+msgid "Clear all cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:39
+msgid ""
+"Returns an array of [ArrayMesh]es and [Transform] references of all bake "
+"meshes that exist within the current GridMap."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:48
+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."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:57
+msgid ""
+"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
+"returned if the cell is empty."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:64
+msgid "Returns an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:71
+msgid "Returns an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:77
+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:83
+msgid ""
+"Returns an array of [Vector3] with the non-empty cell coordinates in the "
+"grid map."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:99
+msgid ""
+"Returns the position of a grid cell in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:116
+msgid ""
+"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
+"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:135
+msgid "Sets an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:143
+msgid "Sets an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:150
+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:157
+msgid "If [code]true[/code], grid items are centered on the X axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:160
+msgid "If [code]true[/code], grid items are centered on the Y axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:163
+msgid "If [code]true[/code], grid items are centered on the Z axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:166
+msgid ""
+"The size of each octant measured in number of cells. This applies to all "
+"three axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:169
+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:173
+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:177
+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:181
+msgid ""
+"The physics layers this GridMap detects collisions in. See [url=https://docs."
+"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-"
+"layers-and-masks]Collision layers and masks[/url] in the documentation for "
+"more information."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:184
+msgid "The assigned [MeshLibrary]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:187
+msgid ""
+"Controls whether this GridMap will be baked in a [BakedLightmap] or not."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:194
+msgid "Emitted when [member cell_size] changes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:200
+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:38
+msgid "Closes the current context, and return the computed hash."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:45
+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:52
+msgid "Updates the computation with the given [code]chunk[/code] of data."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:58
+msgid "Hashing algorithm: MD5."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:61
+msgid "Hashing algorithm: SHA-1."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:64
+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/HeightMapShape.xml:4
+msgid "Height map shape for 3D physics."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:7
+msgid ""
+"Height map shape resource, which can be added to a [PhysicsBody] or [Area]."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:15
+msgid ""
+"Height map data, pool array must be of [member map_width] * [member "
+"map_depth] size."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:18
+msgid ""
+"Depth of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:21
+msgid ""
+"Width of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:4
+msgid "A hinge between two 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:7
+msgid ""
+"A HingeJoint normally uses the Z axis of body A as the hinge axis, another "
+"axis can be specified when adding it manually though. See also "
+"[Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:16 doc/classes/SpriteBase3D.xml:21
+msgid "Returns the value of the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:23 doc/classes/ParticlesMaterial.xml:25
+#: doc/classes/PinJoint.xml:16
+msgid "Returns the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:31
+msgid "If [code]true[/code], enables the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:39 doc/classes/PinJoint.xml:24
+msgid "Sets the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:45 doc/classes/HingeJoint.xml:85
+#: doc/classes/PhysicsServer.xml:977
+msgid ""
+"The speed with which the rotation across the axis perpendicular to the hinge "
+"gets corrected."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:48 doc/classes/HingeJoint.xml:102
+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/HingeJoint.xml:51 doc/classes/HingeJoint.xml:82
+msgid ""
+"The minimum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:54 doc/classes/HingeJoint.xml:90
+#: doc/classes/PhysicsServer.xml:982
+msgid "The lower this value, the more the rotation gets slowed down."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:59 doc/classes/HingeJoint.xml:79
+msgid ""
+"The maximum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:62 doc/classes/HingeJoint.xml:105
+msgid "When activated, a motor turns the hinge."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:65 doc/classes/HingeJoint.xml:96
+#: doc/classes/PhysicsServer.xml:988
+msgid "Maximum acceleration for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:68 doc/classes/HingeJoint.xml:93
+#: doc/classes/PhysicsServer.xml:985
+msgid "Target speed for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:71 doc/classes/HingeJoint.xml:76
+#: doc/classes/PhysicsServer.xml:968
+msgid ""
+"The speed with which the two bodies get pulled together when they move in "
+"different directions."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:4
+msgid "Used to create an HMAC for a message using a key."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:7
+msgid ""
+"The HMACContext class is useful for advanced HMAC use cases, such as "
+"streaming the message as it supports creating the message over time rather "
+"than providing it all at once.\n"
+"[codeblock]\n"
+"extends Node\n"
+"var ctx = HMACContext.new()\n"
+"\n"
+"func _ready():\n"
+" var key = \"supersecret\".to_utf8()\n"
+" var err = ctx.start(HashingContext.HASH_SHA256, key)\n"
+" assert(err == OK)\n"
+" var msg1 = \"this is \".to_utf8()\n"
+" var msg2 = \"vewy vewy secret\".to_utf8()\n"
+" err = ctx.update(msg1)\n"
+" assert(err == OK)\n"
+" err = ctx.update(msg2)\n"
+" assert(err == OK)\n"
+" var hmac = ctx.finish()\n"
+" print(hmac.hex_encode())\n"
+"[/codeblock]\n"
+"And in C# we can use the following.\n"
+"[codeblock]\n"
+"using Godot;\n"
+"using System;\n"
+"using System.Diagnostics;\n"
+"\n"
+"public class CryptoNode : Node\n"
+"{\n"
+" private HMACContext ctx = new HMACContext();\n"
+" public override void _Ready()\n"
+" {\n"
+" PoolByteArray key = String(\"supersecret\").to_utf8();\n"
+" Error err = ctx.Start(HashingContext.HASH_SHA256, key);\n"
+" GD.Assert(err == OK);\n"
+" PoolByteArray msg1 = String(\"this is \").to_utf8();\n"
+" PoolByteArray msg2 = String(\"vewy vew secret\").to_utf8();\n"
+" err = ctx.Update(msg1);\n"
+" GD.Assert(err == OK);\n"
+" err = ctx.Update(msg2);\n"
+" GD.Assert(err == OK);\n"
+" PoolByteArray hmac = ctx.Finish();\n"
+" GD.Print(hmac.HexEncode());\n"
+" }\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:58
+msgid ""
+"Returns the resulting HMAC. If the HMAC failed, an empty [PoolByteArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:66
+msgid ""
+"Initializes the HMACContext. This method cannot be called again on the same "
+"HMACContext until [method finish] has been called."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:73
+msgid ""
+"Updates the message to be HMACed. This can be called multiple times before "
+"[method finish] is called to append [code]data[/code] to the message, but "
+"cannot be called until [method start] has been called."
+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 "Displayed when the decrement button is being pressed."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30
+msgid ""
+"Used as texture for the grabber, the draggable element representing current "
+"scroll."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:29 doc/classes/VScrollBar.xml:33
+msgid "Used when the mouse hovers over the grabber."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:32 doc/classes/VScrollBar.xml:36
+msgid "Used when the grabber is being dragged."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:35
+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:38 doc/classes/VScrollBar.xml:42
+msgid "Displayed when the mouse cursor hovers over the increment button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45
+msgid "Displayed when the increment button is being pressed."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:44 doc/classes/VScrollBar.xml:48
+msgid "Used as background of this [ScrollBar]."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:47 doc/classes/VScrollBar.xml:51
+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).\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/HSlider.xml:18 doc/classes/VSlider.xml:22
+msgid "The texture for the grabber (the draggable element)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:21
+msgid "The background of the area to the left of the grabber."
+msgstr ""
+
+#: doc/classes/HSlider.xml:26 doc/classes/VSlider.xml:30
+msgid "The texture for the grabber when it's disabled."
+msgstr ""
+
+#: doc/classes/HSlider.xml:29 doc/classes/VSlider.xml:33
+msgid "The texture for the grabber when it's focused."
+msgstr ""
+
+#: doc/classes/HSlider.xml:32
+msgid ""
+"The background for the whole slider. Determines the height of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:35 doc/classes/VSlider.xml:39
+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 "Low-level 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. [b]See the "
+"[HTTPRequest] node for a higher-level alternative.[/b]\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.\n"
+"[b]Note:[/b] SSL/TLS support is currently limited to TLS 1.0, TLS 1.1, and "
+"TLS 1.2. Attempting to connect to a TLS 1.3-only server will return an "
+"error.\n"
+"[b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are "
+"currently not supported. Revoked certificates are accepted as long as they "
+"are otherwise valid. If this is a concern, you may want to use automatically "
+"managed certificates with a short validity period."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:17 doc/classes/HTTPRequest.xml:71
+#: doc/classes/StreamPeerSSL.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:23
+msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:33
+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:42
+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:49
+msgid "Returns the response's HTTP status code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:55
+msgid "Returns the response headers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:61
+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:74
+msgid ""
+"Returns a [enum Status] constant. Need to call [method poll] in order to get "
+"status updates."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:80
+msgid "If [code]true[/code], this [HTTPClient] has a response available."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:86
+msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:92
+msgid ""
+"This needs to be called in order to have any request processed. Check "
+"results with [method get_status]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:99
+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:116
+msgid "Reads one chunk from the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:126
+msgid ""
+"Sends a request to the connected host.\n"
+"The URL parameter is usually just the part after the host, so for "
+"[code]http://somehost.com/index.php[/code], it is [code]/index.php[/code]. "
+"When sending requests to an HTTP proxy server, it should be an absolute URL. "
+"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
+"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
+"authority component ([code]host:port[/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]\n"
+"[b]Note:[/b] The [code]request_data[/code] parameter is ignored if "
+"[code]method[/code] is [constant HTTPClient.METHOD_GET]. This is because GET "
+"methods can't contain request data. As a workaround, you can pass request "
+"data as a query string in the URL. See [method String.http_escape] for an "
+"example."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:146
+msgid ""
+"Sends a raw request to the connected host.\n"
+"The URL parameter is usually just the part after the host, so for "
+"[code]http://somehost.com/index.php[/code], it is [code]/index.php[/code]. "
+"When sending requests to an HTTP proxy server, it should be an absolute URL. "
+"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
+"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
+"authority component ([code]host:port[/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:155
+msgid ""
+"If [code]true[/code], execution will block until all data is read from the "
+"response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:158
+msgid "The connection to use for this client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:161
+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:166
+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:169
+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:172
+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:175
+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:178
+msgid ""
+"HTTP DELETE method. The DELETE method requests to delete the specified "
+"resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:181
+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:184
+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:187
+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:190
+msgid ""
+"HTTP PATCH method. The PATCH method is used to apply partial modifications "
+"to a resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:193
+msgid "Represents the size of the [enum Method] enum."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:196
+msgid "Status: Disconnected from the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:199
+msgid "Status: Currently resolving the hostname for the given URL into an IP."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:202
+msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:205
+msgid "Status: Currently connecting to server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:208
+msgid "Status: Can't connect to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:211
+msgid "Status: Connection established."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:214
+msgid "Status: Currently sending request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:217
+msgid "Status: HTTP body received."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:220
+msgid "Status: Error in HTTP connection."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:223
+msgid "Status: Error in SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:226
+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:229
+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:232
+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:235
+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:238
+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:241
+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:244
+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:247
+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:250
+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:253
+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:256
+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:259
+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:262
+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:265
+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:268
+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:271
+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:274
+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:277
+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:280
+msgid ""
+"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:283
+msgid ""
+"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
+"i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:286
+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:289
+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:292
+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:295
+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:298
+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:301
+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:304
+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:307
+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:310
+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:313
+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:316
+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:319
+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:322
+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:325
+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:328
+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:331
+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:334
+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:337
+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:340
+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:343
+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:346
+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:349
+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:352
+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:355
+msgid ""
+"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
+"resource of a method is locked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:358
+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:361
+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:364
+msgid ""
+"HTTP status code [code]428 Precondition Required[/code]. The origin server "
+"requires the request to be conditional."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:367
+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:370
+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:373
+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:376
+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:379
+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:382
+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:385
+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:388
+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:391
+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:394
+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:397
+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:400
+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:403
+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:406
+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]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, "
+"especially regarding SSL security.\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"
+" 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]"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:70
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:77
+msgid "Cancels the current request."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:83
+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:90
+msgid "Returns the amount of bytes this HTTPRequest downloaded."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:96
+msgid ""
+"Returns the current status of the underlying [HTTPClient]. See [enum "
+"HTTPClient.Status]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:107
+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.\n"
+"[b]Note:[/b] When [code]method[/code] is [constant HTTPClient.METHOD_GET], "
+"the payload sent via [code]request_data[/code] might be ignored by the "
+"server or even cause the server to reject the request (check [url=https://"
+"datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 section 4.3.1[/"
+"url] for more details). As a workaround, you can send data as a query string "
+"in the URL. See [method String.http_escape] for an example."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:120
+msgid ""
+"Creates request on the underlying [HTTPClient] using a raw array of bytes "
+"for the request body. 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:127
+msgid "Maximum allowed size for response bodies."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:130
+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 lower value (e.g. 4096 for 4 KiB) when downloading small files "
+"to decrease memory usage at the cost of download speeds."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:134
+msgid "The file to download into. Will output any received file into it."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:137
+msgid "Maximum number of allowed redirects."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:142
+msgid "If [code]true[/code], multithreading is used to improve performance."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:152
+msgid "Emitted when a request is completed."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:158
+msgid "Request successful."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:163
+msgid "Request failed while connecting."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:166
+msgid "Request failed while resolving."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:169
+msgid "Request failed due to connection (read/write) error."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:172
+msgid "Request failed on SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:175
+msgid "Request does not have a response (yet)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:178
+msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:181
+msgid "Request failed (currently unused)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:184
+msgid "HTTPRequest couldn't open the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:187
+msgid "HTTPRequest couldn't write to the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:190
+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 an "
+"[ImageTexture] and provides commonly used [i]image processing[/i] methods. "
+"The maximum width and height for an [Image] are [constant MAX_WIDTH] and "
+"[constant MAX_HEIGHT].\n"
+"An [Image] cannot be assigned to a [code]texture[/code] property of an "
+"object directly (such as [Sprite]), and has to be converted manually to an "
+"[ImageTexture] first.\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images may fail to import."
+msgstr ""
+
+#: doc/classes/Image.xml:12 doc/classes/ImageTexture.xml:31
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
+"importing_images.html"
+msgstr ""
+
+#: doc/classes/Image.xml:21
+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:31
+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:40
+msgid ""
+"Copies [code]src_rect[/code] from [code]src[/code] image to this image at "
+"coordinates [code]dst[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:50
+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:57
+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:63
+msgid "Removes the image's mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:72
+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:79
+msgid "Converts the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:86
+msgid "Copies [code]src[/code] image to this image."
+msgstr ""
+
+#: doc/classes/Image.xml:96
+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:107
+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:115
+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:121
+msgid ""
+"Decompresses the image if it is compressed. Returns an error if decompress "
+"function is not available."
+msgstr ""
+
+#: doc/classes/Image.xml:127
+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:133
+msgid ""
+"Stretches the image and enlarges it by a factor of 2. No interpolation is "
+"done."
+msgstr ""
+
+#: doc/classes/Image.xml:140
+msgid "Fills the image with a given [Color]."
+msgstr ""
+
+#: doc/classes/Image.xml:146
+msgid "Blends low-alpha pixels with nearby pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:152
+msgid "Flips the image horizontally."
+msgstr ""
+
+#: doc/classes/Image.xml:158
+msgid "Flips the image vertically."
+msgstr ""
+
+#: doc/classes/Image.xml:165
+msgid ""
+"Generates mipmaps for the image. Mipmaps are precalculated lower-resolution "
+"copies of the image that are automatically used if the image needs to be "
+"scaled down when rendered. They help improve image quality and performance "
+"when rendering. This method returns an error if the image is compressed, in "
+"a custom format, or if the image's width/height is [code]0[/code].\n"
+"[b]Note:[/b] Mipmap generation is done on the CPU, is single-threaded and is "
+"[i]always[/i] done on the main thread. This means generating mipmaps will "
+"result in noticeable stuttering during gameplay, even if [method "
+"generate_mipmaps] is called from a [Thread]."
+msgstr ""
+
+#: doc/classes/Image.xml:172
+msgid "Returns a copy of the image's raw data."
+msgstr ""
+
+#: doc/classes/Image.xml:178
+msgid "Returns the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:184
+msgid "Returns the image's height."
+msgstr ""
+
+#: doc/classes/Image.xml:191
+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:199
+msgid ""
+"Returns the color of the pixel at [code](x, y)[/code] if the image is "
+"locked. If the image is unlocked, it always returns a [Color] with the value "
+"[code](0, 0, 0, 1.0)[/code]. This is the same as [method get_pixelv], but "
+"two integer arguments instead of a Vector2 argument."
+msgstr ""
+
+#: doc/classes/Image.xml:206
+msgid ""
+"Returns the color of the pixel at [code]src[/code] if the image is locked. "
+"If the image is unlocked, it always returns a [Color] with the value [code]"
+"(0, 0, 0, 1.0)[/code]. This is the same as [method get_pixel], but with a "
+"Vector2 argument instead of two integer arguments."
+msgstr ""
+
+#: doc/classes/Image.xml:213
+msgid ""
+"Returns a new image that is a copy of the image's area specified with "
+"[code]rect[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:219
+msgid "Returns the image's size (width and height)."
+msgstr ""
+
+#: doc/classes/Image.xml:225
+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:231
+msgid "Returns the image's width."
+msgstr ""
+
+#: doc/classes/Image.xml:237
+msgid "Returns [code]true[/code] if the image has generated mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:243
+msgid "Returns [code]true[/code] if the image is compressed."
+msgstr ""
+
+#: doc/classes/Image.xml:249
+msgid "Returns [code]true[/code] if the image has no data."
+msgstr ""
+
+#: doc/classes/Image.xml:255
+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:262
+msgid ""
+"Loads an image from file [code]path[/code]. See [url=https://docs."
+"godotengine.org/en/3.4/getting_started/workflow/assets/importing_images."
+"html#supported-image-formats]Supported image formats[/url] for a list of "
+"supported image formats and limitations.\n"
+"[b]Warning:[/b] This method should only be used in the editor or in cases "
+"when you need to load external images at run-time, such as images located at "
+"the [code]user://[/code] directory, and may not work in exported projects.\n"
+"See also [ImageTexture] description for usage examples."
+msgstr ""
+
+#: doc/classes/Image.xml:271
+msgid ""
+"Loads an image from the binary contents of a BMP file.\n"
+"[b]Note:[/b] Godot's BMP module doesn't support 16-bit per pixel images. "
+"Only 1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel images are supported."
+msgstr ""
+
+#: doc/classes/Image.xml:279
+msgid "Loads an image from the binary contents of a JPEG file."
+msgstr ""
+
+#: doc/classes/Image.xml:286
+msgid "Loads an image from the binary contents of a PNG file."
+msgstr ""
+
+#: doc/classes/Image.xml:293
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:300
+msgid "Loads an image from the binary contents of a WebP file."
+msgstr ""
+
+#: doc/classes/Image.xml:306
+msgid ""
+"Locks the data for reading and writing access. Sends an error to the console "
+"if the image is not locked when reading or writing a pixel."
+msgstr ""
+
+#: doc/classes/Image.xml:312
+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:318
+msgid ""
+"Multiplies color values with alpha values. Resulting color values for a "
+"pixel are [code](color * alpha)/256[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:327
+msgid ""
+"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
+"New pixels are calculated using the [code]interpolation[/code] mode defined "
+"via [enum Interpolation] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:335
+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. New pixels are calculated using the [code]interpolation[/code] mode "
+"defined via [enum Interpolation] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:341
+msgid ""
+"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
+msgstr ""
+
+#: doc/classes/Image.xml:349
+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.\n"
+"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which "
+"means [method save_exr] will return [constant ERR_UNAVAILABLE] when it is "
+"called from an exported project."
+msgstr ""
+
+#: doc/classes/Image.xml:357
+msgid "Saves the image as a PNG file to [code]path[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:371
+msgid ""
+"Sets the [Color] of the pixel at [code](x, y)[/code] if the image is locked. "
+"Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.lock()\n"
+"img.set_pixel(x, y, color) # Works\n"
+"img.unlock()\n"
+"img.set_pixel(x, y, color) # Does not have an effect\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:387
+msgid ""
+"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code] if the image is "
+"locked. 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.lock()\n"
+"img.set_pixelv(Vector2(x, y), color) # Works\n"
+"img.unlock()\n"
+"img.set_pixelv(Vector2(x, y), color) # Does not have an effect\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:401
+msgid "Shrinks the image by a factor of 2."
+msgstr ""
+
+#: doc/classes/Image.xml:407
+msgid "Converts the raw data from the sRGB colorspace to a linear scale."
+msgstr ""
+
+#: doc/classes/Image.xml:413
+msgid "Unlocks the data and prevents changes."
+msgstr ""
+
+#: doc/classes/Image.xml:419
+msgid ""
+"Holds all the image's color data in a given format. See [enum Format] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:424
+msgid "The maximal width allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:427
+msgid "The maximal height allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:430
+msgid "Texture format with a single 8-bit depth representing luminance."
+msgstr ""
+
+#: doc/classes/Image.xml:433
+msgid ""
+"OpenGL texture format with two values, luminance and alpha each stored with "
+"8 bits."
+msgstr ""
+
+#: doc/classes/Image.xml:436
+msgid ""
+"OpenGL texture format [code]RED[/code] with a single component and a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
+msgstr ""
+
+#: doc/classes/Image.xml:440
+msgid ""
+"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
+"8 for each."
+msgstr ""
+
+#: doc/classes/Image.xml:443
+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:447
+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:451
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 4."
+msgstr ""
+
+#: doc/classes/Image.xml:454
+msgid ""
+"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
+"component of RGB and one bit for alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:457
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
+"bit floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:460
+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:463
+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:466
+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:469
+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:472
+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:475
+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:478
+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:481
+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:484
+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:488
+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:492
+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:496
+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:499
+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:502
+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:506
+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:509
+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:512
+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:516
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:519
+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:522
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:525
+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:528
+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:531
+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:534
+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:537
+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:540
+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:544
+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:548
+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:552
+msgid "Represents the size of the [enum Format] enum."
+msgstr ""
+
+#: doc/classes/Image.xml:555
+msgid ""
+"Performs nearest-neighbor interpolation. If the image is resized, it will be "
+"pixelated."
+msgstr ""
+
+#: doc/classes/Image.xml:558
+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:561
+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:564
+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 far fewer 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:571
+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:574
+msgid "Image does not have alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:577
+msgid "Image stores alpha in a single bit."
+msgstr ""
+
+#: doc/classes/Image.xml:580
+msgid "Image uses alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:583
+msgid "Use S3TC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:586
+msgid "Use PVRTC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:589
+msgid "Use PVRTC4 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:592
+msgid "Use ETC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:595
+msgid "Use ETC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:598
+msgid ""
+"Source texture (before compression) is a regular texture. Default for all "
+"textures."
+msgstr ""
+
+#: doc/classes/Image.xml:601
+msgid "Source texture (before compression) is in sRGB space."
+msgstr ""
+
+#: doc/classes/Image.xml:604
+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 [Texture] based on an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:7
+msgid ""
+"A [Texture] based on an [Image]. For an image to be displayed, an "
+"[ImageTexture] has to be created from it using the [method "
+"create_from_image] method:\n"
+"[codeblock]\n"
+"var texture = ImageTexture.new()\n"
+"var image = Image.new()\n"
+"image.load(\"res://icon.png\")\n"
+"texture.create_from_image(image)\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"This way, textures can be created at run-time by loading images both from "
+"within the editor and externally.\n"
+"[b]Warning:[/b] Prefer to load imported textures with [method @GDScript."
+"load] over loading them from within the filesystem dynamically with [method "
+"Image.load], as it may not work in exported projects:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"This is because images have to be imported as [StreamTexture] first to be "
+"loaded with [method @GDScript.load]. If you'd still like to load an image "
+"file just like any other [Resource], import it as an [Image] resource "
+"instead, and then load it normally using the [method @GDScript.load] "
+"method.\n"
+"But do note that the image data can still be retrieved from an imported "
+"texture as well using the [method Texture.get_data] method, which returns a "
+"copy of the data:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"var image : Image = texture.get_data()\n"
+"[/codeblock]\n"
+"An [ImageTexture] is not meant to be operated from within the editor "
+"interface directly, and is mostly useful for rendering images on screen "
+"dynamically via code. If you need to generate images procedurally from "
+"within the editor, consider saving and importing images as custom texture "
+"resources implementing a new [EditorImportPlugin].\n"
+"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
+"hardware limitations."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:41
+msgid ""
+"Create a new [ImageTexture] with [code]width[/code] and [code]height[/"
+"code].\n"
+"[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] "
+"is any combination of [enum Texture.Flags]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:50
+msgid ""
+"Initializes the texture by allocating and setting the data from an [Image] "
+"with [code]flags[/code] from [enum Texture.Flags]. An sRGB to linear color "
+"space conversion can take place, according to [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:56
+msgid "Returns the format of the texture, one of [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:63
+msgid ""
+"Loads an image from a file path and creates a texture from it.\n"
+"[b]Note:[/b] This method is deprecated and will be removed in Godot 4.0, use "
+"[method Image.load] and [method create_from_image] instead."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:71
+msgid ""
+"Replaces the texture's data with a new [Image].\n"
+"[b]Note:[/b] The texture has to be initialized first with the [method "
+"create_from_image] method before it can be updated. The new image "
+"dimensions, format, and mipmaps configuration should match the existing "
+"texture's image configuration, otherwise it has to be re-created with the "
+"[method create_from_image] method.\n"
+"Use this method over [method create_from_image] if you need to update the "
+"texture frequently, which is faster than allocating additional memory for a "
+"new texture each time."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:80 doc/classes/VisualServer.xml:2837
+msgid "Resizes the texture to the specified dimensions."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:87
+msgid "The storage quality for [constant STORAGE_COMPRESS_LOSSY]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:90
+msgid "The storage type (raw, lossy, or compressed)."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:95
+msgid "[Image] data is stored raw and unaltered."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:98
+msgid ""
+"[Image] data is compressed with a lossy algorithm. You can set the storage "
+"quality with [member lossy_quality]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:101
+msgid "[Image] data is compressed with a lossless algorithm."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:4
+msgid "Draws simple geometry from code."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.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.\n"
+"[b]Note:[/b] In case of missing points when handling large amounts of mesh "
+"data, try increasing its buffer size limit under [member ProjectSettings."
+"rendering/limits/buffers/immediate_buffer_size_kb]."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:23
+msgid ""
+"Simple helper to draw an UV sphere with given latitude, longitude and radius."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:30
+msgid ""
+"Adds a vertex in local coordinate space with the currently set color/uv/etc."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:38
+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/ImmediateGeometry.xml:45
+msgid "Clears everything that was drawn using begin/end."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:51
+msgid "Ends a drawing context and displays the results."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:58
+msgid "The current drawing color."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:65
+msgid "The next vertex's normal."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:72
+msgid "The next vertex's tangent (and binormal facing)."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:79
+msgid "The next vertex's UV."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:86
+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/3.4/tutorials/inputs/index.html"
+msgstr ""
+
+#: doc/classes/Input.xml:20
+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:29
+msgid "If the specified action is already pressed, this will release it."
+msgstr ""
+
+#: doc/classes/Input.xml:37
+msgid ""
+"Adds a new mapping entry (in SDL2 format) to the mapping database. "
+"Optionally update already connected devices."
+msgstr ""
+
+#: doc/classes/Input.xml:43
+msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
+"Returns the acceleration of the device's accelerometer sensor, if the device "
+"has one. Otherwise, the method returns [constant Vector3.ZERO].\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.\n"
+"[b]Note:[/b] This method only works on iOS, Android, and UWP. On other "
+"platforms, it always returns [constant Vector3.ZERO]. On Android the unit of "
+"measurement for each axis is m/s² while on iOS and UWP it's a multiple of "
+"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
+msgstr ""
+
+#: doc/classes/Input.xml:60
+msgid ""
+"Returns a value between 0 and 1 representing the raw intensity of the given "
+"action, ignoring the action's deadzone. In most cases, you should use "
+"[method get_action_strength] instead.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:69
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:78
+msgid ""
+"Get axis input by specifying two actions, one negative and one positive.\n"
+"This is a shorthand for writing [code]Input."
+"get_action_strength(\"positive_action\") - Input."
+"get_action_strength(\"negative_action\")[/code]."
+msgstr ""
+
+#: doc/classes/Input.xml:85
+msgid ""
+"Returns an [Array] containing the device IDs of all currently connected "
+"joypads."
+msgstr ""
+
+#: doc/classes/Input.xml:91
+msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
+msgstr ""
+
+#: doc/classes/Input.xml:97
+msgid ""
+"Returns the gravity of the device's accelerometer sensor, if the device has "
+"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
+"it always returns [constant Vector3.ZERO]. On Android the unit of "
+"measurement for each axis is m/s² while on iOS it's a multiple of the "
+"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
+msgstr ""
+
+#: doc/classes/Input.xml:104
+msgid ""
+"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
+"gyroscope sensor, if the device has one. Otherwise, the method returns "
+"[constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
+"it always returns [constant Vector3.ZERO]."
+msgstr ""
+
+#: doc/classes/Input.xml:113
+msgid ""
+"Returns the current value of the joypad axis at given index (see [enum "
+"JoystickList])."
+msgstr ""
+
+#: doc/classes/Input.xml:120
+msgid "Returns the index of the provided axis name."
+msgstr ""
+
+#: doc/classes/Input.xml:127
+msgid ""
+"Receives a [enum JoystickList] axis and returns its equivalent name as a "
+"string."
+msgstr ""
+
+#: doc/classes/Input.xml:134
+msgid "Returns the index of the provided button name."
+msgstr ""
+
+#: doc/classes/Input.xml:141
+msgid ""
+"Receives a gamepad button from [enum JoystickList] and returns its "
+"equivalent name as a string."
+msgstr ""
+
+#: doc/classes/Input.xml:148
+msgid ""
+"Returns a SDL2-compatible device GUID on platforms that use gamepad "
+"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Input.xml:155
+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:169
+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:175
+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:181
+msgid ""
+"Returns the magnetic field strength in micro-Tesla for all axes of the "
+"device's magnetometer sensor, if the device has one. Otherwise, the method "
+"returns [constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android, iOS and UWP. On other "
+"platforms, it always returns [constant Vector3.ZERO]."
+msgstr ""
+
+#: doc/classes/Input.xml:188
+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:194
+msgid "Returns the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:205
+msgid ""
+"Gets an input vector by specifying four actions for the positive and "
+"negative X and Y axes.\n"
+"This method is useful when getting vector input, such as from a joystick, "
+"directional pad, arrows, or WASD. The vector has its length limited to 1 and "
+"has a circular deadzone, which is useful for using vector input as "
+"movement.\n"
+"By default, the deadzone is automatically calculated from the average of the "
+"action deadzones. However, you can override the deadzone to be whatever you "
+"want (on the range of 0 to 1)."
+msgstr ""
+
+#: doc/classes/Input.xml:215
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:225
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:234
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:243
+msgid ""
+"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
+"JoystickList])."
+msgstr ""
+
+#: doc/classes/Input.xml:250
+msgid ""
+"Returns [code]true[/code] if the system knows the specified device. This "
+"means that it sets all button and axis indices exactly as defined in [enum "
+"JoystickList]. Unknown joypads are not expected to match these constants, "
+"but you can still retrieve events from them."
+msgstr ""
+
+#: doc/classes/Input.xml:257
+msgid ""
+"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
+"KeyList] constant."
+msgstr ""
+
+#: doc/classes/Input.xml:264
+msgid ""
+"Returns [code]true[/code] if you are pressing the mouse button specified "
+"with [enum ButtonList]."
+msgstr ""
+
+#: doc/classes/Input.xml:274
+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:282
+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:296
+msgid ""
+"Removes all mappings from the internal database that match the given GUID."
+msgstr ""
+
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
+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:324
+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:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
+msgid "Sets the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:364
+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:375
+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:383
+msgid "Stops the vibration of the joypad."
+msgstr ""
+
+#: doc/classes/Input.xml:390
+msgid ""
+"Vibrate Android and iOS devices.\n"
+"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
+"settings. iOS does not support duration."
+msgstr ""
+
+#: doc/classes/Input.xml:398
+msgid "Sets the mouse position to the specified vector."
+msgstr ""
+
+#: doc/classes/Input.xml:407
+msgid "Emitted when a joypad device has been connected or disconnected."
+msgstr ""
+
+#: doc/classes/Input.xml:413
+msgid "Makes the mouse cursor visible if it is hidden."
+msgstr ""
+
+#: doc/classes/Input.xml:416
+msgid "Makes the mouse cursor hidden if it is visible."
+msgstr ""
+
+#: doc/classes/Input.xml:419
+msgid ""
+"Captures the mouse. The mouse will be hidden and its position locked at the "
+"center of the screen.\n"
+"[b]Note:[/b] If you want to process the mouse's movement in this mode, you "
+"need to use [member InputEventMouseMotion.relative]."
+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/3.4/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:27
+msgid "Returns a [String] representation of the event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:35
+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].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:44
+msgid ""
+"Returns [code]true[/code] if this input event matches a pre-defined action "
+"of any type.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:54
+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].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:63
+msgid ""
+"Returns [code]true[/code] if the given action is released (i.e. not "
+"pressed). Not relevant for events of type [InputEventMouseMotion] or "
+"[InputEventScreenDrag].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:70
+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:76
+msgid ""
+"Returns [code]true[/code] if this input event is an echo event (only for "
+"events of type [InputEventKey])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:82
+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:90
+msgid ""
+"Returns [code]true[/code] if the specified [code]event[/code] matches this "
+"event. Only valid for action events i.e key ([InputEventKey]), button "
+"([InputEventMouseButton] or [InputEventJoypadButton]), axis "
+"[InputEventJoypadMotion] or action ([InputEventAction]) events.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:99
+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:105
+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/3.4/tutorials/inputs/inputevent.html#actions"
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:18
+msgid "The action's name. Actions are accessed via this [String]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:21
+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:24
+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 specifying how strongly the joypad axis is 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 JoystickList] 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 JoystickList] 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:16
+msgid ""
+"Returns the physical scancode combined with modifier keys such as "
+"[code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_scancode_string(event."
+"get_physical_scancode_with_modifiers())[/code] where [code]event[/code] is "
+"the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:23
+msgid ""
+"Returns the scancode combined with modifier keys such as [code]Shift[/code] "
+"or [code]Alt[/code]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_scancode_string(event."
+"get_scancode_with_modifiers())[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:30
+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:33
+msgid ""
+"Key physical scancode, 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_scancode_string(event.physical_scancode)[/code] where [code]event[/code] "
+"is the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:37
+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:40
+msgid ""
+"The key scancode, 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_scancode_string(event.scancode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:44
+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 OS.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/3.4/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:18
+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:21
+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:25
+msgid "The mouse speed in pixels per second."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:28
+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 [code]Shift[/"
+"code] or [code]Alt[/code]. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:16
+msgid "State of the [code]Alt[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:19
+msgid "State of the [code]Command[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:22
+msgid "State of the [code]Ctrl[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:25
+msgid "State of the [code]Meta[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:28
+msgid "State of the [code]Shift[/code] 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/3.4/tutorials/inputs/inputevent.html#inputmap"
+msgstr ""
+
+#: doc/classes/InputMap.xml:18
+msgid ""
+"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:26
+msgid "Removes an [InputEvent] from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:33
+msgid "Removes all events from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:40
+msgid "Returns a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:48
+msgid ""
+"Returns [code]true[/code] if the action has the given [InputEvent] "
+"associated with it."
+msgstr ""
+
+#: doc/classes/InputMap.xml:56
+msgid "Sets a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:64
+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:72
+msgid "Removes an action from the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:81
+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.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputMap.xml:89
+msgid "Returns an array of [InputEvent]s associated with a given action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:95
+msgid "Returns an array of all actions in the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:102
+msgid ""
+"Returns [code]true[/code] if the [InputMap] has a registered action with the "
+"given name."
+msgstr ""
+
+#: doc/classes/InputMap.xml:108
+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 replace_by_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:18
+msgid ""
+"Not thread-safe. Use [method Object.call_deferred] if calling from a thread."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:24
+msgid ""
+"Gets the path to the [PackedScene] resource file that is loaded by default "
+"when calling [method replace_by_instance]. Not thread-safe. Use [method "
+"Object.call_deferred] if calling from a thread."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:37
+msgid ""
+"Replaces this placeholder by the scene handed as an argument, or the "
+"original scene if no argument is given. As for all resources, the scene is "
+"loaded only if it's not loaded already. By manually loading the scene "
+"beforehand, delays caused by this function can be avoided."
+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:30
+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:37
+msgid ""
+"Cast a float value to an integer value, this method simply removes the "
+"number fractions (i.e. rounds [code]from[/code] towards zero), so for "
+"example [code]int(2.7)[/code] will be equals to 2, [code]int(0.1)[/code] "
+"will be equals to 0 and [code]int(-2.7)[/code] will be equals to -2. This "
+"operation is also called truncation."
+msgstr ""
+
+#: doc/classes/int.xml:44
+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/InterpolatedCamera.xml:4
+msgid "[i]Deprecated.[/i] Camera which moves toward another node."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:7
+msgid ""
+"[i]Deprecated (will be removed in Godot 4.0).[/i] InterpolatedCamera is a "
+"[Camera] which smoothly moves to match a target node's position and "
+"rotation.\n"
+"If it is not [member enabled] or does not have a valid target set, "
+"InterpolatedCamera acts like a normal Camera."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:17
+msgid "Sets the node to move toward and orient with."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:23
+msgid ""
+"If [code]true[/code], and a target is set, the camera will move "
+"automatically."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:26
+msgid ""
+"How quickly the camera moves toward its target. Higher values will result in "
+"tighter camera motion."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:29
+msgid "The target's [NodePath]."
+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:16
+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:23
+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:29
+msgid "Returns all the user's current IPv4 and IPv6 addresses as an array."
+msgstr ""
+
+#: doc/classes/IP.xml:35
+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:51
+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:58
+msgid ""
+"Return resolved addresses, or an empty array if an error happened or "
+"resolution didn't happen yet (see [method get_resolve_item_status])."
+msgstr ""
+
+#: doc/classes/IP.xml:65
+msgid ""
+"Returns a queued hostname's status as a [enum ResolverStatus] constant, "
+"given its queue [code]id[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:73
+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:81
+msgid ""
+"Resolves a given hostname in a blocking way. Addresses are returned as an "
+"[Array] of IPv4 or IPv6 depending on [code]ip_type[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:89
+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:95
+msgid "DNS hostname resolver status: No status."
+msgstr ""
+
+#: doc/classes/IP.xml:98
+msgid "DNS hostname resolver status: Waiting."
+msgstr ""
+
+#: doc/classes/IP.xml:101
+msgid "DNS hostname resolver status: Done."
+msgstr ""
+
+#: doc/classes/IP.xml:104
+msgid "DNS hostname resolver status: Error."
+msgstr ""
+
+#: doc/classes/IP.xml:107
+msgid ""
+"Maximum number of concurrent DNS resolver queries allowed, [constant "
+"RESOLVER_INVALID_ID] is returned if exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:110
+msgid ""
+"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:113
+msgid "Address type: None."
+msgstr ""
+
+#: doc/classes/IP.xml:116
+msgid "Address type: Internet protocol version 4 (IPv4)."
+msgstr ""
+
+#: doc/classes/IP.xml:119
+msgid "Address type: Internet protocol version 6 (IPv6)."
+msgstr ""
+
+#: doc/classes/IP.xml:122
+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 Enter.\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:19
+msgid "Adds an item to the item list with no text, only an icon."
+msgstr ""
+
+#: doc/classes/ItemList.xml:28
+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:35
+msgid "Removes all items from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:41
+msgid ""
+"Ensure current selection is visible, adjusting the scroll position as "
+"necessary."
+msgstr ""
+
+#: doc/classes/ItemList.xml:49
+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:56
+msgid "Returns the number of items currently in the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:63
+msgid ""
+"Returns the custom background color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:70
+msgid ""
+"Returns the custom foreground color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:77
+msgid "Returns the icon associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:84
+msgid "Returns a [Color] modulating item's icon at the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:91
+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:98
+msgid "Returns the metadata value of the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:105
+msgid "Returns the text associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:112
+msgid "Returns the tooltip hint associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:118
+msgid "Returns an array with the indexes of the selected items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:124
+msgid ""
+"Returns the [Object] ID associated with the list.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ItemList.xml:131
+msgid "Returns [code]true[/code] if one or more items are selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:138
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is disabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:145
+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:152
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:159
+msgid ""
+"Returns [code]true[/code] if the tooltip is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:166
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is currently "
+"selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:174
+msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:181
+msgid "Removes the item specified by [code]idx[/code] index from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:189
+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:198
+msgid ""
+"Sets the background color of the item specified by [code]idx[/code] index to "
+"the specified [Color]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:206
+msgid ""
+"Sets the foreground color of the item specified by [code]idx[/code] index to "
+"the specified [Color]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:214
+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 Enter)."
+msgstr ""
+
+#: doc/classes/ItemList.xml:223
+msgid ""
+"Sets (or replaces) the icon's [Texture] associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:231
+msgid ""
+"Sets a modulating [Color] of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:239
+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:247
+msgid "Sets whether the item icon will be drawn transposed."
+msgstr ""
+
+#: doc/classes/ItemList.xml:255
+msgid ""
+"Sets a value (of any type) to be stored with the item associated with the "
+"specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:263
+msgid ""
+"Allows or disallows selection of the item associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:271
+msgid "Sets text of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:279
+msgid "Sets the tooltip hint for the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:287
+msgid "Sets whether the tooltip hint is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:293
+msgid "Sorts items in the list by their text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:300
+msgid "Ensures the item associated with the specified index is not selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:306
+msgid "Ensures there are no items selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:312
+msgid ""
+"If [code]true[/code], the currently selected item can be selected again."
+msgstr ""
+
+#: doc/classes/ItemList.xml:315
+msgid "If [code]true[/code], right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:318
+msgid ""
+"If [code]true[/code], the control will automatically resize the height to "
+"fit its content."
+msgstr ""
+
+#: doc/classes/ItemList.xml:321
+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:325
+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:330
+msgid ""
+"The icon position, whether above or to the left of the text. See the [enum "
+"IconMode] constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:333
+msgid ""
+"The scale of icon applied after [member fixed_icon_size] and transposing "
+"takes effect."
+msgstr ""
+
+#: doc/classes/ItemList.xml:336
+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:341
+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:346
+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:350
+msgid ""
+"Allows single or multiple item selection. See the [enum SelectMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:357
+msgid ""
+"Triggered when specified list item is activated via double-clicking or by "
+"pressing Enter."
+msgstr ""
+
+#: doc/classes/ItemList.xml:364
+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:372
+msgid ""
+"Triggered when specified item has been selected.\n"
+"[member allow_reselect] must be enabled to reselect an item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:380
+msgid ""
+"Triggered when a multiple selection is altered on a list allowing multiple "
+"selection."
+msgstr ""
+
+#: doc/classes/ItemList.xml:385
+msgid ""
+"Triggered when a left mouse click is issued within the rect of the list but "
+"on empty space."
+msgstr ""
+
+#: doc/classes/ItemList.xml:391
+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:398
+msgid "Icon is drawn above the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:401
+msgid "Icon is drawn to the left of the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:404
+msgid "Only allow selecting a single item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:407
+msgid "Allows selecting multiple items by holding Ctrl or Shift."
+msgstr ""
+
+#: doc/classes/ItemList.xml:412
+msgid ""
+"Default [StyleBox] for the [ItemList], i.e. used when the control is not "
+"being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:415
+msgid "[StyleBox] used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:418
+msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:421
+msgid ""
+"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:424 doc/classes/Tree.xml:407
+msgid "[Font] of the item's text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:427 doc/classes/Tree.xml:410
+msgid "Default text [Color] of the item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:430 doc/classes/Tree.xml:413
+msgid "Text [Color] used when the item is selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:433
+msgid ""
+"[Color] of the guideline. The guideline is a line drawn between each row of "
+"items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:436
+msgid "The horizontal spacing between items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:439
+msgid "The spacing between item's icon and text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:442
+msgid "The vertical spacing between each line of text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:445
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:448
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:451
+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.\n"
+"[b]Note:[/b] This singleton can be disabled at build-time to improve "
+"security. By default, the JavaScript singleton is enabled. Official export "
+"templates also have the JavaScript singleton enabled. See [url=https://docs."
+"godotengine.org/en/3.4/development/compiling/compiling_for_web."
+"html]Compiling for the Web[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
+msgstr ""
+
+#: doc/classes/JavaScript.xml:19
+msgid ""
+"Creates a reference to a script function that can be used as a callback by "
+"JavaScript. The reference must be kept until the callback happens, or it "
+"won't be called at all. See [JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:26
+msgid ""
+"Creates a new JavaScript object using the [code]new[/code] constructor. The "
+"[code]object[/code] must a valid property of the JavaScript [code]window[/"
+"code]. See [JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:35
+msgid ""
+"Prompts the user to download a file containing the specified [code]buffer[/"
+"code]. The file will have the given [code]name[/code] and [code]mime[/code] "
+"type.\n"
+"[b]Note:[/b] The browser may override the [url=https://en.wikipedia.org/wiki/"
+"Media_type]MIME type[/url] provided based on the file [code]name[/code]'s "
+"extension.\n"
+"[b]Note:[/b] Browsers might block the download if [method download_buffer] "
+"is not being called from a user interaction (e.g. button click).\n"
+"[b]Note:[/b] Browsers might ask the user for permission or block the "
+"download if multiple download requests are made in a quick succession."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:46
+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/JavaScript.xml:54
+msgid ""
+"Returns an interface to a JavaScript object that can be used by scripts. The "
+"[code]interface[/code] must be a valid property of the JavaScript "
+"[code]window[/code]. The callback must accept a single [Array] argument, "
+"which will contain the JavaScript [code]arguments[/code]. See "
+"[JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScriptObject.xml:4
+msgid "A wrapper class for native JavaScript objects."
+msgstr ""
+
+#: doc/classes/JavaScriptObject.xml:7
+msgid ""
+"JavaScriptObject is used to interact with JavaScript objects retrieved or "
+"created via [method JavaScript.get_interface], [method JavaScript."
+"create_object], or [method JavaScript.create_callback].\n"
+"Example:\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var _my_js_callback = JavaScript.create_callback(self, \"myCallback\") # "
+"This reference must be kept\n"
+"var console = JavaScript.get_interface(\"console\")\n"
+"\n"
+"func _init():\n"
+" var buf = JavaScript.create_object(\"ArrayBuffer\", 10) # new "
+"ArrayBuffer(10)\n"
+" print(buf) # prints [JavaScriptObject:OBJECT_ID]\n"
+" var uint8arr = JavaScript.create_object(\"Uint8Array\", buf) # new "
+"Uint8Array(buf)\n"
+" uint8arr[1] = 255\n"
+" prints(uint8arr[1], uint8arr.byteLength) # prints 255 10\n"
+" console.log(uint8arr) # prints in browser console \"Uint8Array(10) [ 0, "
+"255, 0, 0, 0, 0, 0, 0, 0, 0 ]\"\n"
+"\n"
+" # Equivalent of JavaScript: Array.from(uint8arr).forEach(myCallback)\n"
+" JavaScript.get_interface(\"Array\").from(uint8arr)."
+"forEach(_my_js_callback)\n"
+"\n"
+"func myCallback(args):\n"
+" # Will be called with the parameters passed to the \"forEach\" callback\n"
+" # [0, 0, [JavaScriptObject:1173]]\n"
+" # [255, 1, [JavaScriptObject:1173]]\n"
+" # ...\n"
+" # [0, 9, [JavaScriptObject:1180]]\n"
+" print(args)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Only available in the HTML5 platform."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:4
+msgid ""
+"Singleton that connects the engine with Android plugins to interface with "
+"native Android code."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:7
+msgid ""
+"The JNISingleton is implemented only in the Android export. It's used to "
+"call methods and connect signals from an Android plugin written in Java or "
+"Kotlin. Methods and signals can be called and connected to the JNISingleton "
+"as if it is a Node. See [url=https://en.wikipedia.org/wiki/"
+"Java_Native_Interface]Java Native Interface - Wikipedia[/url] for more "
+"information."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin."
+"html"
+msgstr ""
+
+#: doc/classes/Joint.xml:4
+msgid "Base class for all 3D joints."
+msgstr ""
+
+#: doc/classes/Joint.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/Joint.xml:10 doc/classes/RigidBody.xml:15
+#: doc/classes/VehicleBody.xml:12 doc/classes/VehicleWheel.xml:11
+msgid "https://godotengine.org/asset-library/asset/524"
+msgstr ""
+
+#: doc/classes/Joint.xml:16
+msgid ""
+"If [code]true[/code], the two bodies of the nodes are not able to collide "
+"with each other."
+msgstr ""
+
+#: doc/classes/Joint.xml:19
+msgid "The node attached to the first side (A) of the joint."
+msgstr ""
+
+#: doc/classes/Joint.xml:22
+msgid "The node attached to the second side (B) of the joint."
+msgstr ""
+
+#: doc/classes/Joint.xml:25
+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/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/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:16
+msgid ""
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
+"result."
+msgstr ""
+
+#: doc/classes/JSON.xml:25
+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.\n"
+"Use [code]indent[/code] parameter to pretty print the output.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+"## JSON.print(my_dictionary)\n"
+"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
+"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":"
+"\"value_1\"}]}\n"
+"\n"
+"## JSON.print(my_dictionary, \"\\t\")\n"
+"{\n"
+" \"name\": \"my_dictionary\",\n"
+" \"version\": \"1.0.0\",\n"
+" \"entities\": [\n"
+" {\n"
+" \"name\": \"entity_0\",\n"
+" \"value\": \"value_0\"\n"
+" },\n"
+" {\n"
+" \"name\": \"entity_1\",\n"
+" \"value\": \"value_1\"\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+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/JSONRPC.xml:4
+msgid "A helper to handle dictionaries which look like JSONRPC documents."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:7
+msgid ""
+"[url=https://www.jsonrpc.org/]JSON-RPC[/url] is a standard which wraps a "
+"method call in a [JSON] object. The object has a particular structure and "
+"identifies which method is called, the parameters to that function, and "
+"carries an ID to keep track of responses. This class implements that "
+"standard on top of [Dictionary]; you will have to convert between a "
+"[Dictionary] and [JSON] with other functions."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:17
+msgid ""
+"Returns a dictionary in the form of a JSON-RPC notification. Notifications "
+"are one-shot messages which do not expect a response.\n"
+"- [code]method[/code]: Name of the method being called.\n"
+"- [code]params[/code]: An array or dictionary of parameters being passed to "
+"the method."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:28
+msgid ""
+"Returns a dictionary in the form of a JSON-RPC request. Requests are sent to "
+"a server with the expectation of a response. The ID field is used for the "
+"server to specify which exact request it is responding to.\n"
+"- [code]method[/code]: Name of the method being called.\n"
+"- [code]params[/code]: An array or dictionary of parameters being passed to "
+"the method.\n"
+"- [code]id[/code]: Uniquely identifies this request. The server is expected "
+"to send a response with the same ID."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:39
+msgid ""
+"When a server has received and processed a request, it is expected to send a "
+"response. If you did not want a response then you need to have sent a "
+"Notification instead.\n"
+"- [code]result[/code]: The return value of the function which was called.\n"
+"- [code]id[/code]: The ID of the request this response is targeted to."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:50
+msgid ""
+"Creates a response which indicates a previous reply has failed in some way.\n"
+"- [code]code[/code]: The error code corresponding to what kind of error this "
+"is. See the [enum ErrorCode] constants.\n"
+"- [code]message[/code]: A custom message about this error.\n"
+"- [code]id[/code]: The request this error is a response to."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:61
+msgid ""
+"Given a Dictionary which takes the form of a JSON-RPC request: unpack the "
+"request and run it. Methods are resolved by looking at the field called "
+"\"method\" and looking for an equivalently named function in the JSONRPC "
+"object. If one is found that method is called.\n"
+"To add new supported methods extend the JSONRPC class and call [method "
+"process_action] on your subclass.\n"
+"[code]action[/code]: The action to be run, as a Dictionary in the form of a "
+"JSON-RPC request or notification."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:86
+msgid ""
+"A method call was requested but no function of that name existed in the "
+"JSONRPC subclass."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:4
+msgid "Kinematic body 3D node."
+msgstr ""
+
+#: doc/classes/KinematicBody.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] KinematicBody 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 don't require advanced physics."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:12 doc/classes/KinematicBody2D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d."
+"html"
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:23
+msgid ""
+"Returns [code]true[/code] if the specified [code]axis[/code] is locked. See "
+"also [member move_lock_x], [member move_lock_y] and [member move_lock_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:30
+msgid ""
+"Returns the floor's collision angle at the last collision point according to "
+"[code]up_direction[/code], which is [code]Vector3.UP[/code] by default. This "
+"value is always positive and only valid after calling [method "
+"move_and_slide] and when [method is_on_floor] returns [code]true[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:36 doc/classes/KinematicBody2D.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/KinematicBody.xml:42 doc/classes/KinematicBody2D.xml:34
+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/KinematicBody.xml:48
+msgid ""
+"Returns a [KinematicCollision], which contains information about the latest "
+"collision that occurred during the last call to [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:55
+msgid ""
+"Returns a [KinematicCollision], which contains information about a collision "
+"that occurred during the last call to [method move_and_slide] or [method "
+"move_and_slide_with_snap]. 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/KinematicBody.xml:61 doc/classes/KinematicBody2D.xml:59
+msgid ""
+"Returns the number of times the body collided and changed direction during "
+"the last call to [method move_and_slide] or [method "
+"move_and_slide_with_snap]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:67 doc/classes/KinematicBody2D.xml:65
+msgid ""
+"Returns [code]true[/code] if the body collided with the ceiling on the last "
+"call of [method move_and_slide] or [method move_and_slide_with_snap]. "
+"Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:73 doc/classes/KinematicBody2D.xml:71
+msgid ""
+"Returns [code]true[/code] if the body collided with the floor on the last "
+"call of [method move_and_slide] or [method move_and_slide_with_snap]. "
+"Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:79 doc/classes/KinematicBody2D.xml:77
+msgid ""
+"Returns [code]true[/code] if the body collided with a wall on the last call "
+"of [method move_and_slide] or [method move_and_slide_with_snap]. Otherwise, "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:89
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision], 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/KinematicBody.xml:102
+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 [KinematicBody] or [RigidBody], it will also be affected by the motion "
+"of the other body. You can use this to make moving and 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 [RigidBody] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody] nodes like with "
+"[StaticBody].\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].\n"
+"When the body touches a moving platform, the platform's velocity is "
+"automatically added to the body motion. If a collision occurs due to the "
+"platform's motion, it will always be first in the slide collisions."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:124
+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/KinematicBody.xml:133
+msgid ""
+"Locks or unlocks the specified [code]axis[/code] depending on the value of "
+"[code]lock[/code]. See also [member move_lock_x], [member move_lock_y] and "
+"[member move_lock_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:142
+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/KinematicBody.xml:148
+msgid "Lock the body's X axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:151
+msgid "Lock the body's Y axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:154
+msgid "Lock the body's Z axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:157 doc/classes/KinematicBody2D.xml:138
+msgid ""
+"Extra margin used for collision recovery in motion functions (see [method "
+"move_and_collide], [method move_and_slide], [method "
+"move_and_slide_with_snap]).\n"
+"If the body is at least this close to another body, it will consider them to "
+"be colliding and will be pushed away before performing the actual motion.\n"
+"A higher value means it's more flexible for detecting collision, which helps "
+"with consistently detecting walls and floors.\n"
+"A lower value forces the collision algorithm to use more exact detection, so "
+"it can be used in cases that specifically require precision, e.g at very low "
+"scale to avoid visible jittering, or for stability with a stack of kinematic "
+"bodies."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:163 doc/classes/KinematicBody2D.xml:144
+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/KinematicBody.xml:166
+msgid ""
+"Lock the body's X axis movement. Deprecated alias for [member "
+"axis_lock_motion_x]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:169
+msgid ""
+"Lock the body's Y axis movement. Deprecated alias for [member "
+"axis_lock_motion_y]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:172
+msgid ""
+"Lock the body's Z axis movement. Deprecated alias for [member "
+"axis_lock_motion_z]."
+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 don't require advanced physics."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"using_kinematic_body_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:22
+msgid ""
+"Returns the floor's collision angle at the last collision point according to "
+"[code]up_direction[/code], which is [code]Vector2.UP[/code] by default. This "
+"value is always positive and only valid after calling [method "
+"move_and_slide] and when [method is_on_floor] returns [code]true[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:40
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about the "
+"latest collision that occurred during the last call to [method "
+"move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:47
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about a "
+"collision that occurred during the last call to [method move_and_slide] or "
+"[method move_and_slide_with_snap]. 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:87
+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:100
+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 and 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].\n"
+"When the body touches a moving platform, the platform's velocity is "
+"automatically added to the body motion. If a collision occurs due to the "
+"platform's motion, it will always be first in the slide collisions."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:122
+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:132
+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/KinematicCollision.xml:4
+msgid "Collision data for [KinematicBody] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:7
+msgid ""
+"Contains collision data for [KinematicBody] collisions. When a "
+"[KinematicBody] is moved using [method KinematicBody.move_and_collide], it "
+"stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision 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/KinematicCollision.xml:17
+msgid ""
+"The collision angle according to [code]up_direction[/code], which is "
+"[code]Vector3.UP[/code] by default. This value is always positive."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:23
+#: doc/classes/KinematicCollision2D.xml:23
+msgid "The colliding body."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:26
+#: doc/classes/KinematicCollision2D.xml:26
+msgid ""
+"The colliding body's unique instance ID. See [method Object.get_instance_id]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:29
+#: doc/classes/KinematicCollision2D.xml:29
+msgid "The colliding body's metadata. See [Object]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:32
+msgid "The colliding body's [RID] used by the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:35
+#: doc/classes/KinematicCollision2D.xml:35
+msgid "The colliding body's shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:38
+msgid "The colliding shape's index. See [CollisionObject]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:41
+#: doc/classes/KinematicCollision2D.xml:41
+msgid "The colliding object's velocity."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:44
+#: doc/classes/KinematicCollision2D.xml:44
+msgid "The moving object's colliding shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:47
+#: doc/classes/KinematicCollision2D.xml:47
+msgid "The colliding body's shape's normal at the point of collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:50
+#: doc/classes/KinematicCollision2D.xml:50
+msgid "The point of collision, in global coordinates."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:53
+#: doc/classes/KinematicCollision2D.xml:53
+msgid "The moving object's remaining movement vector."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:56
+#: doc/classes/KinematicCollision2D.xml:56
+msgid "The distance the moving object traveled before collision."
+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:17
+msgid ""
+"The collision angle according to [code]up_direction[/code], which is "
+"[code]Vector2.UP[/code] by default. This value is always positive."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:32
+msgid "The colliding body's [RID] used by the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:38
+msgid "The colliding shape's index. See [CollisionObject2D]."
+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.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Label.xml:18
+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:30
+msgid ""
+"Returns the total number of printable characters in the text (excluding "
+"spaces and newlines)."
+msgstr ""
+
+#: doc/classes/Label.xml:36
+msgid ""
+"Returns the number of lines shown. Useful if the [Label]'s height cannot "
+"currently display all lines."
+msgstr ""
+
+#: doc/classes/Label.xml:42
+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:45
+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:48
+msgid ""
+"If [code]true[/code], the Label only shows the text that fits inside its "
+"bounding rectangle and will clip text horizontally."
+msgstr ""
+
+#: doc/classes/Label.xml:51
+msgid ""
+"The node ignores the first [code]lines_skipped[/code] lines before it starts "
+"to display text."
+msgstr ""
+
+#: doc/classes/Label.xml:54
+msgid "Limits the lines of text the node shows on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:58
+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:62
+msgid "The text to display on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:65
+msgid "If [code]true[/code], all the text displays as UPPERCASE."
+msgstr ""
+
+#: doc/classes/Label.xml:68
+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:71
+msgid "Restricts the number of characters to display. Set to -1 to disable."
+msgstr ""
+
+#: doc/classes/Label.xml:76
+msgid "Align rows to the left (default)."
+msgstr ""
+
+#: doc/classes/Label.xml:79
+msgid "Align rows centered."
+msgstr ""
+
+#: doc/classes/Label.xml:82
+msgid "Align rows to the right."
+msgstr ""
+
+#: doc/classes/Label.xml:85
+msgid "Expand row whitespaces to fit the width."
+msgstr ""
+
+#: doc/classes/Label.xml:88
+msgid "Align the whole text to the top."
+msgstr ""
+
+#: doc/classes/Label.xml:91
+msgid "Align the whole text to the center."
+msgstr ""
+
+#: doc/classes/Label.xml:94
+msgid "Align the whole text to the bottom."
+msgstr ""
+
+#: doc/classes/Label.xml:97
+msgid "Align the whole text by spreading the rows."
+msgstr ""
+
+#: doc/classes/Label.xml:102
+msgid "[Font] used for the [Label]'s text."
+msgstr ""
+
+#: doc/classes/Label.xml:105
+msgid "Default text [Color] of the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:108
+msgid "[Color] of the text's shadow effect."
+msgstr ""
+
+#: doc/classes/Label.xml:111
+msgid "The tint of [Font]'s outline. See [member DynamicFont.outline_color]."
+msgstr ""
+
+#: doc/classes/Label.xml:114
+msgid "Vertical space between lines in multiline [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:117
+msgid "Background [StyleBox] for the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:120
+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:123
+msgid "The horizontal offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/Label.xml:126
+msgid "The vertical offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:4
+msgid ""
+"[i]Deprecated.[/i] A [Texture] capable of storing many smaller textures with "
+"offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:7
+msgid ""
+"[i]Deprecated (will be removed in Godot 4.0).[/i] A [Texture] capable of "
+"storing many smaller textures with offsets.\n"
+"You can dynamically add pieces ([Texture]s) to this [LargeTexture] using "
+"different offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:18
+msgid ""
+"Adds [code]texture[/code] to this [LargeTexture], starting on offset "
+"[code]ofs[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:24
+msgid "Clears the [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:30
+msgid "Returns the number of pieces currently in this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:37
+msgid "Returns the offset of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:44
+msgid "Returns the [Texture] of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:52
+msgid ""
+"Sets the offset of the piece with the index [code]idx[/code] to [code]ofs[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:60
+msgid ""
+"Sets the [Texture] of the piece with index [code]idx[/code] to "
+"[code]texture[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:67
+msgid "Sets the size of this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/Light.xml:4
+msgid "Provides a base class for different kinds of light nodes."
+msgstr ""
+
+#: doc/classes/Light.xml:7
+msgid ""
+"Light 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. Light contains the common variables and parameters used for "
+"lighting."
+msgstr ""
+
+#: doc/classes/Light.xml:18
+msgid "Returns the value of the specified [enum Light.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light.xml:26
+msgid "Sets the value of the specified [enum Light.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light.xml:32
+msgid ""
+"If [code]true[/code], the light only appears in the editor and will not be "
+"visible at runtime."
+msgstr ""
+
+#: doc/classes/Light.xml:35
+msgid "The light's bake mode. See [enum BakeMode]."
+msgstr ""
+
+#: doc/classes/Light.xml:38
+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/Light.xml:41
+msgid "The light will affect objects in the selected layers."
+msgstr ""
+
+#: doc/classes/Light.xml:44
+msgid ""
+"The light's strength multiplier (this is not a physical unit). For "
+"[OmniLight] and [SpotLight], changing this value will only change the light "
+"color's intensity, not the light's radius."
+msgstr ""
+
+#: doc/classes/Light.xml:47
+msgid ""
+"Secondary multiplier used with indirect light (light bounces). This works on "
+"both [BakedLightmap] and [GIProbe]."
+msgstr ""
+
+#: doc/classes/Light.xml:50
+msgid ""
+"If [code]true[/code], the light's effect is reversed, darkening areas and "
+"casting bright shadows."
+msgstr ""
+
+#: doc/classes/Light.xml:53
+msgid ""
+"The size of the light in Godot units. Only considered in baked lightmaps and "
+"only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing "
+"this value will make the shadows appear blurrier. This can be used to "
+"simulate area lights to an extent."
+msgstr ""
+
+#: doc/classes/Light.xml:56
+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/Light.xml:59
+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/Light.xml:62
+msgid "The color of shadows cast by this light."
+msgstr ""
+
+#: doc/classes/Light.xml:65
+msgid "Attempts to reduce [member shadow_bias] gap."
+msgstr ""
+
+#: doc/classes/Light.xml:68
+msgid "If [code]true[/code], the light will cast shadows."
+msgstr ""
+
+#: doc/classes/Light.xml:71
+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 GeometryInstance.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
+msgstr ""
+
+#: doc/classes/Light.xml:76
+msgid "Constant for accessing [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light.xml:79
+msgid "Constant for accessing [member light_indirect_energy]."
+msgstr ""
+
+#: doc/classes/Light.xml:82
+msgid "Constant for accessing [member light_size]."
+msgstr ""
+
+#: doc/classes/Light.xml:85
+msgid "Constant for accessing [member light_specular]."
+msgstr ""
+
+#: doc/classes/Light.xml:88
+msgid ""
+"Constant for accessing [member OmniLight.omni_range] or [member SpotLight."
+"spot_range]."
+msgstr ""
+
+#: doc/classes/Light.xml:91
+msgid ""
+"Constant for accessing [member OmniLight.omni_attenuation] or [member "
+"SpotLight.spot_attenuation]."
+msgstr ""
+
+#: doc/classes/Light.xml:94
+msgid "Constant for accessing [member SpotLight.spot_angle]."
+msgstr ""
+
+#: doc/classes/Light.xml:97
+msgid "Constant for accessing [member SpotLight.spot_angle_attenuation]."
+msgstr ""
+
+#: doc/classes/Light.xml:100
+msgid "Constant for accessing [member shadow_contact]."
+msgstr ""
+
+#: doc/classes/Light.xml:103
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_max_distance]."
+msgstr ""
+
+#: doc/classes/Light.xml:106
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_1]."
+msgstr ""
+
+#: doc/classes/Light.xml:109
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_2]."
+msgstr ""
+
+#: doc/classes/Light.xml:112
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_3]."
+msgstr ""
+
+#: doc/classes/Light.xml:115
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_normal_bias]."
+msgstr ""
+
+#: doc/classes/Light.xml:118
+msgid "Constant for accessing [member shadow_bias]."
+msgstr ""
+
+#: doc/classes/Light.xml:121
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_bias_split_scale]."
+msgstr ""
+
+#: doc/classes/Light.xml:127
+msgid ""
+"Light is ignored when baking.\n"
+"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
+msgstr ""
+
+#: doc/classes/Light.xml:131
+msgid "Only indirect lighting will be baked (default)."
+msgstr ""
+
+#: doc/classes/Light.xml:134
+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/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/3.4/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 "Smooth shadow gradient length."
+msgstr ""
+
+#: doc/classes/Light2D.xml:71
+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:74
+msgid "[Texture] used for the Light2D's appearance."
+msgstr ""
+
+#: doc/classes/Light2D.xml:77
+msgid "The [code]texture[/code]'s scale factor."
+msgstr ""
+
+#: doc/classes/Light2D.xml:82
+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:85
+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:88
+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:91
+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:94
+msgid "No filter applies to the shadow map. See [member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:97
+msgid ""
+"Percentage closer filtering (3 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:100
+msgid ""
+"Percentage closer filtering (5 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:103
+msgid ""
+"Percentage closer filtering (7 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:106
+msgid ""
+"Percentage closer filtering (9 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:109
+msgid ""
+"Percentage closer filtering (13 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+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.\n"
+"[b]Note:[/b] By default, Godot can only draw up to 4,096 polygon points at a "
+"time. To increase this limit, open the Project Settings and increase [member "
+"ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb] and "
+"[member ProjectSettings.rendering/limits/buffers/"
+"canvas_polygon_index_buffer_size_kb]."
+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:27
+msgid "Removes all points from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:33
+msgid "Returns the Line2D's amount of points."
+msgstr ""
+
+#: doc/classes/Line2D.xml:40
+msgid "Returns point [code]i[/code]'s position."
+msgstr ""
+
+#: doc/classes/Line2D.xml:47
+msgid "Removes the point at index [code]i[/code] from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:55
+msgid ""
+"Overwrites the position in point [code]i[/code] with the supplied "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:61
+msgid ""
+"If [code]true[/code], the line's border will be anti-aliased.\n"
+"[b]Note:[/b] Line2D is not accelerated by batching when being anti-aliased."
+msgstr ""
+
+#: doc/classes/Line2D.xml:65
+msgid ""
+"Controls the style of the line's first point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:68
+msgid "The line's color. Will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:71
+msgid ""
+"Controls the style of the line's last point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:74
+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:77
+msgid "The style for the points between the start and the end."
+msgstr ""
+
+#: doc/classes/Line2D.xml:80
+msgid ""
+"The points that form the lines. The line is drawn between every point set in "
+"this array. Points are interpreted as local vectors."
+msgstr ""
+
+#: doc/classes/Line2D.xml:83
+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:86
+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:89
+msgid ""
+"The texture used for the line's texture. Uses [code]texture_mode[/code] for "
+"drawing style."
+msgstr ""
+
+#: doc/classes/Line2D.xml:92
+msgid ""
+"The style to render the [code]texture[/code] on the line. Use [enum "
+"LineTextureMode] constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:95
+msgid "The line's width."
+msgstr ""
+
+#: doc/classes/Line2D.xml:98
+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:103
+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:106
+msgid "The line's joints will be bevelled/chamfered."
+msgstr ""
+
+#: doc/classes/Line2D.xml:109
+msgid "The line's joints will be rounded."
+msgstr ""
+
+#: doc/classes/Line2D.xml:112
+msgid "Don't draw a line cap."
+msgstr ""
+
+#: doc/classes/Line2D.xml:115
+msgid "Draws the line cap as a box."
+msgstr ""
+
+#: doc/classes/Line2D.xml:118
+msgid "Draws the line cap as a circle."
+msgstr ""
+
+#: doc/classes/Line2D.xml:121
+msgid ""
+"Takes the left pixels of the texture and renders it over the whole line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:124
+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:127
+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 "
+"([code]Ctrl[/code] here maps to [code]Command[/code] on macOS):\n"
+"- Ctrl + C: Copy\n"
+"- Ctrl + X: Cut\n"
+"- Ctrl + V or Ctrl + Y: Paste/\"yank\"\n"
+"- Ctrl + Z: Undo\n"
+"- Ctrl + Shift + Z: Redo\n"
+"- Ctrl + U: Delete text from the cursor position to the beginning of the "
+"line\n"
+"- Ctrl + K: Delete text from the cursor position to the end of the line\n"
+"- Ctrl + A: Select all text\n"
+"- Up/Down arrow: Move the cursor to the beginning/end of the line\n"
+"On macOS, some extra keyboard shortcuts are available:\n"
+"- Ctrl + F: Like the right arrow key, move the cursor one character right\n"
+"- Ctrl + B: Like the left arrow key, move the cursor one character left\n"
+"- Ctrl + P: Like the up arrow key, move the cursor to the previous line\n"
+"- Ctrl + N: Like the down arrow key, move the cursor to the next line\n"
+"- Ctrl + D: Like the Delete key, delete the character on the right side of "
+"cursor\n"
+"- Ctrl + H: Like the Backspace key, delete the character on the left side of "
+"the cursor\n"
+"- Command + Left arrow: Like the Home key, move the cursor to the beginning "
+"of the line\n"
+"- Command + Right arrow: Like the End key, move the cursor to the end of the "
+"line"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:35
+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:41
+msgid "Erases the [LineEdit]'s [member text]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:47
+msgid ""
+"Deletes one character at the cursor's current position (equivalent to "
+"pressing the [code]Delete[/code] key)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:55
+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:61
+msgid "Clears the current selection."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:67
+msgid ""
+"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
+"displayed when right-clicking on the [LineEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:74
+msgid ""
+"Returns the scroll offset due to [member caret_position], as a number of "
+"characters."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:81
+msgid "Executes a given action as defined in the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:89
+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:101
+msgid "Selects the whole [String]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:107
+msgid "Text alignment as defined in the [enum Align] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:110 doc/classes/TextEdit.xml:391
+msgid "If [code]true[/code], the caret (visual cursor) blinks."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:113 doc/classes/TextEdit.xml:394
+msgid "Duration (in seconds) of a caret's blinking cycle."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:116
+msgid ""
+"The cursor's position inside the [LineEdit]. When set, the text may scroll "
+"to accommodate it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:119
+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:122
+msgid "If [code]true[/code], the context menu will appear when right-clicked."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:125
+msgid ""
+"If [code]false[/code], existing text cannot be modified and new text cannot "
+"be added."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:128
+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:132
+msgid ""
+"Maximum amount of characters that can be entered inside the [LineEdit]. If "
+"[code]0[/code], there is no limit.\n"
+"When a limit is defined, characters that would exceed [member max_length] "
+"are truncated. This happens both for existing [member text] contents when "
+"setting the max length, or for new text inserted in the [LineEdit], "
+"including pasting. If any input text is truncated, the [signal "
+"text_change_rejected] signal is emitted with the truncated substring as "
+"parameter.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"text = \"Hello world\"\n"
+"max_length = 5\n"
+"# `text` becomes \"Hello\".\n"
+"max_length = 10\n"
+"text += \" goodbye\"\n"
+"# `text` becomes \"Hello good\".\n"
+"# `text_change_rejected` is emitted with \"bye\" as parameter.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:147
+msgid ""
+"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:150
+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:153
+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:156
+msgid ""
+"If [code]true[/code], every character is replaced with the secret character "
+"(see [member secret_character])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:159
+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:162
+msgid ""
+"If [code]false[/code], it's impossible to select the text using mouse nor "
+"keyboard."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:165
+msgid "If [code]false[/code], using shortcuts will be disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:168
+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:172 doc/classes/TextEdit.xml:468
+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 appending text that overflows the [member max_length]. The "
+"appended text is truncated to fit [member max_length], and the part that "
+"couldn't fit is passed as the [code]rejected_substring[/code] argument."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:185 doc/classes/TextEdit.xml:506
+msgid "Emitted when the text changes."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:191
+msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:197
+msgid "Aligns the text on the left-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:200
+msgid "Centers the text in the middle of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:203
+msgid "Aligns the text on the right-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:206
+msgid "Stretches whitespaces to fit the [LineEdit]'s width."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:527
+msgid "Cuts (copies and clears) the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:212 doc/classes/TextEdit.xml:530
+msgid "Copies the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:215
+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:219
+msgid "Erases the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:222
+msgid "Selects the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:225 doc/classes/TextEdit.xml:542
+msgid "Undoes the previous action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:228
+msgid "Reverse the last undo action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:231 doc/classes/TextEdit.xml:548
+msgid "Represents the size of the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:236
+msgid "Texture for the clear button. See [member clear_button_enabled]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:239
+msgid "Color used as default tint for the clear button."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:242
+msgid "Color used for the clear button when it's pressed."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:245
+msgid "Color of the [LineEdit]'s visual cursor (caret)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:248
+msgid "Background used when [LineEdit] has GUI focus."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:251
+msgid "Font used for the text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:254
+msgid "Default font color."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:257
+msgid "Font color for selected text (inside the selection rectangle)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:260
+msgid "Font color when editing is disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:263
+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:266
+msgid "Default background for the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:269
+msgid ""
+"Background used when [LineEdit] is in read-only mode ([member editable] is "
+"set to [code]false[/code])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:272
+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).\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+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 focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
+msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
+msgid "The vertical space between the baseline of text and the underline."
+msgstr ""
+
+#: doc/classes/Listener.xml:4 doc/classes/Listener2D.xml:4
+msgid "Overrides the location sounds are heard from."
+msgstr ""
+
+#: doc/classes/Listener.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 [Camera]."
+msgstr ""
+
+#: doc/classes/Listener.xml:15
+msgid "Disables the listener to use the current camera's listener instead."
+msgstr ""
+
+#: doc/classes/Listener.xml:21
+msgid "Returns the listener's global orthonormalized [Transform]."
+msgstr ""
+
+#: doc/classes/Listener.xml:27
+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 Listener marked as \"current\" in "
+"the scene tree, but only the one that was made current last will be used."
+msgstr ""
+
+#: doc/classes/Listener.xml:34
+msgid "Enables the listener. This will override the current camera's listener."
+msgstr ""
+
+#: doc/classes/Listener2D.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. Only one [Listener2D] "
+"can be current. Using [method make_current] will disable the previous "
+"[Listener2D].\n"
+"If there is no active [Listener2D] in the current [Viewport], center of the "
+"screen will be used as a hearing point for the audio. [Listener2D] needs to "
+"be inside [SceneTree] to function."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:16
+msgid ""
+"Disables the [Listener2D]. If it's not set as current, this method will have "
+"no effect."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:22
+msgid "Returns [code]true[/code] if this [Listener2D] is currently active."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:28
+msgid ""
+"Makes the [Listener2D] active, setting it as the hearing point for the "
+"sounds. If there is already another active [Listener2D], it will be "
+"disabled.\n"
+"This method will have no effect if the [Listener2D] is not added to "
+"[SceneTree]."
+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"
+"[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_scancode_string(event.scancode))\n"
+" # Quit on Escape press.\n"
+" if event.scancode == 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 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/MainLoop.xml:57
+msgid "Called before the program exits."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:65
+msgid ""
+"Called when the user performs an action in the system global menu (e.g. the "
+"Mac OS menu bar)."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:72
+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:79
+msgid "Called once during initialization."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:86
+msgid "Called whenever an [InputEvent] is received by the main loop."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:93
+msgid ""
+"Deprecated callback, does not do anything. Use [method _input_event] to "
+"parse text input. Will be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:100
+msgid ""
+"Called each physics frame with the time since the last physics frame as "
+"argument ([code]delta[/code], 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:107
+msgid ""
+"Should not be called manually, override [method _finalize] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:114
+msgid ""
+"Should not be called manually, override [method _idle] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:120
+msgid ""
+"Should not be called manually, override [method _initialize] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:127
+msgid ""
+"Should not be called manually, override [method _input_event] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:134
+msgid ""
+"Should not be called manually, override [method _input_text] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:141
+msgid ""
+"Should not be called manually, override [method _iteration] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:150
+msgid "Emitted when a user responds to a permission request."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:156 doc/classes/Node.xml:791
+msgid ""
+"Notification received from the OS when the mouse enters the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:160 doc/classes/Node.xml:795
+msgid ""
+"Notification received from the OS when the mouse leaves the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:164 doc/classes/Node.xml:799
+msgid ""
+"Notification received from the OS when the game window is focused.\n"
+"Implemented on all platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:168 doc/classes/Node.xml:803
+msgid ""
+"Notification received from the OS when the game window is unfocused.\n"
+"Implemented on all platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:172 doc/classes/Node.xml:807
+msgid ""
+"Notification received from the OS when a quit request is sent (e.g. closing "
+"the window with a \"Close\" button or Alt+F4).\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:176 doc/classes/Node.xml:811
+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/MainLoop.xml:180 doc/classes/Node.xml:815
+msgid ""
+"Notification received from the OS when an unfocus request is sent (e.g. "
+"another OS window wants to take the focus).\n"
+"No supported platforms currently send this notification."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:184 doc/classes/Node.xml:819
+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:188 doc/classes/Node.xml:823
+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:191 doc/classes/Node.xml:826
+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:195 doc/classes/Node.xml:830
+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:199 doc/classes/Node.xml:834
+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:203 doc/classes/Node.xml:838
+msgid ""
+"Notification received from the OS when the app is resumed.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:207 doc/classes/Node.xml:842
+msgid ""
+"Notification received from the OS when the app is paused.\n"
+"Specific to the Android platform."
+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"
+"# This code sample assumes the current script is extending MarginContainer.\n"
+"var margin_value = 100\n"
+"add_constant_override(\"margin_top\", margin_value)\n"
+"add_constant_override(\"margin_left\", margin_value)\n"
+"add_constant_override(\"margin_bottom\", margin_value)\n"
+"add_constant_override(\"margin_right\", margin_value)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:26
+msgid ""
+"All direct children of [MarginContainer] will have a bottom margin of "
+"[code]margin_bottom[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:29
+msgid ""
+"All direct children of [MarginContainer] will have a left margin of "
+"[code]margin_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:32
+msgid ""
+"All direct children of [MarginContainer] will have a right margin of "
+"[code]margin_right[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:35
+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:16
+msgid ""
+"Returns a decoded [PoolByteArray] corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:23
+msgid ""
+"Returns a decoded string corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:31
+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:39
+msgid "Returns a Base64-encoded string of a given [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:46
+msgid ""
+"Returns a Base64-encoded string of the UTF-8 string [code]utf8_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:54
+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 [VisualInstance] 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:17
+msgid ""
+"Sets the [Material] to be used for the next pass. This renders the object "
+"again using a different material.\n"
+"[b]Note:[/b] This only applies to [SpatialMaterial]s and [ShaderMaterial]s "
+"with type \"Spatial\"."
+msgstr ""
+
+#: doc/classes/Material.xml:21
+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:27
+msgid "Maximum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/Material.xml:30
+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 item new properties.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:86
+msgid ""
+"Returns the [PopupMenu] contained in this button.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:25
+msgid ""
+"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
+"the button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:34
+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:41
+msgid "Emitted when [PopupMenu] of this MenuButton is about to show."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:49
+msgid "[StyleBox] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:52
+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:55
+msgid "[Font] of the [MenuButton]'s text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:58
+msgid "Default text [Color] of the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:61
+msgid "Text [Color] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:64
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:67
+msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:70
+msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:73
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:76
+msgid "The horizontal space between [MenuButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
+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:21
+msgid ""
+"Calculate a [ConvexPolygonShape] from the mesh.\n"
+"If [code]clean[/code] is [code]true[/code] (default), duplicate and interior "
+"vertices are removed automatically. You can set it to [code]false[/code] to "
+"make the process faster if not needed.\n"
+"If [code]simplify[/code] is [code]true[/code], the geometry can be further "
+"simplified to reduce the amount of vertices. Disabled by default."
+msgstr ""
+
+#: doc/classes/Mesh.xml:30
+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:37
+msgid "Calculate a [ConcavePolygonShape] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:43
+msgid "Generate a [TriangleMesh] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:49
+msgid ""
+"Returns the smallest [AABB] enclosing this mesh in local space. Not affected "
+"by [code]custom_aabb[/code]. See also [method VisualInstance."
+"get_transformed_aabb].\n"
+"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:56
+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:69
+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:76
+msgid "Returns the blend shape arrays for the requested surface."
+msgstr ""
+
+#: doc/classes/Mesh.xml:83
+msgid ""
+"Returns a [Material] in a given surface. Surface is rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:91
+msgid ""
+"Sets a [Material] for a given surface. Surface will be rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:97
+msgid ""
+"Sets a hint to be used for lightmap resolution in [BakedLightmap]. Overrides "
+"[member BakedLightmap.default_texels_per_unit]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:102
+msgid "Render array as points (one vertex equals one point)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:105
+msgid "Render array as lines (every two vertices a line is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:108
+msgid "Render array as line strip."
+msgstr ""
+
+#: doc/classes/Mesh.xml:111
+msgid "Render array as line loop (like line strip, but closed)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:114
+msgid "Render array as triangles (every three vertices a triangle is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:117
+msgid "Render array as triangle strips."
+msgstr ""
+
+#: doc/classes/Mesh.xml:120
+msgid "Render array as triangle fans."
+msgstr ""
+
+#: doc/classes/Mesh.xml:123 doc/classes/VisualServer.xml:3363
+msgid "Blend shapes are normalized."
+msgstr ""
+
+#: doc/classes/Mesh.xml:126 doc/classes/VisualServer.xml:3366
+msgid "Blend shapes are relative to base weight."
+msgstr ""
+
+#: doc/classes/Mesh.xml:129
+msgid ""
+"Mesh array contains vertices. All meshes require a vertex array so this "
+"should always be present."
+msgstr ""
+
+#: doc/classes/Mesh.xml:132
+msgid "Mesh array contains normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:135
+msgid "Mesh array contains tangents."
+msgstr ""
+
+#: doc/classes/Mesh.xml:138
+msgid "Mesh array contains colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:141
+msgid "Mesh array contains UVs."
+msgstr ""
+
+#: doc/classes/Mesh.xml:144
+msgid "Mesh array contains second UV."
+msgstr ""
+
+#: doc/classes/Mesh.xml:147
+msgid "Mesh array contains bones."
+msgstr ""
+
+#: doc/classes/Mesh.xml:150
+msgid "Mesh array contains bone weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:153
+msgid "Mesh array uses indices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:156
+msgid ""
+"Used internally to calculate other [code]ARRAY_COMPRESS_*[/code] enum "
+"values. Do not use."
+msgstr ""
+
+#: doc/classes/Mesh.xml:159 doc/classes/VisualServer.xml:3300
+msgid "Flag used to mark a compressed (half float) vertex array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:162 doc/classes/VisualServer.xml:3303
+msgid "Flag used to mark a compressed (half float) normal array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:165 doc/classes/VisualServer.xml:3306
+msgid "Flag used to mark a compressed (half float) tangent array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:168 doc/classes/VisualServer.xml:3309
+msgid "Flag used to mark a compressed (half float) color array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:171 doc/classes/VisualServer.xml:3312
+msgid "Flag used to mark a compressed (half float) UV coordinates array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:174 doc/classes/VisualServer.xml:3315
+msgid ""
+"Flag used to mark a compressed (half float) UV coordinates array for the "
+"second UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:177 doc/classes/VisualServer.xml:3318
+msgid "Flag used to mark a compressed bone array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:180 doc/classes/VisualServer.xml:3321
+msgid "Flag used to mark a compressed (half float) weight array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:183 doc/classes/VisualServer.xml:3324
+msgid "Flag used to mark a compressed index array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:186 doc/classes/VisualServer.xml:3327
+msgid "Flag used to mark that the array contains 2D vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:189 doc/classes/VisualServer.xml:3330
+msgid "Flag used to mark that the array uses 16-bit bones instead of 8-bit."
+msgstr ""
+
+#: doc/classes/Mesh.xml:192 doc/classes/VisualServer.xml:3333
+msgid ""
+"Flag used to mark that the array uses an octahedral representation of normal "
+"and tangent vectors rather than cartesian."
+msgstr ""
+
+#: doc/classes/Mesh.xml:195
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_VERTEX], [constant "
+"ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant "
+"ARRAY_COMPRESS_COLOR], [constant ARRAY_COMPRESS_TEX_UV], [constant "
+"ARRAY_COMPRESS_TEX_UV2], [constant ARRAY_COMPRESS_WEIGHTS], and [constant "
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+msgstr ""
+
+#: doc/classes/Mesh.xml:198
+msgid "Array of vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:201
+msgid "Array of normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:204
+msgid "Array of tangents as an array of floats, 4 floats per tangent."
+msgstr ""
+
+#: doc/classes/Mesh.xml:207
+msgid "Array of colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:210
+msgid "Array of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:213
+msgid "Array of second set of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:216
+msgid "Array of bone data."
+msgstr ""
+
+#: doc/classes/Mesh.xml:219
+msgid "Array of weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:222
+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 mesh = ArrayMesh.new()\n"
+"mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, CubeMesh.new()."
+"get_mesh_arrays())\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"
+" # In this example we extend the mesh by one unit, which results in "
+"separated faces as it is flat shaded.\n"
+" vertex += mdt.get_vertex_normal(i)\n"
+" # Save your change.\n"
+" mdt.set_vertex(i, vertex)\n"
+"mesh.surface_remove(0)\n"
+"mdt.commit_to_surface(mesh)\n"
+"var mi = MeshInstance.new()\n"
+"mi.mesh = mesh\n"
+"add_child(mi)\n"
+"[/codeblock]\n"
+"See also [ArrayMesh], [ImmediateGeometry] 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:36
+msgid "Clears all data currently in MeshDataTool."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:43
+msgid "Adds a new surface to specified [Mesh] with edited data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:51
+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:65
+msgid "Returns array of faces that touch given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:72
+msgid "Returns meta information assigned to given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:80
+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:87
+msgid "Returns the number of faces in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:95
+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:103
+msgid "Returns the metadata associated with the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:110
+msgid "Calculates and returns the face normal of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:118
+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:125
+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:132
+msgid "Returns the material assigned to the [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:139
+msgid "Returns the vertex at given index."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:146
+msgid "Returns the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:153
+msgid "Returns the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:159
+msgid "Returns the total number of vertices in [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:166
+msgid "Returns an array of edges that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:173
+msgid "Returns an array of faces that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:180
+msgid "Returns the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:187
+msgid "Returns the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:194
+msgid "Returns the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:201
+msgid "Returns the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:208
+msgid "Returns the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:215
+msgid "Returns bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:223
+msgid "Sets the metadata of the given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:231
+msgid "Sets the metadata of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:238
+msgid "Sets the material to be used by newly-constructed [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:246
+msgid "Sets the position of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:254
+msgid "Sets the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:262
+msgid "Sets the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:270
+msgid "Sets the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:278
+msgid "Sets the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:286
+msgid "Sets the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:294
+msgid "Sets the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:302
+msgid "Sets the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:310
+msgid "Sets the bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:4
+msgid "Node that instances meshes into a scenario."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:7
+msgid ""
+"MeshInstance 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 to get 3D geometry rendered and can be used to instance a single [Mesh] "
+"in many places. This allows to reuse geometry and save on resources. When a "
+"[Mesh] has to be instanced more than thousands of times at close proximity, "
+"consider using a [MultiMesh] in a [MultiMeshInstance] instead."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:21
+msgid ""
+"This helper creates a [StaticBody] child node with a [ConvexPolygonShape] "
+"collision shape calculated from the mesh geometry. It's mainly used for "
+"testing.\n"
+"If [code]clean[/code] is [code]true[/code] (default), duplicate and interior "
+"vertices are removed automatically. You can set it to [code]false[/code] to "
+"make the process faster if not needed.\n"
+"If [code]simplify[/code] is [code]true[/code], the geometry can be further "
+"simplified to reduce the amount of vertices. Disabled by default."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:29
+msgid ""
+"This helper creates a [MeshInstance] child node with gizmos at every vertex "
+"calculated from the mesh geometry. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:35
+msgid ""
+"This helper creates a [StaticBody] child node with multiple "
+"[ConvexPolygonShape] collision shapes calculated from the mesh geometry via "
+"convex decomposition. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:41
+msgid ""
+"This helper creates a [StaticBody] child node with a [ConcavePolygonShape] "
+"collision shape calculated from the mesh geometry. It's mainly used for "
+"testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:48
+msgid ""
+"Returns the [Material] that will be used by the [Mesh] when drawing. This "
+"can return the [member GeometryInstance.material_override], the surface "
+"override [Material] defined in this [MeshInstance], or the surface "
+"[Material] defined in the [Mesh]. For example, if [member GeometryInstance."
+"material_override] is used, all surfaces will return the override material."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:55
+msgid "Returns the [Material] for a surface of the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:61
+msgid "Returns the number of surface materials."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:69
+msgid "Sets the [Material] for a surface of the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:75
+msgid "The [Mesh] resource for the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:78
+msgid "[NodePath] to the [Skeleton] associated with the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:81
+msgid "Sets the skin to be used by this instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:84
+msgid ""
+"If [code]true[/code], normals are transformed when software skinning is "
+"used. Set to [code]false[/code] when normals are not needed for better "
+"performance.\n"
+"See [member ProjectSettings.rendering/quality/skinning/"
+"software_skinning_fallback] for details about how software skinning is "
+"enabled."
+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 "
+"[Sprite] via a tool in the editor toolbar. Select \"Sprite\" then \"Convert "
+"to Mesh2D\", select settings in popup and press \"Create Mesh2D\"."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:10
+msgid "https://docs.godotengine.org/en/3.4/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 [Texture] 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/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:17
+msgid "Clears the library."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:24
+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:32
+msgid "Returns the first item with the given name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:38
+msgid "Returns the list of item IDs in use."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:45
+msgid "Returns the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:52
+msgid "Returns the transform applied to the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:59
+msgid "Returns the item's name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:66
+msgid "Returns the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:73
+msgid "Returns the transform applied to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:80
+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 [Texture] if no preview was manually set "
+"in a running project."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:87
+msgid ""
+"Returns an item's collision shapes.\n"
+"The array consists of each [Shape] followed by its [Transform]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:94
+msgid "Gets an unused ID for a new item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:101
+msgid "Removes the item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:109
+msgid "Sets the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:117
+msgid "Sets the transform to apply to the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:125
+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:134
+msgid "Sets the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:142
+msgid "Sets the transform to apply to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:150
+msgid "Sets a texture to use as the item's preview icon in the editor."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:158
+msgid ""
+"Sets an item's collision shapes.\n"
+"The array should consist of [Shape] 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:19
+msgid "Sets the size of the image, needed for reference."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:22
+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 = ARVRServer.find_interface(\"Native mobile\")\n"
+"if interface and interface.initialize():\n"
+" get_viewport().arvr = 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. "
+"[ARVROrigin] 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 "
+"[MeshInstance] 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 from each other, "
+"performance may be reduced as every single instance will always render (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/MultiMeshInstance.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh."
+"html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:20
+msgid ""
+"Returns the visibility axis-aligned bounding box in local space. See also "
+"[method VisualInstance.get_transformed_aabb]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:27
+msgid "Gets a specific instance's color."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:34
+msgid "Returns the custom data that has been set for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:41
+msgid "Returns the [Transform] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:48
+msgid "Returns the [Transform2D] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:55
+msgid ""
+"Sets all data related to the instances in one go. This is especially useful "
+"when loading the data from disk or preparing the data from GDNative.\n"
+"All data is packed in one large float array. An array may look like this: "
+"Transform for instance 1, color data for instance 1, custom data for "
+"instance 1, transform for instance 2, color data for instance 2, etc...\n"
+"[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, "
+"[code]COLOR_8BIT[/code] / [code]CUSTOM_DATA_8BIT[/code] is stored as 1 float "
+"(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/"
+"code] is stored as 4 floats."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:65
+msgid ""
+"Sets the color of a specific instance by [i]multiplying[/i] the mesh's "
+"existing vertex colors.\n"
+"For the color to take effect, ensure that [member color_format] is non-"
+"[code]null[/code] on the [MultiMesh] and [member SpatialMaterial."
+"vertex_color_use_as_albedo] is [code]true[/code] on the material."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:74
+msgid ""
+"Sets custom data for a specific instance. Although [Color] is used, it is "
+"just a container for 4 floating point numbers. The format of the number can "
+"change depending on the [enum CustomDataFormat] used."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:82
+msgid "Sets the [Transform] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:90
+msgid "Sets the [Transform2D] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:96
+msgid "Format of colors in color array that gets passed to shader."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:99
+msgid "Format of custom data in custom data array that gets passed to shader."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:102
+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:105
+msgid "Mesh to be drawn."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:108
+msgid "Format of transform used to transform mesh, either 2D or 3D."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:111
+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:116
+msgid "Use this when using 2D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:119
+msgid "Use this when using 3D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:122
+msgid "Use when you are not using per-instance [Color]s."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:125
+msgid ""
+"Compress [Color] data into 8 bits when passing to shader. This uses less "
+"memory and can be faster, but the [Color] loses precision."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:128
+msgid ""
+"The [Color] passed into [method set_instance_color] will use 4 floats. Use "
+"this for highest precision [Color]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:131
+msgid "Use when you are not using per-instance custom data."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:134
+msgid ""
+"Compress custom_data into 8 bits when passing to shader. This uses less "
+"memory and can be faster, but loses precision and range. Floats packed into "
+"8 bits can only represent values between 0 and 1, numbers outside that range "
+"will be clamped."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:137
+msgid ""
+"The [Color] passed into [method set_instance_custom_data] will use 4 floats. "
+"Use this for highest precision."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:4
+msgid "Node that instances a [MultiMesh]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:7
+msgid ""
+"[MultiMeshInstance] is a specialized node to instance [GeometryInstance]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/MultiMeshInstance.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance."
+"html"
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:19
+msgid ""
+"The [MultiMesh] resource that will be used and shared among all instances of "
+"the [MultiMeshInstance]."
+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 [MultiMeshInstance]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:16
+msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
+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. See also [NetworkedMultiplayerPeer].\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.\n"
+"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
+"detail and isn't meant to be used by non-Godot servers. It may change "
+"without notice."
+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:24
+msgid ""
+"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:30
+msgid ""
+"Returns the unique peer ID of this MultiplayerAPI's [member network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:36
+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:43 doc/classes/SceneTree.xml:123
+msgid "Returns [code]true[/code] if there is a [member network_peer] set."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:49
+msgid ""
+"Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is "
+"in server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:55
+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:65
+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:71
+msgid ""
+"If [code]true[/code] (or if the [member network_peer] has [member PacketPeer."
+"allow_object_decoding] set to [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:75
+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:78
+msgid ""
+"If [code]true[/code], the MultiplayerAPI's [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:81
+msgid ""
+"The 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:88
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:93
+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:99
+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:105
+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:112
+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:117
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:123
+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:126
+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:129
+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:132
+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:135
+msgid ""
+"[i]Deprecated.[/i] Use [constant RPC_MODE_PUPPET] instead. Analogous to the "
+"[code]slave[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:138
+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:141
+msgid ""
+"[i]Deprecated.[/i] Use [constant RPC_MODE_REMOTESYNC] instead. Analogous to "
+"the [code]sync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:144
+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:147
+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:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads."
+"html"
+msgstr ""
+
+#: doc/classes/Mutex.xml:16
+msgid ""
+"Locks this [Mutex], blocks until it is unlocked by the current owner.\n"
+"[b]Note:[/b] This function returns without blocking if the thread already "
+"has ownership of the mutex."
+msgstr ""
+
+#: doc/classes/Mutex.xml:23
+msgid ""
+"Tries locking this [Mutex], but does not block. Returns [constant OK] on "
+"success, [constant ERR_BUSY] otherwise.\n"
+"[b]Note:[/b] This function returns [constant OK] if the thread already has "
+"ownership of the mutex."
+msgstr ""
+
+#: doc/classes/Mutex.xml:30
+msgid ""
+"Unlocks this [Mutex], leaving it to other threads.\n"
+"[b]Note:[/b] If a thread called [method lock] or [method try_lock] multiple "
+"times while already having ownership of the mutex, it must also call [method "
+"unlock] the same number of times in order to unlock it correctly."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:13
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_class_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:20
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_method_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:27
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_property_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:34
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_signal_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:40
+msgid ""
+"Constructs a new object of the base type with a script of this type already "
+"attached.\n"
+"[b]Note:[/b] 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/Navigation.xml:4
+msgid "Mesh-based navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation.xml:7
+msgid ""
+"Provides navigation and pathfinding within a collection of "
+"[NavigationMesh]es. By default, these will be automatically collected from "
+"child [NavigationMeshInstance] nodes, but they can also be added on the fly "
+"with [method navmesh_add]. In addition to basic pathfinding, this class also "
+"assists with aligning navigation agents with the meshes they are navigating "
+"on.\n"
+"[b]Note:[/b] The current navigation system has many known issues and will "
+"not always return optimal paths as expected. These issues will be fixed in "
+"Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation.xml:11 doc/classes/NavigationMesh.xml:10
+msgid "https://godotengine.org/asset-library/asset/124"
+msgstr ""
+
+#: doc/classes/Navigation.xml:18 doc/classes/Navigation2D.xml:18
+msgid ""
+"Returns the navigation point closest to the point given. Points are in local "
+"coordinate space."
+msgstr ""
+
+#: doc/classes/Navigation.xml:25
+msgid ""
+"Returns the surface normal at the navigation point closest to the point "
+"given. Useful for rotating a navigation agent according to the navigation "
+"mesh it moves on."
+msgstr ""
+
+#: doc/classes/Navigation.xml:32
+msgid ""
+"Returns the owner of the [NavigationMesh] which contains the navigation "
+"point closest to the point given. This is usually a "
+"[NavigationMeshInstance]. For meshes added via [method navmesh_add], returns "
+"the owner that was given (or [code]null[/code] if the [code]owner[/code] "
+"parameter was omitted)."
+msgstr ""
+
+#: doc/classes/Navigation.xml:41
+msgid ""
+"Returns the navigation point closest to the given line segment. When "
+"enabling [code]use_collision[/code], only considers intersection points "
+"between segment and navigation meshes. If multiple intersection points are "
+"found, the one closest to the segment start point is returned."
+msgstr ""
+
+#: doc/classes/Navigation.xml:50
+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.\n"
+"[b]Note:[/b] This method has known issues and will often return non-optimal "
+"paths. These issues will be fixed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation.xml:60
+msgid ""
+"Adds a [NavigationMesh]. Returns an ID for use with [method navmesh_remove] "
+"or [method navmesh_set_transform]. If given, a [Transform2D] is applied to "
+"the polygon. The optional [code]owner[/code] is used as return value for "
+"[method get_closest_point_owner]."
+msgstr ""
+
+#: doc/classes/Navigation.xml:67
+msgid "Removes the [NavigationMesh] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation.xml:75
+msgid "Sets the transform applied to the [NavigationMesh] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation.xml:81
+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/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. By default, these are "
+"automatically collected from child [NavigationPolygonInstance] nodes, but "
+"they can also be added on the fly with [method navpoly_add].\n"
+"[b]Note:[/b] The current navigation system has many known issues and will "
+"not always return optimal paths as expected. These issues will be fixed in "
+"Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:11 doc/classes/NavigationPolygon.xml:27
+msgid "https://godotengine.org/asset-library/asset/117"
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:25
+msgid ""
+"Returns the owner of the [NavigationPolygon] which contains the navigation "
+"point closest to the point given. This is usually a "
+"[NavigationPolygonInstance]. For polygons added via [method navpoly_add], "
+"returns the owner that was given (or [code]null[/code] if the [code]owner[/"
+"code] parameter was omitted)."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:34
+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.\n"
+"[b]Note:[/b] This method has known issues and will often return non-optimal "
+"paths. These issues will be fixed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:44
+msgid ""
+"Adds a [NavigationPolygon]. Returns an ID for use with [method "
+"navpoly_remove] or [method navpoly_set_transform]. If given, a [Transform2D] "
+"is applied to the polygon. The optional [code]owner[/code] is used as return "
+"value for [method get_closest_point_owner]."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:51
+msgid "Removes the [NavigationPolygon] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:59
+msgid ""
+"Sets the transform applied to the [NavigationPolygon] with the given ID."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:4
+msgid "A mesh to approximate the walkable areas and obstacles."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:7
+msgid ""
+"A navigation mesh is a collection of polygons that define which areas of an "
+"environment are traversable to aid agents in pathfinding through complicated "
+"spaces."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:17 doc/classes/NavigationPolygon.xml:49
+msgid ""
+"Adds a polygon using the indices of the vertices you get when calling "
+"[method get_vertices]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:23
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of vertices."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:30
+msgid ""
+"Initializes the navigation mesh by setting the vertices and indices "
+"according to a [Mesh]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:37
+msgid ""
+"Returns whether the specified [code]bit[/code] of the [member geometry/"
+"collision_mask] is set."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:44 doc/classes/NavigationPolygon.xml:81
+msgid ""
+"Returns a [PoolIntArray] containing the indices of the vertices of a created "
+"polygon."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:50
+msgid "Returns the number of polygons in the navigation mesh."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:56
+msgid ""
+"Returns a [PoolVector3Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:64
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the [member geometry/collision_mask].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the [member geometry/collision_mask]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:72 doc/classes/NavigationPolygon.xml:121
+msgid ""
+"Sets the vertices that can be then indexed to create polygons with the "
+"[method add_polygon] method."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:78
+msgid ""
+"The minimum floor to ceiling height that will still allow the floor area to "
+"be considered walkable.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:82
+msgid ""
+"The minimum ledge height that is considered to still be traversable.\n"
+"[b]Note:[/b] While baking, this value will be rounded down to the nearest "
+"multiple of [member cell/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:86
+msgid "The maximum slope that is considered walkable, in degrees."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:89
+msgid ""
+"The distance to erode/shrink the walkable area of the heightfield away from "
+"obstructions.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/size]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:93
+msgid "The Y axis cell size to use for fields."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:96
+msgid "The XZ plane cell size to use for fields."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:99
+msgid ""
+"The sampling distance to use when generating the detail mesh, in cell unit."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:102
+msgid ""
+"The maximum distance the detail mesh surface should deviate from "
+"heightfield, in cell unit."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:105
+msgid ""
+"The maximum distance a simplfied contour's border edges should deviate the "
+"original raw contour."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:108
+msgid ""
+"The maximum allowed length for contour edges along the border of the mesh.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/size]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:112
+msgid ""
+"If [code]true[/code], marks walkable spans as not walkable if the clearance "
+"above the span is less than [member agent/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:115
+msgid "If [code]true[/code], marks spans that are ledges as non-walkable."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:118
+msgid ""
+"If [code]true[/code], marks non-walkable spans as walkable if their maximum "
+"is within [member agent/max_climb] of a walkable neighbor."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:121
+msgid ""
+"The physics layers to scan for static colliders.\n"
+"Only used when [member geometry/parsed_geometry_type] is [constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:125
+msgid ""
+"Determines which type of nodes will be parsed as geometry. See [enum "
+"ParsedGeometryType] for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:128
+msgid ""
+"The source of the geometry used when baking. See [enum SourceGeometryMode] "
+"for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:131
+msgid ""
+"The name of the group to scan for geometry.\n"
+"Only used when [member geometry/source_geometry_mode] is [constant "
+"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
+"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:135
+msgid ""
+"The maximum number of vertices allowed for polygons generated during the "
+"contour to polygon conversion process."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:138
+msgid ""
+"Any regions with a size smaller than this will be merged with larger regions "
+"if possible.\n"
+"[b]Note:[/b] This value will be squared to calculate the number of cells. "
+"For example, a value of 20 will set the number of cells to 400."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:142
+msgid ""
+"The minimum size of a region for it to be created.\n"
+"[b]Note:[/b] This value will be squared to calculate the minimum number of "
+"cells allowed to form isolated island areas. For example, a value of 8 will "
+"set the number of cells to 64."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:146
+msgid ""
+"Partitioning algorithm for creating the navigation mesh polys. See [enum "
+"SamplePartitionType] for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:151
+msgid ""
+"Watershed partitioning. Generally the best choice if you precompute the "
+"navigation mesh, use this if you have large open areas."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:154
+msgid ""
+"Monotone partitioning. Use this if you want fast navigation mesh generation."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:157
+msgid ""
+"Layer partitioning. Good choice to use for tiled navigation mesh with medium "
+"and small sized tiles."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:160
+msgid "Represents the size of the [enum SamplePartitionType] enum."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:163
+msgid ""
+"Parses mesh instances as geometry. This includes [MeshInstance], [CSGShape], "
+"and [GridMap] nodes."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:166
+msgid ""
+"Parses [StaticBody] colliders as geometry. The collider should be in any of "
+"the layers specified by [member geometry/collision_mask]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:169
+msgid ""
+"Both [constant PARSED_GEOMETRY_MESH_INSTANCES] and [constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:172
+msgid "Represents the size of the [enum ParsedGeometryType] enum."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:175
+msgid ""
+"Scans the child nodes of [NavigationMeshInstance] recursively for geometry."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:178
+msgid ""
+"Scans nodes in a group and their child nodes recursively for geometry. The "
+"group is specified by [member geometry/source_group_name]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:181
+msgid ""
+"Uses nodes in a group for geometry. The group is specified by [member "
+"geometry/source_group_name]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:184
+msgid "Represents the size of the [enum SourceGeometryMode] enum."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:4
+msgid "Node that instances navigation meshes into a scenario."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:7
+msgid ""
+"NavigationMeshInstance is a node that takes a [NavigationMesh] resource and "
+"adds it to the current scenario by creating an instance of it."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:15
+msgid "If [code]true[/code], the navigation mesh will be used by [Navigation]."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:18
+msgid "The [NavigationMesh] resource for the instance."
+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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.add_outline(outline)\n"
+"polygon.make_polygons_from_outlines()\n"
+"$NavigationPolygonInstance.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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.set_vertices(vertices)\n"
+"var indices = PoolIntArray(0, 3, 1)\n"
+"polygon.add_polygon(indices)\n"
+"$NavigationPolygonInstance.navpoly = polygon\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:34
+msgid ""
+"Appends a [PoolVector2Array] 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:42
+msgid ""
+"Adds a [PoolVector2Array] 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 ""
+"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:61
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of outlines and "
+"vertices."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:68
+msgid ""
+"Returns a [PoolVector2Array] containing the vertices of an outline that was "
+"created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:74
+msgid ""
+"Returns the number of outlines that were created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:87
+msgid "Returns the count of all polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:93
+msgid ""
+"Returns a [PoolVector2Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:99
+msgid "Creates polygons from the outlines added in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:106
+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:114
+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 ""
+
+#: 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.\n"
+"ENet's purpose is to provide a relatively thin, simple and robust network "
+"communication layer on top of UDP (User Datagram Protocol).\n"
+"[b]Note:[/b] ENet only uses UDP, not TCP. When forwarding the server port to "
+"make your server accessible on the public Internet, you only need to forward "
+"the server port in UDP. You can use the [UPNP] class to try to forward the "
+"server port automatically when starting the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:12
+#: doc/classes/NetworkedMultiplayerPeer.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/"
+"high_level_multiplayer.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:13
+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:31
+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:41
+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:49
+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:55
+msgid ""
+"Returns the channel of the last packet fetched via [method PacketPeer."
+"get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:61
+msgid ""
+"Returns the channel of the next packet that will be retrieved via [method "
+"PacketPeer.get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:68
+#: modules/websocket/doc_classes/WebSocketServer.xml:27
+msgid "Returns the IP address of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:75
+#: modules/websocket/doc_classes/WebSocketServer.xml:34
+msgid "Returns the remote port of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:82
+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:89
+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:96
+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:106
+msgid ""
+"Sets the timeout parameters for a peer.The timeout parameters control how "
+"and when a peer will timeout from a failure to acknowledge reliable traffic. "
+"Timeout values are expressed in milliseconds.\n"
+"The [code]timeout_limit[/code] is a factor that, multiplied by a value based "
+"on the average round trip time, will determine the timeout limit for a "
+"reliable packet. When that limit is reached, the timeout will be doubled, "
+"and the peer will be disconnected if that limit has reached "
+"[code]timeout_min[/code]. The [code]timeout_max[/code] parameter, on the "
+"other hand, defines a fixed timeout for which any packet must be "
+"acknowledged or the peer will be dropped."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
+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:116
+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:119
+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.\n"
+"[b]Note:[/b] Most games' network design involve sending many small packets "
+"frequently (smaller than 4 KB each). If in doubt, it is recommended to keep "
+"the default compression algorithm as it works best on these small packets.\n"
+"[b]Note:[/b] [member compression_mode] must be set to the same value on both "
+"the server and all its clients. Clients will fail to connect if the [member "
+"compression_mode] set on the client differs from the one set on the server. "
+"Prior to Godot 3.4, the default [member compression_mode] was [constant "
+"COMPRESS_NONE]. Nonetheless, mixing engine versions between clients and "
+"server is not recommended and not officially supported."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:124
+msgid ""
+"The hostname used for DTLS verification, to be compared against the \"CN\" "
+"value in the certificate provided by the server.\n"
+"When set to an empty string, the [code]address[/code] parameter passed to "
+"[method create_client] is used instead."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
+msgid ""
+"Enable or disable certificate verification when [member use_dtls] "
+"[code]true[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:132
+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:135
+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:139
+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"
+"[b]Note:[/b] 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:145
+msgid ""
+"No compression. This uses the most bandwidth, but has the upside of "
+"requiring the fewest CPU resources. This option may also be used to make "
+"network debugging using tools like Wireshark easier."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
+msgid ""
+"ENet's built-in range encoding. Works well on small packets, but is not the "
+"most efficient algorithm on packets larger than 4 KB."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:151
+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:154
+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. Note that this algorithm is not very efficient on "
+"packets smaller than 4 KB. Therefore, it's recommended to use other "
+"compression algorithms in most cases."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157
+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. See also [MultiplayerAPI].\n"
+"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
+"detail and isn't meant to be used by non-Godot servers. It may change "
+"without notice."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:12
+msgid "https://godotengine.org/asset-library/asset/537"
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:18
+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:30
+msgid "Returns the ID of this [NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:36
+msgid "Waits up to 1 second to receive a new network event."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:43
+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:50
+msgid ""
+"If [code]true[/code], this [NetworkedMultiplayerPeer] refuses new "
+"connections."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:53
+msgid ""
+"The manner in which to send packets to the [code]target_peer[/code]. See "
+"[enum TransferMode]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:59
+msgid "Emitted when a connection attempt fails."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:64
+msgid "Emitted when a connection attempt succeeds."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:70
+msgid "Emitted by the server when a client connects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:76
+msgid "Emitted by the server when a client disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:81
+msgid "Emitted by clients when the server disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:87
+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:90
+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:93
+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:96
+msgid "The ongoing connection disconnected."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:99
+msgid "A connection attempt is ongoing."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:102
+msgid "The connection attempt succeeded."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:105
+msgid "Packets are sent to the server and then redistributed to other peers."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:108
+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:16
+msgid ""
+"Returns the size of the margin identified by the given [enum Margin] "
+"constant."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:24
+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:30
+msgid ""
+"The stretch mode to use for horizontal stretching/tiling. See [enum "
+"NinePatchRect.AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:33
+msgid ""
+"The stretch mode to use for vertical stretching/tiling. See [enum "
+"NinePatchRect.AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:36
+msgid ""
+"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
+"borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:40
+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:43
+msgid ""
+"The width of the 9-slice's left column. A margin of 16 means the 9-slice's "
+"left corners and side will have a width of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:46
+msgid ""
+"The width of the 9-slice's right column. A margin of 16 means the 9-slice's "
+"right corners and side will have a width of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:49
+msgid ""
+"The height of the 9-slice's top row. A margin of 16 means the 9-slice's top "
+"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:52
+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:55
+msgid "The node's texture resource."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:61
+msgid "Emitted when the node's texture changes."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:67
+msgid ""
+"Stretches the center texture across the NinePatchRect. This may cause the "
+"texture to be distorted."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:70
+msgid ""
+"Repeats the center texture across the NinePatchRect. This won't cause any "
+"visible distortion. The texture must be seamless for this to work without "
+"displaying artifacts between edges.\n"
+"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
+"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:74
+msgid ""
+"Repeats the center texture across the NinePatchRect, but will also stretch "
+"the texture to make sure each tile is visible in full. This may cause the "
+"texture to be distorted, but less than [constant AXIS_STRETCH_MODE_STRETCH]. "
+"The texture must be seamless for this to work without displaying artifacts "
+"between edges.\n"
+"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
+"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
+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] (in seconds) 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/3.4/getting_started/step_by_step/"
+"scenes_and_nodes.html"
+msgstr ""
+
+#: doc/classes/Node.xml:21
+msgid "https://github.com/godotengine/godot-demo-projects/"
+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:34
+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:41
+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:50
+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 SceneTree.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:61
+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. [code]delta[/code] is in "
+"seconds.\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:71
+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. [code]delta[/code] is in seconds.\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:80
+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:90
+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 SceneTree.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:101
+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 SceneTree.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:113
+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 a 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"
+"[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/3.2/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:130
+msgid ""
+"Adds [code]child_node[/code] as a child. The child is placed below the given "
+"[code]node[/code] in the list of children.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have a human-readable name based on the name of the node being "
+"instanced instead of its type."
+msgstr ""
+
+#: doc/classes/Node.xml:139
+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.\n"
+"[b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] "
+"guaranteed. The order of node groups should not be relied upon as it can "
+"vary across project runs."
+msgstr ""
+
+#: doc/classes/Node.xml:147
+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:154
+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:165
+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.\n"
+"[b]Note:[/b] As this method walks through all the descendants of the node, "
+"it is the slowest way to get a reference to another node. Whenever possible, "
+"consider using [method get_node] instead. To avoid using [method find_node] "
+"too often, consider caching the node reference into a variable."
+msgstr ""
+
+#: doc/classes/Node.xml:175
+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.\n"
+"[b]Note:[/b] As this method walks upwards in the scene tree, it can be slow "
+"in large, deeply nested scene trees. Whenever possible, consider using "
+"[method get_node] instead. To avoid using [method find_parent] too often, "
+"consider caching the node reference into a variable."
+msgstr ""
+
+#: doc/classes/Node.xml:184
+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:191
+msgid "Returns the number of child nodes."
+msgstr ""
+
+#: doc/classes/Node.xml:197
+msgid "Returns an array of references to node's children."
+msgstr ""
+
+#: doc/classes/Node.xml:203
+msgid ""
+"Returns an array listing the groups that the node is a member of.\n"
+"[b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] "
+"guaranteed. The order of node groups should not be relied upon as it can "
+"vary across project runs."
+msgstr ""
+
+#: doc/classes/Node.xml:210
+msgid ""
+"Returns the node's index, i.e. its position among the siblings of its parent."
+msgstr ""
+
+#: doc/classes/Node.xml:216
+msgid ""
+"Returns the peer ID of the network master for this node. See [method "
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/Node.xml:223
+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:249
+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:263
+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:269
+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:275
+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:282
+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:288
+msgid ""
+"Returns the time elapsed (in seconds) 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:294
+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:300
+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:306
+msgid ""
+"Returns [code]true[/code] if this is an instance load placeholder. See "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:312
+msgid "Returns the [SceneTree] that contains this node."
+msgstr ""
+
+#: doc/classes/Node.xml:318
+msgid "Returns the node's [Viewport]."
+msgstr ""
+
+#: doc/classes/Node.xml:325
+msgid ""
+"Returns [code]true[/code] if the node that the [NodePath] points to exists."
+msgstr ""
+
+#: doc/classes/Node.xml:332
+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:339
+msgid ""
+"Returns [code]true[/code] if the given node is a direct or indirect child of "
+"the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:345
+msgid ""
+"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
+"dock."
+msgstr ""
+
+#: doc/classes/Node.xml:352
+msgid ""
+"Returns [code]true[/code] if the given node occurs later in the scene "
+"hierarchy than the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:359
+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:365
+msgid ""
+"Returns [code]true[/code] if this node is currently inside a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:371
+msgid ""
+"Returns [code]true[/code] if the local system is the master of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:377
+msgid ""
+"Returns [code]true[/code] if physics processing is enabled (see [method "
+"set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:383
+msgid ""
+"Returns [code]true[/code] if internal physics processing is enabled (see "
+"[method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:389
+msgid ""
+"Returns [code]true[/code] if processing is enabled (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:395
+msgid ""
+"Returns [code]true[/code] if the node is processing input (see [method "
+"set_process_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:401
+msgid ""
+"Returns [code]true[/code] if internal processing is enabled (see [method "
+"set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:407
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled input (see "
+"[method set_process_unhandled_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:413
+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:421
+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:427
+msgid ""
+"Prints all stray nodes (nodes outside the [SceneTree]). Used for debugging. "
+"Works only in debug builds."
+msgstr ""
+
+#: doc/classes/Node.xml:433
+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:448
+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:466
+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:473
+msgid ""
+"Notifies the current node and all its children recursively by calling "
+"[method Object.notification] on all of them."
+msgstr ""
+
+#: doc/classes/Node.xml:479
+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.\n"
+"[b]Important:[/b] If you have a variable pointing to a node, it will [i]not[/"
+"i] be assigned to [code]null[/code] once the node is freed. Instead, it will "
+"point to a [i]previously freed instance[/i] and you should validate it with "
+"[method @GDScript.is_instance_valid] before attempting to call its methods "
+"or access its properties."
+msgstr ""
+
+#: doc/classes/Node.xml:486
+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. The top Node is drawn first, then any "
+"siblings below the top Node in the hierarchy are successively drawn on top "
+"of it. After using [code]raise[/code], a Control will be drawn on top of its "
+"siblings."
+msgstr ""
+
+#: doc/classes/Node.xml:492
+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:499
+msgid ""
+"Removes a child node. The node is NOT deleted and must be deleted manually.\n"
+"[b]Note:[/b] This function may set the [member owner] of the removed Node "
+"(or its descendants) to be [code]null[/code], if that [member owner] is no "
+"longer a parent or ancestor."
+msgstr ""
+
+#: doc/classes/Node.xml:507
+msgid ""
+"Removes a node from a group. See notes in the description, and the group "
+"methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:515
+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:521
+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:528
+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:537
+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:545
+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:552
+msgid ""
+"Sends a [method rpc] using an unreliable protocol. Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:560
+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:568
+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:576
+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:585
+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:593
+msgid ""
+"Remotely changes the property's value on other peers (and locally) using an "
+"unreliable protocol."
+msgstr ""
+
+#: doc/classes/Node.xml:602
+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:609
+msgid "Sets the folded state of the node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Node.xml:617
+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:624
+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:631
+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' behavior.\n"
+"[b]Warning:[/b] Built-in Nodes rely on the internal processing for their own "
+"logic, so changing this value from your code may lead to unexpected "
+"behavior. Script access to this internal logic is provided for specific "
+"advanced uses, but is unsafe and not supported."
+msgstr ""
+
+#: doc/classes/Node.xml:639
+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:646
+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:653
+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' behavior.\n"
+"[b]Warning:[/b] Built-in Nodes rely on the internal processing for their own "
+"logic, so changing this value from your code may lead to unexpected "
+"behavior. Script access to this internal logic is provided for specific "
+"advanced uses, but is unsafe and not supported."
+msgstr ""
+
+#: doc/classes/Node.xml:661
+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:668
+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:675
+msgid ""
+"Sets whether this is an instance load placeholder. See [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:681
+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:688
+msgid ""
+"The override to the default [MultiplayerAPI]. Set to [code]null[/code] to "
+"use the default [SceneTree] one."
+msgstr ""
+
+#: doc/classes/Node.xml:691
+msgid ""
+"If a scene is instantiated from a file, its topmost node contains the "
+"absolute file path from which it was loaded in [member filename] (e.g. "
+"[code]res://levels/1.tscn[/code]). Otherwise, [member filename] is set to an "
+"empty string."
+msgstr ""
+
+#: doc/classes/Node.xml:694
+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:697
+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.\n"
+"[b]Note:[/b] Auto-generated names might include the [code]@[/code] "
+"character, which is reserved for unique names when using [method add_child]. "
+"When setting the name manually, any [code]@[/code] will be removed."
+msgstr ""
+
+#: doc/classes/Node.xml:701
+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:704
+msgid "Pause mode. How the node will behave if the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:707
+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:713
+msgid "Emitted when the node is ready."
+msgstr ""
+
+#: doc/classes/Node.xml:718
+msgid "Emitted when the node is renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:723
+msgid "Emitted when the node enters the tree."
+msgstr ""
+
+#: doc/classes/Node.xml:728
+msgid "Emitted after the node exits the tree and is no longer active."
+msgstr ""
+
+#: doc/classes/Node.xml:733
+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:739
+msgid "Notification received when the node enters a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:742
+msgid "Notification received when the node is about to exit a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:745
+msgid "Notification received when the node is moved in the parent."
+msgstr ""
+
+#: doc/classes/Node.xml:748
+msgid "Notification received when the node is ready. See [method _ready]."
+msgstr ""
+
+#: doc/classes/Node.xml:751
+msgid "Notification received when the node is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:754
+msgid "Notification received when the node is unpaused."
+msgstr ""
+
+#: doc/classes/Node.xml:757
+msgid ""
+"Notification received every frame when the physics process flag is set (see "
+"[method set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:760
+msgid ""
+"Notification received every frame when the process flag is set (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:763
+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:767
+msgid ""
+"Notification received when a node is unparented (parent removed it from the "
+"list of children)."
+msgstr ""
+
+#: doc/classes/Node.xml:770
+msgid "Notification received when the node is instanced."
+msgstr ""
+
+#: doc/classes/Node.xml:773
+msgid "Notification received when a drag begins."
+msgstr ""
+
+#: doc/classes/Node.xml:776
+msgid "Notification received when a drag ends."
+msgstr ""
+
+#: doc/classes/Node.xml:779
+msgid "Notification received when the node's [NodePath] changed."
+msgstr ""
+
+#: doc/classes/Node.xml:782
+msgid ""
+"Notification received every frame when the internal process flag is set (see "
+"[method set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:785
+msgid ""
+"Notification received every frame when the internal physics process flag is "
+"set (see [method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:788
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Node.xml:846
+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:849
+msgid "Stops processing when the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:852
+msgid "Continue to process regardless of the [SceneTree] pause state."
+msgstr ""
+
+#: doc/classes/Node.xml:855
+msgid "Duplicate the node's signals."
+msgstr ""
+
+#: doc/classes/Node.xml:858
+msgid "Duplicate the node's groups."
+msgstr ""
+
+#: doc/classes/Node.xml:861
+msgid "Duplicate the node's scripts."
+msgstr ""
+
+#: doc/classes/Node.xml:864
+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:11 doc/classes/Vector2.xml:16
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/2d"
+msgstr ""
+
+#: doc/classes/Node2D.xml:18
+msgid "Multiplies the current scale by the [code]ratio[/code] vector."
+msgstr ""
+
+#: doc/classes/Node2D.xml:25
+msgid ""
+"Returns the angle between the node and the [code]point[/code] in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"node2d_get_angle_to.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Node2D.xml:33
+msgid "Returns the [Transform2D] relative to this node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:40
+msgid "Adds the [code]offset[/code] vector to the node's global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:47
+msgid ""
+"Rotates the node so it points towards the [code]point[/code], which is "
+"expected to use global coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:55
+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:63
+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:70
+msgid ""
+"Applies a rotation to the node, in radians, starting from its current "
+"rotation."
+msgstr ""
+
+#: doc/classes/Node2D.xml:77
+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:84
+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:91
+msgid ""
+"Translates the node by the given [code]offset[/code] in local coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:97
+msgid "Global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:100
+msgid "Global rotation in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:103
+msgid "Global rotation in degrees."
+msgstr ""
+
+#: doc/classes/Node2D.xml:106
+msgid "Global scale."
+msgstr ""
+
+#: doc/classes/Node2D.xml:109
+msgid "Global [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:112
+msgid "Position, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:115
+msgid "Rotation in radians, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:118
+msgid "Rotation in degrees, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:121
+msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:124
+msgid "Local [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:127
+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:130
+msgid ""
+"Z index. Controls the order in which the nodes render. A node with a higher "
+"Z index will display in front of others. Must be between [constant "
+"VisualServer.CANVAS_ITEM_Z_MIN] and [constant VisualServer."
+"CANVAS_ITEM_Z_MAX] (inclusive)."
+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/Sprite:texture:size\"[/code] would refer to the "
+"[code]size[/code] property of the [code]texture[/code] resource on the node "
+"named [code]\"Sprite\"[/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]\n"
+"[b]Note:[/b] In the editor, [NodePath] properties are automatically updated "
+"when moving, renaming or deleting a node in the scene tree, but they are "
+"never updated at runtime."
+msgstr ""
+
+#: doc/classes/NodePath.xml:26 doc/classes/PackedScene.xml:41
+#: doc/classes/Panel.xml:10 doc/classes/PanelContainer.xml:10
+#: doc/classes/TileMap.xml:16 doc/classes/TileSet.xml:16
+msgid "https://godotengine.org/asset-library/asset/520"
+msgstr ""
+
+#: doc/classes/NodePath.xml:33
+msgid ""
+"Creates a NodePath from a string, e.g. [code]\"Path2D/PathFollow2D/Sprite:"
+"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 Sprite node\n"
+"\"Path2D/PathFollow2D/Sprite\"\n"
+"# Points to the Sprite node and its \"texture\" resource.\n"
+"# get_node() would retrieve \"Sprite\", while get_node_and_resource()\n"
+"# would retrieve both the Sprite node and the \"texture\" resource.\n"
+"\"Path2D/PathFollow2D/Sprite:texture\"\n"
+"# Points to the Sprite node and its \"position\" property.\n"
+"\"Path2D/PathFollow2D/Sprite:position\"\n"
+"# Points to the Sprite node and the \"x\" component of its \"position\" "
+"property.\n"
+"\"Path2D/PathFollow2D/Sprite:position:x\"\n"
+"# Absolute path (from \"root\")\n"
+"\"/root/Level/Path2D\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:55
+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:68
+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/Sprite:texture:load_path\")\n"
+"print(nodepath.get_concatenated_subnames()) # texture:load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:79
+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/Sprite\")\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:91
+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/Sprite\"[/code] has 3 names."
+msgstr ""
+
+#: doc/classes/NodePath.xml:99
+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/Sprite: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:110
+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/Sprite:texture:load_path\"[/code] "
+"has 2 subnames."
+msgstr ""
+
+#: doc/classes/NodePath.xml:117
+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:123
+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 "
+"Texture.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:29
+msgid "Height of the generated texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:32
+msgid "The [OpenSimplexNoise] instance used to generate the noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:35
+msgid ""
+"An offset used to specify the noise space coordinate of the top left corner "
+"of the generated noise. This value is ignored if [member seamless] is "
+"enabled."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:38
+msgid ""
+"Whether the texture can be tiled without visible seams or not. Seamless "
+"textures take longer to generate.\n"
+"[b]Note:[/b] Seamless noise has a lower contrast compared to non-seamless "
+"noise. This is due to the way noise uses higher dimensions for generating "
+"seamless noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:42
+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].\n"
+"[b]Note:[/b] Due to a bug, you can't create a \"plain\" Object using "
+"[code]Object.new()[/code]. Instead, use [code]ClassDB.instance(\"Object\")[/"
+"code]. This bug only applies to Object itself, not any of its descendents "
+"like [Reference]."
+msgstr ""
+
+#: doc/classes/Object.xml:24 doc/classes/Reference.xml:13
+#: doc/classes/Resource.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/"
+"node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:25
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_exports.html#advanced-exports"
+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:39
+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:47
+msgid "Called when the object is initialized."
+msgstr ""
+
+#: doc/classes/Object.xml:54
+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:62
+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:69
+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:78
+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:85
+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:96
+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:108
+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:117
+msgid ""
+"Returns [code]true[/code] if the object can translate strings. See [method "
+"set_message_translation] and [method tr]."
+msgstr ""
+
+#: doc/classes/Object.xml:128
+msgid ""
+"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:152
+msgid ""
+"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:160
+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:170
+msgid ""
+"Deletes the object from memory immediately. For [Node]s, you may want to use "
+"[method Node.queue_free] to queue the node for safe deletion at the end of "
+"the current frame.\n"
+"[b]Important:[/b] If you have a variable pointing to an object, it will "
+"[i]not[/i] be assigned to [code]null[/code] once the object is freed. "
+"Instead, it will point to a [i]previously freed instance[/i] and you should "
+"validate it with [method @GDScript.is_instance_valid] before attempting to "
+"call its methods or access its properties."
+msgstr ""
+
+#: doc/classes/Object.xml:178
+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:185
+msgid ""
+"Returns the object's class as a [String]. See also [method is_class].\n"
+"[b]Note:[/b] [method get_class] does not take [code]class_name[/code] "
+"declarations into account. If the object has a [code]class_name[/code] "
+"defined, the base class name will be returned instead."
+msgstr ""
+
+#: doc/classes/Object.xml:192
+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:203
+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:209
+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:217
+msgid "Returns the object's metadata entry for the given [code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:223
+msgid "Returns the object's metadata as a [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/Object.xml:229
+msgid "Returns the object's methods and their signatures as an [Array]."
+msgstr ""
+
+#: doc/classes/Object.xml:235
+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:242
+msgid ""
+"Returns the object's [Script] instance, or [code]null[/code] if none is "
+"assigned."
+msgstr ""
+
+#: doc/classes/Object.xml:249
+msgid "Returns an [Array] of connections for the given [code]signal[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:255
+msgid "Returns the list of signals as an [Array] of dictionaries."
+msgstr ""
+
+#: doc/classes/Object.xml:262
+msgid ""
+"Returns [code]true[/code] if a metadata entry is found with the given "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:269
+msgid ""
+"Returns [code]true[/code] if the object contains the given [code]method[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:276
+msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
+msgstr ""
+
+#: doc/classes/Object.xml:283
+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:289
+msgid "Returns [code]true[/code] if signal emission blocking is enabled."
+msgstr ""
+
+#: doc/classes/Object.xml:296
+msgid ""
+"Returns [code]true[/code] if the object inherits from the given [code]class[/"
+"code]. See also [method get_class].\n"
+"[b]Note:[/b] [method is_class] does not take [code]class_name[/code] "
+"declarations into account. If the object has a [code]class_name[/code] "
+"defined, [method is_class] will return [code]false[/code] for that name."
+msgstr ""
+
+#: doc/classes/Object.xml:306
+msgid ""
+"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:312
+msgid ""
+"Returns [code]true[/code] if the [method Node.queue_free] method was called "
+"for the object."
+msgstr ""
+
+#: doc/classes/Object.xml:320
+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:327
+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:334
+msgid ""
+"Removes a given entry from the object's metadata. See also [method set_meta]."
+msgstr ""
+
+#: doc/classes/Object.xml:342
+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:350
+msgid "If set to [code]true[/code], signal emission is blocked."
+msgstr ""
+
+#: doc/classes/Object.xml:358
+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:367
+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:379
+msgid ""
+"Defines whether the object can translate strings (with calls to [method "
+"tr]). Enabled by default."
+msgstr ""
+
+#: doc/classes/Object.xml:387
+msgid ""
+"Adds, changes or removes a given entry in the object's metadata. Metadata "
+"are serialized and can take any [Variant] value.\n"
+"To remove a given entry from the object's metadata, use [method "
+"remove_meta]. Metadata is also removed if its value is set to [code]null[/"
+"code]. This means you can also use [code]set_meta(\"name\", null)[/code] to "
+"remove metadata for [code]\"name\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:395
+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:402
+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:410
+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:418
+msgid "Emitted whenever the object's script is changed."
+msgstr ""
+
+#: doc/classes/Object.xml:424
+msgid "Called right when the object is initialized. Not available in script."
+msgstr ""
+
+#: doc/classes/Object.xml:427
+msgid "Called before the object is about to be deleted."
+msgstr ""
+
+#: doc/classes/Object.xml:430
+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:433
+msgid "Persisting connections are saved when the object is serialized to file."
+msgstr ""
+
+#: doc/classes/Object.xml:436
+msgid "One-shot connections disconnect themselves after emission."
+msgstr ""
+
+#: doc/classes/Object.xml:439
+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/Occluder.xml:4
+msgid "Allows [OccluderShape]s to be used for occlusion culling."
+msgstr ""
+
+#: doc/classes/Occluder.xml:7
+msgid ""
+"[Occluder]s that are placed within your scene will automatically cull "
+"objects that are hidden from view by the occluder. This can increase "
+"performance by decreasing the amount of objects drawn.\n"
+"[Occluder]s are totally dynamic, you can move them as you wish. This means "
+"you can for example, place occluders on a moving spaceship, and have it "
+"occlude objects as it flies past.\n"
+"You can place a large number of [Occluder]s within a scene. As it would be "
+"counterproductive to cull against hundreds of occluders, the system will "
+"automatically choose a selection of these for active use during any given "
+"frame, based a screen space metric. Larger occluders are favored, as well as "
+"those close to the camera. Note that a small occluder close to the camera "
+"may be a better occluder in terms of screen space than a large occluder far "
+"in the distance.\n"
+"The type of occlusion primitive is determined by the [OccluderShape] that "
+"you add to the [Occluder]. Some [OccluderShape]s may allow more than one "
+"primitive in a single, node, for greater efficiency.\n"
+"Although [Occluder]s work in general use, they also become even more "
+"powerful when used in conjunction with the portal system. Occluders are "
+"placed in rooms (based on their origin), and can block portals (and thus "
+"entire rooms) as well as objects from rendering."
+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/OccluderShape.xml:4
+msgid ""
+"Base class for shapes used for occlusion culling by the [Occluder] node."
+msgstr ""
+
+#: doc/classes/OccluderShape.xml:7
+msgid "[Occluder]s can use any primitive shape derived from [OccluderShape]."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:4
+msgid "Spherical occlusion primitive for use with the [Occluder] node."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:7
+msgid ""
+"[OccluderShape]s are resources used by [Occluder] nodes, allowing geometric "
+"occlusion culling.\n"
+"This shape can include multiple spheres. These can be created and deleted "
+"either in the Editor inspector or by calling [code]set_spheres[/code]. The "
+"sphere positions can be set by dragging the handle in the Editor viewport. "
+"The radius can be set with the smaller handle."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:18
+msgid "Sets an individual sphere's position."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:26
+msgid "Sets an individual sphere's radius."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:32
+msgid ""
+"The sphere data can be accessed as an array of [Plane]s. The position of "
+"each sphere is stored in the [code]normal[/code], and the radius is stored "
+"in the [code]d[/code] value of the plane."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:4
+msgid "Omnidirectional light, such as a light bulb or a candle."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:7
+msgid ""
+"An Omnidirectional light is a type of [Light] 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.\n"
+"[b]Note:[/b] By default, only 32 OmniLights may affect a single mesh "
+"[i]resource[/i] at once. Consider splitting your level into several meshes "
+"to decrease the likelihood that more than 32 lights will affect the same "
+"mesh resource. Splitting the level mesh will also improve frustum culling "
+"effectiveness, leading to greater performance. If you need to use more "
+"lights per mesh, you can increase [member ProjectSettings.rendering/limits/"
+"rendering/max_lights_per_object] at the cost of shader compilation times."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:17
+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/OmniLight.xml:20
+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/OmniLight.xml:23
+msgid "See [enum ShadowDetail]."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:26
+msgid "See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:31
+msgid ""
+"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
+"SHADOW_CUBE], but lower-quality."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:34
+msgid ""
+"Shadows are rendered to a cubemap. Slower than [constant "
+"SHADOW_DUAL_PARABOLOID], but higher-quality."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:37
+msgid "Use more detail vertically when computing the shadow."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:40
+msgid "Use more detail horizontally when computing the shadow."
+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:33
+msgid ""
+"Generate a noise image in [constant Image.FORMAT_L8] format with the "
+"requested [code]width[/code] and [code]height[/code], based on the current "
+"noise parameters. If [code]noise_offset[/code] is specified, then the offset "
+"value is used as the coordinates of the top-left corner of the generated "
+"noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:40
+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:49
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:56
+msgid "Returns the 2D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:65
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:72
+msgid "Returns the 3D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:82
+msgid "Returns the 4D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:89
+msgid ""
+"Generate a tileable noise image in [constant Image.FORMAT_L8] format, based "
+"on the current noise parameters. Generated seamless images are always square "
+"([code]size[/code] × [code]size[/code]).\n"
+"[b]Note:[/b] Seamless noise has a lower contrast compared to non-seamless "
+"noise. This is due to the way noise uses higher dimensions for generating "
+"seamless noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:96
+msgid "Difference in period between [member octaves]."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:99
+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:103
+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:106
+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:109
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:19
+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:27
+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:33
+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:39
+msgid "Clears all the items in the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:45
+msgid "Returns the amount of items in the OptionButton, including separators."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:52 doc/classes/PopupMenu.xml:203
+msgid "Returns the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:59
+msgid "Returns the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:66
+msgid "Returns the index of the item with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:73
+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:80 doc/classes/PopupMenu.xml:245
+msgid "Returns the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:93
+msgid ""
+"Returns the ID of the selected item, or [code]0[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:99
+msgid ""
+"Gets the metadata of the selected item. Metadata for items can be set using "
+"[method set_item_metadata]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:106
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:113
+msgid "Removes the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:120
+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:128
+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:137
+msgid "Sets the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:145
+msgid "Sets the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:153
+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:161 doc/classes/PopupMenu.xml:432
+msgid "Sets the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:169
+msgid ""
+"The index of the currently selected item, or [code]-1[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:177
+msgid ""
+"Emitted when the 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:183
+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:191
+msgid "The arrow icon to be drawn on the right end of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:194
+msgid ""
+"The horizontal space between the arrow icon and the right edge of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:197
+msgid "[StyleBox] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:200
+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:203
+msgid "[Font] of the [OptionButton]'s text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:206
+msgid "Default text [Color] of the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:209
+msgid "Text [Color] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:212
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:215
+msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:218
+msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:221
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:224
+msgid "The horizontal space between [OptionButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
+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:18
+msgid ""
+"Displays a modal dialog box using the host OS' facilities. Execution is "
+"blocked until the dialog is closed."
+msgstr ""
+
+#: doc/classes/OS.xml:24
+msgid "Returns [code]true[/code] if the host OS allows drawing."
+msgstr ""
+
+#: doc/classes/OS.xml:30
+msgid ""
+"Returns [code]true[/code] if the current host platform is using multiple "
+"threads."
+msgstr ""
+
+#: doc/classes/OS.xml:36
+msgid "Centers the window on the screen if in windowed mode."
+msgstr ""
+
+#: doc/classes/OS.xml:42
+msgid ""
+"Shuts down system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:50
+msgid ""
+"Delays execution of the current thread by [code]msec[/code] milliseconds. "
+"[code]msec[/code] must be greater than or equal to [code]0[/code]. "
+"Otherwise, [method delay_msec] will do nothing and will print an error "
+"message.\n"
+"[b]Note:[/b] [method delay_msec] is a [i]blocking[/i] way to delay code "
+"execution. To delay code execution in a non-blocking way, see [method "
+"SceneTree.create_timer]. Yielding with [method SceneTree.create_timer] will "
+"delay the execution of code placed below the [code]yield[/code] without "
+"affecting the rest of the project (or editor, for [EditorPlugin]s and "
+"[EditorScript]s).\n"
+"[b]Note:[/b] When [method delay_msec] is called on the main thread, it will "
+"freeze the project and will prevent it from redrawing and registering input "
+"until the delay has passed. When using [method delay_msec] as part of an "
+"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
+"the project if it is currently running (since the project is an independent "
+"child process)."
+msgstr ""
+
+#: doc/classes/OS.xml:59
+msgid ""
+"Delays execution of the current thread by [code]usec[/code] microseconds. "
+"[code]usec[/code] must be greater than or equal to [code]0[/code]. "
+"Otherwise, [method delay_usec] will do nothing and will print an error "
+"message.\n"
+"[b]Note:[/b] [method delay_usec] is a [i]blocking[/i] way to delay code "
+"execution. To delay code execution in a non-blocking way, see [method "
+"SceneTree.create_timer]. Yielding with [method SceneTree.create_timer] will "
+"delay the execution of code placed below the [code]yield[/code] without "
+"affecting the rest of the project (or editor, for [EditorPlugin]s and "
+"[EditorScript]s).\n"
+"[b]Note:[/b] When [method delay_usec] is called on the main thread, it will "
+"freeze the project and will prevent it from redrawing and registering input "
+"until the delay has passed. When using [method delay_usec] as part of an "
+"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
+"the project if it is currently running (since the project is an independent "
+"child process)."
+msgstr ""
+
+#: doc/classes/OS.xml:68
+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:76
+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:89
+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:115
+msgid "Returns the scancode of the given string (e.g. \"Escape\")."
+msgstr ""
+
+#: doc/classes/OS.xml:121
+msgid "Returns the total number of available audio drivers."
+msgstr ""
+
+#: doc/classes/OS.xml:128
+msgid "Returns the audio driver name for the given index."
+msgstr ""
+
+#: doc/classes/OS.xml:134
+msgid ""
+"Returns the [i]global[/i] cache data directory according to the operating "
+"system's standards. On desktop platforms, this path can be overridden by "
+"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting "
+"the project. See [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] in the documentation for "
+"more information. See also [method get_config_dir] and [method "
+"get_data_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:141
+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 [member ProjectSettings.editor/main_run_args] 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:158
+msgid ""
+"Returns the [i]global[/i] user configuration directory according to the "
+"operating system's standards. On desktop platforms, this path can be "
+"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable "
+"before starting the project. See [url=https://docs.godotengine.org/en/latest/"
+"tutorials/io/data_paths.html]File paths in Godot projects[/url] in the "
+"documentation for more information. See also [method get_cache_dir] and "
+"[method get_data_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:165
+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:173
+msgid ""
+"Returns the currently used video driver, using one of the values from [enum "
+"VideoDriver]."
+msgstr ""
+
+#: doc/classes/OS.xml:179
+msgid ""
+"Returns the [i]global[/i] user data directory according to the operating "
+"system's standards. On desktop platforms, this path can be overridden by "
+"setting the [code]XDG_DATA_HOME[/code] environment variable before starting "
+"the project. See [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] in the documentation for "
+"more information. See also [method get_cache_dir] and [method "
+"get_config_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:187
+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:194
+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:201
+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:208
+msgid "Returns the total amount of dynamic memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:215
+msgid ""
+"Returns the value of an environment variable. Returns an empty string if the "
+"environment variable doesn't exist.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:222
+msgid "Returns the path to the current engine executable."
+msgstr ""
+
+#: doc/classes/OS.xml:228
+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:235
+msgid ""
+"Returns the IME cursor position (the currently-edited portion of the string) "
+"relative to the characters in the composition string.\n"
+"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to "
+"notify it of changes to the IME cursor position.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:243
+msgid ""
+"Returns the IME intermediate composition string.\n"
+"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to "
+"notify it of changes to the IME composition string.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:251
+msgid ""
+"Returns the current latin keyboard variant as a String.\n"
+"Possible return values are: [code]\"QWERTY\"[/code], [code]\"AZERTY\"[/"
+"code], [code]\"QZERTY\"[/code], [code]\"DVORAK\"[/code], [code]\"NEO\"[/"
+"code], [code]\"COLEMAK\"[/code] or [code]\"ERROR\"[/code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows. Returns "
+"[code]\"QWERTY\"[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:259
+msgid ""
+"Returns the host OS locale as a string of the form "
+"[code]language_Script_COUNTRY_VARIANT@extra[/code]. If you want only the "
+"language code and not the fully specified locale from the OS, you can use "
+"[method get_locale_language].\n"
+"[code]language[/code] - 2 or 3-letter [url=https://en.wikipedia.org/wiki/"
+"List_of_ISO_639-1_codes]language code[/url], in lower case.\n"
+"[code]Script[/code] - optional, 4-letter [url=https://en.wikipedia.org/wiki/"
+"ISO_15924]script code[/url], in title case.\n"
+"[code]COUNTRY[/code] - optional, 2 or 3-letter [url=https://en.wikipedia.org/"
+"wiki/ISO_3166-1]country code[/url], in upper case.\n"
+"[code]VARIANT[/code] - optional, language variant, region and sort order. "
+"Variant can have any number of underscored keywords.\n"
+"[code]extra[/code] - optional, semicolon separated list of additional key "
+"words. Currency, calendar, sort order and numbering system information."
+msgstr ""
+
+#: doc/classes/OS.xml:270
+msgid ""
+"Returns the host OS locale's 2 or 3-letter [url=https://en.wikipedia.org/"
+"wiki/List_of_ISO_639-1_codes]language code[/url] as a string which should be "
+"consistent on all platforms. This is equivalent to extracting the "
+"[code]language[/code] part of the [method get_locale] string.\n"
+"This can be used to narrow down fully specified locale strings to only the "
+"\"common\" language code, when you don't need the additional information "
+"about country code or variants. For example, for a French Canadian user with "
+"[code]fr_CA[/code] locale, this would return [code]fr[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:277
+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:284
+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:291
+msgid ""
+"Returns internal structure pointers for use in GDNative plugins.\n"
+"[b]Note:[/b] This method is implemented on Linux and Windows (other OSs will "
+"soon be supported)."
+msgstr ""
+
+#: doc/classes/OS.xml:298
+msgid ""
+"Returns the amount of battery left in the device as a percentage. Returns "
+"[code]-1[/code] if power state is unknown.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:305
+msgid ""
+"Returns an estimate of the time left in seconds before the device runs out "
+"of battery. Returns [code]-1[/code] if power state is unknown.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:312
+msgid ""
+"Returns the current state of the device regarding battery and power. See "
+"[enum PowerState] constants.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:319
+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:326
+msgid "Returns the number of threads available on the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:332
+msgid "Returns the window size including decorations like window borders."
+msgstr ""
+
+#: doc/classes/OS.xml:339
+msgid ""
+"Returns the given scancode as a string (e.g. Return values: [code]\"Escape"
+"\"[/code], [code]\"Shift+Escape\"[/code]).\n"
+"See also [member InputEventKey.scancode] and [method InputEventKey."
+"get_scancode_with_modifiers]."
+msgstr ""
+
+#: doc/classes/OS.xml:346
+msgid "Returns the number of displays attached to the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:353
+msgid ""
+"Returns the dots per inch density of the specified screen. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used.\n"
+"[b]Note:[/b] On macOS, returned value is inaccurate if fractional display "
+"scaling mode is used.\n"
+"[b]Note:[/b] On Android devices, the actual screen densities are grouped "
+"into six generalized densities:\n"
+"[codeblock]\n"
+" ldpi - 120 dpi\n"
+" mdpi - 160 dpi\n"
+" hdpi - 240 dpi\n"
+" xhdpi - 320 dpi\n"
+" xxhdpi - 480 dpi\n"
+"xxxhdpi - 640 dpi\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is implemented on Android, Linux, macOS and "
+"Windows. Returns [code]72[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:370
+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/OS.xml:379
+msgid ""
+"Returns the position of the specified screen by index. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used."
+msgstr ""
+
+#: doc/classes/OS.xml:386
+msgid ""
+"Return the scale factor of the specified screen by index. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used.\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/OS.xml:395
+msgid ""
+"Returns the dimensions in pixels of the specified screen. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used."
+msgstr ""
+
+#: doc/classes/OS.xml:401
+msgid ""
+"Returns the amount of time in milliseconds it took for the boot logo to "
+"appear."
+msgstr ""
+
+#: doc/classes/OS.xml:407
+msgid "Returns the maximum amount of static memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:413
+msgid "Returns the amount of static memory being used by the program in bytes."
+msgstr ""
+
+#: doc/classes/OS.xml:421
+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.\n"
+"[b]Note:[/b] Shared storage is implemented on Android and allows to "
+"differentiate between app specific and shared directories. Shared "
+"directories have additional restrictions on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:429
+msgid "Returns the epoch time of the operating system in milliseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:435
+msgid "Returns the epoch time of the operating system in seconds."
+msgstr ""
+
+#: doc/classes/OS.xml:441
+msgid ""
+"Returns the total number of available tablet drivers.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:449
+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:456
+msgid ""
+"Returns the ID of the current thread. This can be used in logs to ease "
+"debugging of multi-threaded applications.\n"
+"[b]Note:[/b] Thread IDs are not deterministic and may be reused across "
+"application restarts."
+msgstr ""
+
+#: doc/classes/OS.xml:463
+msgid ""
+"Returns the amount of time passed in milliseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:469
+msgid ""
+"Returns the amount of time passed in microseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:476
+msgid "Returns current time as a dictionary of keys: hour, minute, second."
+msgstr ""
+
+#: doc/classes/OS.xml:482
+msgid ""
+"Returns the current time zone as a dictionary with the keys: bias and name."
+msgstr ""
+
+#: doc/classes/OS.xml:488
+msgid ""
+"Returns a string that is unique to the device.\n"
+"[b]Note:[/b] This string may change without notice if the user reinstalls/"
+"upgrades their operating system or changes their hardware. This means it "
+"should generally not be used to encrypt persistent data as the data saved "
+"before an unexpected ID change would become inaccessible. The returned "
+"string may also be falsified using external programs, so do not rely on the "
+"string returned by [method get_unique_id] for security purposes.\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:496
+msgid ""
+"Returns the current UNIX epoch timestamp in seconds.\n"
+"[b]Important:[/b] This is the system clock that the user can manually set. "
+"[b]Never use[/b] this method for precise time calculation since its results "
+"are also subject to automatic adjustments by the operating system. [b]Always "
+"use[/b] [method get_ticks_usec] or [method get_ticks_msec] for precise time "
+"calculation instead, since they are guaranteed to be monotonic (i.e. never "
+"decrease)."
+msgstr ""
+
+#: doc/classes/OS.xml:504
+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"
+"If the dictionary is empty [code]0[/code] is returned. If some keys are "
+"omitted, they default to the equivalent values for the UNIX epoch timestamp "
+"0 (1970-01-01 at 00:00:00 UTC).\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:513
+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].\n"
+"Not to be confused with [method get_data_dir], which returns the [i]global[/"
+"i] (non-project-specific) user data directory."
+msgstr ""
+
+#: doc/classes/OS.xml:524
+msgid "Returns the number of video drivers supported on the current platform."
+msgstr ""
+
+#: doc/classes/OS.xml:531
+msgid ""
+"Returns the name of the video driver matching the given [code]driver[/code] "
+"index. This index is a value from [enum VideoDriver], and you can use "
+"[method get_current_video_driver] to get the current backend's index."
+msgstr ""
+
+#: doc/classes/OS.xml:537
+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/OS.xml:543
+msgid ""
+"Returns unobscured area of the window where interactive controls should be "
+"rendered."
+msgstr ""
+
+#: doc/classes/OS.xml:553
+msgid ""
+"Add a new item with text \"label\" to global menu. Use \"_dock\" menu to add "
+"item to the macOS dock icon menu.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:561
+msgid ""
+"Add a separator between items. Separators also occupy an index.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:569
+msgid ""
+"Clear the global menu, in effect removing all items.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:578
+msgid ""
+"Removes the item at index \"idx\" from the global menu. Note that the "
+"indexes of items after the removed item are going to be shifted by one.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:586
+msgid ""
+"Returns [code]true[/code] if the environment variable with the name "
+"[code]variable[/code] exists.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:594
+msgid ""
+"Returns [code]true[/code] if the feature for the given feature tag is "
+"supported in the currently running instance, depending on the 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/3.4/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:601
+msgid ""
+"Returns [code]true[/code] if the device has a touchscreen or emulates one."
+msgstr ""
+
+#: doc/classes/OS.xml:607
+msgid ""
+"Returns [code]true[/code] if the platform has a virtual keyboard, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/OS.xml:613
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/OS.xml:619
+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:627
+msgid ""
+"Returns [code]true[/code] if the [b]OK[/b] button should appear on the left "
+"and [b]Cancel[/b] on the right."
+msgstr ""
+
+#: doc/classes/OS.xml:634
+msgid ""
+"Returns [code]true[/code] if the input scancode corresponds to a Unicode "
+"character."
+msgstr ""
+
+#: doc/classes/OS.xml:640
+msgid ""
+"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
+"(verbose stdout)."
+msgstr ""
+
+#: doc/classes/OS.xml:646
+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:652
+msgid ""
+"Returns [code]true[/code] if the window should always be on top of other "
+"windows."
+msgstr ""
+
+#: doc/classes/OS.xml:658
+msgid ""
+"Returns [code]true[/code] if the window is currently focused.\n"
+"[b]Note:[/b] Only implemented on desktop platforms. On other platforms, it "
+"will always return [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:665
+msgid ""
+"Returns active keyboard layout index.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:672
+msgid ""
+"Returns the number of keyboard layouts.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:680
+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/OS.xml:688
+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/OS.xml:696
+msgid ""
+"Sets active keyboard layout.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:704
+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:712
+msgid ""
+"Moves the window to the front.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:719
+msgid ""
+"Returns [code]true[/code] if native video is playing.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:726
+msgid ""
+"Pauses native video playback.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:737
+msgid ""
+"Plays native video from the specified path, at the given volume and with "
+"audio and subtitle tracks.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:744
+msgid ""
+"Stops native video playback.\n"
+"[b]Note:[/b] This method is implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:751
+msgid ""
+"Resumes native video playback.\n"
+"[b]Note:[/b] This method is implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:758
+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:766
+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:772
+msgid "Shows the list of loaded textures sorted by size in memory."
+msgstr ""
+
+#: doc/classes/OS.xml:779
+msgid "Shows the number of resources loaded by the game of the given types."
+msgstr ""
+
+#: doc/classes/OS.xml:786
+msgid "Shows all resources currently used by the game."
+msgstr ""
+
+#: doc/classes/OS.xml:792
+msgid ""
+"Request the user attention to the window. It'll flash the taskbar button on "
+"Windows or bounce the dock icon on OSX.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:800
+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:806
+msgid ""
+"With this function, you can request dangerous permissions since normal "
+"permissions are automatically granted at install time in Android "
+"applications.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:815
+msgid ""
+"Sets the value of the environment variable [code]variable[/code] to "
+"[code]value[/code]. The environment variable will be set for the Godot "
+"process and any process executed with [method execute] after running [method "
+"set_environment]. The environment variable will [i]not[/i] persist to "
+"processes run after the Godot process was terminated.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:823
+msgid ""
+"Sets the game's icon using an [Image] resource.\n"
+"The same image is used for window caption, taskbar/dock and window selection "
+"dialog. Image is scaled as needed.\n"
+"[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:832
+msgid ""
+"Sets whether IME input mode should be enabled.\n"
+"If active IME handles key events before the application and creates an "
+"composition string and suggestion list.\n"
+"Application can retrieve the composition status by using [method "
+"get_ime_selection] and [method get_ime_text] functions.\n"
+"Completed composition string is committed when input is finished.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:843
+msgid ""
+"Sets position of IME suggestion list popup (in window coordinates).\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:851
+msgid ""
+"Sets the game's icon using a multi-size platform-specific icon file ([code]*."
+"ico[/code] on Windows and [code]*.icns[/code] on macOS).\n"
+"Appropriate size sub-icons are used for window caption, taskbar/dock and "
+"window selection dialog.\n"
+"[b]Note:[/b] This method is implemented on macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:860
+msgid "Sets the name of the current thread."
+msgstr ""
+
+#: doc/classes/OS.xml:867
+msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:874
+msgid ""
+"Sets whether the window should always be on top.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:882
+msgid ""
+"Sets a polygonal region of the window which accepts mouse events. Mouse "
+"events outside the region will be passed through.\n"
+"Passing an empty array will disable passthrough support (all mouse events "
+"will be intercepted by the window, which is the default behavior).\n"
+"[codeblock]\n"
+"# Set region, using Path2D node.\n"
+"OS.set_window_mouse_passthrough($Path2D.curve.get_baked_points())\n"
+"\n"
+"# Set region, using Polygon2D node.\n"
+"OS.set_window_mouse_passthrough($Polygon2D.polygon)\n"
+"\n"
+"# Reset region to default.\n"
+"OS.set_window_mouse_passthrough([])\n"
+"[/codeblock]\n"
+"[b]Note:[/b] On Windows, the portion of a window that lies outside the "
+"region is not drawn, while on Linux and macOS it is.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:902
+msgid ""
+"Sets the window title to the specified string.\n"
+"[b]Note:[/b] This should be used sporadically. Don't set this every frame, "
+"as that will negatively affect performance on some window managers.\n"
+"[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:911
+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:924
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"The [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"
+"The [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"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
+#: doc/classes/OS.xml:933
+msgid "The clipboard from the host OS. Might be unavailable on some platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:936
+msgid "The current screen index (starting from 0)."
+msgstr ""
+
+#: doc/classes/OS.xml:939
+msgid ""
+"If [code]true[/code], the engine filters the time delta measured between "
+"each frame, and attempts to compensate for random variation. This will only "
+"operate on systems where V-Sync is active."
+msgstr ""
+
+#: doc/classes/OS.xml:942
+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:946
+msgid ""
+"If [code]true[/code], the engine tries to keep the screen on while the game "
+"is running. Useful on mobile."
+msgstr ""
+
+#: doc/classes/OS.xml:949
+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:952
+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:955
+msgid ""
+"The maximum size of the window (without counting window manager "
+"decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to "
+"reset to the system default value."
+msgstr ""
+
+#: doc/classes/OS.xml:958
+msgid ""
+"The minimum size of the window in pixels (without counting window manager "
+"decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to "
+"reset to the system's default value.\n"
+"[b]Note:[/b] By default, the project window has a minimum size of "
+"[code]Vector2(64, 64)[/code]. This prevents issues that can arise when the "
+"window is resized to a near-zero size."
+msgstr ""
+
+#: doc/classes/OS.xml:962
+msgid "The current screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:965
+msgid "The current tablet driver in use."
+msgstr ""
+
+#: doc/classes/OS.xml:968
+msgid "If [code]true[/code], vertical synchronization (Vsync) is enabled."
+msgstr ""
+
+#: doc/classes/OS.xml:971
+msgid ""
+"If [code]true[/code] and [code]vsync_enabled[/code] is true, the operating "
+"system's window compositor will be used for vsync when the compositor is "
+"enabled and the game is in windowed mode.\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.\n"
+"[b]Note:[/b] This property is only implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:976
+msgid ""
+"If [code]true[/code], removes the window frame.\n"
+"[b]Note:[/b] Setting [code]window_borderless[/code] to [code]false[/code] "
+"disables per-pixel transparency."
+msgstr ""
+
+#: doc/classes/OS.xml:980
+msgid "If [code]true[/code], the window is fullscreen."
+msgstr ""
+
+#: doc/classes/OS.xml:983
+msgid "If [code]true[/code], the window is maximized."
+msgstr ""
+
+#: doc/classes/OS.xml:986
+msgid "If [code]true[/code], the window is minimized."
+msgstr ""
+
+#: doc/classes/OS.xml:989
+msgid ""
+"If [code]true[/code], the window background is transparent and the window "
+"frame is removed.\n"
+"Use [code]get_tree().get_root().set_transparent_background(true)[/code] to "
+"disable main viewport background rendering.\n"
+"[b]Note:[/b] This property has no effect if [member ProjectSettings.display/"
+"window/per_pixel_transparency/allowed] setting is disabled.\n"
+"[b]Note:[/b] This property is implemented on HTML5, Linux, macOS, Windows, "
+"and Android. It can't be changed at runtime for Android. Use [member "
+"ProjectSettings.display/window/per_pixel_transparency/enabled] to set it at "
+"startup instead."
+msgstr ""
+
+#: doc/classes/OS.xml:995
+msgid ""
+"The window position relative to the screen, the origin is the top left "
+"corner, +Y axis goes to the bottom and +X axis goes to the right."
+msgstr ""
+
+#: doc/classes/OS.xml:998
+msgid "If [code]true[/code], the window is resizable by the user."
+msgstr ""
+
+#: doc/classes/OS.xml:1001
+msgid "The size of the window (without counting window manager decorations)."
+msgstr ""
+
+#: doc/classes/OS.xml:1006
+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:1009
+msgid ""
+"The GLES3 rendering backend. It uses OpenGL ES 3.0 on mobile devices, OpenGL "
+"3.3 on desktop platforms and WebGL 2.0 on the web."
+msgstr ""
+
+#: doc/classes/OS.xml:1012
+msgid "Sunday."
+msgstr ""
+
+#: doc/classes/OS.xml:1015
+msgid "Monday."
+msgstr ""
+
+#: doc/classes/OS.xml:1018
+msgid "Tuesday."
+msgstr ""
+
+#: doc/classes/OS.xml:1021
+msgid "Wednesday."
+msgstr ""
+
+#: doc/classes/OS.xml:1024
+msgid "Thursday."
+msgstr ""
+
+#: doc/classes/OS.xml:1027
+msgid "Friday."
+msgstr ""
+
+#: doc/classes/OS.xml:1030
+msgid "Saturday."
+msgstr ""
+
+#: doc/classes/OS.xml:1033
+msgid "January."
+msgstr ""
+
+#: doc/classes/OS.xml:1036
+msgid "February."
+msgstr ""
+
+#: doc/classes/OS.xml:1039
+msgid "March."
+msgstr ""
+
+#: doc/classes/OS.xml:1042
+msgid "April."
+msgstr ""
+
+#: doc/classes/OS.xml:1045
+msgid "May."
+msgstr ""
+
+#: doc/classes/OS.xml:1048
+msgid "June."
+msgstr ""
+
+#: doc/classes/OS.xml:1051
+msgid "July."
+msgstr ""
+
+#: doc/classes/OS.xml:1054
+msgid "August."
+msgstr ""
+
+#: doc/classes/OS.xml:1057
+msgid "September."
+msgstr ""
+
+#: doc/classes/OS.xml:1060
+msgid "October."
+msgstr ""
+
+#: doc/classes/OS.xml:1063
+msgid "November."
+msgstr ""
+
+#: doc/classes/OS.xml:1066
+msgid "December."
+msgstr ""
+
+#: doc/classes/OS.xml:1069
+msgid ""
+"Application handle:\n"
+"- Windows: [code]HINSTANCE[/code] of the application\n"
+"- MacOS: [code]NSApplication*[/code] of the application (not yet "
+"implemented)\n"
+"- Android: [code]JNIEnv*[/code] of the application (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1075
+msgid ""
+"Display handle:\n"
+"- Linux: [code]X11::Display*[/code] for the display"
+msgstr ""
+
+#: doc/classes/OS.xml:1079
+msgid ""
+"Window handle:\n"
+"- Windows: [code]HWND[/code] of the main window\n"
+"- Linux: [code]X11::Window*[/code] of the main window\n"
+"- MacOS: [code]NSWindow*[/code] of the main window (not yet implemented)\n"
+"- Android: [code]jObject[/code] the main android activity (not yet "
+"implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1086
+msgid ""
+"Window view:\n"
+"- Windows: [code]HDC[/code] of the main window drawing context\n"
+"- MacOS: [code]NSView*[/code] of the main windows view (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1091
+msgid ""
+"OpenGL Context:\n"
+"- Windows: [code]HGLRC[/code]\n"
+"- Linux: [code]X11::GLXContext[/code]\n"
+"- MacOS: [code]NSOpenGLContext*[/code] (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1097
+msgid "Landscape screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1100
+msgid "Portrait screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1103
+msgid "Reverse landscape screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1106
+msgid "Reverse portrait screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1109
+msgid "Uses landscape or reverse landscape based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1112
+msgid "Uses portrait or reverse portrait based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1115
+msgid "Uses most suitable orientation based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1118
+msgid "Desktop directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1121
+msgid "DCIM (Digital Camera Images) directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1124
+msgid "Documents directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1127
+msgid "Downloads directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1130
+msgid "Movies directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1133
+msgid "Music directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1136
+msgid "Pictures directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1139
+msgid "Ringtones directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1142
+msgid "Unknown powerstate."
+msgstr ""
+
+#: doc/classes/OS.xml:1145
+msgid "Unplugged, running on battery."
+msgstr ""
+
+#: doc/classes/OS.xml:1148
+msgid "Plugged in, no battery available."
+msgstr ""
+
+#: doc/classes/OS.xml:1151
+msgid "Plugged in, battery charging."
+msgstr ""
+
+#: doc/classes/OS.xml:1154
+msgid "Plugged in, battery fully charged."
+msgstr ""
+
+#: doc/classes/PackedDataContainerRef.xml:4
+msgid "Reference version of [PackedDataContainer]."
+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 nodes 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:53
+msgid ""
+"Returns the [code]SceneState[/code] representing the scene file contents."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:60
+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:67
+msgid ""
+"Pack will ignore any sub-nodes not owned by given node. See [member Node."
+"owner]."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:73
+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:79
+msgid "If passed to [method instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:82
+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:86
+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/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:15
+msgid "Returns the number of packets currently available in the ring-buffer."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:21
+msgid "Gets a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:27
+msgid ""
+"Returns the error state of the last packet received (via [method get_packet] "
+"and [method get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:34
+msgid ""
+"Gets a Variant. If [code]allow_objects[/code] (or [member "
+"allow_object_decoding]) 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:42
+msgid "Sends a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:50
+msgid ""
+"Sends a [Variant] as a packet. If [code]full_objects[/code] (or [member "
+"allow_object_decoding]) is [code]true[/code], encoding objects is allowed "
+"(and can potentially include code)."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:56
+msgid ""
+"[i]Deprecated.[/i] Use [code]get_var[/code] and [code]put_var[/code] "
+"parameters instead.\n"
+"If [code]true[/code], the PacketPeer will allow encoding and decoding of "
+"object via [method get_var] and [method put_var].\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:61
+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].\n"
+"[b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are "
+"currently not supported. Revoked certificates are accepted as long as they "
+"are otherwise valid. If this is a concern, you may want to use automatically "
+"managed certificates with a short validity period."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:20
+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:26
+msgid "Disconnects this peer, terminating the DTLS session."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:32 doc/classes/StreamPeerSSL.xml:43
+msgid "Returns the status of the connection. See [enum Status] for values."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:38
+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:44
+msgid "A status representing a [PacketPeerDTLS] that is disconnected."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:47
+msgid ""
+"A status representing a [PacketPeerDTLS] that is currently performing the "
+"handshake with a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:50
+msgid ""
+"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:53
+msgid "A status representing a [PacketPeerDTLS] in a generic error state."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:56
+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:15
+msgid "Closes the UDP socket the [PacketPeerUDP] is currently listening on."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:23
+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"
+"[b]Note:[/b] 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:30
+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:36
+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:42
+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:48
+msgid "Returns whether this [PacketPeerUDP] is listening."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:56
+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"
+"[b]Note:[/b] Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:66
+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:75
+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:85
+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"
+"[b]Note:[/b] 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:94
+msgid ""
+"Sets the destination address and port for sending packets and variables. A "
+"hostname will be resolved using DNS if needed.\n"
+"[b]Note:[/b] [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:101
+msgid ""
+"Waits for a packet to arrive on the listening port. See [method listen].\n"
+"[b]Note:[/b] [method wait] can't be interrupted once it has been called. "
+"This can be worked around by allowing the other party to send a specific "
+"\"death pill\" packet like this:\n"
+"[codeblock]\n"
+"# Server\n"
+"socket.set_dest_address(\"127.0.0.1\", 789)\n"
+"socket.put_packet(\"Time to stop\".to_ascii())\n"
+"\n"
+"# Client\n"
+"while socket.wait() == OK:\n"
+" var data = socket.get_packet().get_string_from_ascii()\n"
+" if data == \"Time to stop\":\n"
+" return\n"
+"[/codeblock]"
+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:11
+msgid "https://godotengine.org/asset-library/asset/516"
+msgstr ""
+
+#: doc/classes/Panel.xml:12 doc/classes/Skeleton.xml:12
+#: doc/classes/SkeletonIK.xml:29
+msgid "https://godotengine.org/asset-library/asset/523"
+msgstr ""
+
+#: doc/classes/Panel.xml:20
+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:18
+msgid "The style of [PanelContainer]'s background."
+msgstr ""
+
+#: doc/classes/PanoramaSky.xml:4
+msgid "A type of [Sky] used to draw a background texture."
+msgstr ""
+
+#: doc/classes/PanoramaSky.xml:7
+msgid ""
+"A resource referenced in an [Environment] that is used to draw a background. "
+"The Panorama sky 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/PanoramaSky.xml:17
+msgid "[Texture] to be applied to the PanoramaSky."
+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 [Texture] mirroring. Useful for creating an infinite "
+"scrolling background. If an axis is set to [code]0[/code], the [Texture] "
+"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/Particles.xml:4
+msgid "GPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/Particles.xml:7
+msgid ""
+"3D particle node used to create a variety of particle systems and effects. "
+"[Particles] 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.\n"
+"[b]Note:[/b] [Particles] only work when using the GLES3 renderer. If using "
+"the GLES2 renderer, use [CPUParticles] instead. You can convert [Particles] "
+"to [CPUParticles] by selecting the node, clicking the [b]Particles[/b] menu "
+"at the top of the 3D editor viewport then choosing [b]Convert to "
+"CPUParticles[/b].\n"
+"[b]Note:[/b] After working on a Particles node, remember to update its "
+"[member visibility_aabb] by selecting it, clicking the [b]Particles[/b] menu "
+"at the top of the 3D editor viewport then choose [b]Generate Visibility "
+"AABB[/b]. Otherwise, particles may suddenly disappear depending on the "
+"camera position and angle."
+msgstr ""
+
+#: doc/classes/Particles.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/Particles.xml:20
+msgid ""
+"Returns the axis-aligned bounding box that contains all the particles that "
+"are active in the current frame."
+msgstr ""
+
+#: doc/classes/Particles.xml:27
+msgid "Returns the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/Particles.xml:33
+msgid "Restarts the particle emission, clearing existing particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:41
+msgid "Sets the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/Particles.xml:54
+msgid "[Mesh] that is drawn for the first draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:57
+msgid "[Mesh] that is drawn for the second draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:60
+msgid "[Mesh] that is drawn for the third draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:63
+msgid "[Mesh] that is drawn for the fourth draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:66
+msgid "The number of draw passes when rendering particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:72
+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/Particles.xml:87
+msgid ""
+"If [code]true[/code], only [code]amount[/code] particles will be emitted."
+msgstr ""
+
+#: doc/classes/Particles.xml:90
+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/Particles.xml:93 doc/classes/Particles2D.xml:68
+msgid ""
+"[Material] for processing particles. Can be a [ParticlesMaterial] or a "
+"[ShaderMaterial]."
+msgstr ""
+
+#: doc/classes/Particles.xml:96
+msgid "Emission randomness ratio."
+msgstr ""
+
+#: doc/classes/Particles.xml:99
+msgid ""
+"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
+"particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:102
+msgid ""
+"The [AABB] that determines the node's region which needs to be visible on "
+"screen for the particle system to be active.\n"
+"Grow the box if particles suddenly appear/disappear when the node enters/"
+"exits the screen. The [AABB] can be grown via code or with the [b]Particles "
+"→ Generate AABB[/b] editor tool.\n"
+"[b]Note:[/b] If the [ParticlesMaterial] in use is configured to cast "
+"shadows, you may want to enlarge this AABB to ensure the shadow is updated "
+"when particles are off-screen."
+msgstr ""
+
+#: doc/classes/Particles.xml:118
+msgid "Maximum number of draw passes supported."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:4
+msgid "GPU-based 2D particle emitter."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:7
+msgid ""
+"2D particle node used to create a variety of particle systems and effects. "
+"[Particles2D] 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.\n"
+"[b]Note:[/b] [Particles2D] only work when using the GLES3 renderer. If using "
+"the GLES2 renderer, use [CPUParticles2D] instead. You can convert "
+"[Particles2D] to [CPUParticles2D] by selecting the node, clicking the "
+"[b]Particles[/b] menu at the top of the 2D editor viewport then choosing "
+"[b]Convert to CPUParticles2D[/b].\n"
+"[b]Note:[/b] After working on a Particles node, remember to update its "
+"[member visibility_rect] by selecting it, clicking the [b]Particles[/b] menu "
+"at the top of the 2D editor viewport then choose [b]Generate Visibility "
+"Rect[/b]. Otherwise, particles may suddenly disappear depending on the "
+"camera position and angle.\n"
+"[b]Note:[/b] Unlike [CPUParticles2D], [Particles2D] currently ignore the "
+"texture region defined in [AtlasTexture]s."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:21
+msgid "Returns a rectangle containing the positions of all existing particles."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:27
+msgid "Restarts all the existing particles."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:80
+msgid ""
+"The [Rect2] that determines the node's region which needs to be visible on "
+"screen for the particle system to be active.\n"
+"Grow the rect if particles suddenly appear/disappear when the node enters/"
+"exits the screen. The [Rect2] can be grown via code or with the [b]Particles "
+"→ Generate Visibility Rect[/b] editor tool."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:4
+msgid "Particle properties for [Particles] and [Particles2D] nodes."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:7
+msgid ""
+"ParticlesMaterial defines particle properties and behavior. It is used in "
+"the [code]process_material[/code] of [Particles] and [Particles2D] 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:18
+msgid "Returns [code]true[/code] if the specified flag is enabled."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:32
+msgid "Returns the randomness ratio associated with the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:39
+msgid "Returns the [Texture] used by the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:47
+msgid ""
+"If [code]true[/code], enables the specified flag. See [enum Flags] for "
+"options."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:55
+msgid "Sets the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:63
+msgid "Sets the randomness ratio for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:71
+msgid "Sets the [Texture] for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:77
+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 [SpatialMaterial] being used to draw the particle "
+"is using [constant SpatialMaterial.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:81
+msgid "Each particle's rotation will be animated along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:87
+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 [SpatialMaterial] being used to draw the particle "
+"is using [constant SpatialMaterial.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:91
+msgid "Each particle's angular velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:100
+msgid "Each particle's animation offset will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:109
+msgid "Each particle's animation speed will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:115
+msgid ""
+"Each particle's initial color. If the [Particles2D]'s [code]texture[/code] "
+"is defined, it will be multiplied by this color. To have particle display "
+"color in a [SpatialMaterial] make sure to set [member SpatialMaterial."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:124
+msgid "Damping will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:133
+msgid ""
+"The box's extents if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:136
+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:139
+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:142
+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:145
+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:148
+msgid ""
+"The axis of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:151
+msgid ""
+"The height of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:154
+msgid ""
+"The inner radius of the ring when using the emitter [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:157
+msgid ""
+"The radius of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:160
+msgid ""
+"Particles will be emitted inside this region. Use [enum EmissionShape] "
+"constants for values."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:163
+msgid ""
+"The sphere's radius if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:175
+msgid "Amount of [member spread] along the Y axis."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:184
+msgid "Each particle's hue will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:202
+msgid ""
+"Each particle's linear acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:208
+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:212
+msgid "Each particle's orbital velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:221
+msgid ""
+"Each particle's radial acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:230
+msgid "Each particle's scale will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:242
+msgid ""
+"Each particle's tangential acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:248
+msgid "Trail particles' color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:251
+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:254
+msgid "Trail particles' size will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:259
+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:262
+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:265
+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:268
+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:271
+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:274
+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:277
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set damping properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:280
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angle properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:283
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set scale properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:286
+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:289
+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:292
+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:298
+msgid "Use with [method set_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:301
+msgid "Use with [method set_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:304
+msgid "Use with [method set_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:319
+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:322
+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/Path.xml:4
+msgid "Contains a [Curve3D] path for [PathFollow] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path.xml:7
+msgid ""
+"Can have [PathFollow] child nodes moving along the [Curve3D]. See "
+"[PathFollow] for more information on the usage.\n"
+"Note that the path is considered as relative to the moved nodes (children of "
+"[PathFollow]). As such, the curve should usually start with a zero vector "
+"[code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Path.xml:16
+msgid "A [Curve3D] describing the path."
+msgstr ""
+
+#: doc/classes/Path.xml:22
+msgid "Emitted when the [member curve] changes."
+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/PathFollow.xml:4
+msgid "Point sampler for a [Path]."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:7
+msgid ""
+"This node takes its parent [Path], 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/PathFollow.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 [Path] 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/PathFollow.xml:21 doc/classes/PathFollow2D.xml:21
+msgid "The node's offset along the curve."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:24 doc/classes/PathFollow2D.xml:27
+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/PathFollow.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/PathFollow.xml:30
+msgid ""
+"Allows or forbids rotation on one or more axes, depending on the [enum "
+"RotationMode] constants being used."
+msgstr ""
+
+#: doc/classes/PathFollow.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/PathFollow.xml:36 doc/classes/PathFollow2D.xml:39
+msgid "The node's offset perpendicular to the curve."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:41
+msgid "Forbids the PathFollow to rotate."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:44
+msgid "Allows the PathFollow to rotate in the Y axis only."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:47
+msgid "Allows the PathFollow to rotate in both the X, and Y axes."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:50
+msgid "Allows the PathFollow to rotate in any axis."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:53
+msgid ""
+"Uses the up vector information in a [Curve3D] to enforce orientation. This "
+"rotation mode requires the [Path]'s [member Curve3D.up_vector_enabled] "
+"property to be set to [code]true[/code]."
+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: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: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/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:24
+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:31
+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:39
+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"
+"[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."
+msgstr ""
+
+#: doc/classes/Performance.xml:18
+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:27
+msgid "Number of frames per second."
+msgstr ""
+
+#: doc/classes/Performance.xml:30
+msgid "Time it took to complete one frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:33
+msgid "Time it took to complete one physics frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:36
+msgid ""
+"Static memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:39
+msgid ""
+"Dynamic memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:42
+msgid "Available static memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:45
+msgid "Available dynamic memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:48
+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:51
+msgid "Number of objects currently instanced (including nodes)."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Number of resources currently used."
+msgstr ""
+
+#: doc/classes/Performance.xml:57
+msgid ""
+"Number of nodes currently instanced in the scene tree. This also includes "
+"the root node."
+msgstr ""
+
+#: doc/classes/Performance.xml:60
+msgid ""
+"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
+msgid "3D objects drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:66
+msgid "Vertices drawn per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:69
+msgid "Material changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:72
+msgid "Shader changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:75
+msgid "Render surface changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:78
+msgid "Draw calls per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:81
+msgid "Items or joined items drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:84
+msgid "Draw calls per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:87 doc/classes/VisualServer.xml:3696
+msgid ""
+"The amount of video memory used, i.e. texture and vertex memory combined."
+msgstr ""
+
+#: doc/classes/Performance.xml:90 doc/classes/VisualServer.xml:3699
+msgid "The amount of texture memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:93 doc/classes/VisualServer.xml:3702
+msgid "The amount of vertex memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:96 doc/classes/VisualServer.xml:3693
+msgid ""
+"Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:99
+msgid "Number of active [RigidBody2D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:102
+msgid "Number of collision pairs in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:105
+msgid "Number of islands in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:108
+msgid "Number of active [RigidBody] and [VehicleBody] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:111
+msgid "Number of collision pairs in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:114
+msgid "Number of islands in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:117
+msgid "Output latency of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/Performance.xml:120
+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:16
+msgid ""
+"Generates and sets an optimized translation from the given [Translation] "
+"resource."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:4
+msgid "Direct access object to a physics body in the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:7
+msgid ""
+"Provides direct access to a physics body in the [Physics2DServer], 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/Physics2DDirectBodyState.xml:11
+#: doc/classes/Physics2DDirectSpaceState.xml:11
+#: doc/classes/PhysicsDirectBodyState.xml:11
+#: doc/classes/PhysicsDirectSpaceState.xml:11 doc/classes/RayCast.xml:14
+#: doc/classes/RayCast2D.xml:14 doc/classes/World.xml:10
+#: doc/classes/World2D.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html"
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:18 doc/classes/RigidBody2D.xml:30
+msgid "Adds a constant directional force without affecting rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:26
+#: doc/classes/PhysicsDirectBodyState.xml:27 doc/classes/RigidBody2D.xml:38
+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/Physics2DDirectBodyState.xml:33 doc/classes/RigidBody2D.xml:45
+msgid "Adds a constant rotational force."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:40 doc/classes/RigidBody2D.xml:52
+msgid "Applies a directional impulse without affecting rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:48
+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/Physics2DDirectBodyState.xml:55 doc/classes/RigidBody2D.xml:67
+msgid "Applies a rotational impulse to the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:62
+#: doc/classes/PhysicsDirectBodyState.xml:64
+msgid "Returns the collider's [RID]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:69
+#: doc/classes/PhysicsDirectBodyState.xml:71
+msgid "Returns the collider's object id."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:76
+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/Physics2DDirectBodyState.xml:83
+#: doc/classes/PhysicsDirectBodyState.xml:85
+msgid "Returns the contact position in the collider."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:90
+#: doc/classes/PhysicsDirectBodyState.xml:92
+msgid "Returns the collider's shape index."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:97
+msgid ""
+"Returns the collided shape's metadata. This metadata is different from "
+"[method Object.get_meta], and is set with [method Physics2DServer."
+"shape_set_data]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:104
+#: doc/classes/PhysicsDirectBodyState.xml:99
+msgid "Returns the linear velocity vector at the collider's contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:110
+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/Physics2DDirectBodyState.xml:118
+#: doc/classes/PhysicsDirectBodyState.xml:120
+msgid "Returns the local normal at the contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:125
+#: doc/classes/PhysicsDirectBodyState.xml:127
+msgid "Returns the local position of the contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:132
+#: doc/classes/PhysicsDirectBodyState.xml:134
+msgid "Returns the local shape index of the collision."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:138
+#: doc/classes/PhysicsDirectBodyState.xml:140
+msgid "Returns the current state of the space, useful for queries."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:145
+#: doc/classes/PhysicsDirectBodyState.xml:147
+msgid ""
+"Returns the body's velocity at the given relative position, including both "
+"translation and rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:151
+#: doc/classes/PhysicsDirectBodyState.xml:153
+msgid "Calls the built-in force integration code."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:157
+#: doc/classes/PhysicsDirectBodyState.xml:159 doc/classes/RigidBody2D.xml:101
+msgid "The body's rotational velocity."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:160
+#: doc/classes/PhysicsDirectBodyState.xml:164
+msgid "The inverse of the inertia of the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:163
+#: doc/classes/PhysicsDirectBodyState.xml:167
+msgid "The inverse of the mass of the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:166
+#: doc/classes/PhysicsDirectBodyState.xml:170 doc/classes/RigidBody2D.xml:146
+msgid "The body's linear velocity."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:169
+#: doc/classes/PhysicsDirectBodyState.xml:175
+msgid "If [code]true[/code], this body is currently sleeping (not active)."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:172
+#: doc/classes/PhysicsDirectBodyState.xml:178
+msgid "The timestep (delta) used for the simulation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:175
+#: doc/classes/PhysicsDirectBodyState.xml:181
+msgid ""
+"The rate at which the body stops rotating, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:178
+#: doc/classes/PhysicsDirectBodyState.xml:184
+msgid "The total gravity vector being currently applied to this body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:181
+#: doc/classes/PhysicsDirectBodyState.xml:187
+msgid ""
+"The rate at which the body stops moving, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:184
+#: doc/classes/PhysicsDirectBodyState.xml:190
+msgid "The body's transformation matrix."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:4
+msgid "Direct access object to a space in the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:7
+msgid ""
+"Direct access object to a space in the [Physics2DServer]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:18
+msgid ""
+"Checks how far a [Shape2D] can move without colliding. All the parameters "
+"for the query, including the shape and the motion, are supplied through a "
+"[Physics2DShapeQueryParameters] object.\n"
+"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
+"the motion. The safe proportion is the maximum fraction of the motion that "
+"can be made without a collision. The unsafe proportion is the minimum "
+"fraction of the distance that must be moved for a collision. If no collision "
+"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
+"[b]Note:[/b] Any [Shape2D]s that the shape is already colliding with e.g. "
+"inside of, will be ignored. Use [method collide_shape] to determine the "
+"[Shape2D]s that the shape is already colliding with."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:28
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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/Physics2DDirectSpaceState.xml:35
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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 "
+"Physics2DServer.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/Physics2DDirectSpaceState.xml:55
+msgid ""
+"Checks whether a point is inside any solid 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 "
+"Physics2DServer.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 [PhysicsBody]s or [Area]s, "
+"respectively.\n"
+"[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in "
+"[code]Segments[/code] build mode are not solid shapes. Therefore, they will "
+"not be detected."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:86
+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 "
+"Physics2DServer.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 [PhysicsBody]s or [Area]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:103
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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 "
+"Physics2DServer.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/Physics2DServer.xml:4
+msgid "Server interface for low-level 2D physics access."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:7
+msgid ""
+"Physics2DServer 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/Physics2DServer.xml:19 doc/classes/PhysicsServer.xml:19
+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/Physics2DServer.xml:34 doc/classes/Physics2DServer.xml:304
+#: doc/classes/PhysicsServer.xml:27 doc/classes/PhysicsServer.xml:298
+msgid ""
+"Assigns the area to a descendant of [Object], so it can exist in the node "
+"tree."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:41 doc/classes/PhysicsServer.xml:34
+msgid ""
+"Removes all shapes from an area. It does not delete the shapes, so they can "
+"be reassigned later."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:47
+msgid ""
+"Creates an [Area2D]. After creating an [Area2D] with this method, assign it "
+"to a space using [method area_set_space] to use the created [Area2D] in the "
+"physics world."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:60 doc/classes/Physics2DServer.xml:372
+#: doc/classes/PhysicsServer.xml:47 doc/classes/PhysicsServer.xml:362
+msgid "Gets the instance ID of the object the area is assigned to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:68
+msgid ""
+"Returns an area parameter value. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:76 doc/classes/PhysicsServer.xml:63
+msgid "Returns the [RID] of the nth shape of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:83 doc/classes/PhysicsServer.xml:70
+msgid "Returns the number of shapes assigned to an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:91 doc/classes/PhysicsServer.xml:78
+msgid "Returns the transform matrix of a shape within an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:98 doc/classes/PhysicsServer.xml:85
+msgid "Returns the space assigned to the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:105 doc/classes/PhysicsServer.xml:92
+msgid "Returns the space override mode for the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:112 doc/classes/PhysicsServer.xml:99
+msgid "Returns the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:120 doc/classes/PhysicsServer.xml:114
+msgid ""
+"Removes a shape from an area. It does not delete the shape, so it can be "
+"reassigned later."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:136 doc/classes/PhysicsServer.xml:130
+msgid "Assigns the area to one or many physics layers."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:144 doc/classes/PhysicsServer.xml:138
+msgid "Sets which physics layers the area will monitor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:153 doc/classes/PhysicsServer.xml:147
+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/Physics2DServer.xml:174
+msgid ""
+"Sets the value for an area parameter. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:183 doc/classes/PhysicsServer.xml:185
+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/Physics2DServer.xml:192
+msgid "Disables a given shape in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:201 doc/classes/PhysicsServer.xml:202
+msgid "Sets the transform matrix for an area shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:209 doc/classes/PhysicsServer.xml:210
+msgid "Assigns a space to the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:217
+msgid ""
+"Sets the space override mode for the area. See [enum AreaSpaceOverrideMode] "
+"for a list of available modes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:225 doc/classes/PhysicsServer.xml:226
+msgid "Sets the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:240 doc/classes/PhysicsServer.xml:241
+msgid "Adds a body to the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:249
+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/Physics2DServer.xml:259 doc/classes/PhysicsServer.xml:259
+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/Physics2DServer.xml:282
+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/Physics2DServer.xml:311 doc/classes/PhysicsServer.xml:305
+msgid "Removes all shapes from a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:317
+msgid "Creates a physics body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:330 doc/classes/PhysicsServer.xml:320
+msgid "Returns the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:337
+msgid "Returns the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:344
+msgid "Returns the continuous collision detection mode."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:351
+msgid "Returns the [Physics2DDirectBodyState] of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:358 doc/classes/PhysicsServer.xml:348
+msgid ""
+"Returns the maximum contacts that can be reported. See [method "
+"body_set_max_contacts_reported]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:365 doc/classes/PhysicsServer.xml:355
+msgid "Returns the body mode."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:380
+msgid ""
+"Returns the value of a body parameter. See [enum BodyParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:388 doc/classes/PhysicsServer.xml:378
+msgid "Returns the [RID] of the nth shape of a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:395 doc/classes/PhysicsServer.xml:385
+msgid "Returns the number of shapes assigned to a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:403
+msgid "Returns the metadata of a shape of a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:411 doc/classes/PhysicsServer.xml:393
+msgid "Returns the transform matrix of a body shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:418 doc/classes/PhysicsServer.xml:400
+msgid "Returns the [RID] of the space assigned to a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:426 doc/classes/PhysicsServer.xml:408
+msgid "Returns a body state."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:433 doc/classes/PhysicsServer.xml:429
+msgid ""
+"Returns whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:441
+msgid "Removes a body from the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:449 doc/classes/PhysicsServer.xml:453
+msgid ""
+"Removes a shape from a body. The shape is not deleted, so it can be reused "
+"afterwards."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:457 doc/classes/PhysicsServer.xml:469
+#: doc/classes/RigidBody.xml:105
+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/Physics2DServer.xml:465 doc/classes/PhysicsServer.xml:477
+msgid "Sets the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:473 doc/classes/PhysicsServer.xml:485
+msgid "Sets the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:481
+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/Physics2DServer.xml:492 doc/classes/PhysicsServer.xml:504
+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/Physics2DServer.xml:500 doc/classes/PhysicsServer.xml:519
+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/Physics2DServer.xml:508
+msgid "Sets the body mode using one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:516 doc/classes/PhysicsServer.xml:535
+msgid ""
+"Sets whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:525
+msgid ""
+"Sets a body parameter. See [enum BodyParameter] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:534 doc/classes/PhysicsServer.xml:561
+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/Physics2DServer.xml:544
+msgid ""
+"Enables one way collision on body if [code]enable[/code] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:553
+msgid "Disables shape in body if [code]disable[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:562
+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/Physics2DServer.xml:571 doc/classes/PhysicsServer.xml:578
+msgid "Sets the transform matrix for a body shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:579 doc/classes/PhysicsServer.xml:586
+msgid "Assigns a space to the body (see [method space_create])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:588
+msgid ""
+"Sets a body state using one of the [enum BodyState] constants.\n"
+"Note that the method doesn't take effect immediately. The state will change "
+"on the next physics frame."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:603
+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. [Physics2DTestMotionResult] "
+"can be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:633
+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/Physics2DServer.xml:641
+msgid "Returns the value of a damped spring joint parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:650
+msgid ""
+"Sets a damped spring joint parameter. See [enum DampedStringParam] for a "
+"list of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:657
+msgid ""
+"Destroys any of the objects created by Physics2DServer. If the [RID] passed "
+"is not one of the objects that can be created by Physics2DServer, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:664
+msgid ""
+"Returns information about the current state of the 2D physics engine. See "
+"[enum ProcessInfo] for a list of available states."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:675
+msgid ""
+"Creates a groove joint between two bodies. If not specified, the bodies are "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:683
+msgid "Returns the value of a joint parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:690
+msgid "Returns a joint's type (see [enum JointType])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:699
+msgid ""
+"Sets a joint parameter. See [enum JointParam] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:713
+msgid ""
+"Creates a pin joint between two bodies. If not specified, the second body is "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:735
+msgid "Activates or deactivates the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:742
+msgid ""
+"Sets the amount of iterations for calculating velocities of colliding "
+"bodies. The greater the amount of iterations, the more accurate the "
+"collisions will be. However, a greater amount of iterations requires more "
+"CPU power, which can decrease performance. The default value is [code]8[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:749 doc/classes/PhysicsServer.xml:859
+msgid "Returns the shape data."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:756
+msgid "Returns a shape's type (see [enum ShapeType])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:764 doc/classes/PhysicsServer.xml:874
+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/Physics2DServer.xml:770 doc/classes/PhysicsServer.xml:897
+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/Physics2DServer.xml:777
+msgid ""
+"Returns the state of a space, a [Physics2DDirectSpaceState]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:785 doc/classes/PhysicsServer.xml:912
+msgid "Returns the value of a space parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:792 doc/classes/PhysicsServer.xml:919
+msgid "Returns whether the space is active."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:800 doc/classes/PhysicsServer.xml:927
+msgid ""
+"Marks a space as active. It will not have an effect, unless it is assigned "
+"to an area or body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:809
+msgid ""
+"Sets the value for a space parameter. See [enum SpaceParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:815 doc/classes/PhysicsServer.xml:1278
+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/Physics2DServer.xml:818 doc/classes/PhysicsServer.xml:1281
+msgid ""
+"Constant to set/get the maximum distance a shape can be from another before "
+"they are considered separated."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:821 doc/classes/PhysicsServer.xml:1284
+msgid ""
+"Constant to set/get the maximum distance a shape can penetrate another shape "
+"before it is considered a collision."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:824 doc/classes/PhysicsServer.xml:1287
+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/Physics2DServer.xml:827 doc/classes/PhysicsServer.xml:1290
+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/Physics2DServer.xml:830 doc/classes/PhysicsServer.xml:1293
+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/Physics2DServer.xml:833 doc/classes/PhysicsServer.xml:1298
+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/Physics2DServer.xml:836
+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/Physics2DServer.xml:841
+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/Physics2DServer.xml:844
+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/Physics2DServer.xml:847
+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/Physics2DServer.xml:850
+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/Physics2DServer.xml:853
+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/Physics2DServer.xml:856
+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/Physics2DServer.xml:859 doc/classes/PhysicsServer.xml:1173
+msgid ""
+"This constant is used internally by the engine. Any attempt to create this "
+"kind of shape results in an error."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:862 doc/classes/PhysicsServer.xml:1176
+msgid "Constant to set/get gravity strength in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:865 doc/classes/PhysicsServer.xml:1179
+msgid "Constant to set/get gravity vector/center in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:868 doc/classes/PhysicsServer.xml:1182
+msgid ""
+"Constant to set/get whether the gravity vector of an area is a direction, or "
+"a center point."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:871 doc/classes/PhysicsServer.xml:1185
+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/Physics2DServer.xml:874 doc/classes/PhysicsServer.xml:1188
+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/Physics2DServer.xml:877 doc/classes/PhysicsServer.xml:1191
+msgid "Constant to set/get the linear dampening factor of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:880 doc/classes/PhysicsServer.xml:1194
+msgid "Constant to set/get the angular dampening factor of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:883 doc/classes/PhysicsServer.xml:1197
+msgid "Constant to set/get the priority (order of processing) of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:886 doc/classes/PhysicsServer.xml:1200
+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/Physics2DServer.xml:889 doc/classes/PhysicsServer.xml:1203
+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/Physics2DServer.xml:892 doc/classes/PhysicsServer.xml:1206
+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/Physics2DServer.xml:895 doc/classes/PhysicsServer.xml:1209
+msgid ""
+"This area replaces any gravity/damp, even the default one, and stops taking "
+"into account the rest of the areas."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:898 doc/classes/PhysicsServer.xml:1212
+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/Physics2DServer.xml:901 doc/classes/PhysicsServer.xml:1215
+msgid "Constant for static bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:904 doc/classes/PhysicsServer.xml:1218
+msgid "Constant for kinematic bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:907 doc/classes/PhysicsServer.xml:1221
+msgid "Constant for rigid bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:910 doc/classes/PhysicsServer.xml:1224
+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/Physics2DServer.xml:913 doc/classes/PhysicsServer.xml:1227
+msgid "Constant to set/get a body's bounce factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:916 doc/classes/PhysicsServer.xml:1230
+msgid "Constant to set/get a body's friction."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:919 doc/classes/PhysicsServer.xml:1233
+msgid "Constant to set/get a body's mass."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:922
+msgid "Constant to set/get a body's inertia."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:925 doc/classes/PhysicsServer.xml:1236
+msgid "Constant to set/get a body's gravity multiplier."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:928 doc/classes/PhysicsServer.xml:1239
+msgid "Constant to set/get a body's linear dampening factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:931 doc/classes/PhysicsServer.xml:1242
+msgid "Constant to set/get a body's angular dampening factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:934 doc/classes/PhysicsServer.xml:1245
+msgid "Represents the size of the [enum BodyParameter] enum."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:937 doc/classes/PhysicsServer.xml:1248
+msgid "Constant to set/get the current transform matrix of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:940 doc/classes/PhysicsServer.xml:1251
+msgid "Constant to set/get the current linear velocity of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:943 doc/classes/PhysicsServer.xml:1254
+msgid "Constant to set/get the current angular velocity of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:946 doc/classes/PhysicsServer.xml:1257
+msgid "Constant to sleep/wake up a body, or to get whether it is sleeping."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:949 doc/classes/PhysicsServer.xml:1260
+msgid "Constant to set/get whether the body can sleep."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:952
+msgid "Constant to create pin joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:955
+msgid "Constant to create groove joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:958
+msgid "Constant to create damped spring joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:967
+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/Physics2DServer.xml:970
+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/Physics2DServer.xml:973
+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/Physics2DServer.xml:976
+msgid ""
+"Disables continuous collision detection. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:979
+msgid ""
+"Enables continuous collision detection by raycasting. It is faster than "
+"shapecasting, but less precise."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:982
+msgid ""
+"Enables continuous collision detection by shapecasting. It is the slowest "
+"CCD method, and the most precise."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:985 doc/classes/PhysicsServer.xml:1263
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object enters one of its shapes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:988 doc/classes/PhysicsServer.xml:1266
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object exits one of its shapes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:991 doc/classes/PhysicsServer.xml:1269
+msgid "Constant to get the number of objects that are not sleeping."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:994 doc/classes/PhysicsServer.xml:1272
+msgid "Constant to get the number of possible collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:997 doc/classes/PhysicsServer.xml:1275
+msgid ""
+"Constant to get the number of space regions where a collision could occur."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:4
+msgid "Parameters to be sent to a 2D shape physics query."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:7
+msgid ""
+"This class contains the shape and other parameters for 2D intersection/"
+"collision queries."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:16
+msgid ""
+"Sets the [Shape2D] that will be used for collision/intersection queries."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:22
+msgid "If [code]true[/code], the query will take [Area2D]s into account."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:25
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:28
+#: doc/classes/PhysicsShapeQueryParameters.xml:28
+msgid ""
+"The physics layer(s) the query will take into account (as a bitmask). See "
+"[url=https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:31
+#: doc/classes/PhysicsShapeQueryParameters.xml:31
+msgid ""
+"The list of objects or object [RID]s that will be excluded from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:34
+#: doc/classes/PhysicsShapeQueryParameters.xml:34
+msgid "The collision margin for the shape."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:37
+msgid "The motion of the shape being queried for."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:40
+#: doc/classes/PhysicsShapeQueryParameters.xml:37
+msgid "The queried shape's [RID]. See also [method set_shape]."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:43
+#: doc/classes/PhysicsShapeQueryParameters.xml:40
+msgid "The queried shape's transform matrix."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:4
+msgid "Base class for all objects affected by physics in 3D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:7
+msgid ""
+"PhysicsBody is an abstract base class for implementing a physics body. All "
+"*Body types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:17 doc/classes/PhysicsBody2D.xml:17
+#: doc/classes/SoftBody.xml:17
+msgid "Adds a body to the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:23 doc/classes/PhysicsBody2D.xml:23
+#: doc/classes/SoftBody.xml:23
+msgid ""
+"Returns an array of nodes that were added as collision exceptions for this "
+"body."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:30 doc/classes/PhysicsBody2D.xml:30
+#: doc/classes/SoftBody.xml:58
+msgid ""
+"Removes a body from the list of bodies that this body can't collide with."
+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:37
+msgid ""
+"Both collision_layer and collision_mask. Returns collision_layer when "
+"accessed. Updates collision_layer and collision_mask when modified."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer], 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 RigidBody._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.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/PhysicsDirectBodyState.xml:34
+msgid "Adds a constant rotational force without affecting position."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:41
+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/PhysicsDirectBodyState.xml:50
+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/PhysicsDirectBodyState.xml:57
+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/PhysicsDirectBodyState.xml:78
+msgid "Returns the collider object."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:105
+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 RigidBody.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:113
+msgid "Impulse created by the contact. Only implemented for Bullet physics."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:4
+msgid "Direct access object to a space in the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer]. It's used mainly to "
+"do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:19
+msgid ""
+"Checks how far a [Shape] can move without colliding. All the parameters for "
+"the query, including the shape, are supplied through a "
+"[PhysicsShapeQueryParameters] object.\n"
+"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
+"the motion. The safe proportion is the maximum fraction of the motion that "
+"can be made without a collision. The unsafe proportion is the minimum "
+"fraction of the distance that must be moved for a collision. If no collision "
+"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
+"[b]Note:[/b] Any [Shape]s that the shape is already colliding with e.g. "
+"inside of, will be ignored. Use [method collide_shape] to determine the "
+"[Shape]s that the shape is already colliding with."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:29
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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/PhysicsDirectSpaceState.xml:36
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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 [Area], 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/PhysicsDirectSpaceState.xml:55
+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 [PhysicsBody]s or [Area]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:71
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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 [PhysicsBody]."
+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:18
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness)."
+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/PhysicsServer.xml:4
+msgid "Server interface for low-level physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:7
+msgid ""
+"PhysicsServer 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/PhysicsServer.xml:40
+msgid "Creates an [Area]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:55
+msgid ""
+"Returns an area parameter value. A list of available parameters is on the "
+"[enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:106
+msgid "If [code]true[/code], area collides with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:168
+msgid ""
+"Sets the value for an area parameter. A list of available parameters is on "
+"the [enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:176
+msgid "Sets object pickable with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:218
+msgid ""
+"Sets the space override mode for the area. The modes are described in the "
+"[enum AreaSpaceOverrideMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:282
+msgid ""
+"Gives the body a push at a [code]position[/code] in the direction of the "
+"[code]impulse[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:290
+msgid "Gives the body a push to rotate it."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:313
+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/PhysicsServer.xml:327
+msgid ""
+"Returns the physics layer or layers a body can collide with.\n"
+"-"
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:335
+msgid "Returns the [PhysicsDirectBodyState] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:370
+msgid ""
+"Returns the value of a body parameter. A list of available parameters is on "
+"the [enum BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:422
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:436
+msgid "If [code]true[/code], the body can be detected by rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:444
+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/PhysicsServer.xml:493
+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/PhysicsServer.xml:527
+msgid "Sets the body mode, from one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:544
+msgid ""
+"Sets a body parameter. A list of available parameters is on the [enum "
+"BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:552
+msgid "Sets the body pickable with rays if [code]enabled[/code] is set."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:595
+msgid "Sets a body state (see [enum BodyState] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:608
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given direction from a given point in space. [PhysicsTestMotionResult] can "
+"be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:616
+msgid ""
+"Gets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:625
+msgid ""
+"Sets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:632
+msgid ""
+"Destroys any of the objects created by PhysicsServer. If the [RID] passed is "
+"not one of the objects that can be created by PhysicsServer, an error will "
+"be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:641
+msgid ""
+"Gets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:650
+msgid ""
+"Gets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:660
+msgid ""
+"Sets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:670
+msgid ""
+"Sets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:677
+msgid "Returns an Info defined by the [enum ProcessInfo] input given."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:685
+msgid "Gets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:693
+msgid "Gets a hinge_joint parameter (see [enum HingeJointParam])."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:702
+msgid "Sets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:711
+msgid "Sets a hinge_joint parameter (see [enum HingeJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:721
+msgid "Creates a [ConeTwistJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:731
+msgid "Creates a [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:741
+msgid "Creates a [HingeJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:751
+msgid "Creates a [PinJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:761
+msgid "Creates a [SliderJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:768
+msgid "Gets the priority value of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:775
+msgid "Returns the type of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:783
+msgid "Sets the priority value of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:790
+msgid ""
+"Returns position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:797
+msgid ""
+"Returns position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:805
+msgid "Gets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:813
+msgid "Sets position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:821
+msgid "Sets position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:830
+msgid "Sets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:837
+msgid "Activates or deactivates the 3D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:844
+msgid ""
+"Sets the amount of iterations for calculating velocities of colliding "
+"bodies. The greater the amount of iterations, the more accurate the "
+"collisions will be. However, a greater amount of iterations requires more "
+"CPU power, which can decrease performance. The default value is [code]8[/"
+"code].\n"
+"[b]Note:[/b] Only has an effect when using the GodotPhysics engine, not the "
+"default Bullet physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:852
+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/PhysicsServer.xml:866
+msgid "Returns the type of shape (see [enum ShapeType] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:882 doc/classes/PhysicsServer.xml:891
+msgid "Gets a slider_joint parameter (see [enum SliderJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:904
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:936
+msgid ""
+"Sets the value for a space parameter. A list of available parameters is on "
+"the [enum SpaceParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:942
+msgid "The [Joint] is a [PinJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:945
+msgid "The [Joint] is a [HingeJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:948
+msgid "The [Joint] is a [SliderJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:951
+msgid "The [Joint] is a [ConeTwistJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:954
+msgid "The [Joint] is a [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:957
+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/PhysicsServer.xml:961
+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/PhysicsServer.xml:965
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint "
+"puts on its ends."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:971
+msgid "The maximum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:974
+msgid "The minimum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:991
+msgid "If [code]true[/code], the Hinge has a maximum and a minimum rotation."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:994
+msgid "If [code]true[/code], a motor turns the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:997 doc/classes/SliderJoint.xml:76
+#: doc/classes/SliderJoint.xml:99
+msgid ""
+"The maximum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1000 doc/classes/SliderJoint.xml:67
+#: doc/classes/SliderJoint.xml:102
+msgid ""
+"The minimum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1003 doc/classes/SliderJoint.xml:73
+#: doc/classes/SliderJoint.xml:105
+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/PhysicsServer.xml:1006 doc/classes/SliderJoint.xml:108
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocityenergy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1009 doc/classes/SliderJoint.xml:111
+msgid "The amount of damping once the slider limits are surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1012 doc/classes/SliderJoint.xml:85
+#: doc/classes/SliderJoint.xml:114
+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/PhysicsServer.xml:1015 doc/classes/SliderJoint.xml:82
+#: doc/classes/SliderJoint.xml:117
+msgid "The amount of restitution inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1018 doc/classes/SliderJoint.xml:79
+#: doc/classes/SliderJoint.xml:120
+msgid "The amount of damping inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1021 doc/classes/SliderJoint.xml:94
+#: doc/classes/SliderJoint.xml:123
+msgid "A factor applied to the movement across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1024 doc/classes/SliderJoint.xml:91
+#: doc/classes/SliderJoint.xml:126
+msgid ""
+"The amount of restitution when movement is across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1027 doc/classes/SliderJoint.xml:88
+#: doc/classes/SliderJoint.xml:129
+msgid ""
+"The amount of damping when movement is across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1030 doc/classes/SliderJoint.xml:43
+#: doc/classes/SliderJoint.xml:132
+msgid "The upper limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1033 doc/classes/SliderJoint.xml:32
+#: doc/classes/SliderJoint.xml:135
+msgid "The lower limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1036 doc/classes/SliderJoint.xml:138
+msgid "A factor applied to the all rotation once the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1039 doc/classes/SliderJoint.xml:141
+msgid "The amount of restitution of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1042 doc/classes/SliderJoint.xml:144
+msgid "The amount of damping of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1045
+msgid "A factor that gets applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1048 doc/classes/SliderJoint.xml:49
+#: doc/classes/SliderJoint.xml:150
+msgid "The amount of restitution of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1051 doc/classes/SliderJoint.xml:46
+#: doc/classes/SliderJoint.xml:153
+msgid "The amount of damping of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1054
+msgid ""
+"A factor that gets applied to the all rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1057 doc/classes/SliderJoint.xml:58
+#: doc/classes/SliderJoint.xml:159
+msgid ""
+"The amount of restitution of the rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1060 doc/classes/SliderJoint.xml:55
+#: doc/classes/SliderJoint.xml:162
+msgid ""
+"The amount of damping of the rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1063
+msgid "Represents the size of the [enum SliderJointParam] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1080
+msgid ""
+"The ease with which the Joint twists, if it's too low, it takes more force "
+"to twist the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1092
+msgid ""
+"A factor that gets applied to the movement across the axes. The lower, the "
+"slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1095
+msgid ""
+"The amount of restitution on the axes movement. The lower, the more velocity-"
+"energy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1101
+msgid "The velocity that the joint's linear motor will attempt to reach."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1104
+msgid ""
+"The maximum force that the linear motor can apply while trying to reach the "
+"target velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1113
+msgid "A factor that gets multiplied onto all rotations across the axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1125
+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/PhysicsServer.xml:1134
+msgid ""
+"If [code]set[/code] there is linear motion possible within the given limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1137
+msgid "If [code]set[/code] there is rotational motion possible."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1140
+msgid "If [code]set[/code] there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1143
+msgid ""
+"If [code]set[/code] there is a linear motor on this axis that targets a "
+"specific velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1146
+msgid "The [Shape] is a [PlaneShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1149
+msgid "The [Shape] is a [RayShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1152
+msgid "The [Shape] is a [SphereShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1155
+msgid "The [Shape] is a [BoxShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1158
+msgid "The [Shape] is a [CapsuleShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1161
+msgid "The [Shape] is a [CylinderShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1164
+msgid "The [Shape] is a [ConvexPolygonShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1167
+msgid "The [Shape] is a [ConcavePolygonShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1170
+msgid "The [Shape] is a [HeightMapShape]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:4
+msgid "Parameters to be sent to a 3D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:7
+msgid ""
+"This class contains the shape and other parameters for 3D intersection/"
+"collision queries."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:16
+msgid "Sets the [Shape] that will be used for collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:22
+msgid "If [code]true[/code], the query will take [Area]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:25
+msgid "If [code]true[/code], the query will take [PhysicsBody]s into account."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:4
+msgid "Pin joint for 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:7
+msgid ""
+"Pin joint for 3D rigid bodies. It pins 2 bodies (rigid or static) together. "
+"See also [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:30 doc/classes/PinJoint.xml:41
+msgid ""
+"The force with which the pinned objects stay in positional relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:33 doc/classes/PinJoint.xml:44
+msgid ""
+"The force with which the pinned objects stay in velocity relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:36 doc/classes/PinJoint.xml:47
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint "
+"produces."
+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/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:20
+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:29
+msgid "Creates a plane from the three points, given in clockwise order."
+msgstr ""
+
+#: doc/classes/Plane.xml:37
+msgid "Creates a plane from the normal and the plane's distance to the origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:43
+msgid "Returns the center of the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:50
+msgid ""
+"Returns the shortest distance from the plane to the position [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Plane.xml:56
+msgid ""
+"Returns the center of the plane.\n"
+"This method is deprecated, please use [method center] instead."
+msgstr ""
+
+#: doc/classes/Plane.xml:65
+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:73
+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:81
+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:89
+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:96
+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:103
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is located above the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:109
+msgid "Returns a copy of the plane, normalized."
+msgstr ""
+
+#: doc/classes/Plane.xml:116
+msgid ""
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:122
+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:126
+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:130
+msgid "The X component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:133
+msgid "The Y component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:136
+msgid "The Z component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:141
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
+msgstr ""
+
+#: doc/classes/Plane.xml:144
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
+msgstr ""
+
+#: doc/classes/Plane.xml:147
+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.\n"
+"[b]Note:[/b] When using a large textured [PlaneMesh] (e.g. as a floor), you "
+"may stumble upon UV jittering issues depending on the camera angle. To solve "
+"this, increase [member subdivide_depth] and [member subdivide_width] until "
+"you no longer notice UV jittering."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:16
+msgid "Offset from the origin of the generated plane. Useful for particles."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:19
+msgid "Size of the generated plane."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:22
+msgid "Number of subdivision along the Z axis."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:25
+msgid "Number of subdivision along the X axis."
+msgstr ""
+
+#: doc/classes/PlaneShape.xml:4
+msgid "Infinite plane shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/PlaneShape.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 "
+"[PlaneShape] is used in a [PhysicsBody], it will cause colliding objects "
+"placed \"below\" it to teleport \"above\" the plane."
+msgstr ""
+
+#: doc/classes/PlaneShape.xml:15
+msgid "The [Plane] used by the [PlaneShape] for collision."
+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 "
+"[SpatialMaterial] by setting [member SpatialMaterial.flags_use_point_size] "
+"and the variable [member SpatialMaterial.params_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.\n"
+"[b]Note:[/b] By default, Godot can only draw up to 4,096 polygon points at a "
+"time. To increase this limit, open the Project Settings and increase [member "
+"ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb] and "
+"[member ProjectSettings.rendering/limits/buffers/"
+"canvas_polygon_index_buffer_size_kb]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:18
+msgid ""
+"Adds a bone with the specified [code]path[/code] and [code]weights[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:24
+msgid "Removes all bones from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:31
+msgid "Removes the specified bone from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:37
+msgid "Returns the number of bones in this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:44
+msgid "Returns the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:51
+msgid "Returns the height values of the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:59
+msgid "Sets the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:67
+msgid "Sets the weight values for the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:73
+msgid "If [code]true[/code], polygon edges will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:78
+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:83
+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:86
+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:89
+msgid "The offset applied to each vertex."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:92
+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 [PoolVector2Array] rather than a "
+"reference."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:100
+msgid ""
+"The polygon's fill texture. Use [code]uv[/code] to set texture coordinates."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:103
+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:106
+msgid "The texture's rotation in radians."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:109
+msgid "The texture's rotation in degrees."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:112
+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:115
+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:118
+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/PoolByteArray.xml:4
+msgid "A pooled [Array] of bytes."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold bytes. Optimized for memory usage, "
+"does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:17
+msgid ""
+"Constructs a new [PoolByteArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:29
+msgid "Appends a [PoolByteArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:36
+msgid ""
+"Returns a new [PoolByteArray] with the data compressed. Set the compression "
+"mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:44
+msgid ""
+"Returns a new [PoolByteArray] 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/PoolByteArray.xml:52
+msgid ""
+"Returns a new [PoolByteArray] with the data decompressed. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants. "
+"[b]This method only accepts gzip and deflate compression modes.[/b]\n"
+"This method is potentially slower than [code]decompress[/code], as it may "
+"have to re-allocate it's output buffer multiple times while decompressing, "
+"where as [code]decompress[/code] knows it's output buffer size from the "
+"begining.\n"
+"\n"
+"GZIP has a maximal compression ratio of 1032:1, meaning it's very possible "
+"for a small compressed payload to decompress to a potentially very large "
+"output. To guard against this, you may provide a maximum size this function "
+"is allowed to allocate in bytes via [code]max_output_size[/code]. Passing -1 "
+"will allow for unbounded output. If any positive value is passed, and the "
+"decompression exceeds that ammount in bytes, then an error will be returned."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:67
+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/PoolByteArray.xml:73
+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/PoolByteArray.xml:79
+msgid ""
+"Returns a hexadecimal representation of this array as a [String].\n"
+"[codeblock]\n"
+"var array = PoolByteArray([11, 46, 255])\n"
+"print(array.hex_encode()) # Prints: 0b2eff\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:91 doc/classes/PoolColorArray.xml:43
+#: doc/classes/PoolRealArray.xml:44 doc/classes/PoolStringArray.xml:44
+#: doc/classes/PoolVector2Array.xml:44 doc/classes/PoolVector3Array.xml:43
+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/PoolByteArray.xml:102 doc/classes/PoolRealArray.xml:55
+msgid "Appends an element at the end of the array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:108 doc/classes/PoolColorArray.xml:60
+#: doc/classes/PoolIntArray.xml:61 doc/classes/PoolRealArray.xml:61
+#: doc/classes/PoolStringArray.xml:68 doc/classes/PoolVector2Array.xml:61
+#: doc/classes/PoolVector3Array.xml:60
+msgid "Removes an element from the array by index."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
+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.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:122
+msgid "Changes the byte at the given index."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
+msgid "Returns the size of the array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:136
+msgid ""
+"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
+"new [PoolByteArray]. Any negative index is considered to be from the end of "
+"the array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:4
+msgid "A pooled [Array] of [Color]."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Color]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:17
+msgid ""
+"Constructs a new [PoolColorArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:29
+msgid "Appends a [PoolColorArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:54 doc/classes/PoolIntArray.xml:55
+msgid "Appends a value to the array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
+msgid "Changes the [Color] at the given index."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:4
+msgid "A pooled [Array] of integers ([int])."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold integer values ([int]). Optimized "
+"for memory usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type is limited to signed 32-bit integers, which means it "
+"can only 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."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:18
+msgid ""
+"Constructs a new [PoolIntArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:30
+msgid "Appends a [PoolIntArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:44
+msgid ""
+"Inserts a new int 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/PoolIntArray.xml:75
+msgid "Changes the int at the given index."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:81
+msgid "Returns the array size."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:4
+msgid "A pooled [Array] of reals ([float])."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold floating-point values. Optimized "
+"for memory usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] Unlike primitive [float]s which are 64-bit, numbers stored in "
+"[PoolRealArray] are 32-bit floats. This means values stored in "
+"[PoolRealArray] have lower precision compared to primitive [float]s. If you "
+"need to store 64-bit floats in an array, use a generic [Array] with [float] "
+"elements as these will still be 64-bit. However, using a generic [Array] to "
+"store [float]s will use roughly 6 times more memory compared to a "
+"[PoolRealArray]."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:18
+msgid ""
+"Constructs a new [PoolRealArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:30
+msgid "Appends a [PoolRealArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:75
+msgid "Changes the float at the given index."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:4
+msgid "A pooled [Array] of [String]."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [String]s. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:18
+msgid ""
+"Constructs a new [PoolStringArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:30
+msgid "Appends a [PoolStringArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:56
+msgid ""
+"Returns a [String] with each element of the array joined with the given "
+"[code]delimiter[/code]."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:62
+msgid "Appends a string element at end of the array."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:81
+msgid "Changes the [String] at the given index."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:4
+msgid "A pooled [Array] of [Vector2]."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector2]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:11 doc/classes/TileMap.xml:15
+#: doc/classes/TileSet.xml:15
+msgid "https://godotengine.org/asset-library/asset/519"
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:18
+msgid ""
+"Constructs a new [PoolVector2Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:30
+msgid "Appends a [PoolVector2Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:55
+msgid "Inserts a [Vector2] at the end."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:74
+msgid "Changes the [Vector2] at the given index."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:4
+msgid "A pooled [Array] of [Vector3]."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector3]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:17
+msgid ""
+"Constructs a new [PoolVector3Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:29
+msgid "Appends a [PoolVector3Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:54
+msgid "Inserts a [Vector3] at the end."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:73
+msgid "Changes the [Vector3] at the given index."
+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. All popup methods ensure correct placement within the viewport."
+msgstr ""
+
+#: doc/classes/Popup.xml:16
+msgid "Popup (show the control in modal form)."
+msgstr ""
+
+#: doc/classes/Popup.xml:23
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to its current canvas transform, at the current size, or at a size "
+"determined by [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:31
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, clamping the size to [code]size[/code], "
+"then ensuring the popup is no larger than the viewport size multiplied by "
+"[code]fallback_ratio[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:38
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, ensuring the size is never smaller than "
+"[code]minsize[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:45
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, scaled at a ratio of size of the screen."
+msgstr ""
+
+#: doc/classes/Popup.xml:51
+msgid "Shrink popup to keep to the minimum size of content."
+msgstr ""
+
+#: doc/classes/Popup.xml:57
+msgid ""
+"If [code]true[/code], the popup will not be hidden when a click event occurs "
+"outside of it, or when it receives the [code]ui_cancel[/code] action event.\n"
+"[b]Note:[/b] Enabling this property doesn't affect the Close or Cancel "
+"buttons' behavior in dialogs that inherit from this class. As a workaround, "
+"you can use [method WindowDialog.get_close_button] or [method "
+"ConfirmationDialog.get_cancel] and hide the buttons in question by setting "
+"their [member CanvasItem.visible] property to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:65
+msgid ""
+"Emitted when a popup is about to be shown. This is often used in [PopupMenu] "
+"to clear the list of options then create a new one according to the current "
+"context."
+msgstr ""
+
+#: doc/classes/Popup.xml:70
+msgid "Emitted when a popup is hidden."
+msgstr ""
+
+#: doc/classes/Popup.xml:76
+msgid "Notification sent right after the popup is shown."
+msgstr ""
+
+#: doc/classes/Popup.xml:79
+msgid "Notification sent right after the popup is hidden."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:4
+msgid "Base class for popup dialogs."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:7
+msgid ""
+"PopupDialog is a base class for popup dialogs, along with [WindowDialog]."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:17
+msgid "Sets a custom [StyleBox] for the panel of the [PopupDialog]."
+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:18
+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:29
+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:41
+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:53
+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:65
+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:76
+msgid "Same as [method add_icon_check_item], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:86
+msgid ""
+"Same as [method add_icon_check_shortcut], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:96
+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:106
+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:118
+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:129
+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:140
+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:150
+msgid ""
+"Adds a separator between items. Separators also occupy an index, which you "
+"can set by using the [code]id[/code] parameter.\n"
+"A [code]label[/code] can optionally be provided, which will appear at the "
+"center of the separator."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:160
+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:170
+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:177
+msgid "Removes all items from the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:183
+msgid ""
+"Returns the index of the currently focused item. Returns [code]-1[/code] if "
+"no item is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:190
+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:196
+msgid "Returns the number of items in the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:210
+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:217
+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:224
+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:231
+msgid ""
+"Returns the [ShortCut] associated with the specified [code]idx[/code] item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:238
+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:252
+msgid ""
+"Returns the tooltip associated with the specified index index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:258
+msgid ""
+"Returns [code]true[/code] if the popup will be hidden when the window loses "
+"focus or not."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:265
+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:273
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:280
+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:288
+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:296
+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:303
+msgid "Returns [code]true[/code] if the specified item's shortcut is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:310
+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:318
+msgid "Hides the [PopupMenu] when the window loses focus."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:326
+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:334
+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:343
+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:351
+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:359
+msgid "Sets the checkstate status of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:367
+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:375
+msgid "Replaces the [Texture] icon of the specified [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:383
+msgid "Sets the [code]id[/code] of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:391
+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:399
+msgid ""
+"Sets the state of a multistate item. See [method add_multistate_item] for "
+"details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:408
+msgid "Sets a [ShortCut] for the specified item [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:416
+msgid "Disables the [ShortCut] of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:424
+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:440
+msgid ""
+"Sets the [String] tooltip of the item at the specified index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:447
+msgid ""
+"Toggles the check state of the item of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:454
+msgid ""
+"Cycle to the next state of a multistate item. See [method "
+"add_multistate_item] for details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:460
+msgid "If [code]true[/code], allows navigating [PopupMenu] with letter keys."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:464
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
+"is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:467
+msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:470
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:473
+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:480
+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:486
+msgid ""
+"Emitted when an item of some [code]id[/code] is pressed or its accelerator "
+"is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:492
+msgid ""
+"Emitted when an item of some [code]index[/code] is pressed or its "
+"accelerator is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:500
+msgid "[Texture] icon for the checked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:503
+msgid "[Font] used for the menu items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:506
+msgid "The default text [Color] for menu items' names."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:509
+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:512
+msgid "[Color] used for disabled menu items' text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:515
+msgid "[Color] used for the hovered text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:518
+msgid "[Color] used for labeled separators' text. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:521
+msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:524
+msgid ""
+"The horizontal space between the item's name and the shortcut text/submenu "
+"arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:527
+msgid ""
+"[StyleBox] for the left side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:530
+msgid ""
+"[StyleBox] for the right side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:533
+msgid "Default [StyleBox] of the [PopupMenu] items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:536
+msgid "[StyleBox] used when the [PopupMenu] item is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:539
+msgid "[Texture] icon for the checked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:542
+msgid "[Texture] icon for the unchecked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:545
+msgid "[StyleBox] used for the separators. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:548
+msgid "[Texture] icon for the submenu arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:551
+msgid "[Texture] icon for the unchecked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:554
+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 [WindowDialog]."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:17
+msgid "The background panel style of this [PopupPanel]."
+msgstr ""
+
+#: doc/classes/Portal.xml:4
+msgid "Portal nodes are used to enable visibility between [Room]s."
+msgstr ""
+
+#: doc/classes/Portal.xml:7
+msgid ""
+"[Portal]s are a special type of [MeshInstance] that allow the portal culling "
+"system to 'see' from one room to the next. They often correspond to doors "
+"and windows in level geometry. By only allowing [Camera]s to see through "
+"portals, this allows the system to cull out all the objects in rooms that "
+"cannot be seen through portals. This is a form of [b]occlusion culling[/b], "
+"and can greatly increase performance.\n"
+"There are some limitations to the form of portals:\n"
+"They must be single sided convex polygons, and usually you would orientate "
+"their front faces [b]outward[/b] from the [Room] they are placed in. The "
+"vertices should be positioned on a single plane (although their positioning "
+"does not have to be perfect).\n"
+"There is no need to place an opposite portal in an adjacent room, links are "
+"made two-way automatically."
+msgstr ""
+
+#: doc/classes/Portal.xml:20 doc/classes/Room.xml:21
+msgid "Sets individual points. Primarily for use by the editor."
+msgstr ""
+
+#: doc/classes/Portal.xml:26
+msgid ""
+"This is a shortcut for setting the linked [Room] in the name of the [Portal] "
+"(the name is used during conversion)."
+msgstr ""
+
+#: doc/classes/Portal.xml:29
+msgid ""
+"The points defining the shape of the [Portal] polygon (which should be "
+"convex).\n"
+"These are defined in 2D, with [code]0,0[/code] being the origin of the "
+"[Portal] node's [member Spatial.global_transform].\n"
+"[b]Note:[/b] These raw points are sanitized for winding order internally."
+msgstr ""
+
+#: doc/classes/Portal.xml:34
+msgid ""
+"Visibility through [Portal]s can be turned on and off at runtime - this is "
+"useful for having closable doors."
+msgstr ""
+
+#: doc/classes/Portal.xml:37
+msgid ""
+"Some objects are so big that they may be present in more than one [Room] "
+"('sprawling'). As we often don't want objects that *just* breach the edges "
+"to be assigned to neighbouring rooms, you can assign an extra margin through "
+"the [Portal] to allow objects to breach without sprawling."
+msgstr ""
+
+#: doc/classes/Portal.xml:40
+msgid ""
+"Portals default to being two way - see through in both directions, however "
+"you can make them one way, visible from the source room only."
+msgstr ""
+
+#: doc/classes/Portal.xml:43
+msgid ""
+"In most cases you will want to use the default [Portal] margin in your "
+"portals (this is set in the [RoomManager]).\n"
+"If you want to override this default, set this value to [code]false[/code], "
+"and the local [member portal_margin] will take effect."
+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 [Spatial], 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:15
+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:29
+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 SpatialMaterial.CULL_BACK] in "
+"[member SpatialMaterial.params_cull_mode]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:33
+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/ProceduralSky.xml:4
+msgid ""
+"Type of [Sky] that is generated procedurally based on user input parameters."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:7
+msgid ""
+"ProceduralSky 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 ProceduralSky is updated on the CPU after the parameters change. It is "
+"stored in a texture and then displayed as a background in the scene. This "
+"makes it relatively unsuitable for real-time updates during gameplay. "
+"However, with a small enough texture size, it can still be updated "
+"relatively frequently, as it is updated on a background thread when multi-"
+"threading is available."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:16
+msgid "Color of the ground at the bottom."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:19
+msgid ""
+"How quickly the [member ground_horizon_color] fades into the [member "
+"ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:22
+msgid "Amount of energy contribution from the ground."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:25
+msgid "Color of the ground at the horizon."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:28
+msgid ""
+"How quickly the [member sky_horizon_color] fades into the [member "
+"sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:31
+msgid "Amount of energy contribution from the sky."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:34
+msgid "Color of the sky at the horizon."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:37
+msgid "Color of the sky at the top."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:40
+msgid "Distance from center of sun where it fades out completely."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:43
+msgid "Distance from sun where it goes from solid to starting to fade."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:46
+msgid "The sun's color."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:49
+msgid ""
+"How quickly the sun fades away between [member sun_angle_min] and [member "
+"sun_angle_max]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:52
+msgid "Amount of energy contribution from the sun."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:55
+msgid "The sun's height using polar coordinates."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:58
+msgid "The direction of the sun using polar coordinates."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:61
+msgid ""
+"Size of [Texture] that the ProceduralSky will generate. The size is set "
+"using [enum TextureSize]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:66
+msgid "Sky texture will be 256x128."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:69
+msgid "Sky texture will be 512x256."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:72
+msgid "Sky texture will be 1024x512. This is the default size."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:75
+msgid "Sky texture will be 2048x1024."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:78
+msgid "Sky texture will be 4096x2048."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:81
+msgid "Represents the size of the [enum TextureSize] enum."
+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]Feature tags:[/b] Project settings can be overridden for specific "
+"platforms and configurations (debug, release, ...) using [url=https://docs."
+"godotengine.org/en/latest/tutorials/export/feature_tags.html]feature tags[/"
+"url].\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. Overriding will still take the base project "
+"settings' [url=https://docs.godotengine.org/en/latest/tutorials/export/"
+"feature_tags.html]feature tags[/url] in account. Therefore, make sure to "
+"[i]also[/i] override the setting with the desired feature tags if you want "
+"them to override base project settings on all platforms and configurations."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:22
+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:52
+msgid ""
+"Returns the order of a configuration value (influences when saved to the "
+"config file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:59
+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:70
+msgid ""
+"Returns the absolute, native OS path corresponding to the localized "
+"[code]path[/code] (starting with [code]res://[/code] or [code]user://[/"
+"code]). The returned path will vary depending on the operating system and "
+"user preferences. See [url=https://docs.godotengine.org/en/3.4/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] to see what those paths "
+"convert to. See also [method localize_path].\n"
+"[b]Note:[/b] [method globalize_path] with [code]res://[/code] will not work "
+"in an exported project. Instead, prepend the executable's base directory to "
+"the path when running from an exported project:\n"
+"[codeblock]\n"
+"var path = \"\"\n"
+"if OS.has_feature(\"editor\"):\n"
+" # Running from an editor binary.\n"
+" # `path` will contain the absolute path to `hello.txt` located in the "
+"project root.\n"
+" path = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
+"else:\n"
+" # Running from an exported project.\n"
+" # `path` will contain the absolute path to `hello.txt` next to the "
+"executable.\n"
+" # This is *not* identical to using `ProjectSettings.globalize_path()` "
+"with a `res://` path,\n"
+" # but is close enough in spirit.\n"
+" path = OS.get_executable_path().get_base_dir().plus_file(\"hello.txt\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:91
+msgid "Returns [code]true[/code] if a configuration value is present."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:100
+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].\n"
+"[b]Note:[/b] The optional [code]offset[/code] parameter can be used to "
+"specify the offset in bytes to the start of the resource pack. This is only "
+"supported for .pck files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:109
+msgid ""
+"Returns the localized path (starting with [code]res://[/code]) corresponding "
+"to the absolute, native OS [code]path[/code]. See also [method "
+"globalize_path]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the specified property exists and its initial "
+"value differs from the current value."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:123
+msgid ""
+"Returns the specified property's initial value. Returns [code]null[/code] if "
+"the property does not exist."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:129
+msgid ""
+"Saves the configuration to the [code]project.godot[/code] file.\n"
+"[b]Note:[/b] This method is intended to be used by editor plugins, as "
+"modified [ProjectSettings] can't be loaded back in the running app. If you "
+"want to change project settings in exported projects, use [method "
+"save_custom] to save [code]override.cfg[/code] file."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:137
+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). You can also save [code]override.cfg[/"
+"code] file, which is also text, but can be used in exported projects unlike "
+"other formats."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:145
+msgid ""
+"Sets the specified property's initial value. This is the value the property "
+"reverts to."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:153
+msgid ""
+"Sets the order of a configuration value (influences when saved to the config "
+"file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:161
+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:171
+msgid ""
+"Comma-separated list of custom Android modules (which must have been built "
+"in the Android export templates) using their Java package path, e.g. "
+"[code]\"org/godotengine/godot/MyCustomSingleton,com/example/foo/"
+"FrenchFriesFactory\"[/code].\n"
+"[b]Note:[/b] Since Godot 3.2.2, the [code]org/godotengine/godot/"
+"GodotPaymentV3[/code] module was deprecated and replaced by the "
+"[code]GodotPayment[/code] plugin which should be enabled in the Android "
+"export preset under [code]Plugins[/code] section. The singleton to access in "
+"code was also renamed to [code]GodotPayment[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:175
+msgid "Background color for the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:178
+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:181
+msgid "Path to an image used as the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:184
+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:187
+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:191
+msgid ""
+"The project's description, displayed as a tooltip in the Project Manager "
+"when hovering the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:194
+msgid ""
+"Icon used for the project, set when project loads. Exporters will also use "
+"this icon when possible."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:197
+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 OS.set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:200
+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. The window title will be set to match the project name automatically "
+"on startup.\n"
+"[b]Note:[/b] Changing this value will also change the user data folder's "
+"path if [member application/config/use_custom_user_dir] is [code]false[/"
+"code]. After renaming the project, you will no longer be able to access "
+"existing data in [code]user://[/code] unless you rename the old folder to "
+"match the new project name. See [url=https://docs.godotengine.org/en/3.4/"
+"tutorials/io/data_paths.html]Data paths[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:204
+msgid ""
+"Specifies a file to override project settings. For example: [code]user://"
+"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
+"class description at the top for more information.\n"
+"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
+"code] will still be read to override the project settings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:208
+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:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
+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 OS.set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:220
+msgid ""
+"Time samples for frame deltas are subject to random variation introduced by "
+"the platform, even when frames are displayed at regular intervals thanks to "
+"V-Sync. This can lead to jitter. Delta smoothing can often give a better "
+"result by filtering the input deltas to correct for minor fluctuations from "
+"the refresh rate.\n"
+"[b]Note:[/b] Delta smoothing is only attempted when [member display/window/"
+"vsync/use_vsync] is switched on, as it does not work well without V-Sync.\n"
+"It may take several seconds at a stable frame rate before the smoothing is "
+"initially activated. It will only be active on machines where performance is "
+"adequate to render frames at the refresh rate."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:225
+msgid ""
+"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
+"just after the drawing has taken place. This may lead to more consistent "
+"deltas and a reduction in frame stutters."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:228
+msgid ""
+"If [code]true[/code], disables printing to standard error. If [code]true[/"
+"code], this also hides error and warning messages printed by [method "
+"@GDScript.push_error] and [method @GDScript.push_warning]. See also [member "
+"application/run/disable_stdout].\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:232
+msgid ""
+"If [code]true[/code], disables printing to standard output. This is "
+"equivalent to starting the editor or project with the [code]--quiet[/code] "
+"command line argument. See also [member application/run/disable_stderr].\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:236
+msgid ""
+"If [code]true[/code], flushes the standard output stream every time a line "
+"is printed. This affects both terminal logging and file logging.\n"
+"When running a project, this setting must be enabled if you want logs to be "
+"collected by service managers such as systemd/journalctl. This setting is "
+"disabled by default on release builds, since flushing on every printed line "
+"will negatively affect performance if lots of lines are printed in a rapid "
+"succession. Also, if this setting is enabled, logged files will still be "
+"written successfully if the application crashes or is otherwise killed by "
+"the user (without being closed \"normally\").\n"
+"[b]Note:[/b] Regardless of this setting, the standard error stream "
+"([code]stderr[/code]) is always flushed when a line is printed to it.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:242
+msgid ""
+"Debug build override for [member application/run/flush_stdout_on_print], as "
+"performance is less important during debugging.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:246
+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:249
+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:252
+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:255
+msgid "Path to the main scene file that will be loaded when the project runs."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
+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:264
+msgid ""
+"Default [AudioBusLayout] resource file to use in the project, unless "
+"overridden by the scene."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:267
+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:270
+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:273
+msgid ""
+"The mixing rate used for audio (in Hz). In general, it's better to not touch "
+"this and leave it to the host operating system."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:276
+msgid ""
+"Safer override for [member audio/mix_rate] in the Web platform. Here "
+"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
+"like forcing the mix rate)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:279
+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:282
+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:285
+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:288
+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:291
+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:294
+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:297
+msgid ""
+"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
+"distance matching[/url] in Zstandard."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:300
+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:303
+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:306
+msgid ""
+"If [code]true[/code], enables warnings when a constant is used as a function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:309
+msgid ""
+"If [code]true[/code], enables warnings when deprecated keywords such as "
+"[code]slave[/code] are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:312
+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:315
+msgid ""
+"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
+"not generate warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:318
+msgid ""
+"If [code]true[/code], enables warnings when a function is declared with the "
+"same name as a constant."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:321
+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:324
+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:327
+msgid ""
+"If [code]true[/code], enables warnings when using a function as if it was a "
+"property."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:330
+msgid ""
+"If [code]true[/code], enables warnings when a ternary operator may emit "
+"values with incompatible types."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:333
+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:336
+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:339
+msgid ""
+"If [code]true[/code], enables warnings when using a property as if it was a "
+"function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:342
+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:345
+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:348
+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:351
+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:354
+msgid ""
+"If [code]true[/code], all warnings will be reported as if they were errors."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:357
+msgid ""
+"If [code]true[/code], enables warnings when using a variable that wasn't "
+"previously assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:360
+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:363
+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:366
+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:369
+msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:372
+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:375
+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:378
+msgid ""
+"If [code]true[/code], enables warnings when a function parameter is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:381
+msgid ""
+"If [code]true[/code], enables warnings when a member variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:384
+msgid "If [code]true[/code], enables warnings when a signal is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:387
+msgid "If [code]true[/code], enables warnings when a local variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:390
+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:393
+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:396
+msgid "Message to be displayed before the backtrace when the engine crashes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:399
+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:404
+msgid "Maximum call stack allowed for debugging GDScript."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:407
+msgid "Maximum amount of functions per frame allowed when profiling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:410
+msgid "Print frames per second to standard output every second."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:413
+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:416
+msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:419
+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:422
+msgid ""
+"Sets whether 2D physics will display collision outlines in game when "
+"\"Visible Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:425
+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:428
+msgid ""
+"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:431
+msgid ""
+"Color of the disabled navigation geometry, visible when \"Visible Navigation"
+"\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:434
+msgid ""
+"Color of the navigation geometry, visible when \"Visible Navigation\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:437
+msgid "Custom image for the mouse cursor (limited to 256×256)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:440
+msgid "Hotspot for the custom mouse cursor image."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:443
+msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:446
+msgid ""
+"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
+"platform. This setting has no effect on desktop Linux, as DPI-awareness "
+"fallbacks are not supported there."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:449
+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:452
+msgid ""
+"The default screen orientation to use on mobile devices.\n"
+"[b]Note:[/b] When set to a portrait orientation, this project setting does "
+"not flip the project resolution's width and height automatically. Instead, "
+"you have to set [member display/window/size/width] and [member display/"
+"window/size/height] accordingly."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:456
+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:459
+msgid ""
+"If [code]true[/code], allows per-pixel transparency for the window "
+"background. This affects performance, so leave it on [code]false[/code] "
+"unless you need it.\n"
+"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
+"[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, "
+"and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:464
+msgid ""
+"Sets the window background to transparent when it starts.\n"
+"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
+"[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, "
+"and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:469
+msgid ""
+"Forces the main window to be always on top.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:473
+msgid ""
+"Forces the main window to be borderless.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:477
+msgid ""
+"Sets the main window to full screen when the project starts. Note that this "
+"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
+"window is used to emulate fullscreen. On macOS, a new desktop is used to "
+"display the running project.\n"
+"Regardless of the platform, enabling fullscreen will change the window size "
+"to match the monitor's size. Therefore, make sure your project supports "
+"[url=https://docs.godotengine.org/en/3.4/tutorials/rendering/"
+"multiple_resolutions.html]multiple resolutions[/url] when enabling "
+"fullscreen mode.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:482
+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:485
+msgid ""
+"Allows the window to be resizable by default.\n"
+"[b]Note:[/b] This setting is ignored on iOS and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:489
+msgid ""
+"If greater than zero, overrides the window height when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:492
+msgid ""
+"If greater than zero, overrides the window width when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:495
+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:498
+msgid ""
+"Specifies the tablet driver to use. If left empty, the default driver will "
+"be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:501
+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:504
+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:508
+msgid ""
+"The command-line arguments to append to Godot's own command line when "
+"running the project. This doesn't affect the editor itself.\n"
+"It is possible to make another executable run Godot by using the "
+"[code]%command%[/code] placeholder. The placeholder will be replaced with "
+"Godot's own command line. Program-specific arguments should be placed "
+"[i]before[/i] the placeholder, whereas Godot-specific arguments should be "
+"placed [i]after[/i] the placeholder.\n"
+"For example, this can be used to force the project to run on the dedicated "
+"GPU in a NVIDIA Optimus system on Linux:\n"
+"[codeblock]\n"
+"prime-run %command%\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:516
+msgid ""
+"Search path for project-specific script templates. Godot will search for "
+"script templates both in the editor-specific path and in this project-"
+"specific path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:519
+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:522
+msgid ""
+"Default value for [member ScrollContainer.scroll_deadzone], which will be "
+"used for all [ScrollContainer]s unless overridden."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:525
+msgid ""
+"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"UWP to follow interface conventions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:530
+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:533
+msgid ""
+"Path to a custom [Font] resource to use as default for all GUI elements of "
+"the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:536
+msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:539
+msgid ""
+"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
+"(in milliseconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:542
+msgid "Timer for detecting idle in [TextEdit] (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:545
+msgid "Default delay for tooltips (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:548
+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:552
+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:556
+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:560
+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:564
+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:568
+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:572
+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:576
+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:580
+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:584
+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:588
+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:592
+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:596
+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:600
+msgid ""
+"If [code]true[/code], key/touch/joystick events will be flushed just before "
+"every idle and physics frame.\n"
+"If [code]false[/code], such events will be flushed only once per idle frame, "
+"between iterations of the engine.\n"
+"Enabling this can greatly improve the responsiveness to input, specially in "
+"devices that need to run multiple physics frames per visible (idle) frame, "
+"because they can't run at the target frame rate.\n"
+"[b]Note:[/b] Currently implemented only in Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:606
+msgid ""
+"If [code]true[/code], sends mouse input events when tapping or swiping on "
+"the touchscreen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:609
+msgid ""
+"If [code]true[/code], sends touch input events when clicking or dragging the "
+"mouse."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:612
+msgid "Default delay for touch events. This only affects iOS devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:615
+msgid "Optional name for the 2D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:618
+msgid "Optional name for the 2D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:621
+msgid "Optional name for the 2D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:624
+msgid "Optional name for the 2D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:627
+msgid "Optional name for the 2D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:630
+msgid "Optional name for the 2D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:633
+msgid "Optional name for the 2D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:636
+msgid "Optional name for the 2D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:639
+msgid "Optional name for the 2D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:642
+msgid "Optional name for the 2D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:645
+msgid "Optional name for the 2D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:648
+msgid "Optional name for the 2D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:651
+msgid "Optional name for the 2D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:654
+msgid "Optional name for the 2D physics layer 21."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:657
+msgid "Optional name for the 2D physics layer 22."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:660
+msgid "Optional name for the 2D physics layer 23."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:663
+msgid "Optional name for the 2D physics layer 24."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:666
+msgid "Optional name for the 2D physics layer 25."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:669
+msgid "Optional name for the 2D physics layer 26."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:672
+msgid "Optional name for the 2D physics layer 27."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:675
+msgid "Optional name for the 2D physics layer 28."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:678
+msgid "Optional name for the 2D physics layer 29."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:681
+msgid "Optional name for the 2D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:684
+msgid "Optional name for the 2D physics layer 30."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:687
+msgid "Optional name for the 2D physics layer 31."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:690
+msgid "Optional name for the 2D physics layer 32."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:693
+msgid "Optional name for the 2D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:696
+msgid "Optional name for the 2D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:699
+msgid "Optional name for the 2D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:702
+msgid "Optional name for the 2D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:705
+msgid "Optional name for the 2D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:708
+msgid "Optional name for the 2D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:711
+msgid "Optional name for the 2D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:714
+msgid "Optional name for the 2D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:717
+msgid "Optional name for the 2D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:720
+msgid "Optional name for the 2D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:723
+msgid "Optional name for the 2D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:726
+msgid "Optional name for the 2D render layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:729
+msgid "Optional name for the 2D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:732
+msgid "Optional name for the 2D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:735
+msgid "Optional name for the 2D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:738
+msgid "Optional name for the 2D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:741
+msgid "Optional name for the 2D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:744
+msgid "Optional name for the 2D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:747
+msgid "Optional name for the 2D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:750
+msgid "Optional name for the 2D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:753
+msgid "Optional name for the 2D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:756
+msgid "Optional name for the 2D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:759
+msgid "Optional name for the 2D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:762
+msgid "Optional name for the 2D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:765
+msgid "Optional name for the 2D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:768
+msgid "Optional name for the 2D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:771
+msgid "Optional name for the 3D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:774
+msgid "Optional name for the 3D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:777
+msgid "Optional name for the 3D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:780
+msgid "Optional name for the 3D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:783
+msgid "Optional name for the 3D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:786
+msgid "Optional name for the 3D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:789
+msgid "Optional name for the 3D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:792
+msgid "Optional name for the 3D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:795
+msgid "Optional name for the 3D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:798
+msgid "Optional name for the 3D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:801
+msgid "Optional name for the 3D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:804
+msgid "Optional name for the 3D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:807
+msgid "Optional name for the 3D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:810
+msgid "Optional name for the 3D physics layer 21."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:813
+msgid "Optional name for the 3D physics layer 22."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:816
+msgid "Optional name for the 3D physics layer 23."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:819
+msgid "Optional name for the 3D physics layer 24."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:822
+msgid "Optional name for the 3D physics layer 25."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:825
+msgid "Optional name for the 3D physics layer 26."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:828
+msgid "Optional name for the 3D physics layer 27."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:831
+msgid "Optional name for the 3D physics layer 28."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:834
+msgid "Optional name for the 3D physics layer 29."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:837
+msgid "Optional name for the 3D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:840
+msgid "Optional name for the 3D physics layer 30."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:843
+msgid "Optional name for the 3D physics layer 31."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:846
+msgid "Optional name for the 3D physics layer 32."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:849
+msgid "Optional name for the 3D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:852
+msgid "Optional name for the 3D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:855
+msgid "Optional name for the 3D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:858
+msgid "Optional name for the 3D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:861
+msgid "Optional name for the 3D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:864
+msgid "Optional name for the 3D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:867
+msgid "Optional name for the 3D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:870
+msgid "Optional name for the 3D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:873
+msgid "Optional name for the 3D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:876
+msgid "Optional name for the 3D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:879
+msgid "Optional name for the 3D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:882
+msgid "Optional name for the 3D render layer 14"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:885
+msgid "Optional name for the 3D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:888
+msgid "Optional name for the 3D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:891
+msgid "Optional name for the 3D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:894
+msgid "Optional name for the 3D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:897
+msgid "Optional name for the 3D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:900
+msgid "Optional name for the 3D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:903
+msgid "Optional name for the 3D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:906
+msgid "Optional name for the 3D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:909
+msgid "Optional name for the 3D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:912
+msgid "Optional name for the 3D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:915
+msgid "Optional name for the 3D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:918
+msgid "Optional name for the 3D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:921
+msgid "Optional name for the 3D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:924
+msgid "Optional name for the 3D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:927
+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:930
+msgid ""
+"If non-empty, this locale will be used when running the project from the "
+"editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:933
+msgid "If [code]true[/code], logs all output to files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:936
+msgid ""
+"Desktop override for [member logging/file_logging/enable_file_logging], as "
+"log files are not readily accessible on mobile/Web platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:939
+msgid ""
+"Path to logs within the project. Using an [code]user://[/code] path is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:942
+msgid "Specifies the maximum amount of log files allowed (used for rotation)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:947
+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:950
+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:953
+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:956
+msgid ""
+"Maximum number of errors allowed to be sent as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:959
+msgid ""
+"Maximum amount of messages 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:962
+msgid ""
+"Maximum number of warnings allowed to be sent as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:965
+msgid ""
+"Default size of packet peer stream for deserializing Godot data (in bytes, "
+"specified as a power of two). The default value [code]16[/code] is equal to "
+"65,536 bytes. Over this size, data is dropped."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:968
+msgid "Timeout (in seconds) for connection attempts using TCP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:971
+msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:974
+msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:977
+msgid "Maximum number of concurrent input packets for [WebSocketClient]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:980
+msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:983
+msgid "Maximum number of concurrent output packets for [WebSocketClient]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:986
+msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:989
+msgid "Maximum number of concurrent input packets for [WebSocketServer]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:992
+msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:995
+msgid "Maximum number of concurrent output packets for [WebSocketServer]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:998
+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:1001
+msgid "Page size used by remote filesystem (in bytes)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1004
+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:1008
+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:1011
+msgid ""
+"What to use to separate node name from number. This is mostly an editor "
+"setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1014
+msgid ""
+"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1018
+msgid ""
+"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1022
+msgid ""
+"The default angular damp in 2D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1026
+msgid ""
+"The default gravity strength in 2D (in pixels per second squared).\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"
+"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), "
+"Physics2DServer.AREA_PARAM_GRAVITY, 98)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1034
+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"
+"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), "
+"Physics2DServer.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1042
+msgid ""
+"The default linear damp in 2D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1046
+msgid ""
+"Threshold defining the surface size that constitutes a large object with "
+"regard to cells in the broad-phase 2D hash grid algorithm.\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1050
+msgid ""
+"Sets which physics engine to use for 2D physics.\n"
+"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
+"alternative 2D physics server implemented."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1054
+msgid ""
+"Threshold angular velocity under which a 2D physics body will be considered "
+"inactive. See [constant Physics2DServer."
+"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1057
+msgid ""
+"Threshold linear velocity under which a 2D physics body will be considered "
+"inactive. See [constant Physics2DServer."
+"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1060
+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:1064
+msgid ""
+"Time (in seconds) of inactivity before which a 2D physics body will put to "
+"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1067
+msgid ""
+"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
+"physics spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1070
+msgid ""
+"Sets whether the 3D physics world will be created with support for "
+"[SoftBody] physics. Only applies to the Bullet physics engine."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1073
+msgid ""
+"The default angular damp in 3D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1077
+msgid ""
+"The default gravity strength in 3D (in meters per second squared).\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"
+"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer.AREA_PARAM_GRAVITY, 9.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1085
+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"
+"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1093
+msgid ""
+"The default linear damp in 3D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1097
+msgid ""
+"Enables the use of bounding volume hierarchy instead of octree for 3D "
+"physics spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1100
+msgid ""
+"Sets which physics engine to use for 3D physics.\n"
+"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
+"physics engine. The \"GodotPhysics\" engine is still supported as an "
+"alternative."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1104
+msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1107
+msgid ""
+"If enabled, 2D and 3D physics picking behaves this way in relation to "
+"pause:\n"
+"- When pause is started, every collision object that is hovered or captured "
+"(3D only) is released from that condition, getting the relevant mouse-exit "
+"callback, unless its pause mode makes it immune to pause.\n"
+"- During pause, picking only considers collision objects immune to pause, "
+"sending input events and enter/exit callbacks to them as expected.\n"
+"If disabled, the legacy behavior is used, which consists in queuing the "
+"picking input events during pause (so nodes won't get them) and flushing "
+"that queue on resume, against the state of the 2D/3D world at that point."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1113
+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:1117
+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 smoothing 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.\n"
+"[b]Note:[/b] For best results, when using a custom physics interpolation "
+"solution, the physics jitter fix should be disabled by setting [member "
+"physics/common/physics_jitter_fix] to [code]0[/code].\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:1122
+msgid ""
+"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
+"uploading batching data. This may not be necessary but can be used for "
+"safety.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1126
+msgid ""
+"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
+"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
+"flag.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1130
+msgid ""
+"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
+"[code]glBufferData[/code] is called with NULL data and the full buffer size "
+"prior to uploading new data. This can be important to avoid stalling on some "
+"hardware.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1134
+msgid ""
+"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
+"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
+"flag.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1138
+msgid ""
+"Choose between fixed mode where corner scalings are preserved matching the "
+"artwork, and scaling mode.\n"
+"Not available in GLES3 when [member rendering/batching/options/use_batching] "
+"is off."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1142
+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 affects GLES2 and GLES3 "
+"rendering, but only on desktop platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1146
+msgid ""
+"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
+"This provides greater compatibility with a wide range of hardware, and also "
+"may be faster in some circumstances.\n"
+"Currently only available when [member rendering/batching/options/"
+"use_batching] is active.\n"
+"[b]Note:[/b] Antialiased software skinned polys are not supported, and will "
+"be rendered without antialiasing.\n"
+"[b]Note:[/b] Custom shaders that use the [code]VERTEX[/code] built-in "
+"operate with [code]VERTEX[/code] position [i]after[/i] skinning, whereas "
+"with hardware skinning, [code]VERTEX[/code] is the position [i]before[/i] "
+"skinning."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1152
+msgid ""
+"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
+"May help in some pixel art styles.\n"
+"This snapping is performed on the GPU in the vertex shader.\n"
+"Consider using the project setting [member rendering/batching/precision/"
+"uv_contract] to prevent artifacts."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1157
+msgid ""
+"When batching is on, this regularly prints a frame diagnosis log. Note that "
+"this will degrade performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1160
+msgid ""
+"[b]Experimental.[/b] For regression testing against the old renderer. If "
+"this is switched on, and [code]use_batching[/code] is set, the renderer will "
+"swap alternately between using the old renderer, and the batched renderer, "
+"on each frame. This makes it easy to identify visual differences. "
+"Performance will be degraded."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1163
+msgid ""
+"Lights have the potential to prevent joining items, and break many of the "
+"performance benefits of batching. This setting enables some complex logic to "
+"allow joining items if their lighting is similar, and overlap tests pass. "
+"This can significantly improve performance in some games. Set to 0 to switch "
+"off. With large values the cost of overlap tests may lead to diminishing "
+"returns."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1166
+msgid ""
+"Sets the proportion of the total screen area (in pixels) that must be saved "
+"by a scissor operation in order to activate light scissoring. This can "
+"prevent parts of items being rendered outside the light area. Lower values "
+"scissor more aggressively. A value of 1 scissors none of the items, a value "
+"of 0 scissors every item. The power of 4 of the value is used, in order to "
+"emphasize the lower range, and multiplied by the total screen area in pixels "
+"to give the threshold. This can reduce fill rate requirements in scenes with "
+"a lot of lighting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1169
+msgid ""
+"Enabling this setting uses the legacy method to draw batches containing only "
+"one rect. The legacy method is faster (approx twice as fast), but can cause "
+"flicker on some systems. In order to directly compare performance with the "
+"non-batching renderer you can set this to true, but it is recommended to "
+"turn this off unless you can guarantee your target hardware will work with "
+"this method."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1172
+msgid ""
+"Turns 2D batching on and off. Batching increases performance by reducing the "
+"amount of graphics API drawcalls."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1175
+msgid "Switches on 2D batching within the editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1178
+msgid ""
+"Size of buffer reserved for batched vertices. Larger size enables larger "
+"batches, but there are diminishing returns for the memory used. This should "
+"only have a minor effect on performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1181
+msgid ""
+"Including color in the vertex format has a cost, however, not including "
+"color prevents batching across color changes. This threshold determines the "
+"ratio of [code]number of vertex color changes / total number of vertices[/"
+"code] above which vertices will be translated to colored format. A value of "
+"0 will always use colored vertices, 1 will never use colored vertices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1184
+msgid ""
+"In certain circumstances, the batcher can reorder items in order to better "
+"join them. This may result in better performance. An overlap test is needed "
+"however for each item lookahead, so there is a trade off, with diminishing "
+"returns. If you are getting no benefit, setting this to 0 will switch it off."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1187
+msgid ""
+"Sets the number of commands to lookahead to determine whether to batch "
+"render items. A value of 1 can join items consisting of single commands, 0 "
+"turns off joining. Higher values are in theory more likely to join, however "
+"this has diminishing returns and has a runtime cost so a small value is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1190
+msgid ""
+"On some platforms (especially mobile), precision issues in shaders can lead "
+"to reading 1 texel outside of bounds, particularly where rects are scaled. "
+"This can particularly lead to border artifacts around tiles in tilemaps.\n"
+"This adjustment corrects for this by making a small contraction to the UV "
+"coordinates used. Note that this can result in a slight squashing of border "
+"texels."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1194
+msgid ""
+"The amount of UV contraction. This figure is divided by 1000000, and is a "
+"proportion of the total texture dimensions, where the width and height are "
+"both ranged from 0.0 to 1.0.\n"
+"Use the default unless correcting for a problem on particular hardware."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1198
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_HIGH]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1201
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_LOW]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1204
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_MEDIUM]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1207
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_ULTRA]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1210
+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 VisualServer.set_default_clear_color]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1213
+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:1216
+msgid ""
+"The use of half-float vertex compression may be producing rendering errors "
+"on some platforms (especially iOS). These have been seen particularly in "
+"particles. Disabling half-float may resolve these problems."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
+"[b]Warning:[/b] High floating point precision can be extremely slow on older "
+"devices and is often not available at all. Use with caution."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1226
+msgid ""
+"Max buffer size for blend shapes. Any blend shape bigger than this will not "
+"work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1229
+msgid ""
+"Max buffer size for drawing polygons. Any polygon bigger than this will not "
+"work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1232
+msgid ""
+"Max index buffer size for drawing polygons. Any polygon bigger than this "
+"will not work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1235
+msgid ""
+"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
+"Nodes using more than this size will not work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1238
+msgid ""
+"Max number of lights renderable per object. This is further limited by "
+"hardware support. Most devices only support 409 lights, while many devices "
+"(especially mobile) only support 102. Setting this low will slightly reduce "
+"memory usage and may decrease shader compile times."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1241
+msgid ""
+"Max amount of elements renderable in a frame. If more elements than this are "
+"visible per frame, they will not be drawn. Keep in mind elements refer to "
+"mesh surfaces and not meshes themselves. Setting this low will slightly "
+"reduce memory usage and may decrease shader compile times, particularly on "
+"web. For most uses, the default value is suitable, but consider lowering as "
+"much as possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1244
+msgid ""
+"Max number of lights renderable in a frame. If more lights than this number "
+"are used, they will be ignored. Setting this low will slightly reduce memory "
+"usage and may decrease shader compile times, particularly on web. For most "
+"uses, the default value is suitable, but consider lowering as much as "
+"possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1247
+msgid ""
+"Max number of reflection probes renderable in a frame. If more reflection "
+"probes than this number are used, they will be ignored. Setting this low "
+"will slightly reduce memory usage and may decrease shader compile times, "
+"particularly on web. For most uses, the default value is suitable, but "
+"consider lowering as much as possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1250
+msgid ""
+"Shaders have a time variable that constantly increases. At some point, it "
+"needs to be rolled back to zero to avoid precision errors on shader "
+"animations. This setting specifies when (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1253
+msgid ""
+"If [code]true[/code], the texture importer will import lossless textures "
+"using the PNG format. Otherwise, it will default to using WebP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1256
+msgid ""
+"The default compression level for lossless WebP. Higher levels result in "
+"smaller files at the cost of compression speed. Decompression speed is "
+"mostly unaffected by the compression level. Supported values are 0 to 9. "
+"Note that compression levels above 6 are very slow and offer very little "
+"savings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1259
+msgid ""
+"On import, mesh vertex data will be split into two streams within a single "
+"vertex buffer, one for position data and the other for interleaved "
+"attributes data. Recommended to be enabled if targeting mobile devices. "
+"Requires manual reimport of meshes after toggling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1262
+msgid ""
+"Determines the maximum number of sphere occluders that will be used at any "
+"one time.\n"
+"Although you can have many occluders in a scene, each frame the system will "
+"choose from these the most relevant based on a screen space metric, in order "
+"to give the best overall performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1266
+msgid ""
+"The default convention is for portal normals to point outward (face outward) "
+"from the source room.\n"
+"If you accidentally build your level with portals facing the wrong way, this "
+"setting can fix the problem.\n"
+"It will flip named portal meshes (i.e. [code]-portal[/code]) on the initial "
+"convertion to [Portal] nodes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1271
+msgid ""
+"Show conversion logs.\n"
+"[b]Note:[/b] This will automatically be disabled in exports."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1275
+msgid ""
+"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
+"code]. If [code]false[/code], they will be sent as [code]notifications[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1278
+msgid ""
+"If enabled, while merging meshes, the system will also attempt to remove "
+"[Spatial] nodes that no longer have any children.\n"
+"Reducing the number of [Node]s in the scene tree can make traversal more "
+"efficient, but can be switched off in case you wish to use empty [Spatial]s "
+"for markers or some other purpose."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1282
+msgid ""
+"Show logs during PVS generation.\n"
+"[b]Note:[/b] This will automatically be disabled in exports."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1286
+msgid ""
+"Uses a simplified method of generating PVS (potentially visible set) data. "
+"The results may not be accurate where more than one portal join adjacent "
+"rooms.\n"
+"[b]Note:[/b] Generally you should only use this option if you encounter bugs "
+"when it is set to [code]false[/code], i.e. there are problems with the "
+"default method."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1290
+msgid ""
+"If [code]true[/code], allocates the main framebuffer with high dynamic "
+"range. High dynamic range allows the use of [Color] values greater than 1.\n"
+"[b]Note:[/b] Only available on the GLES3 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1294
+msgid ""
+"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
+"devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1297
+msgid ""
+"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
+"architecture already does this."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1300
+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:1303
+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:1306
+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:1309
+msgid ""
+"The video driver to use (\"GLES2\" or \"GLES3\").\n"
+"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
+"video-driver[/code] command line argument, or by the [member rendering/"
+"quality/driver/fallback_to_gles2] option if the target system does not "
+"support GLES3 and falls back to GLES2. In such cases, this property is not "
+"updated, so use [method OS.get_current_video_driver] to query it at run-time."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1313
+msgid ""
+"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
+"driver is not supported.\n"
+"[b]Note:[/b] The two video drivers are not drop-in replacements for each "
+"other, so a game designed for GLES3 might not work properly when falling "
+"back to GLES2. In particular, some features of the GLES3 backend are not "
+"available in GLES2. Enabling this setting also means that both ETC and ETC2 "
+"VRAM-compressed textures will be exported on Android and iOS, increasing the "
+"data pack's size."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1317
+msgid ""
+"Maximum anisotropic filter level used for textures with anisotropy enabled. "
+"Higher values will result in sharper textures when viewed from oblique "
+"angles, at the cost of performance. Only power-of-two values are valid (2, "
+"4, 8, 16)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1320
+msgid ""
+"Sets the number of MSAA samples to use. 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:1324
+msgid ""
+"If set to a value greater than [code]0.0[/code], contrast-adaptive "
+"sharpening will be applied to the 3D viewport. This has a low performance "
+"cost and can be used to recover some of the sharpness lost from using FXAA. "
+"Values around [code]0.5[/code] generally give the best results. See also "
+"[member rendering/quality/filters/use_fxaa]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1327
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/"
+"depth/hdr] must also be [code]true[/code] for debanding to be effective.\n"
+"[b]Note:[/b] There are known issues with debanding breaking rendering on "
+"mobile platforms. Due to this, it is recommended to leave this option "
+"disabled when targeting mobile platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1332
+msgid ""
+"Enables FXAA in the root Viewport. 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [member rendering/"
+"quality/filters/sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1335
+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:1338
+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:1341
+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:1344
+msgid ""
+"Enable usage of bicubic sampling in baked lightmaps. This results in "
+"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
+"changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1347
+msgid ""
+"Lower-end override for [member rendering/quality/lightmapping/"
+"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1350
+msgid ""
+"Size of the atlas used by reflection probes. A larger size can result in "
+"higher visual quality, while a smaller size will be faster and take up less "
+"memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1353
+msgid ""
+"Number of subdivisions to use for the reflection atlas. A higher number "
+"lowers the quality of each atlas, but allows you to use more."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1356
+msgid ""
+"If [code]true[/code], uses a high amount of samples to create blurred "
+"variants of reflection probes and panorama backgrounds (sky). Those blurred "
+"variants are used by rough materials."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1359
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/"
+"high_quality_ggx] on mobile devices, due to performance concerns or driver "
+"support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1362
+msgid ""
+"Limits the size of the irradiance map which is normally determined by "
+"[member Sky.radiance_size]. A higher size results in a higher quality "
+"irradiance map similarly to [member rendering/quality/reflections/"
+"high_quality_ggx]. Use a higher value when using high-frequency HDRI maps, "
+"otherwise keep this as low as possible.\n"
+"[b]Note:[/b] Low and mid range hardware do not support complex irradiance "
+"maps well and may crash if this is set too high."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1366
+msgid ""
+"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
+"probes and panorama backgrounds (sky). This reduces jitter noise on "
+"reflections, but costs more performance and memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1369
+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:1372
+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:1375
+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:1378
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Lambert material "
+"lighting model instead of Burley."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1381
+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:1384
+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:1387
+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:1390
+msgid ""
+"If [code]true[/code], enables new physical light attenuation for "
+"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
+"appearance with a very small performance cost. When physical light "
+"attenuation is enabled, lights will appear to be darker as a result of the "
+"new attenuation formula. This can be compensated by adjusting the lights' "
+"energy or attenuation values.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1394
+msgid ""
+"Size for cubemap into which the shadow is rendered before being copied into "
+"the shadow atlas. A higher number can result in higher resolution shadows "
+"when used with a higher [member rendering/quality/shadow_atlas/size]. "
+"Setting higher than a quarter of the [member rendering/quality/shadow_atlas/"
+"size] will not result in a perceptible increase in visual quality."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
+msgid ""
+"Subdivision quadrant size for shadow mapping. See shadow mapping "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1409
+msgid ""
+"Size for shadow atlas (used for OmniLights and SpotLights). See "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1412
+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:1415
+msgid ""
+"Shadow filter mode. Higher-quality settings result in smoother shadows that "
+"flicker less when moving. \"Disabled\" is the fastest option, but also has "
+"the lowest quality. \"PCF5\" is smoother but is also slower. \"PCF13\" is "
+"the smoothest option, but is also the slowest.\n"
+"[b]Note:[/b] When using the GLES2 backend, the \"PCF13\" option actually "
+"uses 16 samples to emulate linear filtering in the shader. This results in a "
+"shadow appearance similar to the one produced by the GLES3 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1419
+msgid ""
+"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1422
+msgid ""
+"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
+"GLES2 and GLES3).\n"
+"See also [member rendering/quality/skinning/software_skinning_fallback]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1426
+msgid ""
+"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
+"doesn't support the default GPU skinning process with GLES2.\n"
+"If [code]false[/code], an alternative skinning process on the GPU is used in "
+"this case (slower in most cases).\n"
+"See also [member rendering/quality/skinning/force_software_skinning].\n"
+"[b]Note:[/b] When the software skinning fallback is triggered, custom vertex "
+"shaders will behave in a different way, because the bone transform will be "
+"already applied to the modelview matrix."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1432
+msgid ""
+"The rendering octree balance can be changed to favor smaller ([code]0[/"
+"code]), or larger ([code]1[/code]) branches.\n"
+"Larger branches can increase performance significantly in some projects."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1436
+msgid ""
+"Enables the use of bounding volume hierarchy instead of octree for rendering "
+"spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1439
+msgid ""
+"Improves quality of subsurface scattering, but cost significantly increases."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1442
+msgid "Quality setting for subsurface scattering (samples taken)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1445
+msgid "Max radius used for subsurface scattering samples."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1448
+msgid ""
+"Weight subsurface scattering samples. Helps to avoid reading samples from "
+"unrelated parts of the screen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1451
+msgid ""
+"Use high-quality voxel cone tracing. This results in better-looking "
+"reflections, but is much more expensive on the GPU."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1454
+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:1457
+msgid ""
+"If [code]true[/code], a thread safe version of BVH (bounding volume "
+"hierarchy) will be used in rendering and Godot physics.\n"
+"Try enabling this option if you see any visual anomalies in 3D (such as "
+"incorrect object visibility)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1461
+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 GLES3 "
+"renderer.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1465
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1469
+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 GLES3 renderer.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1473
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1477
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1481
+msgid ""
+"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
+"pixels)."
+msgstr ""
+
+#: doc/classes/ProximityGroup.xml:4 doc/classes/ProximityGroup.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:11 doc/classes/Viewport.xml:19
+#: doc/classes/ViewportTexture.xml:13
+msgid "https://godotengine.org/asset-library/asset/129"
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:17
+msgid "Offset of the generated Quad. Useful for particles."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:20
+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/3.4/tutorials/3d/using_transforms."
+"html#interpolating-with-quaternions"
+msgstr ""
+
+#: doc/classes/Quat.xml:20
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr ""
+
+#: doc/classes/Quat.xml:27
+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:35
+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:45
+msgid "Constructs a quaternion defined by the given values."
+msgstr ""
+
+#: doc/classes/Quat.xml:52
+msgid ""
+"Returns the angle between this quaternion and [code]to[/code]. This is the "
+"magnitude of the angle you would need to rotate by to get from one to the "
+"other.\n"
+"[b]Note:[/b] This method has an abnormally high amount of floating-point "
+"error, so methods such as [method @GDScript.is_zero_approx] will not work "
+"reliably."
+msgstr ""
+
+#: doc/classes/Quat.xml:63
+msgid ""
+"Performs a cubic spherical interpolation between quaternions [code]pre_a[/"
+"code], this vector, [code]b[/code], and [code]post_b[/code], by the given "
+"amount [code]weight[/code]."
+msgstr ""
+
+#: doc/classes/Quat.xml:70
+msgid "Returns the dot product of two quaternions."
+msgstr ""
+
+#: doc/classes/Quat.xml:76
+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:82
+msgid "Returns the inverse of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:89
+msgid ""
+"Returns [code]true[/code] if this quaternion and [code]quat[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Quat.xml:95
+msgid "Returns whether the quaternion is normalized or not."
+msgstr ""
+
+#: doc/classes/Quat.xml:101
+msgid "Returns the length of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:107
+msgid "Returns the length of the quaternion, squared."
+msgstr ""
+
+#: doc/classes/Quat.xml:113
+msgid "Returns a copy of the quaternion, normalized to unit length."
+msgstr ""
+
+#: doc/classes/Quat.xml:120
+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:126
+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:134
+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:143
+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:150
+msgid "Returns a vector transformed (multiplied) by this quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:156
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:160
+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:164
+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:168
+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:174
+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]\n"
+"[b]Note:[/b] The default values of [member seed] and [member state] "
+"properties are pseudo-random, and changes when calling [method randomize]. "
+"The [code]0[/code] value documented here is a placeholder, and not the "
+"actual default seed."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:19
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation."
+"html"
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:25
+msgid ""
+"Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:33
+msgid ""
+"Generates a pseudo-random float between [code]from[/code] and [code]to[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:41
+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:47
+msgid ""
+"Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
+"[code]4294967295[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:55
+msgid ""
+"Generates a pseudo-random 32-bit signed integer between [code]from[/code] "
+"and [code]to[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:61
+msgid "Setups a time-based seed to generator."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:67
+msgid ""
+"Initializes the random number generator state based on the given seed value. "
+"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.\n"
+"[b]Note:[/b] Setting this property produces a side effect of changing the "
+"internal [member state], so make sure to initialize the seed [i]before[/i] "
+"modifying the [member state]:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"rng.seed = hash(\"Godot\")\n"
+"rng.state = 100 # Restore to some previously saved state.\n"
+"[/codeblock]\n"
+"[b]Warning:[/b] the getter of this property returns the previous [member "
+"state], and not the initial seed value, which is going to be fixed in Godot "
+"4.0."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:78
+msgid ""
+"The current state of the random number generator. Save and restore this "
+"property to restore the generator to a previous state:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"print(rng.randf())\n"
+"var saved_state = rng.state # Store current state.\n"
+"print(rng.randf()) # Advance internal state.\n"
+"rng.state = saved_state # Restore the state.\n"
+"print(rng.randf()) # Prints the same value as in previous.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Do not set state to arbitrary values, since the random number "
+"generator requires the state to have certain qualities to behave properly. "
+"It should only be set to values that came from the state property itself. To "
+"initialize the random number generator with arbitrary input, use [member "
+"seed] instead."
+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:16
+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:22
+msgid "Stops range from sharing its member variables with any other."
+msgstr ""
+
+#: doc/classes/Range.xml:28
+msgid ""
+"If [code]true[/code], [member value] may be greater than [member max_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:31
+msgid ""
+"If [code]true[/code], [member value] may be less than [member min_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:34
+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:37
+msgid ""
+"Maximum value. Range is clamped if [code]value[/code] is greater than "
+"[code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:40
+msgid ""
+"Minimum value. Range is clamped if [code]value[/code] is less than "
+"[code]min_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:43
+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:46
+msgid "The value mapped between 0 and 1."
+msgstr ""
+
+#: doc/classes/Range.xml:49
+msgid ""
+"If [code]true[/code], [code]value[/code] will always be rounded to the "
+"nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:52
+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:55
+msgid "Range's current value."
+msgstr ""
+
+#: doc/classes/Range.xml:61
+msgid ""
+"Emitted when [member min_value], [member max_value], [member page], or "
+"[member step] change."
+msgstr ""
+
+#: doc/classes/Range.xml:67
+msgid "Emitted when [member value] changes."
+msgstr ""
+
+#: doc/classes/RayCast.xml:4 doc/classes/RayCast2D.xml:4
+msgid "Query the closest object intersecting a ray."
+msgstr ""
+
+#: doc/classes/RayCast.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"
+"RayCast 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"
+"RayCast can be configured to report collisions with [Area]s ([member "
+"collide_with_areas]) and/or [PhysicsBody]s ([member collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast 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/RayCast.xml:22 doc/classes/RayCast2D.xml:21
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast.xml:29 doc/classes/RayCast2D.xml:28
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:35 doc/classes/RayCast2D.xml:34
+msgid "Removes all collision exceptions for this ray."
+msgstr ""
+
+#: doc/classes/RayCast.xml:41
+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] [code]enabled[/code] is not required for this to work."
+msgstr ""
+
+#: doc/classes/RayCast.xml:49 doc/classes/RayCast2D.xml:47
+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/RayCast.xml:55 doc/classes/RayCast2D.xml:53
+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/RayCast.xml:62
+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/RayCast.xml:69 doc/classes/RayCast2D.xml:66
+msgid ""
+"Returns the normal of the intersecting object's shape at the collision point."
+msgstr ""
+
+#: doc/classes/RayCast.xml:75 doc/classes/RayCast2D.xml:72
+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/RayCast.xml:82 doc/classes/RayCast2D.xml:79
+msgid ""
+"Returns whether any object is intersecting with the ray's vector "
+"(considering the vector length)."
+msgstr ""
+
+#: doc/classes/RayCast.xml:89 doc/classes/RayCast2D.xml:86
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast.xml:96 doc/classes/RayCast2D.xml:93
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:104
+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/RayCast.xml:111 doc/classes/RayCast2D.xml:107
+msgid ""
+"The ray's destination point, relative to the RayCast's [code]position[/code]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:114
+msgid "If [code]true[/code], collision with [Area]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:117
+msgid "If [code]true[/code], collision with [PhysicsBody]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:120 doc/classes/RayCast2D.xml:116
+msgid ""
+"The ray's collision mask. Only objects in at least one collision layer "
+"enabled in the mask will be detected. See [url=https://docs.godotengine.org/"
+"en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks]Collision layers and masks[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/RayCast.xml:123
+msgid ""
+"The custom color to use to draw the shape in the editor and at run-time if "
+"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
+"color will be highlighted at run-time if the [RayCast] is colliding with "
+"something.\n"
+"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
+"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
+msgstr ""
+
+#: doc/classes/RayCast.xml:127
+msgid ""
+"If set to [code]1[/code], a line is used as the debug shape. Otherwise, a "
+"truncated pyramid is drawn to represent the [RayCast]. Requires [b]Visible "
+"Collision Shapes[/b] to be enabled in the [b]Debug[/b] menu for the debug "
+"shape to be visible at run-time."
+msgstr ""
+
+#: doc/classes/RayCast.xml:130 doc/classes/RayCast2D.xml:119
+msgid "If [code]true[/code], collisions will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:133
+msgid ""
+"If [code]true[/code], collisions will be ignored for this RayCast's "
+"immediate parent."
+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:40
+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] [code]enabled[/code] is not required for this to work."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:101
+msgid ""
+"Sets or clears individual bits on the collision mask. This makes selecting "
+"the areas scanned easier."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:110
+msgid "If [code]true[/code], collision with [Area2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:113
+msgid "If [code]true[/code], collision with [PhysicsBody2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:122
+msgid ""
+"If [code]true[/code], the parent node will be excluded from collision "
+"detection."
+msgstr ""
+
+#: doc/classes/RayShape.xml:4
+msgid "Ray shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/RayShape.xml:7
+msgid ""
+"Ray shape for 3D collisions, which can be set into a [PhysicsBody] or "
+"[Area]. 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/RayShape.xml:15 doc/classes/RayShape2D.xml:15
+msgid "The ray's length."
+msgstr ""
+
+#: doc/classes/RayShape.xml:18 doc/classes/RayShape2D.xml:18
+msgid "If [code]true[/code], allow the shape to return the correct normal."
+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/Rect2.xml:4
+msgid "2D axis-aligned bounding box."
+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.\n"
+"The 3D counterpart to [Rect2] is [AABB]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:22
+msgid "Constructs a [Rect2] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2.xml:32
+msgid "Constructs a [Rect2] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2.xml:38
+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:45
+msgid "Returns the intersection of this [Rect2] and b."
+msgstr ""
+
+#: doc/classes/Rect2.xml:52
+msgid ""
+"Returns [code]true[/code] if this [Rect2] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2.xml:59
+msgid "Returns this [Rect2] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:65
+msgid "Returns the area of the [Rect2]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:72
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2.xml:82
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2.xml:90
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2.xml:96
+msgid "Returns [code]true[/code] if the [Rect2] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2.xml:103
+msgid "Returns [code]true[/code] if the [Rect2] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:111
+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:119
+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:126
+msgid "Returns a larger [Rect2] that contains this [Rect2] 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:17
+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 other [Object] types, 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.\n"
+"[b]Note:[/b] In C#, references will not be freed instantly after they are no "
+"longer in use. Instead, garbage collection will run periodically and will "
+"free references that are no longer in use. This means that unused references "
+"will linger on for a while before being removed."
+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:26
+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:33
+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]. If you need to "
+"display a rectangle filled with a solid color, consider using [ColorRect] "
+"instead."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:15
+msgid "Sets the border [Color] of the [ReferenceRect]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:18
+msgid ""
+"Sets the border width of the [ReferenceRect]. The border grows both inwards "
+"and outwards with respect to the rectangle box."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:21
+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 ""
+"Capture its surroundings as a dual paraboloid image, 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.\n"
+"[b]Note:[/b] By default Godot will only render 16 reflection probes. If you "
+"need more, increase the number of atlas subdivisions. This setting can be "
+"found in [member ProjectSettings.rendering/quality/reflections/"
+"atlas_subdiv].\n"
+"[b]Note:[/b] The GLES2 backend will only display two reflection probes at "
+"the same time for a single mesh. If possible, split up large meshes that "
+"span over multiple reflection probes into smaller ones."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html"
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:19
+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:22
+msgid ""
+"Sets the cull mask which determines what objects are drawn by this probe. "
+"Every [VisualInstance] 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:25
+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:28
+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:31
+msgid ""
+"Defines the reflection intensity. Intensity modulates the strength of the "
+"reflection."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:34
+msgid ""
+"Sets the ambient light color to be used when this probe is set to [member "
+"interior_enable]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:37
+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:40
+msgid ""
+"Sets the energy multiplier for this reflection probe's ambient light "
+"contribution when set to [member interior_enable]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:43
+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:46
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:49
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:52
+msgid ""
+"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
+"[constant UPDATE_ALWAYS]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:57
+msgid "Update the probe once on the next frame."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:60
+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 result in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(result.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:55
+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:62
+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:68
+msgid "Returns the number of capturing groups in compiled pattern."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:74
+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:80
+msgid "Returns the original search pattern that was compiled."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:86
+msgid "Returns whether this object has a valid search pattern assigned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:95
+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:104
+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:115
+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:16
+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:23
+msgid "Returns the number of capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:30
+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:38
+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:45
+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:48
+msgid "An [Array] of the match and its capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:51
+msgid ""
+"The source string used with the search pattern to find this matching result."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:4
+msgid ""
+"RemoteTransform pushes its own [Transform] to another [Spatial] derived Node "
+"in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:7
+msgid ""
+"RemoteTransform pushes its own [Transform] to another [Spatial] 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/RemoteTransform.xml:16
+msgid ""
+"[RemoteTransform] 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/RemoteTransform.xml:22
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:25 doc/classes/RemoteTransform2D.xml:25
+msgid "If [code]true[/code], the remote node's position is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:28 doc/classes/RemoteTransform2D.xml:28
+msgid "If [code]true[/code], the remote node's rotation is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:31 doc/classes/RemoteTransform2D.xml:31
+msgid "If [code]true[/code], the remote node's scale is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:34 doc/classes/RemoteTransform2D.xml:34
+msgid ""
+"If [code]true[/code], global coordinates are used. If [code]false[/code], "
+"local coordinates are used."
+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:16
+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:22
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
+"position in the scene."
+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. Since they inherit from [Reference], resources "
+"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.\n"
+"[b]Note:[/b] In C#, resources will not be freed instantly after they are no "
+"longer in use. Instead, garbage collection will run periodically and will "
+"free resources that are no longer in use. This means that unused resources "
+"will linger on for a while before being removed."
+msgstr ""
+
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:25
+msgid ""
+"Duplicates the resource, returning a new resource with the exported members "
+"copied. [b]Note:[/b] To duplicate the resource the constructor is called "
+"without arguments. This method will error when the constructor doesn't have "
+"default values.\n"
+"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.\n"
+"[b]Note:[/b] When duplicating a resource, only [code]export[/code]ed "
+"properties are copied. Other properties will be set to their default value "
+"in the new resource."
+msgstr ""
+
+#: doc/classes/Resource.xml:34
+msgid ""
+"Emits the [signal changed] signal.\n"
+"If external objects which depend on this resource should be updated, this "
+"method must be called manually whenever the state of this resource has "
+"changed (such as modification of properties).\n"
+"The method is equivalent to:\n"
+"[codeblock]\n"
+"emit_signal(\"changed\")\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is called automatically for built-in resources."
+msgstr ""
+
+#: doc/classes/Resource.xml:46
+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:52
+msgid ""
+"Returns the RID of the resource (or an empty RID). Many resources (such as "
+"[Texture], [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:58
+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:66
+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:72
+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:75
+msgid ""
+"The name of the resource. This is an optional identifier. If [member "
+"resource_name] is not empty, its value will be displayed to represent the "
+"current resource in the editor inspector. For built-in scripts, the [member "
+"resource_name] will be displayed as the tab name in the script editor."
+msgstr ""
+
+#: doc/classes/Resource.xml:78
+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:84
+msgid ""
+"Emitted whenever the resource changes.\n"
+"[b]Note:[/b] This signal is not emitted automatically for custom resources, "
+"which means that you need to create a setter and emit the signal yourself."
+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 on 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] ([StreamTexture]) first, so they can be loaded with "
+"better efficiency on the graphics card."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:19
+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:26
+msgid "Gets the list of extensions for files this loader is able to read."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:33
+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:41
+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:50
+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:58
+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:17
+msgid ""
+"Returns the list of extensions available for saving the resource object, "
+"provided it is recognized (see [method recognize])."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:24
+msgid "Returns whether the given resource object can be saved by this saver."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:33
+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/ResourceImporter.xml:4
+msgid "Base class for the implementation of core resource importers."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:7
+msgid ""
+"This is the base class for the resource importers implemented in core. To "
+"implement your own resource importers using editor plugins, see "
+"[EditorImportPlugin]."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:16
+msgid "The default import order."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:19
+msgid ""
+"The import order for scenes, which ensures scenes are imported [i]after[/i] "
+"all other core resources such as textures. Custom importers should generally "
+"have an import order lower than [code]100[/code] to avoid issues when "
+"importing scenes that rely on custom resources."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:4
+msgid "Interactive [Resource] loader."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:7
+msgid ""
+"Interactive [Resource] loader. This object is returned by [ResourceLoader] "
+"when performing an interactive load. It allows loading resources with high "
+"granularity, which makes it mainly useful for displaying loading bars or "
+"percentages."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:15
+msgid ""
+"Returns the loaded resource if the load operation completed successfully, "
+"[code]null[/code] otherwise."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:21
+msgid ""
+"Returns the load stage. The total amount of stages can be queried with "
+"[method get_stage_count]."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:27
+msgid ""
+"Returns the total amount of stages (calls to [method poll]) needed to "
+"completely load this resource."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:33
+msgid ""
+"Polls the loading operation, i.e. loads a data chunk up to the next stage.\n"
+"Returns [constant OK] if the poll is successful but the load operation has "
+"not finished yet (intermediate stage). This means [method poll] will have to "
+"be called again until the last stage is completed.\n"
+"Returns [constant ERR_FILE_EOF] if the load operation has completed "
+"successfully. The loaded resource can be obtained by calling [method "
+"get_resource].\n"
+"Returns another [enum Error] code if the poll has failed."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:42
+msgid ""
+"Polls the loading operation successively until the resource is completely "
+"loaded or a [method poll] fails.\n"
+"Returns [constant ERR_FILE_EOF] if the load operation has completed "
+"successfully. The loaded resource can be obtained by calling [method "
+"get_resource].\n"
+"Returns another [enum Error] code if a poll has failed, aborting the "
+"operation."
+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."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:19
+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:27
+msgid ""
+"Returns the dependencies for the resource at the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:34
+msgid "Returns the list of recognized extensions for a resource type."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:41
+msgid ""
+"[i]Deprecated method.[/i] Use [method has_cached] or [method exists] instead."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:48
+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] or [method "
+"load_interactive] methods 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:58
+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]. "
+"Anything that inherits from [Resource] can be used as a type hint, for "
+"example [Image].\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.\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:71
+msgid ""
+"Starts loading a resource interactively. The returned "
+"[ResourceInteractiveLoader] object allows to load with high granularity, "
+"calling its [method ResourceInteractiveLoader.poll] method successively to "
+"load chunks.\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader]. "
+"Anything that inherits from [Resource] can be used as a type hint, for "
+"example [Image]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:79
+msgid ""
+"Changes the behavior on missing sub-resources. The default behavior is to "
+"abort loading."
+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:18
+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:25
+msgid "Returns the resource associated to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:31
+msgid "Returns the list of resources inside the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:38
+msgid ""
+"Returns [code]true[/code] if the preloader contains a resource associated to "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:45
+msgid ""
+"Removes the resource associated to [code]name[/code] from the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:53
+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:17
+msgid ""
+"Returns the list of extensions available for saving a resource of a given "
+"type."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:26
+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:34
+msgid "Save the resource with a path relative to the scene which uses it."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:37
+msgid "Bundles external resources."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:40
+msgid ""
+"Changes the [member Resource.resource_path] of the saved resource to match "
+"its new location."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:43
+msgid ""
+"Do not save editor-specific metadata (identified by their [code]__editor[/"
+"code] prefix)."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:46
+msgid "Save as big endian (see [member File.endian_swap])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:49
+msgid ""
+"Compress the resource on save using [constant File.COMPRESSION_ZSTD]. Only "
+"available for binary resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:52
+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:24
+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.\n"
+"[b]Note:[/b] RichTextLabel doesn't support entangled BBCode tags. For "
+"example, instead of using [code][b]bold[i]bold italic[/b]italic[/i][/code], "
+"use [code][b]bold[i]bold italic[/i][/b][i]italic[/i][/code].\n"
+"[b]Note:[/b] [code]push_*/pop[/code] functions won't affect BBCode.\n"
+"[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.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:16
+msgid "https://godotengine.org/asset-library/asset/132"
+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.\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:34
+msgid "Adds raw non-BBCode-parsed text to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:41
+msgid ""
+"Parses [code]bbcode[/code] and adds tags to the tag stack as needed. Returns "
+"the result of the parsing, [constant OK] if successful.\n"
+"[b]Note:[/b] Using this method, you can't close a tag that was opened in a "
+"previous [method append_bbcode] call. This is done to improve performance, "
+"especially when updating large RichTextLabels since rebuilding the whole "
+"BBCode every time would be slower. If you absolutely need to close a tag in "
+"a future method call, append the [member bbcode_text] instead of using "
+"[method append_bbcode]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:48
+msgid "Clears the tag stack and sets [member bbcode_text] to an empty string."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:54
+msgid "Returns the height of the content."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:60
+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:66
+msgid ""
+"Returns the total number of characters from text tags. Does not include "
+"BBCodes."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:72
+msgid ""
+"Returns the vertical scrollbar.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:79
+msgid "Returns the number of visible lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:86
+msgid ""
+"Installs a custom effect. [code]effect[/code] should be a valid "
+"[RichTextEffect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:92
+msgid "Adds a newline tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:99
+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:106
+msgid "Parses BBCode parameter [code]expressions[/code] into a dictionary."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:112
+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:119
+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:125
+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:131
+msgid ""
+"Adds a [code][font][/code] tag with a bold italics font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:137
+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:144
+msgid "Adds a [code][color][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:151
+msgid ""
+"Adds a [code][font][/code] tag to the tag stack. Overrides default fonts for "
+"its duration."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:158
+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:164
+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:171
+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:178
+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:184
+msgid "Adds a [code][font][/code] tag with a monospace font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:190
+msgid "Adds a [code][font][/code] tag with a normal font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:196
+msgid "Adds a [code][s][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:203
+msgid "Adds a [code][table=columns][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:209
+msgid "Adds a [code][u][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:216
+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:224
+msgid "Scrolls the window's top line to match [code]line[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:233
+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:241
+msgid ""
+"If [code]true[/code], the label uses BBCode formatting.\n"
+"[b]Note:[/b] Trying to alter the [RichTextLabel]'s text with [method "
+"add_text] will reset this to [code]false[/code]. Use instead [method "
+"append_bbcode] to preserve BBCode formatting."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:245
+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 the [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, unless you absolutely need to close "
+"a tag that was opened in an earlier method call."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:249
+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:253
+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:257
+msgid ""
+"If [code]true[/code], the label underlines meta tags such as [code][url]"
+"{text}[/url][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:260
+msgid "If [code]true[/code], the label uses the custom font color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:263
+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:268
+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:271
+msgid ""
+"If [code]true[/code], the window scrolls down to display new content "
+"automatically."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:274
+msgid "If [code]true[/code], the label allows text selection."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:277
+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:280
+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:284
+msgid ""
+"The restricted number of characters to display in the label. If [code]-1[/"
+"code], all characters will be displayed.\n"
+"[b]Note:[/b] Setting this property updates [member percent_visible] based on "
+"current [method get_total_character_count]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:292
+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:298
+msgid "Triggers when the mouse exits a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:304
+msgid "Triggers when the mouse enters a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:310
+msgid "Makes text left aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:313
+msgid "Makes text centered."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:316
+msgid "Makes text right aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:319
+msgid "Makes text fill width."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:322
+msgid "Each list item has a number marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:325
+msgid "Each list item has a letter marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:328
+msgid "Each list item has a filled circle marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:371
+msgid "The font used for bold text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:374
+msgid "The font used for bold italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:377
+msgid "The default text color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:380
+msgid "The background The background used when the [RichTextLabel] is focused."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:383
+msgid ""
+"The color of selected text, used when [member selection_enabled] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:386
+msgid "The color of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:389
+msgid "The font used for italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:392
+msgid "The vertical space between lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:395
+msgid "The font used for monospace text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:398
+msgid "The normal background for the [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:401
+msgid "The default text font."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:404
+msgid "The color of the selection box."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:407
+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:410
+msgid "The horizontal offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:413
+msgid "The vertical offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:416
+msgid "The horizontal separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:419
+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 "
+"[VisualServer]."
+msgstr ""
+
+#: doc/classes/RID.xml:16
+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:22
+msgid "Returns the ID of the referenced resource."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:4
+msgid ""
+"Physics Body whose position is determined through physics simulation in 3D "
+"space."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:7
+msgid ""
+"This is the node that implements full 3D physics. This means that you do not "
+"control a RigidBody 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 RigidBody has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] Don't change a RigidBody'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].\n"
+"With Bullet physics (the default), the center of mass is the RigidBody3D "
+"center. With GodotPhysics, the center of mass is the average of the "
+"[CollisionShape] centers."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:23
+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/RigidBody.xml:30
+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/RigidBody.xml:39
+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/RigidBody.xml:47
+msgid ""
+"Adds a constant rotational force (i.e. a motor) without affecting position."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:54
+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/RigidBody.xml:63
+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/RigidBody.xml:70
+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/RigidBody.xml:77
+msgid ""
+"Returns [code]true[/code] if the specified linear or rotational axis is "
+"locked."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:83 doc/classes/RigidBody2D.xml:73
+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/RigidBody.xml:90
+msgid ""
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the RigidBody."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:98
+msgid "Locks the specified linear or rotational axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:111
+msgid ""
+"Damps RigidBody's rotational forces.\n"
+"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:115
+msgid "RigidBody's rotational velocity."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:118
+msgid "Lock the body's rotation in the X axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:121
+msgid "Lock the body's rotation in the Y axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:124
+msgid "Lock the body's rotation in the Z axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:127
+msgid "Lock the body's movement in the X axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:130
+msgid "Lock the body's movement in the Y axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:133
+msgid "Lock the body's movement in the Z axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:136 doc/classes/RigidBody2D.xml:110
+#: doc/classes/StaticBody.xml:19 doc/classes/StaticBody2D.xml:16
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness).\n"
+"Deprecated, use [member PhysicsMaterial.bounce] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:140
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping].\n"
+"[b]Note:[/b] A RigidBody3D will never enter sleep mode automatically if its "
+"[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep "
+"manually by setting its [member sleeping] property to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:144
+msgid ""
+"If [code]true[/code], the RigidBody will emit signals when it collides with "
+"another RigidBody. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:147
+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/RigidBody.xml:151
+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/RigidBody.xml:155
+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/RigidBody.xml:158
+msgid ""
+"The body's friction, from 0 (frictionless) to 1 (max friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:162
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce RigidBody'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/RigidBody.xml:165
+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.\n"
+"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:169
+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/RigidBody.xml:172 doc/classes/RigidBody2D.xml:149
+msgid "The body's mass."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:175
+msgid "The body mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:178 doc/classes/RigidBody2D.xml:155
+#: doc/classes/StaticBody.xml:33 doc/classes/StaticBody2D.xml:30
+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/RigidBody.xml:182 doc/classes/RigidBody2D.xml:159
+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/RigidBody.xml:185
+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/RigidBody.xml:192
+msgid ""
+"Emitted when a collision with another [PhysicsBody] or [GridMap] occurs. "
+"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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:199
+msgid ""
+"Emitted when the collision with another [PhysicsBody] or [GridMap] ends. "
+"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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:209
+msgid ""
+"Emitted when one of this RigidBody's [Shape]s collides with another "
+"[PhysicsBody] or [GridMap]'s [Shape]s. 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. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody] or "
+"[MeshLibrary]'s [CollisionObject] used by the [PhysicsServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the other "
+"[PhysicsBody] or [GridMap] used by the [PhysicsServer]. Get the "
+"[CollisionShape] node with [code]body.shape_owner_get_owner(body_shape_index)"
+"[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this RigidBody "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code].\n"
+"[b]Note:[/b] Bullet physics cannot identify the shape index when using a "
+"[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a "
+"[ConcavePolygonShape] with Bullet physics if you need shape indices."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:223
+msgid ""
+"Emitted when the collision between one of this RigidBody's [Shape]s and "
+"another [PhysicsBody] or [GridMap]'s [Shape]s ends. 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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody] or "
+"[MeshLibrary]'s [CollisionObject] used by the [PhysicsServer]. [GridMap]s "
+"are detected if the Meshes have [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the other "
+"[PhysicsBody] or [GridMap] used by the [PhysicsServer]. Get the "
+"[CollisionShape] node with [code]body.shape_owner_get_owner(body_shape_index)"
+"[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this RigidBody "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code].\n"
+"[b]Note:[/b] Bullet physics cannot identify the shape index when using a "
+"[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a "
+"[ConcavePolygonShape] with Bullet physics if you need shape indices."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:233 doc/classes/RigidBody2D.xml:208
+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/RigidBody.xml:240
+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/RigidBody.xml:243
+msgid ""
+"Static mode. The body behaves like a [StaticBody], and can only move by user "
+"code."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:246
+msgid ""
+"Character body mode. This behaves like a rigid body, but can not rotate."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:249
+msgid ""
+"Kinematic body mode. The body behaves like a [KinematicBody], and can only "
+"move by user code."
+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].\n"
+"The center of mass is always located at the node's origin without taking "
+"into account the [CollisionShape2D] centroid offsets."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:15
+msgid "https://godotengine.org/asset-library/asset/119"
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:16 doc/classes/Sprite.xml:10
+msgid "https://godotengine.org/asset-library/asset/148"
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:23
+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: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 (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:81
+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:91
+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 "
+"[Physics2DTestMotionResult], which contains additional information about the "
+"collision (should there be one)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:97
+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].\n"
+"See [member ProjectSettings.physics/2d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:104
+msgid "The body's total applied force."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:107
+msgid "The body's total applied torque."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:114
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping].\n"
+"[b]Note:[/b] A RigidBody2D will never enter sleep mode automatically if its "
+"[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep "
+"manually by setting its [member sleeping] property to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:118
+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:121
+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)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:125
+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:129
+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:132
+msgid ""
+"The body's friction. Values range from [code]0[/code] (frictionless) to "
+"[code]1[/code] (maximum friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:136
+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:139
+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:142
+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].\n"
+"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:152
+msgid "The body's mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:162
+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:169
+msgid ""
+"Emitted when a collision with another [PhysicsBody2D] or [TileMap] occurs. "
+"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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:176
+msgid ""
+"Emitted when the collision with another [PhysicsBody2D] or [TileMap] ends. "
+"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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:186
+msgid ""
+"Emitted when one of this RigidBody2D's [Shape2D]s collides with another "
+"[PhysicsBody2D] or [TileMap]'s [Shape2D]s. 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. [TileMap]s are detected if the "
+"[TileSet] has Collision [Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the other "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this "
+"RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node "
+"with [code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:199
+msgid ""
+"Emitted when the collision between one of this RigidBody2D's [Shape2D]s and "
+"another [PhysicsBody2D] or [TileMap]'s [Shape2D]s ends. 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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the other "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this "
+"RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node "
+"with [code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:215
+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:218
+msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:221
+msgid ""
+"Character mode. Similar to [constant MODE_RIGID], but the body can not "
+"rotate."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:224
+msgid ""
+"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
+"by code."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:227
+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:230
+msgid ""
+"Continuous collision detection enabled using raycasting. This is faster than "
+"shapecasting but less precise."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:233
+msgid ""
+"Continuous collision detection enabled using shapecasting. This is the "
+"slowest CCD method and the most precise."
+msgstr ""
+
+#: doc/classes/Room.xml:4
+msgid "Room node, used to group objects together locally for [Portal] culling."
+msgstr ""
+
+#: doc/classes/Room.xml:7
+msgid ""
+"The [Portal] culling system requires levels to be built using objects "
+"grouped together by location in areas called [Room]s. In many cases these "
+"will correspond to actual rooms in buildings, but not necessarily (a canyon "
+"area may be treated as a room).\n"
+"Any [VisualInstance] that is a child or grandchild of a [Room] will be "
+"assigned to that room, if the [code]portal_mode[/code] of that "
+"[VisualInstance] is set to [code]STATIC[/code] (does not move) or "
+"[code]DYNAMIC[/code] (moves only within the room).\n"
+"Internally the room boundary must form a [b]convex hull[/b], and by default "
+"this is determined automatically by the geometry of the objects you place "
+"within the room.\n"
+"You can alternatively precisely specify a [b]manual bound[/b]. If you place "
+"a [MeshInstance] with a name prefixed by [code]Bound_[/code], it will turn "
+"off the bound generation from geometry, and instead use the vertices of this "
+"MeshInstance to directly calculate a convex hull during the conversion stage "
+"(see [RoomManager]).\n"
+"In order to see from one room into an adjacent room, [Portal]s must be "
+"placed over non-occluded openings between rooms. These will often be placed "
+"over doors and windows."
+msgstr ""
+
+#: doc/classes/Room.xml:27
+msgid ""
+"If [code]points[/code] are set, the [Room] bounding convex hull will be "
+"built from these points. If no points are set, the room bound will either be "
+"derived from a manual bound ([MeshInstance] with name prefix [code]Bound_[/"
+"code]), or from the geometry within the room.\n"
+"Note that you can use the [code]Generate Points[/code] editor button to get "
+"started. This will use either the geometry or manual bound to generate the "
+"room hull, and save the resulting points, allowing you to edit them to "
+"further refine the bound."
+msgstr ""
+
+#: doc/classes/Room.xml:31
+msgid ""
+"The [code]simplify[/code] value determines to what degree room hulls "
+"(bounds) are simplified, by removing similar planes. A value of 0 gives no "
+"simplification, 1 gives maximum simplification."
+msgstr ""
+
+#: doc/classes/Room.xml:34
+msgid ""
+"The room hull simplification can either use the default value set in the "
+"[RoomManager], or override this and use the per room setting."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:4
+msgid "Groups [Room]s together to allow common functionality."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:7
+msgid ""
+"Although [Room] behaviour can be specified individually, sometimes it is "
+"faster and more convenient to write functionality for a group of rooms.\n"
+"[RoomGroup]s should be placed as children of the [b]room list[/b] (the "
+"parent [Node] of your [Room]s), and [Room]s should be placed in turn as "
+"children of a [RoomGroup] in order to assign them to the RoomGroup.\n"
+"A [RoomGroup] can for example be used to specify [Room]s that are "
+"[b]outside[/b], and switch on or off a directional light, sky, or rain "
+"effect as the player enters / exits the area.\n"
+"[RoomGroup]s receive [b]gameplay callbacks[/b] when the "
+"[code]gameplay_monitor[/code] is switched on, as [code]signal[/code]s or "
+"[code]notification[/code]s as they enter and exit the [b]gameplay area[/b] "
+"(see [RoomManager] for details)."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:18
+msgid ""
+"This priority will be applied to [Room]s within the group. The [Room] "
+"priority allows the use of [b]internal rooms[/b], rooms [i]within[/i] "
+"another room or rooms.\n"
+"When the [Camera] is within more than one room (regular and internal), the "
+"higher priority room will take precedence. So with for example, a house "
+"inside a terrain 'room', you would make the house higher priority, so that "
+"when the camera is within the house, the house is used as the source room, "
+"but outside the house, the terrain room would be used instead."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:4
+msgid "The RoomManager node is used to control the portal culling system."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:7
+msgid ""
+"In order to utilize the portal occlusion culling system, you must build your "
+"level using [Room]s and [Portal]s. Before these can be used at runtime, they "
+"must undergo a short conversion process to build the [code]room graph[/"
+"code], runtime data needed for portal culling. The [code]room graph[/code] "
+"is controlled by the [RoomManager] node, and the [RoomManager] also contains "
+"settings that are common throughout the portal system."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:15
+msgid ""
+"This function clears all converted data from the [b]room graph[/b]. Use this "
+"before unloading a level, when transitioning from level to level, or "
+"returning to a main menu."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:21
+msgid ""
+"This is the most important function in the whole portal culling system. "
+"Without it, the system cannot function.\n"
+"First it goes through every [Room] that is a child of the [code]room list[/"
+"code] node (and [RoomGroup]s within) and converts and adds it to the "
+"[code]room graph[/code].\n"
+"This works for both [Room] nodes, and [Spatial] nodes that follow a special "
+"naming convention. They should begin with the prefix [i]'Room_'[/i], "
+"followed by the name you wish to give the room, e.g. [i]'Room_lounge'[/i]. "
+"This will automatically convert such [Spatial]s to [Room] nodes for you. "
+"This is useful if you want to build you entire room system in e.g. Blender, "
+"and reimport multiple times as you work on the level.\n"
+"The conversion will try to assign [VisualInstance]s that are children and "
+"grandchildren of the [Room] to the room. These should be given a suitable "
+"[code]portal mode[/code] (see the [CullInstance] documentation). The default "
+"[code]portal mode[/code] is [code]STATIC[/code] - objects which are not "
+"expected to move while the level is played, which will typically be most "
+"objects.\n"
+"The conversion will usually use the geometry of these [VisualInstance]s (and "
+"the [Portal]s) to calculate a convex hull bound for the room. These bounds "
+"will be shown in the editor with a wireframe. Alternatively you can specify "
+"a manual custom bound for any room, see the [Room] documentation.\n"
+"By definition, [Camera]s within a room can see everything else within the "
+"room (that is one advantage to using convex hulls). However, in order to see "
+"from one room into adjacent rooms, you must place [Portal]s, which represent "
+"openings that the camera can see through, like windows and doors.\n"
+"[Portal]s are really just specialized [MeshInstance]s. In fact you will "
+"usually first create a portal by creating a [MeshInstance], especially a "
+"[code]plane[/code] mesh instance. You would move the plane in the editor to "
+"cover a window or doorway, with the front face pointing outward from the "
+"room. To let the conversion process know you want this mesh to be a portal, "
+"again we use a special naming convention. [MeshInstance]s to be converted to "
+"a [Portal] should start with the prefix [i]'Portal_'[/i].\n"
+"You now have a choice - you can leave the name as [i]'Portal_'[/i] and allow "
+"the system to automatically detect the nearest [Room] to link. In most cases "
+"this will work fine.\n"
+"An alternative method is to specify the [Room] to link to manually, "
+"appending a suffix to the portal name, which should be the name of the room "
+"you intend to link to. For example [i]'Portal_lounge'[/i] will attempt to "
+"link to the room named [i]'Room_lounge'[/i].\n"
+"There is a special case here - Godot does not allow two nodes to share the "
+"same name. What if you want to manually have more than one portal leading "
+"into the same room? Surely they will need to both be called, e.g. "
+"[i]'Portal_lounge'[/i]?\n"
+"The solution is a wildcard character. After the room name, if you use the "
+"character [i]'*'[/i], this character and anything following it will be "
+"ignored. So you can use for example [i]'Portal_lounge*0'[/i], "
+"[i]'Portal_lounge*1'[/i] etc.\n"
+"Note that [Portal]s that have already been converted to [Portal] nodes "
+"(rather than [MeshInstance]s) still need to follow the same naming "
+"convention, as they will be relinked each time during conversion.\n"
+"It is recommended that you only place objects in rooms that are desired to "
+"stay within those rooms - i.e. [code]portal mode[/code]s [code]STATIC[/code] "
+"or [code]DYNAMIC[/code] (not crossing portals). [code]GLOBAL[/code] and "
+"[code]ROAMING[/code] objects are best placed in another part of the scene "
+"tree, to avoid confusion. See [CullInstance] for a full description of "
+"portal modes."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:39
+msgid ""
+"Switches the portal culling system on and off.\n"
+"It is important to note that when portal culling is active, it is "
+"responsible for [b]all[/b] the 3d culling. Some editor functionality may be "
+"more difficult to use, so switching the active flag is intended to be used "
+"to make sure your [Room] / [Portal] layout works within the editor.\n"
+"Switching to [code]active[/code] will have no effect when the [code]room "
+"graph[/code] is unloaded (the rooms have not yet been converted)."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:44
+msgid ""
+"Large objects can 'sprawl' over (be present in) more than one room. It can "
+"be useful to visualize which objects are sprawling outside the current "
+"room.\n"
+"Toggling this setting turns this debug view on and off."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:48
+msgid ""
+"Usually we don't want objects that only [b]just[/b] cross a boundary into an "
+"adjacent [Room] to sprawl into that room. To prevent this, each [Portal] has "
+"an extra margin, or tolerance zone where objects can enter without sprawling "
+"to a neighbouring room.\n"
+"In most cases you can set this here for all portals. It is possible to "
+"override the margin for each portal."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:52
+msgid ""
+"When using a partial or full PVS, the gameplay monitor allows you to receive "
+"callbacks when roaming objects or rooms enter or exit the [b]gameplay area[/"
+"b]. The gameplay area is defined as either the primary, or secondary PVS.\n"
+"These callbacks allow you to, for example, reduce processing for objects "
+"that are far from the player, or turn on and off AI.\n"
+"You can either choose to receive callbacks as notifications through the "
+"[code]_notification[/code] function, or as signals.\n"
+"[code]NOTIFICATION_ENTER_GAMEPLAY[/code]\n"
+"[code]NOTIFICATION_EXIT_GAMEPLAY[/code]\n"
+"Signals: [code]\"gameplay_entered\"[/code], [code]\"gameplay_exited\"[/code]"
+msgstr ""
+
+#: doc/classes/RoomManager.xml:60
+msgid ""
+"If enabled, the system will attempt to merge similar meshes (particularly in "
+"terms of materials) within [Room]s during conversion. This can significantly "
+"reduce the number of drawcalls and state changes required during rendering, "
+"albeit at a cost of reduced culling granularity.\n"
+"[b]Note:[/b] This operates at runtime during the conversion process, and "
+"will only operate on exported or running projects, in order to prevent "
+"accidental alteration to the scene and loss of data."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:64
+msgid ""
+"When converting rooms, the editor will warn you if overlap is detected "
+"between rooms. Overlap can interfere with determining the room that cameras "
+"and objects are within. A small amount can be acceptable, depending on your "
+"level. Here you can alter the threshold at which the editor warning appears. "
+"There are no other side effects."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:67
+msgid ""
+"Portal rendering is recursive - each time a portal is seen through an "
+"earlier portal there is some cost. For this reason, and to prevent the "
+"possibility of infinite loops, this setting provides a hard limit on the "
+"recursion depth.\n"
+"[b]Note:[/b] This value is unused when using [code]Full[/code] PVS mode."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:71
+msgid ""
+"Portal culling normally operates using the current [Camera] / [Camera]s, "
+"however for debugging purposes within the editor, you can use this setting "
+"to override this behaviour and force it to use a particular camera to get a "
+"better idea of what the occlusion culling is doing."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:75
+msgid ""
+"Optionally during conversion the potentially visible set (PVS) of rooms that "
+"are potentially visible from each room can be calculated. This can be used "
+"either to aid in dynamic portal culling, or to totally replace portal "
+"culling.\n"
+"In [code]Full[/code] PVS Mode, all objects within the potentially visible "
+"rooms will be frustum culled, and rendered if they are within the view "
+"frustum."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:79
+msgid ""
+"During the conversion process, the geometry of objects within [Room]s, or a "
+"custom specified manual bound, are used to generate a [b]convex hull bound[/"
+"b].\n"
+"This convex hull is [b]required[/b] in the visibility system, and is used "
+"for many purposes. Most importantly, it is used to decide whether the "
+"[Camera] (or an object) is within a [Room]. The convex hull generating "
+"algorithm is good, but occasionally it can create too many (or too few) "
+"planes to give a good representation of the room volume.\n"
+"The [code]room_simplify[/code] value can be used to gain fine control over "
+"this process. It determines how similar planes can be for them to be "
+"considered the same (and duplicates removed). The value can be set between 0 "
+"(no simplification) and 1 (maximum simplification).\n"
+"The value set here is the default for all rooms, but individual rooms can "
+"override this value if desired.\n"
+"The room convex hulls are shown as a wireframe in the editor."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:86
+msgid ""
+"For the [Room] conversion process to succeed, you must point the "
+"[RoomManager] to the parent [Node] of your [Room]s and [RoomGroup]s, which "
+"we refer to as the [code]roomlist[/code] (the roomlist is not a special node "
+"type, it is normally just a [Spatial])."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:89
+msgid "Shows the [Portal] margins when the portal gizmo is used in the editor."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:92
+msgid ""
+"When receiving gameplay callbacks when objects enter and exit gameplay, the "
+"[b]gameplay area[/b] can be defined by either the primary PVS (potentially "
+"visible set) of [Room]s, or the secondary PVS (the primary PVS and their "
+"neighbouring [Room]s).\n"
+"Sometimes using the larger gameplay area of the secondary PVS may be "
+"preferable."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:98
+msgid ""
+"Use only [Portal]s at runtime to determine visibility. PVS will not be "
+"generated at [Room]s conversion, and gameplay notifications cannot be used."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:101
+msgid ""
+"Use a combination of PVS and [Portal]s to determine visibility (this is "
+"usually fastest and most accurate)."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:104
+msgid ""
+"Use only the PVS (potentially visible set) of [Room]s to determine "
+"visibility."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:4
+msgid "Editor-only helper for setting up root motion in [AnimationTree]."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:7
+msgid ""
+"[i]Root motion[/i] refers to an animation technique where a mesh's skeleton "
+"is used to give impulse to a character. When working with 3D animations, a "
+"popular technique is for animators to use the root skeleton bone to give "
+"motion to the rest of the skeleton. This allows animating characters in a "
+"way where steps actually match the floor below. It also allows precise "
+"interaction with objects during cinematics. See also [AnimationTree].\n"
+"[b]Note:[/b] [RootMotionView] is only visible in the editor. It will be "
+"hidden automatically in the running project, and will also be converted to a "
+"plain [Node] in the running project. This means a script attached to a "
+"[RootMotionView] node [i]must[/i] have [code]extends Node[/code] instead of "
+"[code]extends RootMotionView[/code]. Additionally, it must not be a "
+"[code]@tool[/code] script."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
+"html#root-motion"
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:17
+msgid "Path to an [AnimationTree] node to use as a basis for root motion."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:20
+msgid "The grid's cell size in 3D units."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:23
+msgid "The grid's color."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:26
+msgid ""
+"The grid's radius in 3D units. The grid's opacity will fade gradually as the "
+"distance from the origin increases until this [member radius] is reached."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:29
+msgid ""
+"If [code]true[/code], the grid's points will all be on the same Y coordinate "
+"([i]local[/i] Y = 0). If [code]false[/code], the points' original Y "
+"coordinate is preserved."
+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:17
+msgid ""
+"Returns the list of bound parameters for the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:23
+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:31
+msgid ""
+"Returns the connection flags for the signal at [code]idx[/code]. See [enum "
+"Object.ConnectFlags] constants."
+msgstr ""
+
+#: doc/classes/SceneState.xml:38
+msgid "Returns the method connected to the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:45
+msgid "Returns the name of the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:52
+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:59
+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:65
+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:73
+msgid ""
+"Returns the list of group names associated with the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:80
+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:87
+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:94
+msgid ""
+"Returns the path to the represented scene file if the node at [code]idx[/"
+"code] is an [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:101
+msgid "Returns the name of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:108
+msgid ""
+"Returns the path to the owner of the node at [code]idx[/code], relative to "
+"the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:116
+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:124
+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:133
+msgid ""
+"Returns the name of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:141
+msgid ""
+"Returns the value of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:148
+msgid "Returns the type of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:155
+msgid ""
+"Returns [code]true[/code] if the node at [code]idx[/code] is an "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:161
+msgid ""
+"If passed to [method PackedScene.instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/SceneState.xml:164
+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:168
+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. an \"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/3.4/getting_started/step_by_step/scene_tree."
+"html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions."
+"html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:21
+msgid ""
+"Calls [code]method[/code] on each member of the given group. You can pass "
+"arguments to [code]method[/code] by specifying them at the end of the method "
+"call. This method is equivalent of calling [method call_group_flags] with "
+"[constant GROUP_CALL_DEFAULT] flag.\n"
+"[b]Note:[/b] [code]method[/code] may only have 5 arguments at most (7 "
+"arguments passed to this method in total).\n"
+"[b]Note:[/b] Due to design limitations, [method call_group] will fail "
+"silently if one of the arguments is [code]null[/code].\n"
+"[b]Note:[/b] [method call_group] will always call methods with an one-frame "
+"delay, in a way similar to [method Object.call_deferred]. To call methods "
+"immediately, use [method call_group_flags] with the [constant "
+"GROUP_CALL_REALTIME] flag."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:33
+msgid ""
+"Calls [code]method[/code] on each member of the given group, respecting the "
+"given [enum GroupCallFlags]. You can pass arguments to [code]method[/code] "
+"by specifying them at the end of the method call.\n"
+"[b]Note:[/b] [code]method[/code] may only have 5 arguments at most (8 "
+"arguments passed to this method in total).\n"
+"[b]Note:[/b] Due to design limitations, [method call_group_flags] will fail "
+"silently if one of the arguments is [code]null[/code].\n"
+"[codeblock]\n"
+"# Call the method immediately and in reverse order.\n"
+"get_tree().call_group_flags(SceneTree.GROUP_CALL_REALTIME | SceneTree."
+"GROUP_CALL_REVERSE, \"bases\", \"destroy\")\n"
+"[/codeblock]"
+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.\n"
+"[b]Note:[/b] The scene change is deferred, which means that the new scene "
+"node is added on the next idle frame. You won't be able to access it "
+"immediately after the [method change_scene] call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:55
+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.\n"
+"[b]Note:[/b] The scene change is deferred, which means that the new scene "
+"node is added on the next idle frame. You won't be able to access it "
+"immediately after the [method change_scene_to] call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:65
+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]\n"
+"The timer will be automatically freed after its time elapses."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:79
+msgid ""
+"Returns the current frame number, i.e. the total frame count since the "
+"application started."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:85
+msgid ""
+"Returns the peer IDs of all connected peers of this [SceneTree]'s [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:91
+msgid "Returns the unique peer ID of this [SceneTree]'s [member network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:97
+msgid "Returns the number of nodes in this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:104
+msgid "Returns a list of all nodes assigned to the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:110
+msgid "Returns the sender's peer ID for the most recently received RPC call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:117
+msgid "Returns [code]true[/code] if the given group exists."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:129
+msgid ""
+"Returns [code]true[/code] if the most recent [InputEvent] was marked as "
+"handled with [method set_input_as_handled]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:135
+msgid ""
+"Returns [code]true[/code] if this [SceneTree]'s [member network_peer] is in "
+"server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:143
+msgid "Sends the given notification to all members of the [code]group[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:152
+msgid ""
+"Sends the given notification to all members of the [code]group[/code], "
+"respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:159
+msgid ""
+"Queues the given object for deletion, delaying the call to [method Object."
+"free] to after the current frame."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:166
+msgid ""
+"Quits the application at the end of the current iteration. 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.\n"
+"[b]Note:[/b] On iOS this method doesn't work. Instead, as recommended by the "
+"iOS Human Interface Guidelines, the user is expected to close apps via the "
+"Home button."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:173
+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:181
+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:191
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:201
+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:207
+msgid "Marks the most recent [InputEvent] as handled."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:214
+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 "
+"MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:225
+msgid ""
+"Configures screen stretching to the given [enum StretchMode], [enum "
+"StretchAspect], minimum size and [code]scale[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:231
+msgid "The current scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:234
+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:237
+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:240
+msgid "The root of the edited scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:243
+msgid "The default [MultiplayerAPI] instance for this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:246
+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:250
+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:253
+msgid ""
+"If [code]true[/code], the [SceneTree] is paused. Doing so will have the "
+"following behavior:\n"
+"- 2D and 3D physics will be stopped. This includes signals and collision "
+"detection.\n"
+"- [method Node._process], [method Node._physics_process] and [method Node."
+"_input] will not be called anymore in nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:258
+msgid ""
+"If [code]true[/code], the [SceneTree]'s [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:261
+msgid "The [SceneTree]'s root [Viewport]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:264
+msgid "If [code]true[/code], font oversampling is used."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:270
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:275
+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:282
+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:289
+msgid "Emitted whenever global menu item is clicked."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:294
+msgid ""
+"Emitted immediately before [method Node._process] is called on every node in "
+"the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:300
+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:306
+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:312
+msgid "Emitted whenever a node is added to the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:318
+msgid ""
+"Emitted when a node's configuration changed. Only emitted in [code]tool[/"
+"code] mode."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:324
+msgid "Emitted whenever a node is removed from the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:330
+msgid "Emitted whenever a node is renamed."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:335
+msgid ""
+"Emitted immediately before [method Node._physics_process] is called on every "
+"node in the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:340
+msgid ""
+"Emitted when the screen resolution (fullscreen) or window size (windowed) "
+"changes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:345
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnected from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:350
+msgid ""
+"Emitted whenever the [SceneTree] hierarchy changed (children being moved or "
+"renamed, etc.)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:356
+msgid "Call a group with no flags (default)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:359
+msgid "Call a group in reverse scene order."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:362
+msgid "Call a group immediately (calls are normally made on idle)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:365
+msgid "Call a group only once even if the call is executed many times."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:368
+msgid "No stretching."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:371
+msgid "Render stretching in higher resolution (interpolated)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:374
+msgid ""
+"Keep the specified display resolution. No interpolation. Content may appear "
+"pixelated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:377
+msgid ""
+"Fill the window with the content stretched to cover excessive space. Content "
+"may appear stretched."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:380
+msgid ""
+"Retain the same aspect ratio by padding with black bars on either axis. This "
+"prevents distortion."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:383
+msgid ""
+"Expand vertically. Left/right black bars may appear if the window is too "
+"wide."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:386
+msgid ""
+"Expand horizontally. Top/bottom black bars may appear if the window is too "
+"tall."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:389
+msgid ""
+"Expand in both directions, retaining the same aspect ratio. This prevents "
+"distortion while avoiding black bars."
+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:61
+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/3.4/getting_started/step_by_step/scripting."
+"html"
+msgstr ""
+
+#: doc/classes/Script.xml:17
+msgid "Returns [code]true[/code] if the script can be instanced."
+msgstr ""
+
+#: doc/classes/Script.xml:23
+msgid "Returns the script directly inherited by this script."
+msgstr ""
+
+#: doc/classes/Script.xml:29
+msgid "Returns the script's base type."
+msgstr ""
+
+#: doc/classes/Script.xml:36
+msgid "Returns the default value of the specified property."
+msgstr ""
+
+#: doc/classes/Script.xml:42
+msgid "Returns a dictionary containing constant names and their values."
+msgstr ""
+
+#: doc/classes/Script.xml:48
+msgid "Returns the list of methods in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:54
+msgid "Returns the list of properties in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:60
+msgid "Returns the list of user signals defined in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:67
+msgid ""
+"Returns [code]true[/code] if the script, or a base class, defines a signal "
+"with the given name."
+msgstr ""
+
+#: doc/classes/Script.xml:73
+msgid "Returns [code]true[/code] if the script contains non-empty source code."
+msgstr ""
+
+#: doc/classes/Script.xml:80
+msgid ""
+"Returns [code]true[/code] if [code]base_object[/code] is an instance of this "
+"script."
+msgstr ""
+
+#: doc/classes/Script.xml:86
+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:93
+msgid "Reloads the script's class implementation. Returns an error code."
+msgstr ""
+
+#: doc/classes/Script.xml:99
+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 Popup.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:25
+msgid "Prefills required fields to configure the ScriptCreateDialog for use."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:40
+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:31
+msgid "Returns a [Script] that is currently active in editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:44
+msgid ""
+"Returns an array with all [Script] objects which are currently open in "
+"editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:51
+msgid "Goes to the specified line in the current script."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:59
+msgid ""
+"Opens the script create dialog. The script will extend [code]base_name[/"
+"code]. The file extension can be omitted from [code]base_path[/code]. It "
+"will be added based on the selected scripting language."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:67
+msgid ""
+"Emitted when user changed active script. Argument is a freshly activated "
+"[Script]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:73
+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. 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. 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:16
+msgid ""
+"Ensures the given [code]control[/code] is visible (must be a direct or "
+"indirect child of the ScrollContainer). Used by [member follow_focus]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:22
+msgid ""
+"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to disable the horizontal scrollbar, use "
+"[member scroll_horizontal_enabled]. If you want to only hide it instead, use "
+"its [member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:29
+msgid ""
+"Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to disable the vertical scrollbar, use "
+"[member scroll_vertical_enabled]. If you want to only hide it instead, use "
+"its [member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:36
+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:42
+msgid "The current horizontal scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:45
+msgid "If [code]true[/code], enables horizontal scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:48
+msgid "The current vertical scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:51
+msgid "If [code]true[/code], enables vertical scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:57
+msgid "Emitted when scrolling stops."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:62
+msgid "Emitted when scrolling is started."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:70
+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:16
+msgid ""
+"Lowers the [Semaphore], allowing one more thread in. Returns [constant OK] "
+"on success, [constant ERR_BUSY] otherwise."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:22
+msgid ""
+"Tries to wait for the [Semaphore], if its value is zero, blocks until non-"
+"zero. Returns [constant OK] on success, [constant ERR_BUSY] otherwise."
+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:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/"
+"what_are_shaders.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:18
+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:25
+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:32
+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:41
+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:48
+msgid ""
+"Returns the shader's code as the user has written it, not the full generated "
+"code used internally."
+msgstr ""
+
+#: doc/classes/Shader.xml:51
+msgid ""
+"Returns the shader's custom defines. Custom defines can be used in Godot to "
+"add GLSL preprocessor directives (e.g: extensions) required for the shader "
+"logic.\n"
+"[b]Note:[/b] Custom defines are not validated by the Godot shader parser, so "
+"care should be taken when using them."
+msgstr ""
+
+#: doc/classes/Shader.xml:57
+msgid "Mode used to draw all 3D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:60
+msgid "Mode used to draw all 2D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:63
+msgid ""
+"Mode used to calculate particle information on a per-particle basis. Not "
+"used for drawing."
+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.\n"
+"[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot "
+"emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can "
+"emit light in a [GIProbe]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:18
+msgid ""
+"Returns the current value set for this material of a uniform in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:25
+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:32
+msgid ""
+"Returns the default value of the material property with given [code]name[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:40
+msgid ""
+"Changes the value set for this material of a uniform in the shader.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:47
+msgid "The [Shader] program used to render this material."
+msgstr ""
+
+#: doc/classes/Shape.xml:4
+msgid "Base class for all 3D shape resources."
+msgstr ""
+
+#: doc/classes/Shape.xml:7
+msgid ""
+"Base class for all 3D shape resources. Nodes that inherit from this can be "
+"used as shapes for a [PhysicsBody] or [Area] objects."
+msgstr ""
+
+#: doc/classes/Shape.xml:16
+msgid ""
+"Returns the [ArrayMesh] used to draw the debug collision for this [Shape]."
+msgstr ""
+
+#: doc/classes/Shape.xml:22
+msgid ""
+"The collision margin for the shape. Used in Bullet Physics only.\n"
+"Collision margins allow collision detection to be more efficient by adding "
+"an extra shell around shapes. Collision algorithms are more expensive when "
+"objects overlap by more than their margin, so a higher value for margins is "
+"better for performance, at the cost of accuracy around edges as it makes "
+"them less sharp."
+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:19
+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:29
+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:41
+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:53
+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:62
+msgid ""
+"Draws a solid shape onto a [CanvasItem] with the [VisualServer] 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:68
+msgid "The shape's custom solver bias."
+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:16
+msgid "Returns the shortcut's [InputEvent] as a [String]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:23
+msgid ""
+"Returns [code]true[/code] if the shortcut's [InputEvent] equals [code]event[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:29
+msgid "If [code]true[/code], this shortcut is valid."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:35
+msgid ""
+"The shortcut's [InputEvent].\n"
+"Generally the [InputEvent] is a keyboard key, though it can be any "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:4
+msgid "Skeleton for characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:7
+msgid ""
+"Skeleton 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/Skeleton.xml:20
+msgid ""
+"Adds a bone, with name [code]name[/code]. [method get_bone_count] will "
+"become the bone index."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:28 doc/classes/Skeleton.xml:109
+#: doc/classes/Skeleton.xml:212
+msgid "[i]Deprecated soon.[/i]"
+msgstr ""
+
+#: doc/classes/Skeleton.xml:34
+msgid "Clear all the bones in this skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:46
+msgid "Returns the bone index that matches [code]name[/code] as its name."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:52
+msgid "Returns the amount of bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:59
+msgid ""
+"Returns the custom pose of the specified bone. Custom pose is applied on top "
+"of the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:66
+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/Skeleton.xml:73
+msgid ""
+"Returns the overall transform of the specified bone, with respect to the "
+"skeleton, but without any global pose overrides. Being relative to the "
+"skeleton frame, this is not the actual \"global\" transform of the bone."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:80
+msgid "Returns the name of the bone at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:87
+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/Skeleton.xml:95
+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/Skeleton.xml:102
+msgid "Returns the rest transform for a bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:187
+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/Skeleton.xml:196
+msgid "Sets the pose transform for bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:204
+msgid "Sets the rest transform for bone [code]bone_idx[/code]."
+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/3.4/tutorials/animation/2d_skeletons.html"
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:17
+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:23
+msgid ""
+"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
+"Skeleton2D."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:29
+msgid "Returns the [RID] of a Skeleton2D instance."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:4
+msgid ""
+"SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a "
+"certain point in 3D by rotating all bones in the chain accordingly."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:7
+msgid ""
+"SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a "
+"certain point in 3D by rotating all bones in the chain accordingly. A "
+"typical scenario for IK in games is to place a characters feet on the ground "
+"or a characters hands on a currently hold object. SkeletonIK uses "
+"FabrikInverseKinematic internally to solve the bone chain and applies the "
+"results to the [Skeleton] [code]bones_global_pose_override[/code] property "
+"for all affected bones in the chain. If fully applied this overwrites any "
+"bone transform from [Animation]s or bone custom poses set by users. The "
+"applied amount can be controlled with the [code]interpolation[/code] "
+"property.\n"
+"[codeblock]\n"
+"# Apply IK effect automatically on every new frame (not the current)\n"
+"skeleton_ik_node.start()\n"
+"\n"
+"# Apply IK effect only on the current frame\n"
+"skeleton_ik_node.start(true)\n"
+"\n"
+"# Stop IK effect and reset bones_global_pose_override on Skeleton\n"
+"skeleton_ik_node.stop()\n"
+"\n"
+"# Apply full IK effect\n"
+"skeleton_ik_node.set_interpolation(1.0)\n"
+"\n"
+"# Apply half IK effect\n"
+"skeleton_ik_node.set_interpolation(0.5)\n"
+"\n"
+"# Apply zero IK effect (a value at or below 0.01 also removes "
+"bones_global_pose_override on Skeleton)\n"
+"skeleton_ik_node.set_interpolation(0.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:35
+msgid ""
+"Returns the parent [Skeleton] Node that was present when SkeletonIK entered "
+"the [SceneTree]. Returns null if the parent node was not a [Skeleton] Node "
+"when SkeletonIK entered the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:41
+msgid ""
+"Returns [code]true[/code] if SkeletonIK is applying IK effects on continues "
+"frames to the [Skeleton] bones. Returns [code]false[/code] if SkeletonIK is "
+"stopped or [method start] was used with the [code]one_time[/code] parameter "
+"set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:48
+msgid ""
+"Starts applying IK effects on each frame to the [Skeleton] bones but will "
+"only take effect starting on the next frame. If [code]one_time[/code] is "
+"[code]true[/code], this will take effect immediately but also reset on the "
+"next frame."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:54
+msgid ""
+"Stops applying IK effects on each frame to the [Skeleton] bones and also "
+"calls [method Skeleton.clear_bones_global_pose_override] to remove existing "
+"overrides on all bones."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:60
+msgid ""
+"Interpolation value for how much the IK results are applied to the current "
+"skeleton bone chain. A value of [code]1.0[/code] will overwrite all skeleton "
+"bone transforms completely while a value of [code]0.0[/code] will visually "
+"disable the SkeletonIK. A value at or below [code]0.01[/code] also calls "
+"[method Skeleton.clear_bones_global_pose_override]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:63
+msgid ""
+"Secondary target position (first is [member target] property or [member "
+"target_node]) for the IK chain. Use magnet position (pole target) to control "
+"the bending of the IK chain. Only works if the bone chain has more than 2 "
+"bones. The middle chain bone position will be linearly interpolated with the "
+"magnet position."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:66
+msgid ""
+"Number of iteration loops used by the IK solver to produce more accurate "
+"(and elegant) bone chain results."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:69
+msgid ""
+"The minimum distance between bone and goal target. If the distance is below "
+"this value, the IK solver stops further iterations."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:72
+msgid ""
+"If [code]true[/code] overwrites the rotation of the tip bone with the "
+"rotation of the [member target] (or [member target_node] if defined)."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:75
+msgid "The name of the current root bone, the first bone in the IK chain."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:78
+msgid ""
+"First target of the IK chain where the tip bone is placed and, if [member "
+"override_tip_basis] is [code]true[/code], how the tip bone is rotated. If a "
+"[member target_node] path is available the nodes transform is used instead "
+"and this property is ignored."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:81
+msgid ""
+"Target node [NodePath] for the IK chain. If available, the node's current "
+"[Transform] is used instead of the [member target] property."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:84
+msgid ""
+"The name of the current tip bone, the last bone in the IK chain placed at "
+"the [member target] transform (or [member target_node] if defined)."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:87
+msgid ""
+"If [code]true[/code], instructs the IK solver to consider the secondary "
+"magnet target (pole target) when calculating the bone chain. Use the magnet "
+"position (pole target) to control the bending of the IK chain."
+msgstr ""
+
+#: doc/classes/Sky.xml:4 doc/classes/Sky.xml:7
+msgid "The base class for [PanoramaSky] and [ProceduralSky]."
+msgstr ""
+
+#: doc/classes/Sky.xml:15
+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] You will only benefit from high radiance sizes if you have "
+"perfectly sharp reflective surfaces in your project and are not using "
+"[ReflectionProbe]s or [GIProbe]s. For most projects, keeping [member "
+"radiance_size] to the default value is the best compromise between visuals "
+"and performance. Be careful when using high radiance size values as these "
+"can cause crashes on low-end GPUs."
+msgstr ""
+
+#: doc/classes/Sky.xml:22
+msgid "Radiance texture size is 32×32 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:25
+msgid "Radiance texture size is 64×64 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:28
+msgid "Radiance texture size is 128×128 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:31
+msgid "Radiance texture size is 256×256 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:34
+msgid "Radiance texture size is 512×512 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:37
+msgid ""
+"Radiance texture size is 1024×1024 pixels.\n"
+"[b]Note:[/b] [constant RADIANCE_SIZE_1024] is not exposed in the inspector "
+"as it is known to cause GPU hangs on certain systems."
+msgstr ""
+
+#: doc/classes/Sky.xml:41
+msgid ""
+"Radiance texture size is 2048×2048 pixels.\n"
+"[b]Note:[/b] [constant RADIANCE_SIZE_2048] is not exposed in the inspector "
+"as it is known to cause GPU hangs on certain systems."
+msgstr ""
+
+#: doc/classes/Sky.xml:45
+msgid "Represents the size of the [enum RadianceSize] enum."
+msgstr ""
+
+#: doc/classes/Slider.xml:4
+msgid "Base class for GUI sliders."
+msgstr ""
+
+#: doc/classes/Slider.xml:7
+msgid ""
+"Base class for GUI sliders.\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/Slider.xml:16
+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:20
+msgid "If [code]true[/code], the value can be changed using the mouse wheel."
+msgstr ""
+
+#: doc/classes/Slider.xml:24
+msgid ""
+"Number of ticks displayed on the slider, including border ticks. Ticks are "
+"uniformly-distributed value markers."
+msgstr ""
+
+#: doc/classes/Slider.xml:27
+msgid ""
+"If [code]true[/code], the slider will display ticks for minimum and maximum "
+"values."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:4
+msgid "Slider between two PhysicsBodies in 3D."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:7
+msgid ""
+"Slides across the X axis of the pivot object. See also [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:28
+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/SliderJoint.xml:35
+msgid ""
+"The amount of restitution of the rotation when the limit is surpassed.\n"
+"Does not affect damping."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:39
+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/SliderJoint.xml:52 doc/classes/SliderJoint.xml:147
+msgid "A factor applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:61 doc/classes/SliderJoint.xml:156
+msgid ""
+"A factor applied to the all rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:64
+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/SliderJoint.xml:70
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocity-energy gets lost."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:4
+msgid "A soft mesh physics body."
+msgstr ""
+
+#: doc/classes/SoftBody.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/SoftBody.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html"
+msgstr ""
+
+#: doc/classes/SoftBody.xml:44
+msgid "Returns local translation of a vertex in the surface array."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:51
+msgid "Returns [code]true[/code] if vertex is set to pinned."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:83
+msgid ""
+"Sets the pinned state of a surface vertex. When set to [code]true[/code], "
+"the optional [code]attachment_path[/code] can define a [Spatial] the pinned "
+"vertex will be attached to."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:91
+msgid ""
+"The physics layers this SoftBody 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. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:96
+msgid ""
+"The physics layers this SoftBody scans for collisions. See [url=https://docs."
+"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-"
+"layers-and-masks]Collision layers and masks[/url] in the documentation for "
+"more information."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:105
+msgid "[NodePath] to a [CollisionObject] this SoftBody should avoid clipping."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:108
+msgid ""
+"If [code]true[/code], the [SoftBody] is simulated in physics. Can be set to "
+"[code]false[/code] to pause the physics simulation."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:115
+msgid "If [code]true[/code], the [SoftBody] will respond to [RayCast]s."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:118
+msgid ""
+"Increasing this value will improve the resulting simulation, but can affect "
+"performance. Use with care."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:121
+msgid "The SoftBody's mass."
+msgstr ""
+
+#: doc/classes/Spatial.xml:4
+msgid "Most basic 3D game object, parent of all 3D-related nodes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:7
+msgid ""
+"Most basic 3D game object, with a 3D [Transform] and visibility settings. "
+"All other 3D game objects inherit from Spatial. Use [Spatial] 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 [Spatial] object is set as top-level. Affine "
+"operations in this coordinate system correspond to direct affine operations "
+"on the [Spatial]'s transform. The word local below refers to this coordinate "
+"system. The coordinate system that is attached to the [Spatial] 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/Spatial.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html"
+msgstr ""
+
+#: doc/classes/Spatial.xml:13 doc/classes/Vector3.xml:16
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/3d"
+msgstr ""
+
+#: doc/classes/Spatial.xml:25
+msgid ""
+"Returns the parent [Spatial], or an empty [Object] if no parent exists or "
+"parent is not of type [Spatial]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:31
+msgid ""
+"Returns the current [World] resource this [Spatial] node is registered to."
+msgstr ""
+
+#: doc/classes/Spatial.xml:39
+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/Spatial.xml:46
+msgid ""
+"Scales the global (world) transformation by the given [Vector3] scale "
+"factors."
+msgstr ""
+
+#: doc/classes/Spatial.xml:53
+msgid ""
+"Moves the global (world) transformation by [Vector3] offset. The offset is "
+"in global coordinate system."
+msgstr ""
+
+#: doc/classes/Spatial.xml:59
+msgid ""
+"Disables rendering of this node. Changes [member visible] to [code]false[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:65
+msgid ""
+"Returns whether node notifies about its local transformation changes. "
+"[Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:71
+msgid ""
+"Returns whether this node uses a scale of [code](1, 1, 1)[/code] or its "
+"local transformation scale."
+msgstr ""
+
+#: doc/classes/Spatial.xml:77
+msgid ""
+"Returns whether this node is set as Toplevel, that is whether it ignores its "
+"parent nodes transformations."
+msgstr ""
+
+#: doc/classes/Spatial.xml:83
+msgid ""
+"Returns whether the node notifies about its global and local transformation "
+"changes. [Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:97
+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/Spatial.xml:108
+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/Spatial.xml:114
+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/Spatial.xml:122
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:130
+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/Spatial.xml:137
+msgid "Rotates the local transformation around the X axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:144
+msgid "Rotates the local transformation around the Y axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:151
+msgid "Rotates the local transformation around the Z axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:158
+msgid ""
+"Scales the local transformation by given 3D scale factors in object-local "
+"coordinate system."
+msgstr ""
+
+#: doc/classes/Spatial.xml:165
+msgid ""
+"Makes the node ignore its parents transformations. Node transformations are "
+"only in global space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:172
+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/Spatial.xml:178
+msgid ""
+"Reset all transformations for this node (sets its [Transform] to the "
+"identity matrix)."
+msgstr ""
+
+#: doc/classes/Spatial.xml:185
+msgid ""
+"Sets whether the node ignores notification that its transformation (global "
+"or local) changed."
+msgstr ""
+
+#: doc/classes/Spatial.xml:192
+msgid ""
+"Sets whether the node notifies about its local transformation changes. "
+"[Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:199
+msgid ""
+"Sets whether the node notifies about its global and local transformation "
+"changes. [Spatial] will not propagate this by default, unless it is in the "
+"editor context and it has a valid gizmo."
+msgstr ""
+
+#: doc/classes/Spatial.xml:205
+msgid ""
+"Enables rendering of this node. Changes [member visible] to [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:212
+msgid ""
+"Transforms [code]local_point[/code] from this node's local space to world "
+"space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:219
+msgid ""
+"Transforms [code]global_point[/code] from world space to this node's local "
+"space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:226
+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/Spatial.xml:234
+msgid ""
+"Changes the node's position by the given offset [Vector3] in local space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:240
+msgid "Updates the [SpatialGizmo] of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:246
+msgid ""
+"The [SpatialGizmo] for this node. Used for example in [EditorSpatialGizmo] "
+"as custom visualization and editing handles in Editor."
+msgstr ""
+
+#: doc/classes/Spatial.xml:249
+msgid "World space (global) [Transform] of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:252
+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/Spatial.xml:256
+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/Spatial.xml:259
+msgid "Scale part of the local transformation."
+msgstr ""
+
+#: doc/classes/Spatial.xml:262
+msgid "Local space [Transform] of this node, with respect to the parent node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:265
+msgid "Local translation of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:268
+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/Spatial.xml:274
+msgid ""
+"Emitted by portal system gameplay monitor when a node enters the gameplay "
+"area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:279
+msgid ""
+"Emitted by portal system gameplay monitor when a node exits the gameplay "
+"area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:284
+msgid "Emitted when node visibility changes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:290
+msgid ""
+"Spatial 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]. The notification is "
+"also sent if the node is in the editor context and it has a valid gizmo."
+msgstr ""
+
+#: doc/classes/Spatial.xml:294
+msgid ""
+"Spatial nodes receives this notification when they are registered to new "
+"[World] resource."
+msgstr ""
+
+#: doc/classes/Spatial.xml:297
+msgid ""
+"Spatial nodes receives this notification when they are unregistered from "
+"current [World] resource."
+msgstr ""
+
+#: doc/classes/Spatial.xml:300
+msgid "Spatial nodes receives this notification when their visibility changes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:303
+msgid ""
+"Spatial nodes receives this notification if the portal system gameplay "
+"monitor detects they have entered the gameplay area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:306
+msgid ""
+"Spatial nodes receives this notification if the portal system gameplay "
+"monitor detects they have exited the gameplay area."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:4
+msgid "Default 3D rendering material."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.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/SpatialMaterial.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html"
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:17
+msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:24
+msgid ""
+"Returns [code]true[/code], if the specified flag is enabled. See [enum "
+"Flags] enumerator for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:31
+msgid ""
+"Returns the [Texture] associated with the specified [enum TextureParam]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:39
+msgid ""
+"If [code]true[/code], enables the specified [enum Feature]. Many features "
+"that are available in [SpatialMaterial]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/SpatialMaterial.xml:47
+msgid ""
+"If [code]true[/code], enables the specified flag. Flags are optional "
+"behaviour 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/SpatialMaterial.xml:55
+msgid ""
+"Sets the [Texture] to be used by the specified [enum TextureParam]. This "
+"function is called when setting members ending in [code]*_texture[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:61
+msgid "The material's base color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:64
+msgid ""
+"Texture to multiply by [member albedo_color]. Used for basic texturing of "
+"objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:67
+msgid "The strength of the anisotropy effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:70
+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/SpatialMaterial.xml:73
+msgid "Texture that offsets the tangent map for anisotropy calculations."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:76
+msgid ""
+"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion "
+"darkens areas based on the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:79
+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/SpatialMaterial.xml:82
+msgid ""
+"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
+"[member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:85
+msgid ""
+"Texture that defines the amount of ambient occlusion for a given point on "
+"the object."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:88 doc/classes/SpatialMaterial.xml:325
+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/SpatialMaterial.xml:91
+msgid ""
+"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
+"the same as disabling the clearcoat effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:94
+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.\n"
+"[b]Note:[/b] Clearcoat rendering is not visible if the material has [member "
+"flags_unshaded] set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:98
+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/SpatialMaterial.xml:101
+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/SpatialMaterial.xml:104
+msgid ""
+"If [code]true[/code], the shader will read depth texture at multiple points "
+"along the view ray to determine occlusion and parrallax. This can be very "
+"performance demanding, but results in more realistic looking depth mapping."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:107
+msgid ""
+"If [code]true[/code], depth mapping is enabled (also called \"parallax "
+"mapping\" or \"height mapping\"). See also [member normal_enabled].\n"
+"[b]Note:[/b] Depth mapping is not supported if triplanar mapping is used on "
+"the same material. The value of [member depth_enabled] will be ignored if "
+"[member uv1_triplanar] is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:111
+msgid ""
+"If [code]true[/code], direction of the binormal is flipped before using in "
+"the depth effect. This may be necessary if you have encoded your binormals "
+"in a way that is conflicting with the depth effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:114
+msgid ""
+"If [code]true[/code], direction of the tangent is flipped before using in "
+"the depth effect. This may be necessary if you have encoded your tangents in "
+"a way that is conflicting with the depth effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:117
+msgid ""
+"Number of layers to use when using [member depth_deep_parallax] and the view "
+"direction is perpendicular to the surface of the object. A higher number "
+"will be more performance demanding while a lower number may not look as "
+"crisp."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:120
+msgid ""
+"Number of layers to use when using [member depth_deep_parallax] and the view "
+"direction is parallel to the surface of the object. A higher number will be "
+"more performance demanding while a lower number may not look as crisp."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:123
+msgid ""
+"Scales the depth offset effect. A higher number will create a larger depth."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:126
+msgid ""
+"Texture used to determine depth at a given pixel. Depth is always stored in "
+"the red channel."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:129
+msgid "Texture that specifies the color of the detail overlay."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:132
+msgid ""
+"Specifies how the [member detail_albedo] should blend with the current "
+"[code]ALBEDO[/code]. See [enum BlendMode] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:135
+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/SpatialMaterial.xml:138
+msgid ""
+"Texture used to specify how the detail textures get blended with the base "
+"textures."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:141
+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/SpatialMaterial.xml:145
+msgid ""
+"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
+"layer. See [enum DetailUV] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:148
+msgid ""
+"Distance at which the object appears fully opaque.\n"
+"[b]Note:[/b] If [code]distance_fade_max_distance[/code] is less than "
+"[code]distance_fade_min_distance[/code], the behavior will be reversed. The "
+"object will start to fade away at [code]distance_fade_max_distance[/code] "
+"and will fully disappear once it reaches [code]distance_fade_min_distance[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:152
+msgid ""
+"Distance at which the object starts to become visible. If the object is less "
+"than this distance away, it will be invisible.\n"
+"[b]Note:[/b] If [code]distance_fade_min_distance[/code] is greater than "
+"[code]distance_fade_max_distance[/code], the behavior will be reversed. The "
+"object will start to fade away at [code]distance_fade_max_distance[/code] "
+"and will fully disappear once it reaches [code]distance_fade_min_distance[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:156
+msgid ""
+"Specifies which type of fade to use. Can be any of the [enum "
+"DistanceFadeMode]s."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:159
+msgid "The emitted light's color. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:162
+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] or [BakedLightmap] is used and this object is used in baked "
+"lighting."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:165
+msgid "The emitted light's strength. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:168
+msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:171
+msgid ""
+"Sets how [member emission] interacts with [member emission_texture]. Can "
+"either add or multiply. See [enum EmissionOperator] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:174
+msgid "Texture that specifies how much surface emits light at a given point."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:177
+msgid ""
+"Forces a conversion of the [member albedo_texture] from sRGB space to linear "
+"space."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:180
+msgid "If [code]true[/code], the object receives no ambient light."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:183
+msgid ""
+"If [code]true[/code], the object receives no shadow that would otherwise be "
+"cast onto it."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:186
+msgid ""
+"If [code]true[/code], the shader will compute extra operations to make sure "
+"the normal stays correct when using a non-uniform scale. Only enable if "
+"using non-uniform scaling."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:189
+msgid ""
+"If [code]true[/code], the object is rendered at the same size regardless of "
+"distance."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:192
+msgid ""
+"If [code]true[/code], depth testing is disabled and the object will be drawn "
+"in render order."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:195
+msgid ""
+"If [code]true[/code], transparency is enabled on the body. See also [member "
+"params_blend_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:198
+msgid "If [code]true[/code], the object is unaffected by lighting."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:201
+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 params_point_size]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:205
+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/SpatialMaterial.xml:208
+msgid ""
+"If [code]true[/code], lighting is calculated per vertex rather than per "
+"pixel. This may increase performance on low-end devices."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:211
+msgid ""
+"If [code]true[/code], triplanar mapping is calculated in world space rather "
+"than object local space. See also [member uv1_triplanar]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:214
+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/SpatialMaterial.xml:217
+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/SpatialMaterial.xml:221
+msgid ""
+"Texture used to specify metallic for an object. This is multiplied by "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:224
+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/SpatialMaterial.xml:227
+msgid "If [code]true[/code], normal mapping is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:230
+msgid "The strength of the normal map's effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:233
+msgid ""
+"Texture used to specify the normal at a given pixel. The "
+"[code]normal_texture[/code] only uses the red and green channels; the blue "
+"and alpha channels are ignored. The normal read from [code]normal_texture[/"
+"code] is oriented around the surface normal provided by the [Mesh].\n"
+"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
+"vertex data. Otherwise, the normal map won't render correctly and will only "
+"appear to darken the whole surface. If creating geometry with [SurfaceTool], "
+"you can use [method SurfaceTool.generate_normals] and [method SurfaceTool."
+"generate_tangents] to automatically generate normals and tangents "
+"respectively.\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/SpatialMaterial.xml:238
+msgid "Threshold at which the alpha scissor will discard values."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:241
+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 "
+"params_billboard_mode] is [constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:244
+msgid ""
+"Controls how the object faces the camera. See [enum BillboardMode].\n"
+"[b]Note:[/b] Billboard mode is not suitable for VR because the left-right "
+"vector of the camera is not horizontal when the screen is attached to your "
+"head instead of on the table. See [url=https://github.com/godotengine/godot/"
+"issues/41567]GitHub issue #41567[/url] for details."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:248
+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/SpatialMaterial.xml:252
+msgid ""
+"Which side of the object is not drawn when backfaces are rendered. See [enum "
+"CullMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:255
+msgid ""
+"Determines when depth rendering takes place. See [enum DepthDrawMode]. See "
+"also [member flags_transparent]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:258
+msgid ""
+"The algorithm used for diffuse light scattering. See [enum DiffuseMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:261
+msgid ""
+"If [code]true[/code], enables the vertex grow setting. See [member "
+"params_grow_amount]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:264
+msgid "Grows object vertices in the direction of their normals."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:267
+msgid "Currently unimplemented in Godot."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:270
+msgid "The point size in pixels. See [member flags_use_point_size]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:273
+msgid "The method for rendering the specular blob. See [enum SpecularMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:276
+msgid ""
+"If [code]true[/code], the shader will discard all pixels that have an alpha "
+"value less than [member params_alpha_scissor_threshold]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:279
+msgid ""
+"The number of horizontal frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member "
+"params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:282
+msgid ""
+"If [code]true[/code], particle animations are looped. Only enabled when "
+"using [constant BILLBOARD_PARTICLES]. See [member params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:285
+msgid ""
+"The number of vertical frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member "
+"params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:288
+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/SpatialMaterial.xml:291
+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/SpatialMaterial.xml:294
+msgid ""
+"If [code]true[/code], the refraction effect is enabled. Refraction distorts "
+"transparency based on light from behind the object. When using the GLES3 "
+"backend, the material's roughness value will affect the blurriness of the "
+"refraction. Higher roughness values will make the refraction look blurrier."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:297
+msgid ""
+"The strength of the refraction effect. Higher values result in a more "
+"distorted appearance for the refraction."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:300
+msgid ""
+"Texture that controls the strength of the refraction per-pixel. Multiplied "
+"by [member refraction_scale]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:303
+msgid ""
+"Specifies the channel of the [member refraction_texture] in which the "
+"refraction 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/SpatialMaterial.xml:306
+msgid "Sets the strength of the rim lighting effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:309
+msgid ""
+"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
+"brightness at glancing angles on an object.\n"
+"[b]Note:[/b] Rim lighting is not visible if the material has [member "
+"flags_unshaded] set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:313
+msgid ""
+"Texture used to set the strength of the rim lighting effect per-pixel. "
+"Multiplied by [member rim]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:316
+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/SpatialMaterial.xml:319
+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/SpatialMaterial.xml:322
+msgid ""
+"Texture used to control the roughness per-pixel. Multiplied by [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:328
+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/SpatialMaterial.xml:331
+msgid "The strength of the subsurface scattering effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:334
+msgid ""
+"Texture used to control the subsurface scattering strength. Stored in the "
+"red texture channel. Multiplied by [member subsurf_scatter_strength]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:337
+msgid ""
+"The color used by the transmission effect. Represents the light passing "
+"through an object."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:340
+msgid "If [code]true[/code], the transmission effect is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:343
+msgid ""
+"Texture used to control the transmission effect per-pixel. Added to [member "
+"transmission]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:346
+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/SpatialMaterial.xml:349
+msgid ""
+"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
+"[code]UV[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:352
+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/SpatialMaterial.xml:355 doc/classes/SpatialMaterial.xml:367
+msgid ""
+"A lower number blends the texture more softly while a higher number blends "
+"the texture more sharply."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:358
+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/SpatialMaterial.xml:361
+msgid ""
+"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
+"[code]UV2[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:364
+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/SpatialMaterial.xml:370
+msgid ""
+"If [code]true[/code], the model's vertex colors are processed as sRGB mode."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:373
+msgid "If [code]true[/code], the vertex color is used as albedo color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:378
+msgid "Texture specifying per-pixel color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:381
+msgid "Texture specifying per-pixel metallic value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:384
+msgid "Texture specifying per-pixel roughness value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:387
+msgid "Texture specifying per-pixel emission color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:390
+msgid "Texture specifying per-pixel normal vector."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:393
+msgid "Texture specifying per-pixel rim value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:396
+msgid "Texture specifying per-pixel clearcoat value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:399
+msgid ""
+"Texture specifying per-pixel flowmap direction for use with [member "
+"anisotropy]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:402
+msgid "Texture specifying per-pixel ambient occlusion value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:405
+msgid "Texture specifying per-pixel depth."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:408
+msgid "Texture specifying per-pixel subsurface scattering."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:411
+msgid "Texture specifying per-pixel transmission color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:414
+msgid "Texture specifying per-pixel refraction strength."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:417
+msgid "Texture specifying per-pixel detail mask blending value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:420
+msgid "Texture specifying per-pixel detail color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:423
+msgid "Texture specifying per-pixel detail normal."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:426
+msgid "Represents the size of the [enum TextureParam] enum."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:429
+msgid "Use [code]UV[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:432
+msgid "Use [code]UV2[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:435
+msgid "Constant for setting [member flags_transparent]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:438
+msgid "Constant for setting [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:441
+msgid "Constant for setting [member normal_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:444
+msgid "Constant for setting [member rim_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:447
+msgid "Constant for setting [member clearcoat_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:450
+msgid "Constant for setting [member anisotropy_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:453
+msgid "Constant for setting [member ao_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:456
+msgid "Constant for setting [member depth_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:459
+msgid "Constant for setting [member subsurf_scatter_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:462
+msgid "Constant for setting [member transmission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:465
+msgid "Constant for setting [member refraction_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:468
+msgid "Constant for setting [member detail_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:474
+msgid ""
+"Default blend mode. The color of the object is blended over the background "
+"based on the object's alpha value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:477
+msgid "The color of the object is added to the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:480
+msgid "The color of the object is subtracted from the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:483
+msgid "The color of the object is multiplied by the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:486
+msgid "Default depth draw mode. Depth is drawn only for opaque objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:489
+msgid "Depth draw is calculated for both opaque and transparent objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:492
+msgid "No depth draw."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:495
+msgid ""
+"For transparent objects, an opaque pass is made first with the opaque parts, "
+"then transparency is drawn."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:498
+msgid "Default cull mode. The back of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:501
+msgid "The front of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:504
+msgid "No culling is performed."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:507
+msgid ""
+"No lighting is used on the object. Color comes directly from [code]ALBEDO[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:510
+msgid ""
+"Lighting is calculated per-vertex rather than per-pixel. This can be used to "
+"increase the speed of the shader at the cost of quality."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:513
+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/SpatialMaterial.xml:516
+msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:519
+msgid ""
+"Vertex color is in sRGB space and needs to be converted to linear. Only "
+"applies in the GLES3 renderer."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:522
+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/SpatialMaterial.xml:525
+msgid ""
+"Object is scaled by depth so that it always appears the same size on screen."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:528
+msgid ""
+"Shader will keep the scale set for the mesh. Otherwise the scale is lost "
+"when billboarding. Only applies when [member params_billboard_mode] is "
+"[constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:531
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:534
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV2[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:537
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:540
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member "
+"emission_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:543
+msgid "Use alpha scissor. Set by [member params_use_alpha_scissor]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:546
+msgid ""
+"Use world coordinates in the triplanar texture lookup instead of local "
+"coordinates."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:549
+msgid "Forces the shader to convert albedo from sRGB space to linear space."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:552
+msgid "Disables receiving shadows from other objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:555
+msgid "Disables receiving ambient light."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:558
+msgid "Ensures that normals appear correct, even with non-uniform scaling."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:561
+msgid "Enables the shadow to opacity feature."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:567
+msgid "Default diffuse scattering algorithm."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:570
+msgid "Diffuse scattering ignores roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:573
+msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:576
+msgid "Attempts to use roughness to emulate microsurfacing."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:579
+msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:582
+msgid "Default specular blob."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:585 doc/classes/SpatialMaterial.xml:588
+msgid "Older specular algorithm, included for compatibility."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:591
+msgid "Toon blob which changes size based on roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:594
+msgid "No specular blob."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:597
+msgid "Billboard mode is disabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:600
+msgid "The object's Z axis will always face the camera."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:603
+msgid "The object's X axis will always face the camera."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:606
+msgid ""
+"Used for particle systems when assigned to [Particles] and [CPUParticles] "
+"nodes. Enables [code]particles_anim_*[/code] properties.\n"
+"The [member ParticlesMaterial.anim_speed] or [member CPUParticles."
+"anim_speed] should also be set to a positive value for the animation to play."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:610
+msgid "Used to read from the red channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:613
+msgid "Used to read from the green channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:616
+msgid "Used to read from the blue channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:619
+msgid "Used to read from the alpha channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:625
+msgid "Adds the emission color to the color from the emission texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:628
+msgid "Multiplies the emission color by the color from the emission texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:631
+msgid "Do not use distance fade."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:634
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using the alpha channel."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:637
+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/SpatialMaterial.xml:640
+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/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/SphereShape.xml:4
+msgid "Sphere shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/SphereShape.xml:7
+msgid ""
+"Sphere shape for 3D collisions, which can be set into a [PhysicsBody] or "
+"[Area]. This shape is useful for modeling sphere-like 3D objects."
+msgstr ""
+
+#: doc/classes/SphereShape.xml:16
+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].\n"
+"[b]Note:[/b] [SpinBox] relies on an underlying [LineEdit] node. To theme a "
+"[SpinBox]'s background, add theme items for [LineEdit] and customize them."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:26
+msgid "Applies the current value of this [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:32
+msgid ""
+"Returns the [LineEdit] instance from this [SpinBox]. You can use it to "
+"access properties and methods of [LineEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+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 [Texture] 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:15
+msgid ""
+"Clamps the [member split_offset] value to not go outside the currently "
+"possible minimal and maximum values."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:21
+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:24
+msgid ""
+"Determines the dragger's visibility. See [enum DraggerVisibility] for "
+"details."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:27
+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:34
+msgid "Emitted when the dragger is dragged by user."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:40
+msgid "The split dragger is visible when the cursor hovers it."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:43
+msgid "The split dragger is never visible."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:46
+msgid "The split dragger is never visible and its space collapsed."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:4
+msgid "A spotlight, such as a reflector spotlight or a lantern."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:7
+msgid ""
+"A Spotlight is a type of [Light] 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 [Light].\n"
+"[b]Note:[/b] By default, only 32 SpotLights may affect a single mesh "
+"[i]resource[/i] at once. Consider splitting your level into several meshes "
+"to decrease the likelihood that more than 32 lights will affect the same "
+"mesh resource. Splitting the level mesh will also improve frustum culling "
+"effectiveness, leading to greater performance. If you need to use more "
+"lights per mesh, you can increase [member ProjectSettings.rendering/limits/"
+"rendering/max_lights_per_object] at the cost of shader compilation times."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:18
+msgid "The spotlight's angle in degrees."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:21
+msgid "The spotlight's angular attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:24
+msgid "The spotlight's light energy attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight.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/SpringArm.xml:4
+msgid "A helper node, mostly used in 3rd person cameras."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:7
+msgid ""
+"The SpringArm 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 SpringArm 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 SpringArm as a camera controller for your player, you might "
+"need to exclude the player's collider from the SpringArm's collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:19
+msgid ""
+"Adds the [PhysicsBody] object with the given [RID] to the list of "
+"[PhysicsBody] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:25
+msgid ""
+"Clears the list of [PhysicsBody] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:31
+msgid "Returns the spring arm's current length."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:38
+msgid ""
+"Removes the given [RID] from the list of [PhysicsBody] objects excluded from "
+"the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:44
+msgid ""
+"The layers against which the collision check shall be done. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:47
+msgid ""
+"When the collision check is made, a candidate length for the SpringArm is "
+"given.\n"
+"The margin is then subtracted to this length and the translation is applied "
+"to the child objects of the SpringArm.\n"
+"This margin is useful for when the SpringArm has a [Camera] as a child node: "
+"without the margin, the [Camera] would be placed on the exact point of "
+"collision, while with the margin the [Camera] would be placed close to the "
+"point of collision."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:52
+msgid ""
+"The [Shape] to use for the SpringArm.\n"
+"When the shape is set, the SpringArm will cast the [Shape] on its z axis "
+"instead of performing a ray cast."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:56
+msgid ""
+"The maximum extent of the SpringArm. This is used as a length for both the "
+"ray and the shape cast used internally to calculate the desired position of "
+"the SpringArm's child nodes.\n"
+"To know more about how to perform a shape cast or a ray cast, please consult "
+"the [PhysicsDirectSpaceState] documentation."
+msgstr ""
+
+#: doc/classes/Sprite.xml:4
+msgid "General-purpose sprite node."
+msgstr ""
+
+#: doc/classes/Sprite.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/Sprite.xml:16
+msgid ""
+"Returns a [Rect2] representing the Sprite's boundary in local coordinates. "
+"Can be used to detect if the Sprite 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/Sprite.xml:29
+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/Sprite.xml:36
+msgid "If [code]true[/code], texture is centered."
+msgstr ""
+
+#: doc/classes/Sprite.xml:45 doc/classes/Sprite3D.xml:15
+msgid ""
+"Current frame to display from sprite sheet. [member hframes] or [member "
+"vframes] must be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite.xml:48 doc/classes/Sprite3D.xml:18
+msgid ""
+"Coordinates of the frame to display from sprite sheet. This is as an alias "
+"for the [member frame] property. [member hframes] or [member vframes] must "
+"be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite.xml:51 doc/classes/Sprite3D.xml:21
+msgid "The number of columns in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite.xml:54
+msgid ""
+"The normal map gives depth to the Sprite.\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/Sprite.xml:61
+msgid ""
+"If [code]true[/code], texture is cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite.xml:64
+msgid "If [code]true[/code], the outermost pixels get blurred out."
+msgstr ""
+
+#: doc/classes/Sprite.xml:67 doc/classes/Sprite3D.xml:27
+msgid ""
+"The region of the atlas texture to display. [member region_enabled] must be "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Sprite.xml:70
+msgid "[Texture] object to draw."
+msgstr ""
+
+#: doc/classes/Sprite.xml:73 doc/classes/Sprite3D.xml:33
+msgid "The number of rows in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite.xml:79 doc/classes/Sprite3D.xml:39
+msgid "Emitted when the [member frame] changes."
+msgstr ""
+
+#: doc/classes/Sprite.xml:84
+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."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:24
+msgid ""
+"If [code]true[/code], texture will be cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:30
+msgid ""
+"[Texture] object to draw. If [member GeometryInstance.material_override] is "
+"used, this will be overridden."
+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:27
+msgid "Returns the rectangle representing this sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:35
+msgid "If [code]true[/code], the specified flag will be enabled."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:43
+msgid "The direction in which the front of the texture faces."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:51
+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:60
+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:66
+msgid ""
+"The objects' visibility on a scale from [code]0[/code] fully invisible to "
+"[code]1[/code] fully visible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:69
+msgid "The size of one pixel's width on the sprite to scale it in 3D."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:72
+msgid ""
+"If [code]true[/code], the [Light] in the [Environment] has effects on the "
+"sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:75
+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:80
+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:83
+msgid "If set, lights in the environment affect the sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:86
+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:89
+msgid "Represents the size of the [enum DrawFlags] enum."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:4
+msgid "Sprite frame library for AnimatedSprite."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:7
+msgid ""
+"Sprite frame library for [AnimatedSprite]. Contains frames and animation "
+"data for playback.\n"
+"[b]Note:[/b] You can associate a set of normal maps by creating additional "
+"[SpriteFrames] resources with a [code]_normal[/code] suffix. For example, "
+"having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/"
+"code] will make it so the [code]run[/code] animation uses the normal map."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:17
+msgid "Adds a new animation to the library."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:26
+msgid "Adds a frame to the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:33
+msgid "Removes all frames from the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:39
+msgid "Removes all animations. A \"default\" animation will be created."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:46
+msgid ""
+"Returns [code]true[/code] if the given animation is configured to loop when "
+"it finishes playing. Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:52
+msgid ""
+"Returns an array containing the names associated to each animation. Values "
+"are placed in alphabetical order."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:59 doc/classes/SpriteFrames.xml:120
+msgid "The animation's speed in frames per second."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:67
+msgid "Returns the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:74
+msgid "Returns the number of frames in the animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:81
+msgid "If [code]true[/code], the named animation exists."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:88
+msgid "Removes the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:96
+msgid "Removes the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:104
+msgid "Changes the animation's name to [code]newname[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:112
+msgid "If [code]true[/code], the animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:129
+msgid "Sets the texture of the given frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:135
+msgid "Compatibility property, always equals to an empty array."
+msgstr ""
+
+#: doc/classes/StaticBody.xml:4
+msgid "Static body for 3D physics."
+msgstr ""
+
+#: doc/classes/StaticBody.xml:7
+msgid ""
+"Static body for 3D physics. A static body is a simple body that is not "
+"intended to move. In contrast to [RigidBody], 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/StaticBody.xml:23
+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/StaticBody.xml:26
+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/StaticBody.xml:29
+msgid ""
+"The body's friction, from 0 (frictionless) to 1 (full friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+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:20
+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:23
+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/StaticBody2D.xml:26
+msgid ""
+"The body's friction. Values range from [code]0[/code] (no friction) to "
+"[code]1[/code] (full friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+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). It provides an API for sending and receiving data through streams "
+"as raw data or strings."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:15
+msgid "Gets a signed 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:21
+msgid "Gets a signed 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:27
+msgid "Gets a signed 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:33
+msgid "Gets a signed byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:39
+msgid "Returns the amount of bytes this [StreamPeer] has available."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:46
+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:52
+msgid "Gets a double-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:58
+msgid "Gets a single-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:65
+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:72
+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:78
+msgid "Gets an unsigned 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:84
+msgid "Gets an unsigned 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:90
+msgid "Gets an unsigned 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:96
+msgid "Gets an unsigned byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:103
+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:110
+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:118
+msgid "Puts a signed 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:125
+msgid "Puts a signed 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:132
+msgid "Puts a signed 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:139
+msgid "Puts a signed byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:146
+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:153
+msgid "Puts a double-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:160
+msgid "Puts a single-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:167
+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:174
+msgid ""
+"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
+"unsigned integer representing its size.\n"
+"[b]Note:[/b] 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:185
+msgid "Puts an unsigned 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:192
+msgid "Puts an unsigned 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:199
+msgid "Puts an unsigned 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:206
+msgid "Puts an unsigned byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:213
+msgid ""
+"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
+"unsigned integer representing its size.\n"
+"[b]Note:[/b] 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:225
+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:231
+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:20
+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:30
+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:37 doc/classes/StreamPeerTCP.xml:23
+msgid "Disconnects from host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:49
+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:59
+msgid "A status representing a [StreamPeerSSL] that is disconnected."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:62
+msgid "A status representing a [StreamPeerSSL] during handshaking."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:65
+msgid "A status representing a [StreamPeerSSL] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:68
+msgid "A status representing a [StreamPeerSSL] in error state."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:71
+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:17
+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:29
+msgid "Returns the IP of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:35
+msgid "Returns the port of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:41
+msgid "Returns the status of the connection, see [enum Status]."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:47
+msgid ""
+"Returns [code]true[/code] if this peer is currently connected or is "
+"connecting to a host, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:54
+msgid ""
+"If [code]enabled[/code] is [code]true[/code], packets will be sent "
+"immediately. If [code]enabled[/code] is [code]false[/code] (the default), "
+"packet transfers will be delayed and combined using [url=https://en."
+"wikipedia.org/wiki/Nagle%27s_algorithm]Nagle's algorithm[/url].\n"
+"[b]Note:[/b] It's recommended to leave this disabled for applications that "
+"send large packets or need to transfer a lot of data, as enabling this can "
+"decrease the total available bandwidth."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:61
+msgid ""
+"The initial status of the [StreamPeerTCP]. This is also the status after "
+"disconnecting."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:64
+msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:67
+msgid "A status representing a [StreamPeerTCP] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:70
+msgid "A status representing a [StreamPeerTCP] in error state."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:4
+msgid "A [code].stex[/code] texture."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:7
+msgid "A texture that is loaded from a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:16
+msgid "Loads the texture from the given path."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:23
+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/3.4/getting_started/scripting/gdscript/"
+"gdscript_format_string.html"
+msgstr ""
+
+#: doc/classes/String.xml:17
+msgid "Constructs a new String from the given [bool]."
+msgstr ""
+
+#: doc/classes/String.xml:24
+msgid "Constructs a new String from the given [int]."
+msgstr ""
+
+#: doc/classes/String.xml:31
+msgid "Constructs a new String from the given [float]."
+msgstr ""
+
+#: doc/classes/String.xml:38
+msgid "Constructs a new String from the given [Vector2]."
+msgstr ""
+
+#: doc/classes/String.xml:45
+msgid "Constructs a new String from the given [Rect2]."
+msgstr ""
+
+#: doc/classes/String.xml:52
+msgid "Constructs a new String from the given [Vector3]."
+msgstr ""
+
+#: doc/classes/String.xml:59
+msgid "Constructs a new String from the given [Transform2D]."
+msgstr ""
+
+#: doc/classes/String.xml:66
+msgid "Constructs a new String from the given [Plane]."
+msgstr ""
+
+#: doc/classes/String.xml:73
+msgid "Constructs a new String from the given [Quat]."
+msgstr ""
+
+#: doc/classes/String.xml:80
+msgid "Constructs a new String from the given [AABB]."
+msgstr ""
+
+#: doc/classes/String.xml:87
+msgid "Constructs a new String from the given [Basis]."
+msgstr ""
+
+#: doc/classes/String.xml:94
+msgid "Constructs a new String from the given [Transform]."
+msgstr ""
+
+#: doc/classes/String.xml:101
+msgid "Constructs a new String from the given [Color]."
+msgstr ""
+
+#: doc/classes/String.xml:108
+msgid "Constructs a new String from the given [NodePath]."
+msgstr ""
+
+#: doc/classes/String.xml:115
+msgid "Constructs a new String from the given [RID]."
+msgstr ""
+
+#: doc/classes/String.xml:122
+msgid "Constructs a new String from the given [Dictionary]."
+msgstr ""
+
+#: doc/classes/String.xml:129
+msgid "Constructs a new String from the given [Array]."
+msgstr ""
+
+#: doc/classes/String.xml:136
+msgid "Constructs a new String from the given [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/String.xml:143
+msgid "Constructs a new String from the given [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/String.xml:150
+msgid "Constructs a new String from the given [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/String.xml:157
+msgid "Constructs a new String from the given [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/String.xml:164
+msgid "Constructs a new String from the given [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/String.xml:171
+msgid "Constructs a new String from the given [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/String.xml:178
+msgid "Constructs a new String from the given [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/String.xml:185
+msgid "Returns [code]true[/code] if the string begins with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:191
+msgid "Returns the bigrams (pairs of consecutive letters) of this string."
+msgstr ""
+
+#: doc/classes/String.xml:197
+msgid ""
+"Returns a copy of the string with special characters escaped using the C "
+"language standard."
+msgstr ""
+
+#: doc/classes/String.xml:203
+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:210
+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:217
+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. \"less than\" or \"greater than\" are determined by the [url=https://"
+"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] "
+"of each string, which roughly matches the alphabetical order.\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method nocasecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:229
+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:238
+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:244
+msgid ""
+"Returns a copy of the string with indentation (leading tabs and spaces) "
+"removed."
+msgstr ""
+
+#: doc/classes/String.xml:250
+msgid ""
+"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:257
+msgid "Returns [code]true[/code] if the string ends with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:264
+msgid ""
+"Erases [code]chars[/code] characters from the string starting from "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:272
+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"
+"[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:285
+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:293
+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:301
+msgid ""
+"Formats the string by replacing all occurrences of [code]placeholder[/code] "
+"with [code]values[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:307
+msgid "If the string is a valid file path, returns the base directory name."
+msgstr ""
+
+#: doc/classes/String.xml:313
+msgid ""
+"If the string is a valid file path, returns the full file path without the "
+"extension."
+msgstr ""
+
+#: doc/classes/String.xml:319
+msgid ""
+"Returns the extension without the leading period character ([code].[/code]) "
+"if the string is a valid file name or path. If the string does not contain "
+"an extension, returns an empty string instead.\n"
+"[codeblock]\n"
+"print(\"/path/to/file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.sample.txt\".get_extension()) # \"txt\"\n"
+"print(\".txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt.\".get_extension()) # \"\" (empty string)\n"
+"print(\"file.txt..\".get_extension()) # \"\" (empty string)\n"
+"print(\"txt\".get_extension()) # \"\" (empty string)\n"
+"print(\"\".get_extension()) # \"\" (empty string)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:335
+msgid "If the string is a valid file path, returns the filename."
+msgstr ""
+
+#: doc/classes/String.xml:341
+msgid "Hashes the string and returns a 32-bit integer."
+msgstr ""
+
+#: doc/classes/String.xml:347
+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:356
+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:365
+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:375
+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:388
+msgid ""
+"Returns a copy of the string with the substring [code]what[/code] inserted "
+"at the given position."
+msgstr ""
+
+#: doc/classes/String.xml:394
+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:400
+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:407
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:414
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string, without considering case."
+msgstr ""
+
+#: doc/classes/String.xml:420
+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:427
+msgid "Returns [code]true[/code] if this string contains a valid float."
+msgstr ""
+
+#: doc/classes/String.xml:434
+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:440
+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:446
+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:452
+msgid "Returns [code]true[/code] if this string contains a valid integer."
+msgstr ""
+
+#: doc/classes/String.xml:458
+msgid ""
+"Returns [code]true[/code] if this string contains only a well-formatted IPv4 "
+"or IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/"
+"Reserved_IP_addresses]reserved IP addresses[/url] such as [code]0.0.0.0[/"
+"code] as valid."
+msgstr ""
+
+#: doc/classes/String.xml:464
+msgid ""
+"Returns a copy of the string with special characters escaped using the JSON "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:471
+msgid "Returns a number of characters from the left of the string."
+msgstr ""
+
+#: doc/classes/String.xml:477
+msgid "Returns the string's amount of characters."
+msgstr ""
+
+#: doc/classes/String.xml:484
+msgid ""
+"Returns a copy of the string with characters removed from the left. The "
+"[code]chars[/code] argument is a string specifying the set of characters to "
+"be removed.\n"
+"[b]Note:[/b] The [code]chars[/code] is not a prefix. See [method "
+"trim_prefix] method that will remove a single prefix string rather than a "
+"set of characters."
+msgstr ""
+
+#: doc/classes/String.xml:492
+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:499
+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:505
+msgid "Returns the MD5 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:511
+msgid "Returns the MD5 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:518
+msgid ""
+"Performs a case-insensitive [i]natural order[/i] comparison to another "
+"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater "
+"than, or [code]0[/code] if equal. \"less than\" or \"greater than\" are "
+"determined by the [url=https://en.wikipedia.org/wiki/"
+"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
+"roughly matches the alphabetical order. Internally, lowercase characters "
+"will be converted to uppercase during the comparison.\n"
+"When used for sorting, natural order comparison will order suites of numbers "
+"as expected by most people. If you sort the numbers from 1 to 10 using "
+"natural order, you will get [code][1, 2, 3, ...][/code] instead of [code][1, "
+"10, 2, 3, ...][/code].\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method nocasecmp_to] and [method casecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:529
+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. \"less than\" or \"greater than\" are determined by the [url=https://"
+"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] "
+"of each string, which roughly matches the alphabetical order. Internally, "
+"lowercase characters will be converted to uppercase during the comparison.\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method casecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:539
+msgid "Returns the character code at position [code]at[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:546
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] after the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:553
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] before the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:559
+msgid "Decode a percent-encoded string. See [method percent_encode]."
+msgstr ""
+
+#: doc/classes/String.xml:565
+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:572
+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:579
+msgid ""
+"Returns original string repeated a number of times. The number of "
+"repetitions is given by the argument."
+msgstr ""
+
+#: doc/classes/String.xml:587
+msgid ""
+"Replaces occurrences of a case-sensitive substring with the given one inside "
+"the string."
+msgstr ""
+
+#: doc/classes/String.xml:595
+msgid ""
+"Replaces occurrences of a case-insensitive substring with the given one "
+"inside the string."
+msgstr ""
+
+#: doc/classes/String.xml:603
+msgid ""
+"Performs a case-sensitive search for a substring, but starts from the end of "
+"the string instead of the beginning."
+msgstr ""
+
+#: doc/classes/String.xml:611
+msgid ""
+"Performs a case-insensitive search for a substring, but starts from the end "
+"of the string instead of the beginning."
+msgstr ""
+
+#: doc/classes/String.xml:618
+msgid "Returns the right side of the string from a given position."
+msgstr ""
+
+#: doc/classes/String.xml:627
+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:644
+msgid ""
+"Returns a copy of the string with characters removed from the right. The "
+"[code]chars[/code] argument is a string specifying the set of characters to "
+"be removed.\n"
+"[b]Note:[/b] The [code]chars[/code] is not a suffix. See [method "
+"trim_suffix] method that will remove a single suffix string rather than a "
+"set of characters."
+msgstr ""
+
+#: doc/classes/String.xml:651
+msgid "Returns the SHA-1 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:657
+msgid "Returns the SHA-1 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:663
+msgid "Returns the SHA-256 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:669
+msgid "Returns the SHA-256 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:676
+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:682
+msgid "Returns a simplified canonical path."
+msgstr ""
+
+#: doc/classes/String.xml:691
+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:709
+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:718
+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:724
+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:732
+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:738
+msgid ""
+"Converts the String (which is a character array) to [PoolByteArray] (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:744
+msgid ""
+"Converts a string containing a decimal number into a [code]float[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:750
+msgid ""
+"Converts a string containing an integer number into an [code]int[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:756
+msgid "Returns the string converted to lowercase."
+msgstr ""
+
+#: doc/classes/String.xml:762
+msgid "Returns the string converted to uppercase."
+msgstr ""
+
+#: doc/classes/String.xml:768
+msgid ""
+"Converts the String (which is an array of characters) to [PoolByteArray] "
+"(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:774
+msgid ""
+"Converts the String (which is an array of characters) to [PoolByteArray] "
+"(which is an array of bytes)."
+msgstr ""
+
+#: doc/classes/String.xml:781
+msgid ""
+"Removes a given string from the start if it starts with it or leaves the "
+"string unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:788
+msgid ""
+"Removes a given string from the end if it ends with it or leaves the string "
+"unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:794
+msgid ""
+"Removes any characters from the string that are prohibited in [Node] names "
+"([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]\"[/"
+"code])."
+msgstr ""
+
+#: doc/classes/String.xml:800
+msgid ""
+"Returns a copy of the string with special characters escaped using the XML "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:806
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings according to the XML standard."
+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.\n"
+"[b]Note:[/b] For children of [Control] that have [i]Theme Properties[/i], "
+"the [code]focus[/code] [StyleBox] is displayed over the [code]normal[/code], "
+"[code]hover[/code] or [code]pressed[/code] [StyleBox]. This makes the "
+"[code]focus[/code] [StyleBox] more reusable across different nodes."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:18
+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:25
+msgid "Returns the size of this [StyleBox] without the margins."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:31
+msgid ""
+"Returns the [CanvasItem] that handles its [constant CanvasItem."
+"NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this moment."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:38
+msgid "Returns the default value of the specified [enum Margin]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:45
+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:52
+msgid "Returns the minimum size that this stylebox can be shrunk to."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:58
+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:66
+msgid ""
+"Sets the default value of the specified [enum Margin] to given [code]offset[/"
+"code] in pixels."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:74
+msgid "Test a position in a rectangle, return whether it passes the mask test."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:80
+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:86
+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:90
+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:94
+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. The following 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 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:31
+msgid ""
+"Returns the given [code]margin[/code]'s border width. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:37
+msgid "Returns the smallest border width out of all four borders."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:44
+msgid ""
+"Returns the given [code]corner[/code]'s radius. See [enum Corner] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:51 doc/classes/StyleBoxTexture.xml:16
+msgid ""
+"Returns the size of the given [code]margin[/code]'s expand margin. See [enum "
+"Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:59
+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:66
+msgid "Sets the border width to [code]width[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:74
+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:81
+msgid "Sets the corner radius to [code]radius[/code] pixels for all corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:91
+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:99 doc/classes/StyleBoxTexture.xml:48
+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:106 doc/classes/StyleBoxTexture.xml:30
+msgid "Sets the expand margin to [code]size[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:116 doc/classes/StyleBoxTexture.xml:40
+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:122
+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.\n"
+"[b]Note:[/b] When using beveled corners with 45-degree angles ([member "
+"corner_detail] = 1), it is recommended to set [member anti_aliasing] to "
+"[code]false[/code] to ensure crisp visuals and avoid possible visual "
+"glitches."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:126
+msgid ""
+"This changes the size of the faded ring. Higher values can be used to "
+"achieve a \"blurry\" effect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:129
+msgid "The background color of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:132
+msgid "If [code]true[/code], the border will fade into the background color."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:135
+msgid "Sets the color of the border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:138
+msgid "Border width for the bottom border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:141
+msgid "Border width for the left border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:144
+msgid "Border width for the right border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:147
+msgid "Border width for the top border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:150
+msgid ""
+"This sets the number 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 less than 10, [code]4[/code] or [code]5[/code] should be "
+"enough. For corner radii less 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:155
+msgid ""
+"The bottom-left corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:158
+msgid ""
+"The bottom-right corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:161
+msgid ""
+"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:164
+msgid ""
+"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:167
+msgid "Toggles drawing of the inner part of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:170
+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:173
+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:176
+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:179
+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:182
+msgid ""
+"The color of the shadow. This has no effect if [member shadow_size] is lower "
+"than 1."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:185
+msgid ""
+"The shadow offset in pixels. Adjusts the position of the shadow relatively "
+"to the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:188
+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:23
+msgid ""
+"Returns the size of the given [code]margin[/code]. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:56
+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:62
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled horizontally. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:65
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled vertically. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:68
+msgid ""
+"If [code]true[/code], the nine-patch texture's center tile will be drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:71
+msgid ""
+"Expands the bottom margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:74
+msgid ""
+"Expands the left margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:77
+msgid ""
+"Expands the right margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:80
+msgid ""
+"Expands the top margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:83
+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:88
+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:93
+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:98
+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:103
+msgid "Modulates the color of the texture when this style box is drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:106
+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:110
+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:114
+msgid "The texture to use when drawing this style box."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:120
+msgid "Emitted when the stylebox's texture is changed."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:126
+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:129
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:132
+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/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], [ImmediateGeometry] 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:29
+msgid ""
+"Specifies an array of bones to use for the [i]next[/i] vertex. [code]bones[/"
+"code] must contain 4 integers."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:36
+msgid ""
+"Specifies a [Color] to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all.\n"
+"[b]Note:[/b] The material must have [member SpatialMaterial."
+"vertex_color_use_as_albedo] enabled for the vertex color to be visible."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:44
+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:51
+msgid ""
+"Specifies a normal to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:58
+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:65
+msgid ""
+"Specifies a tangent to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:77
+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:85
+msgid ""
+"Specifies a set of UV coordinates to use for the [i]next[/i] vertex. If "
+"every vertex needs to have this information set and you fail to submit it "
+"for the first vertex, this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:92
+msgid ""
+"Specifies an optional second set of UV coordinates to use for the [i]next[/"
+"i] vertex. If every vertex needs to have this information set and you fail "
+"to submit it for the first vertex, this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:99
+msgid ""
+"Specifies the position of current vertex. Should be called after specifying "
+"other vertex properties (e.g. Color, UV)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:106
+msgid ""
+"Specifies weight values to use for the [i]next[/i] vertex. [code]weights[/"
+"code] must contain 4 values. If every vertex needs to have this information "
+"set and you fail to submit it for the first vertex, this information may not "
+"be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:115
+msgid ""
+"Append vertices from a given [Mesh] surface onto the current vertex array "
+"with specified [Transform]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:122
+msgid ""
+"Called before adding any vertices. Takes the primitive type as an argument "
+"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:128
+msgid "Clear all information passed into the surface tool so far."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:136
+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] if compression is "
+"enabled. If compression is disabled the default flag is [constant Mesh."
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION]. See [code]ARRAY_COMPRESS_*[/code] "
+"constants in [enum Mesh.ArrayFormat] for other flags."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:143
+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:151
+msgid "Creates a vertex array from an existing [Mesh]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:160
+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:166
+msgid "Removes the index array by expanding the vertex array."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:173
+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. [method generate_normals] should be called [i]after[/i] generating "
+"geometry and [i]before[/i] committing the mesh using [method commit] or "
+"[method commit_to_arrays]. For correct display of normal-mapped surfaces, "
+"you will also have to generate tangents using [method generate_tangents].\n"
+"[b]Note:[/b] [method generate_normals] only works if the primitive type to "
+"be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:180
+msgid ""
+"Generates a tangent vector for each vertex. Requires that each vertex have "
+"UVs and normals set already (see [method generate_normals])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:186
+msgid ""
+"Shrinks the vertex array by creating an index array. This can improve "
+"performance by avoiding vertex reuse."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:193
+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."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:16
+msgid "Returns the child [Control] node located at the active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:22
+msgid ""
+"Returns the [Popup] node instance if one has been set already with [method "
+"set_popup].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:29 doc/classes/Tabs.xml:36
+msgid "Returns the previously active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:36
+msgid "Returns the [Control] node from the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:42 doc/classes/Tabs.xml:48
+msgid "Returns the number of tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:49 doc/classes/Tabs.xml:55
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:56
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:63 doc/classes/Tabs.xml:62
+msgid ""
+"Returns the [Texture] for the tab at index [code]tab_idx[/code] or "
+"[code]null[/code] if the tab has no [Texture]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:70
+msgid ""
+"Returns the index of the tab at local coordinates [code]point[/code]. "
+"Returns [code]-1[/code] if the point is outside the control boundaries or if "
+"there's no tab at the queried position."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:77
+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:90
+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:98 doc/classes/Tabs.xml:118
+msgid ""
+"If [code]disabled[/code] is [code]true[/code], disables the tab at index "
+"[code]tab_idx[/code], making it non-interactable."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:106
+msgid ""
+"If [code]hidden[/code] is [code]true[/code], hides the tab at index "
+"[code]tab_idx[/code], making it disappear from the tab area."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:114
+msgid "Sets an icon for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:122
+msgid ""
+"Sets a title for the tab at index [code]tab_idx[/code]. Tab titles default "
+"to the name of the indexed child node."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:129
+msgid ""
+"Defines rearrange group id, choose for each [TabContainer] the same value to "
+"enable tab drag between [TabContainer]. Enable drag with [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:135
+msgid ""
+"If [code]true[/code], all tabs are drawn in front of the panel. If "
+"[code]false[/code], inactive tabs are drawn behind the panel."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:138
+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:141 doc/classes/Tabs.xml:150
+msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:144
+msgid ""
+"The alignment of all tabs in the tab container. See the [enum TabAlign] "
+"constants for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:147
+msgid ""
+"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
+"and titles are hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:150
+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:156
+msgid ""
+"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
+"set_popup] for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:162 doc/classes/Tabs.xml:178
+msgid "Emitted when switching to another tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:168
+msgid "Emitted when a tab is selected, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:174 doc/classes/Tabs.xml:202
+msgid "Align the tabs to the left."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:177 doc/classes/Tabs.xml:205
+msgid "Align the tabs to the center."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:180 doc/classes/Tabs.xml:208
+msgid "Align the tabs to the right."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:185 doc/classes/Tabs.xml:237
+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:188 doc/classes/Tabs.xml:240
+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:191 doc/classes/Tabs.xml:243
+msgid "The font used to draw tab names."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:194 doc/classes/Tabs.xml:246
+msgid "Font color of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:197 doc/classes/Tabs.xml:249
+msgid "Font color of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:200 doc/classes/Tabs.xml:252
+msgid "Font color of the currently selected tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:203
+msgid "Horizontal separation between tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:206 doc/classes/Tabs.xml:258
+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:209 doc/classes/Tabs.xml:261
+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:216
+msgid "The icon for the menu button (see [method set_popup])."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:219
+msgid ""
+"The icon for the menu button (see [method set_popup]) when it's being "
+"hovered with the cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:222
+msgid "The style for the background fill."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:225
+msgid "The space at the left and right edges of the tab bar."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:228
+msgid "The style of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:231
+msgid "The style of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:234 doc/classes/Tabs.xml:274
+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 interacting with children."
+msgstr ""
+
+#: doc/classes/Tabs.xml:17
+msgid "Adds a new tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:24
+msgid "Moves the scroll view to make the tab visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:30
+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:42
+msgid "Returns [code]true[/code] if select with right mouse button is enabled."
+msgstr ""
+
+#: doc/classes/Tabs.xml:68
+msgid "Returns the number of hidden tabs offsetted to the left."
+msgstr ""
+
+#: doc/classes/Tabs.xml:75
+msgid "Returns tab [Rect2] with local position and size."
+msgstr ""
+
+#: doc/classes/Tabs.xml:82
+msgid "Returns the title of the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:88
+msgid "Returns the [Tabs]' rearrange group ID."
+msgstr ""
+
+#: doc/classes/Tabs.xml:96
+msgid "Moves a tab from [code]from[/code] to [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:103
+msgid "Removes the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:110
+msgid ""
+"If [code]true[/code], enables selecting a tab with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tabs.xml:126
+msgid "Sets an [code]icon[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:134
+msgid "Sets a [code]title[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:141
+msgid ""
+"Defines the rearrange group ID. Choose for each [Tabs] the same value to "
+"dragging tabs between [Tabs]. Enable drag with [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:147
+msgid "Select tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:153
+msgid ""
+"if [code]true[/code], the mouse's scroll wheel can be used to navigate the "
+"scroll view."
+msgstr ""
+
+#: doc/classes/Tabs.xml:156
+msgid "The alignment of all tabs. See [enum TabAlign] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:159
+msgid ""
+"Sets when the close button will appear on the tabs. See [enum "
+"CloseButtonDisplayPolicy] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:166
+msgid ""
+"Emitted when the active tab is rearranged via mouse drag. See [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:172
+msgid "Emitted when a tab is right-clicked."
+msgstr ""
+
+#: doc/classes/Tabs.xml:184
+msgid "Emitted when a tab is clicked, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:190
+msgid "Emitted when a tab is closed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:196
+msgid "Emitted when a tab is hovered by the mouse."
+msgstr ""
+
+#: doc/classes/Tabs.xml:211
+msgid "Represents the size of the [enum TabAlign] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:214
+msgid "Never show the close buttons."
+msgstr ""
+
+#: doc/classes/Tabs.xml:217
+msgid "Only show the close button on the currently active tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:220
+msgid "Show the close button on all tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:223
+msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:228
+msgid "Background of the close button when it's being hovered with the cursor."
+msgstr ""
+
+#: doc/classes/Tabs.xml:231
+msgid "Background of the close button when it's being pressed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:234
+msgid "The icon for the close button (see [member tab_close_display_policy])."
+msgstr ""
+
+#: doc/classes/Tabs.xml:255
+msgid "The horizontal separation between the tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:268
+msgid "The style of an inactive tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:271
+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:15
+msgid "Returns [code]true[/code] if a connection is available for taking."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:21
+msgid ""
+"Returns [code]true[/code] if the server is currently listening for "
+"connections."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:29
+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:38
+msgid "Stops listening."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:44
+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.\n"
+"[b]Note:[/b] When holding down [code]Alt[/code], the vertical scroll wheel "
+"will scroll 5 times as fast as it would normally do. This also works in the "
+"Godot script editor."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:20
+msgid "Adds color region (given the delimiters) and its colors."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:28
+msgid "Adds a [code]keyword[/code] and its [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:35
+msgid ""
+"Returns if the given line is foldable, that is, it has indented lines right "
+"below it."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:41
+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:47
+msgid ""
+"Clears all custom syntax coloring information previously added with [method "
+"add_color_region] or [method add_keyword_color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:53
+msgid "Clears the undo history."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:59
+msgid "Copy's the current text selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:65
+msgid "Returns the column the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:71
+msgid "Returns the line the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:79
+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:90
+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:98
+msgid "Cut's the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:104
+msgid "Deselects the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:110
+msgid "Folds all lines that are possible to be folded (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:117
+msgid "Folds the given line, if possible (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:123
+msgid "Returns an array containing the line number of each breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:130
+msgid "Returns the [Color] of the specified [code]keyword[/code]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:137
+msgid "Returns the text of a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:143
+msgid "Returns the amount of total lines in the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:149
+msgid ""
+"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
+"displayed when right-clicking on the [TextEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:156
+msgid "Returns the selection begin column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:162
+msgid "Returns the selection begin line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:168
+msgid "Returns the text inside the selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:174
+msgid "Returns the selection end column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:180
+msgid "Returns the selection end line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:186
+msgid ""
+"Returns a [String] text with the word under the caret (text cursor) location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:193
+msgid ""
+"Returns whether the specified [code]keyword[/code] has a color set to it or "
+"not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:199 doc/classes/UndoRedo.xml:121
+msgid "Returns [code]true[/code] if a \"redo\" action is available."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:205 doc/classes/UndoRedo.xml:127
+msgid "Returns [code]true[/code] if an \"undo\" action is available."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:212
+msgid "Insert the specified text at the cursor position."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:219
+msgid "Returns whether the line at the specified index is folded or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:226
+msgid "Returns whether the line at the specified index is hidden or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:233
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] is bookmarked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:240
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] has a "
+"breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:247
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] is marked as "
+"safe."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:253
+msgid "Returns [code]true[/code] if the selection is active."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:260
+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:266
+msgid "Paste the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:272
+msgid "Perform redo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:278
+msgid ""
+"Removes all the breakpoints. This will not fire the [signal "
+"breakpoint_toggled] signal."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:288
+msgid ""
+"Perform a search inside the text. Search flags can be specified in the [enum "
+"SearchFlags] enum.\n"
+"Returns an empty [code]PoolIntArray[/code] if no result was found. "
+"Otherwise, the result line and column can be accessed at indices specified "
+"in the [enum SearchResult] enum, e.g:\n"
+"[codeblock]\n"
+"var result = search(key, flags, line, column)\n"
+"if result.size() > 0:\n"
+" # Result found.\n"
+" var res_line = result[TextEdit.SEARCH_RESULT_LINE]\n"
+" var res_column = result[TextEdit.SEARCH_RESULT_COLUMN]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TextEdit.xml:306
+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:313
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:322
+msgid "Sets the text for a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:330
+msgid ""
+"Bookmarks the [code]line[/code] if [code]bookmark[/code] is true. Deletes "
+"the bookmark if [code]bookmark[/code] is false.\n"
+"Bookmarks are shown in the [member breakpoint_gutter]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:339
+msgid ""
+"Adds or removes the breakpoint in [code]line[/code]. Breakpoints are shown "
+"in the [member breakpoint_gutter]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:347
+msgid "If [code]true[/code], hides the line of the specified index."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:355
+msgid ""
+"If [code]true[/code], marks the [code]line[/code] as safe.\n"
+"This will show the line number with the color provided in the "
+"[code]safe_line_number_color[/code] theme property."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:363
+msgid "Toggle the folding of the code block at the given line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:369
+msgid "Perform undo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:376
+msgid "Unfolds the given line, if folded."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:382
+msgid ""
+"Unhide all lines that were previously set to hidden by [method "
+"set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:388
+msgid "If [code]true[/code], the breakpoint gutter is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+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:401
+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:405
+msgid "If [code]true[/code], a right-click displays the context menu."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:408
+msgid ""
+"If [code]true[/code], the \"space\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:411
+msgid ""
+"If [code]true[/code], the \"tab\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:415
+msgid ""
+"If [code]true[/code], the fold gutter is visible. This enables folding "
+"groups of indented lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:418
+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:421
+msgid ""
+"If [code]true[/code], all occurrences of the selected text will be "
+"highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:424
+msgid "If [code]true[/code], the line containing the cursor is highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:427
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:430
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
+"for selected text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:437
+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:440
+msgid ""
+"If there is a horizontal scrollbar, this determines the current horizontal "
+"scroll value in pixels."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:443
+msgid ""
+"If there is a vertical scrollbar, this determines the current vertical "
+"scroll value in line numbers, starting at 0 for the top line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:446
+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:450
+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:453
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:456
+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:459
+msgid ""
+"If [code]true[/code], any custom color properties that have been set for "
+"this [TextEdit] will be visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:462
+msgid "String value of the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:465
+msgid "Vertical scroll sensitivity."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:471
+msgid ""
+"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
+"what is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:478
+msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:483
+msgid "Emitted when the cursor changes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:490
+msgid "Emitted when the info icon is clicked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:512
+msgid "Match case when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:515
+msgid "Match whole words when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:518
+msgid "Search from end to beginning."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:521
+msgid "Used to access the result column from [method search]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:524
+msgid "Used to access the result line from [method search]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:533
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position)."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:536
+msgid "Erases the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:539
+msgid "Selects the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:545
+msgid "Redoes the previous action."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:553
+msgid ""
+"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:556
+msgid ""
+"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
+"be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:561 doc/classes/TextEdit.xml:588
+msgid ""
+"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:599
+msgid "Sets the default [Font]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:602
+msgid "Sets the font [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:607
+msgid ""
+"Sets the [Color] of the selected text. [member override_selected_font_color] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:612
+msgid ""
+"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:615
+msgid "Sets the spacing between the lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:618
+msgid "Sets the [Color] of marked text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:623
+msgid "Sets the [StyleBox] of this [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:628
+msgid ""
+"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:633
+msgid "Sets the highlight [Color] of text selections."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:640
+msgid "Sets a custom [Texture] for tab text characters."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:643
+msgid ""
+"Sets the highlight [Color] of multiple occurrences. [member "
+"highlight_all_occurrences] has to be enabled."
+msgstr ""
+
+#: doc/classes/Texture.xml:4
+msgid "Texture for 2D and 3D."
+msgstr ""
+
+#: doc/classes/Texture.xml:7
+msgid ""
+"A texture works by registering an image in the video hardware, which then "
+"can be used in 3D models or 2D [Sprite] or GUI [Control].\n"
+"Textures are often created by loading them from a file. See [method "
+"@GDScript.load].\n"
+"[Texture] is a base for other resources. It cannot be used directly.\n"
+"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger textures may fail to import."
+msgstr ""
+
+#: doc/classes/Texture.xml:23
+msgid ""
+"Draws the texture using a [CanvasItem] with the [VisualServer] API at the "
+"specified [code]position[/code]. Equivalent to [method VisualServer."
+"canvas_item_add_texture_rect] with a rect at [code]position[/code] and the "
+"size of this [Texture]."
+msgstr ""
+
+#: doc/classes/Texture.xml:35
+msgid ""
+"Draws the texture using a [CanvasItem] with the [VisualServer] API. "
+"Equivalent to [method VisualServer.canvas_item_add_texture_rect]."
+msgstr ""
+
+#: doc/classes/Texture.xml:48
+msgid ""
+"Draws a part of the texture using a [CanvasItem] with the [VisualServer] "
+"API. Equivalent to [method VisualServer.canvas_item_add_texture_rect_region]."
+msgstr ""
+
+#: doc/classes/Texture.xml:54
+msgid ""
+"Returns an [Image] that is a copy of data from this [Texture]. [Image]s can "
+"be accessed and manipulated directly."
+msgstr ""
+
+#: doc/classes/Texture.xml:60
+msgid "Returns the texture height."
+msgstr ""
+
+#: doc/classes/Texture.xml:66
+msgid "Returns the texture size."
+msgstr ""
+
+#: doc/classes/Texture.xml:72
+msgid "Returns the texture width."
+msgstr ""
+
+#: doc/classes/Texture.xml:78
+msgid "Returns [code]true[/code] if this [Texture] has an alpha channel."
+msgstr ""
+
+#: doc/classes/Texture.xml:84
+msgid ""
+"The texture's [enum Flags]. [enum Flags] are used to set various properties "
+"of the [Texture]."
+msgstr ""
+
+#: doc/classes/Texture.xml:89
+msgid ""
+"Default flags. [constant FLAG_MIPMAPS], [constant FLAG_REPEAT] and [constant "
+"FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/Texture.xml:92 doc/classes/VisualServer.xml:3206
+msgid ""
+"Generates mipmaps, which are smaller versions of the same texture to use "
+"when zoomed out, keeping the aspect ratio."
+msgstr ""
+
+#: doc/classes/Texture.xml:95
+msgid ""
+"Repeats the texture (instead of clamp to edge).\n"
+"[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support "
+"repetition."
+msgstr ""
+
+#: doc/classes/Texture.xml:99 doc/classes/VisualServer.xml:3212
+msgid "Uses a magnifying filter, to enable smooth zooming in of the texture."
+msgstr ""
+
+#: doc/classes/Texture.xml:102 doc/classes/TextureLayered.xml:88
+#: doc/classes/VisualServer.xml:3215
+msgid ""
+"Uses anisotropic mipmap filtering. Generates smaller versions of the same "
+"texture with different aspect ratios.\n"
+"This results in better-looking textures when viewed from oblique angles."
+msgstr ""
+
+#: doc/classes/Texture.xml:106 doc/classes/VisualServer.xml:3219
+msgid "Converts the texture to the sRGB color space."
+msgstr ""
+
+#: doc/classes/Texture.xml:109
+msgid ""
+"Repeats the texture with alternate sections mirrored.\n"
+"[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support "
+"repetition."
+msgstr ""
+
+#: doc/classes/Texture.xml:113 doc/classes/VisualServer.xml:3225
+msgid "Texture is a video surface."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:4
+msgid "Texture with 3 dimensions."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:7
+msgid ""
+"Texture3D is a 3-dimensional texture that has a width, height, and depth."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:20
+msgid ""
+"Creates the Texture3D with specified [code]width[/code], [code]height[/"
+"code], and [code]depth[/code]. See [enum Image.Format] for [code]format[/"
+"code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/"
+"code] options."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:4
+msgid "Array of textures stored in a single primitive."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:7
+msgid ""
+"[TextureArray]s store an array of [Image]s in a single [Texture] primitive. "
+"Each layer of the texture array has its own mipmap chain. This makes it is a "
+"good alternative to texture atlases.\n"
+"[TextureArray]s must be displayed using shaders. After importing your file "
+"as a [TextureArray] and setting the appropriate Horizontal and Vertical "
+"Slices, display it by setting it as a uniform to a shader, for example:\n"
+"[codeblock]\n"
+"shader_type canvas_item;\n"
+"\n"
+"uniform sampler2DArray tex;\n"
+"uniform int index;\n"
+"\n"
+"void fragment() {\n"
+" COLOR = texture(tex, vec3(UV.x, UV.y, float(index)));\n"
+"}\n"
+"[/codeblock]\n"
+"Set the integer uniform \"index\" to show a particular part of the texture "
+"as defined by the Horizontal and Vertical Slices in the importer."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:32
+msgid ""
+"Creates the TextureArray with specified [code]width[/code], [code]height[/"
+"code], and [code]depth[/code]. See [enum Image.Format] for [code]format[/"
+"code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/"
+"code] options."
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:18
+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:27
+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:30
+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:33
+msgid ""
+"Texture to display when the node is disabled. See [member BaseButton."
+"disabled]."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:36
+msgid "Texture to display when the node has mouse or keyboard focus."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:39
+msgid "Texture to display when the mouse hovers the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:42
+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:45
+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:50 doc/classes/TextureRect.xml:38
+msgid "Scale to fit the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:53 doc/classes/TextureRect.xml:41
+msgid "Tile inside the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:56 doc/classes/TextureRect.xml:44
+msgid ""
+"The texture keeps its original size and stays in the bounding rectangle's "
+"top-left corner."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:59 doc/classes/TextureRect.xml:47
+msgid ""
+"The texture keeps its original size and stays centered in the node's "
+"bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:62 doc/classes/TextureRect.xml:50
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, but maintain the "
+"texture's aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:65
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it, and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:68 doc/classes/TextureRect.xml:56
+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 [Texture3D] and [TextureArray]. Cannot be used directly, but "
+"contains all the functions necessary for accessing and using [Texture3D] and "
+"[TextureArray]. Data is set on a per-layer basis. For [Texture3D]s, the "
+"layer specifies the depth or Z-index, they can be treated as a bunch of 2D "
+"slices. Similarly, for [TextureArray]s, the layer specifies the array layer."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:15
+msgid ""
+"Returns the depth of the texture. Depth is the 3rd dimension (typically Z-"
+"axis)."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:21
+msgid ""
+"Returns the current format being used by this texture. See [enum Image."
+"Format] for details."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:27
+msgid ""
+"Returns the height of the texture. Height is typically represented by the Y-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:34
+msgid ""
+"Returns an [Image] resource with the data from specified [code]layer[/code]."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:40
+msgid ""
+"Returns the width of the texture. Width is typically represented by the X-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:51
+msgid ""
+"Partially sets the data for a specified [code]layer[/code] by overwriting "
+"using the data of the specified [code]image[/code]. [code]x_offset[/code] "
+"and [code]y_offset[/code] determine where the [Image] is \"stamped\" over "
+"the texture. The [code]image[/code] must fit within the texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:59
+msgid ""
+"Sets the data for the specified layer. Data takes the form of a 2-"
+"dimensional [Image] resource."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:65
+msgid "Returns a dictionary with all the data used by this texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:68
+msgid "Specifies which [enum Flags] apply to this texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:73
+msgid ""
+"Default flags for [TextureArray]. [constant FLAG_MIPMAPS], [constant "
+"FLAG_REPEAT] and [constant FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:76
+msgid "Default flags for [Texture3D]. [constant FLAG_FILTER] is enabled."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:79
+msgid "Texture will generate mipmaps on creation."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:82
+msgid "Texture will repeat when UV used is outside the 0-1 range."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:85
+msgid ""
+"Use filtering when reading from texture. Filtering smooths out pixels. "
+"Turning filtering off is slightly faster and more appropriate when you need "
+"access to individual pixels."
+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:28
+msgid "The fill direction. See [enum FillMode] for possible values."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:32
+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:35
+msgid ""
+"Offsets [member texture_progress] if [member fill_mode] is [constant "
+"FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:38
+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:42
+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:45
+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:48
+msgid "The width of the 9-patch's left column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:51
+msgid "The width of the 9-patch's right column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:54
+msgid "The height of the 9-patch's top row."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:57
+msgid ""
+"[Texture] 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:60
+msgid ""
+"[Texture] 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:64
+msgid ""
+"The offset of [member texture_progress]. Useful for [member texture_over] "
+"and [member texture_under] with fancy borders, to avoid transparent margins "
+"in your progress texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:67
+msgid "[Texture] that draws under the progress bar. The bar's background."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:70
+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:73
+msgid ""
+"Multiplies the color of the bar's [code]texture_progress[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:76
+msgid "Multiplies the color of the bar's [code]texture_under[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:81
+msgid "The [member texture_progress] fills from left to right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:84
+msgid "The [member texture_progress] fills from right to left."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:87
+msgid "The [member texture_progress] fills from top to bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:90
+msgid "The [member texture_progress] fills from bottom to top."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:93
+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:96
+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:99
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the left and the right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:102
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the top and the bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:105
+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.\n"
+"[b]Note:[/b] You should enable [member flip_v] when using a TextureRect to "
+"display a [ViewportTexture]. Alternatively, you can enable [member Viewport."
+"render_target_v_flip] on the Viewport. Otherwise, the image will appear "
+"upside down."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:17
+msgid "If [code]true[/code], the texture scales to fit its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:27
+msgid ""
+"Controls the texture's behavior when resizing the node's bounding rectangle. "
+"See [enum StretchMode]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:30
+msgid "The node's [Texture] resource."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:35
+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:53
+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/3.4/tutorials/gui/gui_skinning.html"
+msgstr ""
+
+#: doc/classes/Theme.xml:17
+msgid "Clears all values on the theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:25
+msgid ""
+"Clears the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:33
+msgid ""
+"Clears the constant at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:41
+msgid ""
+"Clears the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:49
+msgid ""
+"Clears the icon at [code]name[/code] if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:57
+msgid ""
+"Clears [StyleBox] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:66
+msgid ""
+"Clears the theme item of [code]data_type[/code] at [code]name[/code] if the "
+"theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:72
+msgid "Sets the theme's values to a copy of the default theme values."
+msgstr ""
+
+#: doc/classes/Theme.xml:79
+msgid "Sets the theme's values to a copy of a given theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:87
+msgid ""
+"Returns the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:94
+msgid ""
+"Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s "
+"name, for use in [method get_color], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:100
+msgid ""
+"Returns all the [Color] types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_color] and/or [method get_color_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:108
+msgid ""
+"Returns the constant at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:115
+msgid ""
+"Returns all the constants as a [PoolStringArray] filled with each constant's "
+"name, for use in [method get_constant], if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:121
+msgid ""
+"Returns all the constant types as a [PoolStringArray] filled with unique "
+"type names, for use in [method get_constant] and/or [method "
+"get_constant_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:129
+msgid ""
+"Returns the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:136
+msgid ""
+"Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s "
+"name, for use in [method get_font], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:142
+msgid ""
+"Returns all the [Font] types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_font] and/or [method get_font_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:150
+msgid ""
+"Returns the icon [Texture] at [code]name[/code] if the theme has "
+"[code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:157
+msgid ""
+"Returns all the icons as a [PoolStringArray] filled with each [Texture]'s "
+"name, for use in [method get_icon], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:163
+msgid ""
+"Returns all the icon types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_icon] and/or [method get_icon_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:171
+msgid ""
+"Returns the [StyleBox] at [code]name[/code] if the theme has "
+"[code]node_type[/code].\n"
+"Valid [code]name[/code]s may be found using [method get_stylebox_list]. "
+"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+msgstr ""
+
+#: doc/classes/Theme.xml:179
+msgid ""
+"Returns all the [StyleBox]s as a [PoolStringArray] filled with each "
+"[StyleBox]'s name, for use in [method get_stylebox], if the theme has "
+"[code]node_type[/code].\n"
+"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+msgstr ""
+
+#: doc/classes/Theme.xml:186
+msgid ""
+"Returns all the [StyleBox] types as a [PoolStringArray] filled with unique "
+"type names, for use in [method get_stylebox] and/or [method "
+"get_stylebox_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:195
+msgid ""
+"Returns the theme item of [code]data_type[/code] at [code]name[/code] if the "
+"theme has [code]node_type[/code].\n"
+"Valid [code]name[/code]s may be found using [method get_theme_item_list] or "
+"a data type specific method. Valid [code]node_type[/code]s may be found "
+"using [method get_theme_item_types] or a data type specific method."
+msgstr ""
+
+#: doc/classes/Theme.xml:204
+msgid ""
+"Returns all the theme items of [code]data_type[/code] as a [PoolStringArray] "
+"filled with each theme items's name, for use in [method get_theme_item] or a "
+"data type specific method, if the theme has [code]node_type[/code].\n"
+"Valid [code]node_type[/code]s may be found using [method "
+"get_theme_item_types] or a data type specific method."
+msgstr ""
+
+#: doc/classes/Theme.xml:212
+msgid ""
+"Returns all the theme items of [code]data_type[/code] types as a "
+"[PoolStringArray] filled with unique type names, for use in [method "
+"get_theme_item], [method get_theme_item_list] or data type specific methods."
+msgstr ""
+
+#: doc/classes/Theme.xml:219
+msgid ""
+"Returns all the theme types as a [PoolStringArray] filled with unique type "
+"names, for use in other [code]get_*[/code] functions of this theme.\n"
+"[b]Note:[/b] [code]node_type[/code] has no effect and will be removed in "
+"future version."
+msgstr ""
+
+#: doc/classes/Theme.xml:228
+msgid ""
+"Returns [code]true[/code] if [Color] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:237
+msgid ""
+"Returns [code]true[/code] if constant with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:244
+msgid ""
+"Returns [code]true[/code] if this theme has a valid [member default_font] "
+"value."
+msgstr ""
+
+#: doc/classes/Theme.xml:252
+msgid ""
+"Returns [code]true[/code] if [Font] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:261
+msgid ""
+"Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:270
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:280
+msgid ""
+"Returns [code]true[/code] if a theme item of [code]data_type[/code] with "
+"[code]name[/code] is in [code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:288
+msgid ""
+"Adds missing and overrides existing definitions with values from the "
+"[code]other[/code] [Theme].\n"
+"[b]Note:[/b] This modifies the current theme. If you want to merge two "
+"themes together without modifying either one, create a new empty theme and "
+"merge the other two into it one after another."
+msgstr ""
+
+#: doc/classes/Theme.xml:298
+msgid ""
+"Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:307
+msgid ""
+"Renames the constant at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:316
+msgid ""
+"Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:325
+msgid ""
+"Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme "
+"has [code]node_type[/code]. If [code]name[/code] is already taken, this "
+"method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:334
+msgid ""
+"Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:344
+msgid ""
+"Renames the theme item of [code]data_type[/code] at [code]old_name[/code] to "
+"[code]name[/code] if the theme has [code]node_type[/code]. If [code]name[/"
+"code] is already taken, this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:353
+msgid ""
+"Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:363
+msgid ""
+"Sets the theme's constant to [code]constant[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:373
+msgid ""
+"Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:383
+msgid ""
+"Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] "
+"in [code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:393
+msgid ""
+"Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:404
+msgid ""
+"Sets the theme item of [code]data_type[/code] to [code]value[/code] at "
+"[code]name[/code] in [code]node_type[/code].\n"
+"Does nothing if the [code]value[/code] type does not match [code]data_type[/"
+"code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:412
+msgid ""
+"The default font of this [Theme] resource. Used as a fallback value for font "
+"items defined in this theme, but having invalid values. If this value is "
+"also invalid, the global default value is used.\n"
+"Use [method has_default_font] to check if this value is valid."
+msgstr ""
+
+#: doc/classes/Theme.xml:418
+msgid "Theme's [Color] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:421
+msgid "Theme's constant item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:424
+msgid "Theme's [Font] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:427
+msgid "Theme's icon [Texture] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:430
+msgid "Theme's [StyleBox] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:433
+msgid "Maximum value for the DataType enum."
+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.\n"
+"[b]Note:[/b] Breakpoints won't break on code if it's running in a thread. "
+"This is a current limitation of the GDScript debugger."
+msgstr ""
+
+#: doc/classes/Thread.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html"
+msgstr ""
+
+#: doc/classes/Thread.xml:19
+msgid ""
+"Returns the current [Thread]'s ID, uniquely identifying it among all "
+"threads. If the [Thread] is not running this returns an empty string."
+msgstr ""
+
+#: doc/classes/Thread.xml:25
+msgid ""
+"Returns [code]true[/code] if this [Thread] has been started. Once started, "
+"this will return [code]true[/code] until it is joined using [method "
+"wait_to_finish]. For checking if a [Thread] is still executing its task, use "
+"[method is_alive]."
+msgstr ""
+
+#: doc/classes/Thread.xml:31
+msgid ""
+"Returns [code]true[/code] if this [Thread] is currently running. This is "
+"useful for determining if [method wait_to_finish] can be called without "
+"blocking the calling thread.\n"
+"To check if a [Thread] is joinable, use [method is_active]."
+msgstr ""
+
+#: doc/classes/Thread.xml:42
+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:49
+msgid ""
+"Joins the [Thread] and waits for it to finish. Returns the output of the "
+"method passed to [method start].\n"
+"Should either be used when you want to retrieve the value returned from the "
+"method called by the [Thread] or before freeing the instance that contains "
+"the [Thread].\n"
+"To determine if this can be called without blocking the calling thread, "
+"check if [method is_alive] is [code]false[/code].\n"
+"[b]Note:[/b] After the [Thread] finishes joining it will be disposed. If you "
+"want to use it again you will have to create a new instance of it."
+msgstr ""
+
+#: doc/classes/Thread.xml:58
+msgid "A thread running with lower priority than normally."
+msgstr ""
+
+#: doc/classes/Thread.xml:61
+msgid "A thread with a standard priority."
+msgstr ""
+
+#: doc/classes/Thread.xml:64
+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.\n"
+"When doing physics queries against the tilemap, the cell coordinates are "
+"encoded as [code]metadata[/code] for each detected collision shape returned "
+"by methods such as [method Physics2DDirectSpaceState.intersect_shape], "
+"[method Physics2DDirectBodyState.get_contact_collider_shape_metadata], etc."
+msgstr ""
+
+#: doc/classes/TileMap.xml:11 doc/classes/TileSet.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html"
+msgstr ""
+
+#: doc/classes/TileMap.xml:14 doc/classes/TileSet.xml:14
+msgid "https://godotengine.org/asset-library/asset/111"
+msgstr ""
+
+#: doc/classes/TileMap.xml:23
+msgid "Clears all cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:29
+msgid "Clears cells that do not exist in the tileset."
+msgstr ""
+
+#: doc/classes/TileMap.xml:37
+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:45
+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:52
+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:59
+msgid "Returns [code]true[/code] if the given collision layer bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:66
+msgid "Returns [code]true[/code] if the given collision mask bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:72
+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:79
+msgid ""
+"Returns an array of all cells with the given tile index specified in "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:85
+msgid "Returns a rectangle enclosing the used (non-empty) tiles of the map."
+msgstr ""
+
+#: doc/classes/TileMap.xml:93
+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:101
+msgid "Returns [code]true[/code] if the given cell is flipped in the X axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:109
+msgid "Returns [code]true[/code] if the given cell is flipped in the Y axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:117
+msgid ""
+"Returns the local position of the top left corner of the cell corresponding "
+"to the given tilemap (grid-based) coordinates.\n"
+"To get the global position, use [method Node2D.to_global]:\n"
+"[codeblock]\n"
+"var local_position = my_tilemap.map_to_world(map_position)\n"
+"var global_position = my_tilemap.to_global(local_position)\n"
+"[/codeblock]\n"
+"Optionally, the tilemap's half offset can be ignored."
+msgstr ""
+
+#: doc/classes/TileMap.xml:136
+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=false, flip_y=false, transpose=false, "
+"autotile_coord=Vector2()):\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:158
+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:170
+msgid "Sets the given collision layer bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:178
+msgid "Sets the given collision mask bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:185
+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:193
+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:200
+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:207
+msgid ""
+"Returns the tilemap (grid-based) coordinates corresponding to the given "
+"local position.\n"
+"To use this with a global position, first determine the local position with "
+"[method Node2D.to_local]:\n"
+"[codeblock]\n"
+"var local_position = my_tilemap.to_local(global_position)\n"
+"var map_position = my_tilemap.world_to_map(local_position)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileMap.xml:218
+msgid "If [code]true[/code], the cell's UVs will be clipped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:221
+msgid "The custom [Transform2D] to be applied to the TileMap's cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:224
+msgid ""
+"Amount to offset alternating tiles. See [enum HalfOffset] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:227
+msgid ""
+"The TileMap's quadrant size. Optimizes drawing by batching, using chunks of "
+"this size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:230
+msgid "The TileMap's cell size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:233
+msgid "Position for tile origin. See [enum TileOrigin] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:236
+msgid ""
+"If [code]true[/code], the TileMap's direct children will be drawn in order "
+"of their Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:239
+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:243
+msgid ""
+"Bounce value for static body collisions (see [code]collision_use_kinematic[/"
+"code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:246
+msgid ""
+"Friction value for static body collisions (see "
+"[code]collision_use_kinematic[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:249
+msgid ""
+"The collision layer(s) for all colliders in the TileMap. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/TileMap.xml:252
+msgid ""
+"The collision mask(s) for all colliders in the TileMap. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/TileMap.xml:255
+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:258
+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:261
+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:266
+msgid "The TileMap orientation mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:269
+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:272
+msgid ""
+"If [code]true[/code], collision shapes are visible in the editor. Doesn't "
+"affect collision shapes visibility at runtime. To show collision shapes at "
+"runtime, enable [b]Visible Collision Shapes[/b] in the [b]Debug[/b] menu "
+"instead."
+msgstr ""
+
+#: doc/classes/TileMap.xml:275
+msgid "The assigned [TileSet]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:281
+msgid "Emitted when a tilemap setting has changed."
+msgstr ""
+
+#: doc/classes/TileMap.xml:287
+msgid "Returned when a cell doesn't exist."
+msgstr ""
+
+#: doc/classes/TileMap.xml:290
+msgid "Orthogonal orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:293
+msgid "Isometric orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:296
+msgid "Custom orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:299
+msgid "Half offset on the X coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:302
+msgid "Half offset on the Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:305
+msgid "Half offset disabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:308
+msgid "Half offset on the X coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:311
+msgid "Half offset on the Y coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:314
+msgid "Tile origin at its top-left corner."
+msgstr ""
+
+#: doc/classes/TileMap.xml:317
+msgid "Tile origin at its center."
+msgstr ""
+
+#: doc/classes/TileMap.xml:320
+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:42
+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:50
+msgid "Clears all bitmask information of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:58
+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:66
+msgid "Returns the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:73
+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:82
+msgid ""
+"Returns the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:90
+msgid ""
+"Returns the navigation polygon of the subtile from an atlas/autotile given "
+"its coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:97
+msgid "Returns the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:104
+msgid "Returns the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:112
+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:121
+msgid ""
+"Returns the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:130
+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:139
+msgid "Sets the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:147
+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:157
+msgid ""
+"Sets the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:166
+msgid ""
+"Sets the navigation polygon of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:174
+msgid "Sets the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:182
+msgid "Sets the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:191
+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:201
+msgid ""
+"Sets the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:207
+msgid "Clears all tiles."
+msgstr ""
+
+#: doc/classes/TileSet.xml:214
+msgid "Creates a new tile with the given ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:221
+msgid "Returns the first tile matching the given name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:227
+msgid ""
+"Returns the ID following the last currently used ID, useful when creating a "
+"new tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:233
+msgid "Returns an array of all currently used tile IDs."
+msgstr ""
+
+#: doc/classes/TileSet.xml:240
+msgid "Removes the given tile ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:251
+msgid "Adds a shape to the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:258
+msgid "Returns the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:265
+msgid "Returns the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:272
+msgid "Returns the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:279
+msgid "Returns the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:286
+msgid "Returns the navigation polygon of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:293
+msgid "Returns the offset of the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:300
+msgid "Returns the tile's normal map texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:307
+msgid "Returns the offset of the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:314
+msgid "Returns the tile sub-region in the texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:322
+msgid "Returns a tile's given shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:329
+msgid "Returns the number of shapes assigned to a tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:337
+msgid "Returns the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:345
+msgid "Returns the one-way collision value of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:360
+msgid "Returns the [Transform2D] of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:367
+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:384
+msgid "Returns the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:391
+msgid "Returns the texture offset of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:398
+msgid "Returns the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:405
+msgid "Returns the tile's Z index (drawing layer)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:413
+msgid "Sets a light occluder for the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:421
+msgid "Sets the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:429
+msgid "Sets the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:437
+msgid "Sets the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:445
+msgid "Sets the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:453
+msgid "Sets an offset for the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:461
+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:470
+msgid "Sets an offset for the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:478
+msgid ""
+"Sets the tile's sub-region in the texture. This is common in texture atlases."
+msgstr ""
+
+#: doc/classes/TileSet.xml:487
+msgid "Sets a shape for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:496
+msgid "Sets the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:505
+msgid "Enables one-way collision on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:522
+msgid "Sets a [Transform2D] on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:530
+msgid "Sets an array of shapes for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:538
+msgid "Sets the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:546
+msgid "Sets the tile's texture offset."
+msgstr ""
+
+#: doc/classes/TileSet.xml:554
+msgid "Sets the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:562
+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 a 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:24
+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:31
+msgid "Stops the timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:37
+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:41
+msgid ""
+"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
+"code], it will restart."
+msgstr ""
+
+#: doc/classes/Timer.xml:44
+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:47
+msgid "Processing mode. See [enum TimerProcessMode]."
+msgstr ""
+
+#: doc/classes/Timer.xml:50
+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:54
+msgid ""
+"The wait time in seconds.\n"
+"[b]Note:[/b] Timers can only emit once per rendered frame at most (or once "
+"per physics frame if [member process_mode] is [constant "
+"TIMER_PROCESS_PHYSICS]). This means very low wait times (lower than 0.05 "
+"seconds) will behave in significantly different ways depending on the "
+"rendered framerate. For very low wait times, it is recommended to use a "
+"process loop in a script instead of using a Timer node."
+msgstr ""
+
+#: doc/classes/Timer.xml:67
+msgid ""
+"Update the timer during the physics step at each frame (fixed framerate "
+"processing)."
+msgstr ""
+
+#: doc/classes/Timer.xml:70
+msgid "Update the timer during the idle time at each frame."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:4
+msgid "Flat button helper class."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:7
+msgid ""
+"This is a helper class to generate a flat [Button] (see [member Button."
+"flat]), creating a [ToolButton] is equivalent to:\n"
+"[codeblock]\n"
+"var btn = Button.new()\n"
+"btn.flat = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ToolButton.xml:24
+msgid "[StyleBox] used when the [ToolButton] is disabled."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:27
+msgid ""
+"[StyleBox] used when the [ToolButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:30
+msgid "[Font] of the [ToolButton]'s text."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:33
+msgid "Default text [Color] of the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:36
+msgid "Text [Color] used when the [ToolButton] is disabled."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:39
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:42
+msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:45
+msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:48
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:51
+msgid "The horizontal space between [ToolButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
+msgid "[StyleBox] used when the [ToolButton] is being pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:4
+msgid "Button for touch screen devices for gameplay use."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:7
+msgid ""
+"TouchScreenButton allows you to create on-screen buttons for touch devices. "
+"It's intended for gameplay use, such as a unit you have to touch to move. "
+"Unlike [Button], TouchScreenButton supports multitouch out of the box. "
+"Several TouchScreenButtons can be pressed at the same time with touch "
+"input.\n"
+"This node inherits from [Node2D]. Unlike with [Control] nodes, you cannot "
+"set anchors on it. If you want to create menus or user interfaces, you may "
+"want to use [Button] nodes instead. To make button nodes react to touch "
+"events, you can enable the Emulate Mouse option in the Project Settings.\n"
+"You can configure TouchScreenButton to be visible only on touch devices, "
+"helping you develop your game both for desktop and mobile devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:17
+msgid "Returns [code]true[/code] if this button is currently pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:23
+msgid "The button's action. Actions can be handled with [InputEventAction]."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:26
+msgid "The button's bitmask."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:29
+msgid "The button's texture for the normal state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:32
+msgid ""
+"If [code]true[/code], the [signal pressed] and [signal released] signals are "
+"emitted whenever a pressed finger goes in and out of the button, even if the "
+"pressure started outside the active area of the button.\n"
+"[b]Note:[/b] This is a \"pass-by\" (not \"bypass\") press mode."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:36
+msgid "The button's texture for the pressed state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:39
+msgid "The button's shape."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:42
+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:45
+msgid "If [code]true[/code], the button's shape is visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:48
+msgid ""
+"The button's visibility mode. See [enum VisibilityMode] for possible values."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:54
+msgid "Emitted when the button is pressed (down)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:59
+msgid "Emitted when the button is released (up)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:65
+msgid "Always visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:68
+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:26
+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:34
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr ""
+
+#: doc/classes/Transform.xml:41
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr ""
+
+#: doc/classes/Transform.xml:48
+msgid ""
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:55
+msgid ""
+"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:61 doc/classes/Transform2D.xml:44
+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:69
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:75
+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:82 doc/classes/Transform2D.xml:99
+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:90
+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:98
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors."
+msgstr ""
+
+#: doc/classes/Transform.xml:106
+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:113
+msgid ""
+"Scales basis and origin of the transform by the given scale factor, using "
+"matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:120 doc/classes/Transform2D.xml:126
+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:128
+msgid ""
+"Transforms the given [Vector3], [Plane], [AABB], or [PoolVector3Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:135
+msgid ""
+"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
+"[PoolVector3Array] by this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:141
+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:144
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:149
+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:152
+msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:155
+msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:158
+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 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:21
+msgid "Constructs the transform from a 3D [Transform]."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:30
+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:38
+msgid "Constructs the transform from a given angle (in radians) and position."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:51
+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:59
+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:66
+msgid "Returns the transform's origin (translation)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:72
+msgid "Returns the transform's rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:78
+msgid "Returns the scale."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:86
+msgid ""
+"Returns a transform interpolated between this transform and another by a "
+"given [code]weight[/code] (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:92
+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:105
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:112
+msgid ""
+"Rotates the transform by the given angle (in radians), using matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:119
+msgid ""
+"Scales the transform by the given scale factor, using matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:134
+msgid ""
+"Transforms the given [Vector2], [Rect2], or [PoolVector2Array] by this "
+"transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:141
+msgid ""
+"Inverse-transforms the given [Vector2], [Rect2], or [PoolVector2Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:147
+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:158
+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:161
+msgid "The [Transform2D] that will flip something along the X axis."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:164
+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/3.4/tutorials/i18n/internationalizing_games."
+"html"
+msgstr ""
+
+#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:18
+msgid "Virtual method to override [method get_message]."
+msgstr ""
+
+#: doc/classes/Translation.xml:26
+msgid "Adds a message if nonexistent, followed by its translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:33
+msgid "Erases a message."
+msgstr ""
+
+#: doc/classes/Translation.xml:40
+msgid "Returns a message's translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:46
+msgid "Returns the number of existing messages."
+msgstr ""
+
+#: doc/classes/Translation.xml:52
+msgid "Returns all the messages (keys)."
+msgstr ""
+
+#: doc/classes/Translation.xml:58
+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:18
+msgid "Adds a [Translation] resource."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:24
+msgid "Clears the server from all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:30
+msgid "Returns an array of all loaded locales of the project."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:36
+msgid ""
+"Returns the current locale of the project.\n"
+"See also [method OS.get_locale] and [method OS.get_locale_language] to query "
+"the locale of the user system."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:44
+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:51
+msgid "Removes the given translation from the server."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:58
+msgid ""
+"Sets the locale of the project. The [code]locale[/code] string will be "
+"standardized to match known locales (e.g. [code]en-US[/code] would be "
+"matched to [code]en_US[/code]).\n"
+"If translations have been loaded beforehand for the new locale, they will be "
+"applied."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:66
+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:27
+msgid "Returns [code]true[/code] if the column titles are being shown."
+msgstr ""
+
+#: doc/classes/Tree.xml:33
+msgid "Clears the tree. This removes all items."
+msgstr ""
+
+#: doc/classes/Tree.xml:41
+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:49
+msgid ""
+"Edits the selected tree item as if it was clicked. The item must be set "
+"editable with [method TreeItem.set_editable]. Returns [code]true[/code] if "
+"the item could be edited. Fails if no item is selected."
+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:64
+msgid ""
+"Returns the column index at [code]position[/code], or -1 if no item is there."
+msgstr ""
+
+#: doc/classes/Tree.xml:71
+msgid "Returns the column's title."
+msgstr ""
+
+#: doc/classes/Tree.xml:78
+msgid "Returns the column's width in pixels."
+msgstr ""
+
+#: doc/classes/Tree.xml:84
+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:91
+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:99
+msgid ""
+"Returns the currently edited item. Can be used with [signal item_edited] to "
+"get the item that was modified.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" $Tree.item_edited.connect(on_Tree_item_edited)\n"
+"\n"
+"func on_Tree_item_edited():\n"
+" print($Tree.get_edited()) # This item just got edited (e.g. checked).\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Tree.xml:112
+msgid "Returns the column for the currently edited item."
+msgstr ""
+
+#: doc/classes/Tree.xml:120
+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:127
+msgid ""
+"Returns the tree item at the specified position (relative to the tree origin "
+"position)."
+msgstr ""
+
+#: doc/classes/Tree.xml:134
+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:141
+msgid "Returns the last pressed button's index."
+msgstr ""
+
+#: doc/classes/Tree.xml:147
+msgid ""
+"Returns the tree's root item, or [code]null[/code] if the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:153
+msgid "Returns the current scrolling position."
+msgstr ""
+
+#: doc/classes/Tree.xml:159
+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:167
+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:176
+msgid "Causes the [Tree] to jump to the specified item."
+msgstr ""
+
+#: doc/classes/Tree.xml:184
+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:192
+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:200
+msgid "Sets the title of a column."
+msgstr ""
+
+#: doc/classes/Tree.xml:207
+msgid "If [code]true[/code], column titles are visible."
+msgstr ""
+
+#: doc/classes/Tree.xml:213
+msgid ""
+"If [code]true[/code], the currently selected cell may be selected again."
+msgstr ""
+
+#: doc/classes/Tree.xml:216
+msgid "If [code]true[/code], a right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/Tree.xml:219
+msgid "The number of columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:222
+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:227
+msgid "If [code]true[/code], the folding arrow is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:230
+msgid "If [code]true[/code], the tree's root is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:234
+msgid ""
+"Allows single or multiple selection. See the [enum SelectMode] constants."
+msgstr ""
+
+#: doc/classes/Tree.xml:243
+msgid ""
+"Emitted when a button on the tree was pressed (see [method TreeItem."
+"add_button])."
+msgstr ""
+
+#: doc/classes/Tree.xml:248
+msgid "Emitted when a cell is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:254
+msgid "Emitted when a column's title is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:260
+msgid ""
+"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
+"to be edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:266
+msgid ""
+"Emitted when the right mouse button is pressed in the empty space of the "
+"tree."
+msgstr ""
+
+#: doc/classes/Tree.xml:272
+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:277
+msgid "Emitted when an item's label is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:283
+msgid "Emitted when an item is collapsed by a click on the folding arrow."
+msgstr ""
+
+#: doc/classes/Tree.xml:288
+msgid ""
+"Emitted when a custom button is pressed (i.e. in a [constant TreeItem."
+"CELL_MODE_CUSTOM] mode cell)."
+msgstr ""
+
+#: doc/classes/Tree.xml:293
+msgid "Emitted when an item's icon is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:298
+msgid "Emitted when an item is edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:303
+msgid "Emitted when an item is edited using the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:309
+msgid "Emitted when an item is selected with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:314
+msgid "Emitted when an item is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:322
+msgid ""
+"Emitted instead of [code]item_selected[/code] if [code]select_mode[/code] is "
+"[constant SELECT_MULTI]."
+msgstr ""
+
+#: doc/classes/Tree.xml:327
+msgid "Emitted when a left mouse button click does not select any item."
+msgstr ""
+
+#: doc/classes/Tree.xml:333
+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:337
+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:341
+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:345
+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:349
+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:353
+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:359
+msgid "The arrow icon used when a foldable item is not collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:362
+msgid "The arrow icon used when a foldable item is collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:365
+msgid ""
+"Default [StyleBox] for the [Tree], i.e. used when the control is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:368
+msgid "[StyleBox] used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:371
+msgid "The horizontal space between each button in a cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:374
+msgid "[StyleBox] used when a button in the tree is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:377
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is checked."
+msgstr ""
+
+#: doc/classes/Tree.xml:380
+msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:383
+msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:386
+msgid ""
+"Default [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:389
+msgid ""
+"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:392
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:395
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:398
+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:401
+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:404
+msgid ""
+"[Color] used to draw possible drop locations. See [enum DropModeFlags] "
+"constants for further description of drop locations."
+msgstr ""
+
+#: doc/classes/Tree.xml:416
+msgid "[Color] of the guideline."
+msgstr ""
+
+#: doc/classes/Tree.xml:419
+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:422
+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:425
+msgid "[Color] of the relationship lines."
+msgstr ""
+
+#: doc/classes/Tree.xml:428
+msgid ""
+"The maximum distance between the mouse cursor and the control's border to "
+"trigger border scrolling when dragging."
+msgstr ""
+
+#: doc/classes/Tree.xml:431
+msgid "The speed of border scrolling."
+msgstr ""
+
+#: doc/classes/Tree.xml:434
+msgid ""
+"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
+"cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:437
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:440
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:443
+msgid "Default text [Color] of the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:446
+msgid "[Font] of the title button's text."
+msgstr ""
+
+#: doc/classes/Tree.xml:449
+msgid "[StyleBox] used when the title button is being hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:452
+msgid "Default [StyleBox] for the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:455
+msgid "[StyleBox] used when the title button is being pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:458
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is unchecked."
+msgstr ""
+
+#: doc/classes/Tree.xml:461
+msgid ""
+"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
+"mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:464
+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:21
+msgid ""
+"Adds a button with [Texture] [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:28
+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:35
+msgid "Resets the background color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:42
+msgid "Resets the color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:49
+msgid "Deselects the given column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:57
+msgid ""
+"Removes the button at index [code]button_idx[/code] in column [code]column[/"
+"code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:65
+msgid ""
+"Returns the [Texture] of the button at index [code]button_idx[/code] in "
+"column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:72
+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:80
+msgid ""
+"Returns the tooltip string for the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:87
+msgid "Returns the column's cell mode."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:93
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:100
+msgid "Returns the custom background color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:107
+msgid "Returns the custom color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:114
+msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:121
+msgid "Returns the given column's icon [Texture]. Error if no icon is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:128
+msgid "Returns the column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:135
+msgid "Returns the [Color] modulating the column's icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:142
+msgid "Returns the icon [Texture] region as [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:149
+msgid ""
+"Returns the metadata value that was set for the given column using [method "
+"set_metadata]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:155
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:162
+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:169
+msgid "Returns the parent TreeItem or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:175
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:182
+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:190
+msgid "Returns the value of a [constant CELL_MODE_RANGE] column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:197
+msgid ""
+"Returns a dictionary containing the range parameters for a given column. The "
+"keys are \"min\", \"max\", \"step\", and \"expr\"."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:204
+msgid "Gets the suffix string shown after the column value."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:211
+msgid "Returns the given column's text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:218
+msgid "Returns the given column's text alignment."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:225
+msgid "Returns the given column's tooltip."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:233
+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:240
+msgid "Returns [code]true[/code] if the given column is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:253
+msgid "Returns [code]true[/code] if column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:260
+msgid "Returns [code]true[/code] if column [code]column[/code] is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:267
+msgid "Returns [code]true[/code] if column [code]column[/code] is selected."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:273
+msgid "Moves this TreeItem to the bottom in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:279
+msgid "Moves this TreeItem to the top in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:286
+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:293
+msgid "Selects the column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:302
+msgid ""
+"Sets the given column's button [Texture] at index [code]button_idx[/code] to "
+"[code]button[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:311
+msgid ""
+"If [code]true[/code], disables the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:319
+msgid ""
+"Sets the given column's cell mode to [code]mode[/code]. See [enum "
+"TreeCellMode] constants."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:327
+msgid "If [code]true[/code], the column [code]column[/code] is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:343
+msgid ""
+"Sets the given column's custom background color and whether to just use it "
+"as an outline."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:351
+msgid "Sets the given column's custom color."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:360
+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:369
+msgid "If [code]true[/code], column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:377
+msgid ""
+"If [code]true[/code], column [code]column[/code] is expanded to the right."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:385
+msgid "Sets the given column's icon [Texture]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:393
+msgid "Sets the given column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:401
+msgid "Modulates the given column's icon with [code]modulate[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:409
+msgid "Sets the given column's icon's texture region."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:417
+msgid ""
+"Sets the metadata value for the given column, which can be retrieved later "
+"using [method get_metadata]. This can be used, for example, to store a "
+"reference to the original data."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:425
+msgid "Sets the value of a [constant CELL_MODE_RANGE] column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:436
+msgid ""
+"Sets the range of accepted values for a column. The column must be in the "
+"[constant CELL_MODE_RANGE] mode.\n"
+"If [code]expr[/code] is [code]true[/code], the edit mode slider will use an "
+"exponential scale as with [member Range.exp_edit]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:445
+msgid "If [code]true[/code], the given column is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:453
+msgid ""
+"Sets a string to be shown after a column's value (for example, a unit "
+"abbreviation)."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:461
+msgid "Sets the given column's text value."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:469
+msgid ""
+"Sets the given column's text alignment. See [enum TextAlign] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:477
+msgid "Sets the given column's tooltip text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:483
+msgid "If [code]true[/code], the TreeItem is collapsed."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:486
+msgid "The custom minimum height."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:489
+msgid "If [code]true[/code], folding is disabled for this TreeItem."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:494
+msgid "Cell contains a string."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:497
+msgid "Cell contains a checkbox."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:500
+msgid "Cell contains a range."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:503
+msgid "Cell contains an icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:508
+msgid "Align text to the left. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:511
+msgid "Center text. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:514
+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] (e.g. [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:36
+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:52
+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:59
+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:73
+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:87
+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:101
+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:116
+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:123
+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:132
+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:138
+msgid "Stops animation and removes all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:146
+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:152
+msgid ""
+"Resets all tweens to their initial values (the ones given, not those before "
+"the tween)."
+msgstr ""
+
+#: doc/classes/Tween.xml:160
+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:166
+msgid "Continues animating all stopped tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:173
+msgid "Sets the interpolation to the given [code]time[/code] in seconds."
+msgstr ""
+
+#: doc/classes/Tween.xml:180
+msgid ""
+"Activates/deactivates the tween. See also [method stop_all] and [method "
+"resume_all]."
+msgstr ""
+
+#: doc/classes/Tween.xml:186
+msgid "Starts the tween. You can define animations both before and after this."
+msgstr ""
+
+#: doc/classes/Tween.xml:194
+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:200
+msgid "Stops animating all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:215
+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:231
+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:238
+msgid "Returns the current time of the tween."
+msgstr ""
+
+#: doc/classes/Tween.xml:244
+msgid "The tween's animation process thread. See [enum TweenProcessMode]."
+msgstr ""
+
+#: doc/classes/Tween.xml:247
+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:250
+msgid "If [code]true[/code], the tween loops."
+msgstr ""
+
+#: doc/classes/Tween.xml:256
+msgid "Emitted when all processes in a tween end."
+msgstr ""
+
+#: doc/classes/Tween.xml:263
+msgid "Emitted when a tween ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:270
+msgid "Emitted when a tween starts."
+msgstr ""
+
+#: doc/classes/Tween.xml:279
+msgid "Emitted at each step of the animation."
+msgstr ""
+
+#: doc/classes/Tween.xml:285
+msgid "The tween updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:288
+msgid "The tween updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:291
+msgid "The animation is interpolated linearly."
+msgstr ""
+
+#: doc/classes/Tween.xml:294
+msgid "The animation is interpolated using a sine function."
+msgstr ""
+
+#: doc/classes/Tween.xml:297
+msgid ""
+"The animation is interpolated with a quintic (to the power of 5) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:300
+msgid ""
+"The animation is interpolated with a quartic (to the power of 4) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:303
+msgid ""
+"The animation is interpolated with a quadratic (to the power of 2) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:306
+msgid ""
+"The animation is interpolated with an exponential (to the power of x) "
+"function."
+msgstr ""
+
+#: doc/classes/Tween.xml:309
+msgid ""
+"The animation is interpolated with elasticity, wiggling around the edges."
+msgstr ""
+
+#: doc/classes/Tween.xml:312
+msgid ""
+"The animation is interpolated with a cubic (to the power of 3) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:315
+msgid "The animation is interpolated with a function using square roots."
+msgstr ""
+
+#: doc/classes/Tween.xml:318
+msgid "The animation is interpolated by bouncing at the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:321
+msgid "The animation is interpolated backing out at ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:324
+msgid "The interpolation starts slowly and speeds up towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:327
+msgid "The interpolation starts quickly and slows down towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:330
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is slowest at both ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:333
+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:61
+msgid ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:67
+msgid ""
+"Returns [code]true[/code] if the socket is open and listening on a port."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:75
+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:81
+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:87
+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:93
+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:99
+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:39
+msgid "Register a method that will be called when the action is committed."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:48
+msgid "Register a property value change for \"do\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:55
+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:63
+msgid "Register a method that will be called when the action is undone."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:72
+msgid "Register a property value change for \"undo\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:79
+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:86
+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:93
+msgid ""
+"Commit the action. All \"do\" methods/properties are called/set when this "
+"function is called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:101
+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:108
+msgid "Gets the name of the current action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:114
+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:133
+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:139
+msgid "Redo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:145
+msgid "Undo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:152
+msgid "Called when [method undo] or [method redo] was called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:158
+msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:161
+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:164
+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]\n"
+"[b]Note:[/b] UPnP discovery blocks the current thread. To perform discovery "
+"without blocking the main thread, use [Thread]s like this:\n"
+"[codeblock]\n"
+"# Emitted when UPnP port mapping setup is completed (regardless of success "
+"or failure).\n"
+"signal upnp_completed(error)\n"
+"\n"
+"# Replace this with your own server port number between 1025 and 65535.\n"
+"const SERVER_PORT = 3928\n"
+"var thread = null\n"
+"\n"
+"func _upnp_setup(server_port):\n"
+" # UPNP queries take some time.\n"
+" var upnp = UPNP.new()\n"
+" var err = upnp.discover()\n"
+"\n"
+" if err != OK:\n"
+" push_error(str(err))\n"
+" emit_signal(\"upnp_completed\", err)\n"
+" return\n"
+"\n"
+" if upnp.get_gateway() and upnp.get_gateway().is_valid_gateway():\n"
+" upnp.add_port_mapping(server_port, server_port, ProjectSettings."
+"get_setting(\"application/config/name\"), \"UDP\")\n"
+" upnp.add_port_mapping(server_port, server_port, ProjectSettings."
+"get_setting(\"application/config/name\"), \"TCP\")\n"
+" emit_signal(\"upnp_completed\", OK)\n"
+"\n"
+"func _ready():\n"
+" thread = Thread.new()\n"
+" thread.start(self, \"_upnp_setup\", SERVER_PORT)\n"
+"\n"
+"func _exit_tree():\n"
+" # Wait for thread finish here to handle game exit while the thread is "
+"running.\n"
+" thread.wait_to_finish()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:59
+msgid "Adds the given [UPNPDevice] to the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:70
+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:79
+msgid "Clears the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:87
+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:96
+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:105
+msgid "Returns the [UPNPDevice] at the given [code]index[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:111
+msgid "Returns the number of discovered [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:117
+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:123
+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:130
+msgid ""
+"Removes the device at [code]index[/code] from the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:138
+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:144
+msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:147
+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:150
+msgid ""
+"Multicast interface to use for discovery. Uses the default multicast "
+"interface if empty."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:155
+msgid "UPNP command or discovery was successful."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:158
+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:161
+msgid ""
+"No port mapping was found for the given port, protocol combination on the "
+"given [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:164
+msgid "Inconsistent parameters."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:167
+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:170
+msgid "The action failed."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:173
+msgid ""
+"The [UPNPDevice] does not allow wildcard values for the source IP address."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:176
+msgid "The [UPNPDevice] does not allow wildcard values for the external port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:179
+msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:182
+msgid "The remote host value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:185
+msgid "The external port value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:188
+msgid ""
+"No port maps are available. May also be returned if port mapping "
+"functionality is not available."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:191
+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:194
+msgid "Conflict with an existing port mapping."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:197
+msgid "External and internal port values must be the same."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:200
+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:203
+msgid "Invalid gateway."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:206
+msgid "Invalid port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:209
+msgid "Invalid protocol."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:212
+msgid "Invalid duration."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:215
+msgid "Invalid arguments."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:218
+msgid "Invalid response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:221
+msgid "Invalid parameter."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:224
+#: modules/upnp/doc_classes/UPNPDevice.xml:69
+msgid "HTTP error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:227
+msgid "Socket error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:230
+msgid "Error allocating memory."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:233
+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:236
+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:239
+#: modules/upnp/doc_classes/UPNPDevice.xml:93
+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:20
+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:28
+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:34
+msgid ""
+"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
+"which potentially supports port forwarding."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:40
+msgid ""
+"Returns the external IP address of this [UPNPDevice] or an empty string."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:46
+msgid "URL to the device description."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:49
+msgid "IDG control URL."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:52
+msgid ""
+"Address of the local machine in the network connecting it to this "
+"[UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:55
+msgid "IGD service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:58
+msgid "IGD status. See [enum IGDStatus]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:61
+msgid "Service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:66
+msgid "OK."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:72
+msgid "Empty HTTP response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:75
+msgid "Returned response contained no URLs."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:78
+msgid "Not a valid IGD."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:81
+msgid "Disconnected."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:84
+msgid "Unknown device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:87
+msgid "Invalid control."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:90
+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/3.4/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:18
+msgid "The vertical space between the [VBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/Vector2.xml:4
+msgid "Vector used for 2D math."
+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"
+"[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:14 doc/classes/Vector3.xml:14
+msgid ""
+"https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab"
+msgstr ""
+
+#: doc/classes/Vector2.xml:24
+msgid ""
+"Constructs a new Vector2 from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:30 doc/classes/Vector3.xml:31
+msgid ""
+"Returns a new vector with all components in absolute values (i.e. positive)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:36
+msgid ""
+"Returns this vector's angle with respect to the positive X axis, or [code]"
+"(1, 0)[/code] vector, in radians.\n"
+"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).\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle.png]Illustration of the returned angle.[/url]\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:46
+msgid ""
+"Returns the angle to the given vector, in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle_to.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Vector2.xml:54
+msgid ""
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle_to_point.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Vector2.xml:61
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:68 doc/classes/Vector3.xml:45
+msgid ""
+"Returns the vector \"bounced off\" from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:74
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:81
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:88
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:98
+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]weight[/code]. [code]weight[/code] is on the range "
+"of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:105 doc/classes/Vector3.xml:75
+msgid ""
+"Returns the normalized vector pointing from this vector to [code]b[/code]. "
+"This is equivalent to using [code](b - a).normalized()[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:112 doc/classes/Vector3.xml:82
+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:120
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:127
+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:136
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:143 doc/classes/Vector3.xml:119
+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:149 doc/classes/Vector3.xml:125
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, [code]false[/code] "
+"otherwise."
+msgstr ""
+
+#: doc/classes/Vector2.xml:155 doc/classes/Vector3.xml:131
+msgid "Returns the length (magnitude) of this vector."
+msgstr ""
+
+#: doc/classes/Vector2.xml:161 doc/classes/Vector3.xml:137
+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:170
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]to[/code] by amount [code]weight[/code]. [code]weight[/code] is on the "
+"range of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:178
+msgid ""
+"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:172
+msgid ""
+"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:186
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]mod[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:193
+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:205
+msgid "Returns the vector projected onto the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:212
+msgid "Returns the vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:219
+msgid ""
+"Returns the vector rotated by [code]phi[/code] radians. See also [method "
+"@GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:225
+msgid ""
+"Returns the vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector2.xml:231
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components. If a component is zero, it returns positive "
+"one."
+msgstr ""
+
+#: doc/classes/Vector2.xml:239 doc/classes/Vector3.xml:243
+msgid ""
+"Returns the result of spherical linear interpolation between this vector and "
+"[code]to[/code], by amount [code]weight[/code]. [code]weight[/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:247 doc/classes/Vector3.xml:251
+msgid "Returns this vector slid along a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:254 doc/classes/Vector3.xml:258
+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:260
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
+msgstr ""
+
+#: doc/classes/Vector2.xml:266 doc/classes/Vector3.xml:271
+msgid ""
+"The vector's X component. Also accessible by using the index position [code]"
+"[0][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:269 doc/classes/Vector3.xml:274
+msgid ""
+"The vector's Y component. Also accessible by using the index position [code]"
+"[1][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:274
+msgid "Enumerated value for the X axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:277
+msgid "Enumerated value for the Y axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:280 doc/classes/Vector3.xml:291
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:283 doc/classes/Vector3.xml:294
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:286 doc/classes/Vector3.xml:297
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:289
+msgid "Left unit vector. Represents the direction of left."
+msgstr ""
+
+#: doc/classes/Vector2.xml:292
+msgid "Right unit vector. Represents the direction of right."
+msgstr ""
+
+#: doc/classes/Vector2.xml:295
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
+msgstr ""
+
+#: doc/classes/Vector2.xml:298
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
+msgstr ""
+
+#: doc/classes/Vector3.xml:4
+msgid "Vector used for 3D math."
+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"
+"[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:25
+msgid "Returns a Vector3 with the given components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:38
+msgid "Returns the unsigned minimum angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector3.xml:51
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:58
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:68
+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]weight[/code]. [code]weight[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:90
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:97
+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:106
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:112
+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:146
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]to[/code] by amount [code]t[/code]. [code]weight[/code] is on the "
+"range of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:152
+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:158
+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:166
+msgid ""
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:179
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:200
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:207
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:215
+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:221
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid ""
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components. If a component is zero, it returns "
+"positive one."
+msgstr ""
+
+#: doc/classes/Vector3.xml:235
+msgid ""
+"Returns the signed angle to the given vector, in radians. The sign of the "
+"angle is positive in a counter-clockwise direction and negative in a "
+"clockwise direction when viewed from the side specified by the [code]axis[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:264
+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:277
+msgid ""
+"The vector's Z component. Also accessible by using the index position [code]"
+"[2][/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:282
+msgid ""
+"Enumerated value for the X axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:285
+msgid ""
+"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:288
+msgid ""
+"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:300
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:303
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:306
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:309
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:312
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:315
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
+msgstr ""
+
+#: doc/classes/VehicleBody.xml:4
+msgid "Physics body that simulates the behavior of a car."
+msgstr ""
+
+#: doc/classes/VehicleBody.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 [CollisionShape] for the main body of your vehicle and "
+"add [VehicleWheel] nodes for the wheels. You should also add a "
+"[MeshInstance] 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 VehicleBody will determine the center "
+"of gravity of your vehicle so it is better to keep this low and move the "
+"[CollisionShape] and [MeshInstance] 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 "
+"[PhysicsBody] class."
+msgstr ""
+
+#: doc/classes/VehicleBody.xml:18
+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 "
+"RigidBody.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/VehicleBody.xml:21
+msgid ""
+"Accelerates the vehicle by applying an engine force. The vehicle is only "
+"speed up if the wheels that have [member VehicleWheel.use_as_traction] set "
+"to [code]true[/code] and are in contact with a surface. The [member "
+"RigidBody.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/VehicleBody.xml:27
+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 "
+"VehicleWheel.use_as_steering] set to [code]true[/code] will automatically be "
+"rotated."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:4
+msgid "Physics object that simulates the behavior of a wheel."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:7
+msgid ""
+"This node needs to be used as a child node of [VehicleBody] 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 "
+"[PhysicsBody] class."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:17
+msgid "Returns the rotational speed of the wheel in revolutions per minute."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:23
+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/VehicleWheel.xml:29
+msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:35
+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 RigidBody.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/VehicleWheel.xml:38
+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/VehicleWheel.xml:41
+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/VehicleWheel.xml:44
+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 RigidBody.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/VehicleWheel.xml:49
+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/VehicleWheel.xml:52
+msgid ""
+"The maximum force the spring can resist. This value should be higher than a "
+"quarter of the [member RigidBody.mass] of the [VehicleBody] 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/VehicleWheel.xml:55
+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/VehicleWheel.xml:58
+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/VehicleWheel.xml:61
+msgid ""
+"If [code]true[/code], this wheel will be turned when the car steers. This "
+"value is used in conjunction with [member VehicleBody.steering] and ignored "
+"if you are using the per-wheel [member steering] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:64
+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 "
+"VehicleBody.engine_force] and ignored if you are using the per-wheel [member "
+"engine_force] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:67
+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/VehicleWheel.xml:71
+msgid "The radius of the wheel in meters."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:74
+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/VehicleWheel.xml:77
+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] "
+"([code].webm[/code], [VideoStreamWebm]), [url=https://www.theora.org/]Ogg "
+"Theora[/url] ([code].ogv[/code], [VideoStreamTheora]), and any format "
+"exposed via a GDNative plugin using [VideoStreamGDNative].\n"
+"[b]Note:[/b] Due to a bug, VideoPlayer does not support localization "
+"remapping yet.\n"
+"[b]Warning:[/b] On HTML5, video playback [i]will[/i] perform poorly due to "
+"missing architecture-specific assembly optimizations, especially for VP8/VP9."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:18
+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 [Texture]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:30
+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:37
+msgid ""
+"Starts the video playback from the beginning. If the video is paused, this "
+"will not unpause the video."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:43
+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:50
+msgid "The embedded audio track to play."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:53
+msgid "If [code]true[/code], playback starts when the scene loads."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:56
+msgid "Amount of time in milliseconds to store in buffer while playing."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:59
+msgid "Audio bus to use for sound playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:62
+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:65
+msgid "If [code]true[/code], the video is paused."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:68
+msgid "The assigned video stream. See description for supported formats."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:71
+msgid ""
+"The current position of the stream, in seconds.\n"
+"[b]Note:[/b] Changing this value won't have any effect as seeking is not "
+"implemented yet, except in video formats implemented by a GDNative add-on."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:75
+msgid "Audio volume as a linear value."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:78
+msgid "Audio volume in dB."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:84
+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:16
+msgid "Returns the video file handled by this [VideoStreamGDNative]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:23
+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. The Theora codec is less "
+"efficient than [VideoStreamWebm]'s VP8 and VP9, but it requires less CPU "
+"resources to decode. The Theora codec is decoded on the CPU.\n"
+"[b]Note:[/b] While Ogg Theora videos can also have an [code].ogg[/code] "
+"extension, you will have to rename the extension to [code].ogv[/code] to use "
+"those videos within Godot."
+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:23
+msgid ""
+"Sets the Ogg Theora video file that this [VideoStreamTheora] resource "
+"handles. The [code]file[/code] name should have the [code].ogv[/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. Both the VP8 and VP9 "
+"codecs are supported. The VP8 and VP9 codecs are more efficient than "
+"[VideoStreamTheora], but they require more CPU resources to decode "
+"(especially VP9). Both the VP8 and VP9 codecs are decoded on the CPU.\n"
+"[b]Note:[/b] Alpha channel (also known as transparency) is not supported. "
+"The video will always appear to have a black background, even if it "
+"originally contains an alpha channel.\n"
+"[b]Note:[/b] There are known bugs and performance issues with WebM video "
+"playback in Godot. If you run into problems, try using the Ogg Theora format "
+"instead: [VideoStreamTheora]"
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:17
+msgid "Returns the WebM video file handled by this [VideoStreamWebm]."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:24
+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 Camera "
+"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 [ViewportContainer], 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/3.4/tutorials/viewports/index.html"
+msgstr ""
+
+#: doc/classes/Viewport.xml:18 doc/classes/ViewportTexture.xml:12
+msgid "https://godotengine.org/asset-library/asset/128"
+msgstr ""
+
+#: doc/classes/Viewport.xml:20
+msgid "https://godotengine.org/asset-library/asset/130"
+msgstr ""
+
+#: doc/classes/Viewport.xml:21
+msgid "https://godotengine.org/asset-library/asset/541"
+msgstr ""
+
+#: doc/classes/Viewport.xml:22 doc/classes/ViewportTexture.xml:14
+msgid "https://godotengine.org/asset-library/asset/586"
+msgstr ""
+
+#: doc/classes/Viewport.xml:28
+msgid ""
+"Returns the 3D world of the viewport, or if none the world of the parent "
+"viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:34
+msgid "Returns the 2D world of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:40
+msgid "Returns the active 3D camera."
+msgstr ""
+
+#: doc/classes/Viewport.xml:46
+msgid "Returns the total transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:52
+msgid "Returns the topmost modal in the stack."
+msgstr ""
+
+#: doc/classes/Viewport.xml:58
+msgid "Returns the mouse position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:65
+msgid "Returns information about the viewport from the rendering pipeline."
+msgstr ""
+
+#: doc/classes/Viewport.xml:72
+msgid "Returns the [enum ShadowAtlasQuadrantSubdiv] of the specified quadrant."
+msgstr ""
+
+#: doc/classes/Viewport.xml:78
+msgid "Returns the size override set with [method set_size_override]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:84
+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 Texture.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:95
+msgid "Returns the viewport's RID from the [VisualServer]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:101
+msgid "Returns the visible rectangle in global screen coordinates."
+msgstr ""
+
+#: doc/classes/Viewport.xml:107
+msgid ""
+"Returns the drag data from the GUI, that was previously returned by [method "
+"Control.get_drag_data]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:113
+msgid "Returns [code]true[/code] if there are visible modals on-screen."
+msgstr ""
+
+#: doc/classes/Viewport.xml:119
+msgid ""
+"Returns [code]true[/code] if the viewport is currently performing a drag "
+"operation."
+msgstr ""
+
+#: doc/classes/Viewport.xml:136
+msgid ""
+"Returns [code]true[/code] if the size override is enabled. See [method "
+"set_size_override]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:143
+msgid ""
+"Attaches this [Viewport] to the root [Viewport] with the specified "
+"rectangle. This bypasses the need for another node to display this "
+"[Viewport] but makes you responsible for updating the position of this "
+"[Viewport] manually."
+msgstr ""
+
+#: doc/classes/Viewport.xml:149
+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:166
+msgid ""
+"Sets the size override of the viewport. If the [code]enable[/code] parameter "
+"is [code]true[/code] the override is used, otherwise it uses the default "
+"size. If the size parameter is [code](-1, -1)[/code], it won't update the "
+"size."
+msgstr ""
+
+#: doc/classes/Viewport.xml:178
+msgid "Forces update of the 2D and 3D worlds."
+msgstr ""
+
+#: doc/classes/Viewport.xml:185
+msgid "Warps the mouse to a position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:191
+msgid "If [code]true[/code], the viewport will be used in AR/VR process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:194
+msgid "If [code]true[/code], the viewport will process 2D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:197
+msgid "If [code]true[/code], the viewport will process 3D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:200
+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:203
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be "
+"[code]true[/code] for debanding to be effective."
+msgstr ""
+
+#: doc/classes/Viewport.xml:207
+msgid "The overlay mode for test rendered geometry in debug purposes."
+msgstr ""
+
+#: doc/classes/Viewport.xml:210
+msgid ""
+"If [code]true[/code], the viewport will disable 3D rendering. For actual "
+"disabling use [code]usage[/code]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:213
+msgid ""
+"Enables 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [member "
+"sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/Viewport.xml:216
+msgid ""
+"The global canvas transform of the viewport. The canvas transform is "
+"relative to this."
+msgstr ""
+
+#: doc/classes/Viewport.xml:219
+msgid "If [code]true[/code], the viewport will not receive input events."
+msgstr ""
+
+#: doc/classes/Viewport.xml:222
+msgid ""
+"If [code]true[/code], the GUI controls on the viewport will lay pixel "
+"perfectly."
+msgstr ""
+
+#: doc/classes/Viewport.xml:227
+msgid ""
+"If [code]true[/code], the viewport rendering will receive benefits from High "
+"Dynamic Range algorithm. High Dynamic Range allows the viewport to receive "
+"values that are outside the 0-1 range. In Godot HDR uses 16 bits, meaning it "
+"does not store the full range of a floating point number.\n"
+"[b]Note:[/b] Requires [member usage] to be set to [constant USAGE_3D] or "
+"[constant USAGE_3D_NO_EFFECTS], since HDR is not supported for 2D."
+msgstr ""
+
+#: doc/classes/Viewport.xml:231
+msgid ""
+"If [code]true[/code], the result after 3D rendering will not have a linear "
+"to sRGB color conversion applied. This is important when the viewport is "
+"used as a render target where the result is used as a texture on a 3D object "
+"rendered in another viewport. It is also important if the viewport is used "
+"to create data that is not color based (noise, heightmaps, pickmaps, etc.). "
+"Do not enable this when the viewport is used as a texture on a 2D object or "
+"if the viewport is your final output. For the GLES2 driver this will convert "
+"the sRGB output to linear, this should only be used for VR plugins that "
+"require input in linear color space!"
+msgstr ""
+
+#: doc/classes/Viewport.xml:234
+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:237
+msgid ""
+"If [code]true[/code], the viewport will use [World] defined in [code]world[/"
+"code] property."
+msgstr ""
+
+#: doc/classes/Viewport.xml:240
+msgid ""
+"If [code]true[/code], the objects rendered by viewport become subjects of "
+"mouse picking process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:243
+msgid ""
+"If [code]true[/code], renders the Viewport directly to the screen instead of "
+"to the root viewport. Only available in GLES2. This is a low-level "
+"optimization and should not be used in most cases. If used, reading from the "
+"Viewport or from [code]SCREEN_TEXTURE[/code] becomes unavailable. For more "
+"information see [method VisualServer.viewport_set_render_direct_to_screen]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:246
+msgid ""
+"The clear mode when viewport used as a render target.\n"
+"[b]Note:[/b] This property is intended for 2D usage."
+msgstr ""
+
+#: doc/classes/Viewport.xml:250
+msgid "The update mode when viewport used as a render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:253
+msgid ""
+"If [code]true[/code], the result of rendering will be flipped vertically."
+msgstr ""
+
+#: doc/classes/Viewport.xml:256
+msgid "The subdivision amount of the first quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:259
+msgid "The subdivision amount of the second quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:262
+msgid "The subdivision amount of the third quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:265
+msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:268
+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:272
+msgid ""
+"If set to a value greater than [code]0.0[/code], contrast-adaptive "
+"sharpening will be applied to the 3D viewport. This has a low performance "
+"cost and can be used to recover some of the sharpness lost from using FXAA. "
+"Values around [code]0.5[/code] generally give the best results. See also "
+"[member fxaa]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:275
+msgid ""
+"The width and height of viewport. Must be set to a value greater than or "
+"equal to 2 pixels on both dimensions. Otherwise, nothing will be displayed."
+msgstr ""
+
+#: doc/classes/Viewport.xml:278
+msgid "If [code]true[/code], the size override affects stretch as well."
+msgstr ""
+
+#: doc/classes/Viewport.xml:281
+msgid ""
+"If [code]true[/code], the viewport should render its background as "
+"transparent."
+msgstr ""
+
+#: doc/classes/Viewport.xml:284
+msgid "The rendering mode of viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:287
+msgid "The custom [World] which can be used as 3D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:290
+msgid "The custom [World2D] which can be used as 2D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:297
+msgid "Emitted when a Control node grabs keyboard focus."
+msgstr ""
+
+#: doc/classes/Viewport.xml:302
+msgid ""
+"Emitted when the size of the viewport is changed, whether by [method "
+"set_size_override], resize of window, or some other means."
+msgstr ""
+
+#: doc/classes/Viewport.xml:308
+msgid "Do not update the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:311
+msgid ""
+"Update the render target once, then switch to [constant UPDATE_DISABLED]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:314
+msgid ""
+"Update the render target only when it is visible. This is the default value."
+msgstr ""
+
+#: doc/classes/Viewport.xml:317
+msgid "Always update the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:320
+msgid "This quadrant will not be used."
+msgstr ""
+
+#: doc/classes/Viewport.xml:323
+msgid "This quadrant will only be used by one shadow map."
+msgstr ""
+
+#: doc/classes/Viewport.xml:326
+msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:329
+msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:332
+msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:335
+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:338
+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:341
+msgid "Represents the size of the [enum ShadowAtlasQuadrantSubdiv] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:344
+msgid "Amount of objects in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:347
+msgid "Amount of vertices in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:350
+msgid "Amount of material changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:353
+msgid "Amount of shader changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:356
+msgid "Amount of surface changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:359 doc/classes/Viewport.xml:365
+msgid "Amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:362
+msgid "Amount of items or joined items in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:368
+msgid "Represents the size of the [enum RenderInfo] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:371
+msgid "Objects are displayed normally."
+msgstr ""
+
+#: doc/classes/Viewport.xml:374
+msgid "Objects are displayed without light information."
+msgstr ""
+
+#: doc/classes/Viewport.xml:377
+msgid ""
+"Objected are displayed semi-transparent with additive blending so you can "
+"see where they intersect."
+msgstr ""
+
+#: doc/classes/Viewport.xml:380
+msgid "Objects are displayed in wireframe style."
+msgstr ""
+
+#: doc/classes/Viewport.xml:383
+msgid "Multisample anti-aliasing mode disabled. This is the default value."
+msgstr ""
+
+#: doc/classes/Viewport.xml:386
+msgid "Use 2x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:389
+msgid "Use 4x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:392
+msgid ""
+"Use 8x Multisample Antialiasing. Likely unsupported on low-end and older "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:395
+msgid ""
+"Use 16x Multisample Antialiasing. Likely unsupported on medium and low-end "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:398
+msgid ""
+"Allocates all buffers needed for drawing 2D scenes. This takes less VRAM "
+"than the 3D usage modes. Note that 3D rendering effects such as glow and HDR "
+"are not available when using this mode."
+msgstr ""
+
+#: doc/classes/Viewport.xml:401
+msgid ""
+"Allocates buffers needed for 2D scenes without allocating a buffer for "
+"screen copy. Accordingly, you cannot read from the screen. Of the [enum "
+"Usage] types, this requires the least VRAM. Note that 3D rendering effects "
+"such as glow and HDR are not available when using this mode."
+msgstr ""
+
+#: doc/classes/Viewport.xml:404
+msgid ""
+"Allocates full buffers for drawing 3D scenes and all 3D effects including "
+"buffers needed for 2D scenes and effects."
+msgstr ""
+
+#: doc/classes/Viewport.xml:407
+msgid ""
+"Allocates buffers needed for drawing 3D scenes. But does not allocate "
+"buffers needed for reading from the screen and post-processing effects. "
+"Saves some VRAM."
+msgstr ""
+
+#: doc/classes/Viewport.xml:410
+msgid "Always clear the render target before drawing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:413
+msgid "Never clear the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:416
+msgid ""
+"Clear the render target next frame, then switch to [constant "
+"CLEAR_MODE_NEVER]."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:4
+msgid "Control for holding [Viewport]s."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:7
+msgid ""
+"A [Container] node that holds a [Viewport], automatically setting its size.\n"
+"[b]Note:[/b] Changing a ViewportContainer'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/ViewportContainer.xml:16
+msgid ""
+"If [code]true[/code], the viewport will be scaled to the control's size."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:19
+msgid ""
+"Divides the 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 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/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 [Texture]. 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:22
+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/VisibilityEnabler.xml:4 doc/classes/VisibilityEnabler2D.xml:4
+msgid "Enables certain nodes only when approximately visible."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:7
+msgid ""
+"The VisibilityEnabler will disable [RigidBody] and [AnimationPlayer] nodes "
+"when they are not visible. It will only affect other nodes within the same "
+"scene as the VisibilityEnabler itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier] "
+"instead.\n"
+"[b]Note:[/b] VisibilityEnabler 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 "
+"[Area] node as a child of a [Camera] node and/or [method Vector3.dot].\n"
+"[b]Note:[/b] VisibilityEnabler will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:19 doc/classes/VisibilityEnabler2D.xml:19
+msgid ""
+"Returns whether the enabler identified by given [enum Enabler] constant is "
+"active."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:27 doc/classes/VisibilityEnabler2D.xml:27
+msgid ""
+"Sets active state of the enabler identified by given [enum Enabler] constant."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:33
+msgid "If [code]true[/code], [RigidBody] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:36 doc/classes/VisibilityEnabler2D.xml:39
+msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:41 doc/classes/VisibilityEnabler2D.xml:53
+msgid "This enabler will pause [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:44
+msgid "This enabler will freeze [RigidBody] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:47 doc/classes/VisibilityEnabler2D.xml:71
+msgid "Represents the size of the [enum Enabler] enum."
+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:33
+msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:36
+msgid "If [code]true[/code], [AnimatedSprite] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:42
+msgid "If [code]true[/code], [Particles2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:45
+msgid ""
+"If [code]true[/code], the parent's [method Node._physics_process] will be "
+"stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:48
+msgid ""
+"If [code]true[/code], the parent's [method Node._process] will be stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:56
+msgid "This enabler will freeze [RigidBody2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:59
+msgid "This enabler will stop [Particles2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:62
+msgid "This enabler will stop the parent's _process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:65
+msgid "This enabler will stop the parent's _physics_process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:68
+msgid "This enabler will stop [AnimatedSprite] nodes animations."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:4 doc/classes/VisibilityNotifier2D.xml:4
+msgid "Detects approximately when the node is visible on screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:7
+msgid ""
+"The VisibilityNotifier detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"[Camera]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler] instead.\n"
+"[b]Note:[/b] VisibilityNotifier 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 [Area] node as a child of a [Camera] node and/or [method Vector3.dot]."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:17
+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/VisibilityNotifier.xml:24
+msgid "The VisibilityNotifier's bounding box."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:31
+msgid "Emitted when the VisibilityNotifier enters a [Camera]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:37
+msgid "Emitted when the VisibilityNotifier exits a [Camera]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:42
+msgid "Emitted when the VisibilityNotifier enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:47
+msgid "Emitted when the VisibilityNotifier exits the 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:42
+msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:48
+msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:4
+msgid "Parent of all visual 3D nodes."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:7
+msgid ""
+"The [VisualInstance] is used to connect a resource to a visual "
+"representation. All visual 3D nodes inherit from the [VisualInstance]. In "
+"general, you should not access the [VisualInstance] properties directly as "
+"they are accessed and managed by the nodes that inherit from "
+"[VisualInstance]. [VisualInstance] is the node representation of the "
+"[VisualServer] instance."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:15
+msgid ""
+"Returns the [AABB] (also known as the bounding box) for this "
+"[VisualInstance]. See also [method get_transformed_aabb]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:21
+msgid ""
+"Returns the RID of the resource associated with this [VisualInstance]. For "
+"example, if the Node is a [MeshInstance], this will return the RID of the "
+"associated [Mesh]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:27
+msgid ""
+"Returns the RID of this instance. This RID is the same as the RID returned "
+"by [method VisualServer.instance_create]. This RID is needed if you want to "
+"call [VisualServer] functions directly on this [VisualInstance]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:34
+msgid ""
+"Returns [code]true[/code] when the specified layer is enabled in [member "
+"layers] and [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:40
+msgid ""
+"Returns the transformed [AABB] (also known as the bounding box) for this "
+"[VisualInstance].\n"
+"Transformed in this case means the [AABB] plus the position, rotation, and "
+"scale of the [Spatial]'s [Transform]. See also [method get_aabb]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:48
+msgid ""
+"Sets the resource that is instantiated by this [VisualInstance], which "
+"changes how the engine handles the [VisualInstance] under the hood. "
+"Equivalent to [method VisualServer.instance_set_base]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:56
+msgid "Enables a particular layer in [member layers]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:62
+msgid ""
+"The render layer(s) this [VisualInstance] is drawn on.\n"
+"This object will only be visible for [Camera]s whose cull mask includes the "
+"render object this [VisualInstance] 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/3.4/getting_started/scripting/visual_script/"
+"index.html"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:19
+msgid "Add a custom signal with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:26
+msgid "Add a function with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:36
+msgid "Add a node to a function of the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:45
+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:55
+msgid ""
+"Add an argument to a custom signal added with [method add_custom_signal]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:62
+msgid "Get the count of a custom signal's arguments."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:70
+msgid "Get the name of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:78
+msgid "Get the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:86
+msgid "Remove a specific custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:95
+msgid "Rename a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:104
+msgid "Change the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:113
+msgid "Swap two of the arguments of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:124
+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:135
+msgid ""
+"Disconnect two data ports previously connected with [method data_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:142
+msgid "Returns the id of a function's entry point node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:149
+msgid "Returns the position of the center of the screen for a given function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:157
+msgid "Returns a node given its id and its function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:165
+msgid "Returns a node's position in pixels."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:172
+msgid "Returns the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:179
+msgid "Returns whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:186
+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:193
+msgid "Returns whether a signal exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:204
+msgid "Returns whether the specified data ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:211
+msgid "Returns whether a function exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:219
+msgid "Returns whether a node exists with the given id."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:229
+msgid "Returns whether the specified sequence ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:236
+msgid "Returns whether a variable exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:243
+msgid "Remove a custom signal with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:250
+msgid "Remove a specific function and its nodes from the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:258
+msgid "Remove a specific node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:265
+msgid "Remove a variable with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:273
+msgid "Change the name of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:281
+msgid "Change the name of a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:289
+msgid "Change the name of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:299
+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:310
+msgid ""
+"Disconnect two sequence ports previously connected with [method "
+"sequence_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:318
+msgid "Position the center of the screen for a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:325
+msgid "Set the base type of the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:334
+msgid "Position a node on the screen."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:342
+msgid "Change the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:350
+msgid "Change whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:358
+msgid ""
+"Set a variable's info, using the same format as [method get_variable_info]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:367
+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 [PoolByteArray]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:203
+msgid ""
+"Deserialize a [Variant] from a [PoolByteArray] 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:15
+msgid "Return the node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:21
+msgid "Return the node's category."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:27
+msgid "Return the count of input value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:34
+msgid ""
+"Return the specified input port's hint. See the [enum @GlobalScope."
+"PropertyHint] hints."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:41
+msgid "Return the specified input port's hint string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:48
+msgid "Return the specified input port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:55
+msgid ""
+"Return the specified input port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:61
+msgid "Return the amount of output [b]sequence[/b] ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:68
+msgid "Return the specified [b]sequence[/b] output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:74
+msgid "Return the amount of output value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:81
+msgid ""
+"Return the specified output port's hint. See the [enum @GlobalScope."
+"PropertyHint] hints."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:88
+msgid "Return the specified output port's hint string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:95
+msgid "Return the specified output port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:102
+msgid ""
+"Return the specified output port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:108
+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:114
+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:120
+msgid "Return whether the custom node has an input [b]sequence[/b] port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:130
+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. The size needs to be predefined "
+"using [method _get_working_memory_size].\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:141
+msgid "The start mode used the first time when [method _step] is called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:144
+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:147
+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:150
+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:154
+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:159
+msgid ""
+"Hint used by [method _step] to tell that control should stop and exit the "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:162
+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:16
+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:24
+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:31
+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/VisualScriptExpression.xml:4
+msgid "A Visual Script node that can execute a custom expression."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptExpression.xml:7
+msgid ""
+"A Visual Script node that can execute a custom expression. Values can be "
+"provided for the input and the expression result can be retrieved from the "
+"output."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunction.xml:4
+msgid "A Visual Script node representing a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunction.xml:7
+msgid ""
+"[VisualScriptFunction] represents a function header. It is the starting "
+"point for the function body and can be used to tweak the function's "
+"properties (e.g. RPC mode)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:4
+msgid "A Visual Script node for calling a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:7
+msgid ""
+"[VisualScriptFunctionCall] is created when you add or drag and drop a "
+"function onto the Visual Script graph. It allows to tweak parameters of the "
+"call, e.g. what object the function is called on."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:15
+msgid ""
+"The script to be used when [member call_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:18
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:15
+msgid ""
+"The base type to be used when [member call_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:21
+msgid ""
+"The type to be used when [member call_mode] is set to [constant "
+"CALL_MODE_BASIC_TYPE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:24
+msgid ""
+"[code]call_mode[/code] determines the target object on which the method will "
+"be called. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:27
+msgid "The name of the function to be called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:30
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:21
+msgid ""
+"The node path to use when [member call_mode] is set to [constant "
+"CALL_MODE_NODE_PATH]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:33
+msgid ""
+"The mode for RPC calls. See [method Node.rpc] for more details and [enum "
+"RPCCallMode] for available options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:36
+msgid ""
+"The singleton to call the method on. Used when [member call_mode] is set to "
+"[constant CALL_MODE_SINGLETON]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:39
+msgid ""
+"Number of default arguments that will be used when calling the function. "
+"Can't be higher than the number of available default arguments in the "
+"method's declaration."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:42
+msgid ""
+"If [code]false[/code], call errors (e.g. wrong number of arguments) will be "
+"ignored."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:47
+msgid "The method will be called on this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:50
+msgid "The method will be called on the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:53
+msgid ""
+"The method will be called on an instanced node with the given type and "
+"script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:56
+msgid "The method will be called on a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:59
+msgid "The method will be called on a singleton."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:62
+msgid "The method will be called locally."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:65
+msgid "The method will be called remotely."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:68
+msgid "The method will be called remotely using an unreliable protocol."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:71
+msgid "The method will be called remotely for the given peer."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:74
+msgid ""
+"The method will be called remotely for the given peer, using an unreliable "
+"protocol."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:4
+msgid "A Visual Script node representing a function state."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:7
+msgid ""
+"[VisualScriptFunctionState] is returned from [VisualScriptYield] and can be "
+"used to resume a paused function call."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:18
+msgid ""
+"Connects this [VisualScriptFunctionState] to a signal in the given object to "
+"automatically resume when it's emitted."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:24
+msgid "Returns whether the function state is valid."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:31
+msgid "Resumes the function to run from the point it was yielded."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:4
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:7
+msgid "A Visual Script node returning a constant from [@GlobalScope]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:15
+msgid "The constant to be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexGet.xml:4
+msgid "A Visual Script node for getting a value from an array or a dictionary."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexGet.xml:7
+msgid ""
+"[VisualScriptIndexGet] will return the value stored in an array or a "
+"dictionary under the given index."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexSet.xml:4
+msgid "A Visual Script node for setting a value in an array or a dictionary."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexSet.xml:7
+msgid ""
+"[VisualScriptIndexSet] will set the value stored in an array or a dictionary "
+"under the given index to the provided new value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:4
+msgid "A Visual Script node returning a state of an action."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:7
+msgid ""
+"[VisualScriptInputAction] can be used to check if an action is pressed or "
+"released."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:15
+msgid "Name of the action."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:18
+msgid "State of the action to check. See [enum Mode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:23
+msgid "[code]True[/code] if action is pressed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:26
+msgid "[code]True[/code] if action is released (i.e. not pressed)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:29
+msgid "[code]True[/code] on the frame the action was pressed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:32
+msgid "[code]True[/code] on the frame the action was released."
+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 "
+"behavior of the nodes that have to be in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:18
+msgid "Adds an input port to the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:27
+msgid "Adds an output port to the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:34
+msgid "Removes an input port from the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:41
+msgid "Removes an output port from the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:49
+msgid "Sets the name of an input port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:57
+msgid "Sets the type of an input port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:65
+msgid "Sets the name of an output port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:73
+msgid "Sets the type of an output port."
+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:16
+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:22
+msgid "Returns the [VisualScript] instance the node is bound to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:28
+msgid ""
+"Notify that the node's ports have changed. Usually used in conjunction with "
+"[VisualScriptCustomNode] ."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:36
+msgid "Change the default value of a given port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:43
+msgid "Emitted when the available input/output ports are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:4
+msgid "A Visual Script node that performs an operation on two values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:7
+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/VisualScriptOperator.xml:19
+msgid ""
+"The operation to be performed. See [enum Variant.Operator] for available "
+"options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:22
+msgid ""
+"The type of the values for this operation. See [enum Variant.Type] for "
+"available options."
+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/VisualScriptPropertyGet.xml:4
+msgid "A Visual Script node returning a value of a property from an [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:7
+msgid ""
+"[VisualScriptPropertyGet] can return a value of any property from the "
+"current object or other objects."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:15
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:18
+msgid ""
+"The script to be used when [member set_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:18
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:21
+msgid ""
+"The base type to be used when [member set_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:21
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:24
+msgid ""
+"The type to be used when [member set_mode] is set to [constant "
+"CALL_MODE_BASIC_TYPE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:24
+msgid ""
+"The indexed name of the property to retrieve. See [method Object."
+"get_indexed] for details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:27
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:30
+msgid ""
+"The node path to use when [member set_mode] is set to [constant "
+"CALL_MODE_NODE_PATH]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:30
+msgid ""
+"The name of the property to retrieve. Changing this will clear [member "
+"index]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:33
+msgid ""
+"[code]set_mode[/code] determines the target object from which the property "
+"will be retrieved. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:38
+msgid "The property will be retrieved from this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:41
+msgid "The property will be retrieved from the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:44
+msgid ""
+"The property will be retrieved from an instanced node with the given type "
+"and script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:47
+msgid ""
+"The property will be retrieved from a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:4
+msgid "A Visual Script node that sets a property of an [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:7
+msgid ""
+"[VisualScriptPropertySet] can set the value of any property from the current "
+"object or other objects."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:15
+msgid ""
+"The additional operation to perform when assigning. See [enum AssignOp] for "
+"options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:27
+msgid ""
+"The indexed name of the property to set. See [method Object.set_indexed] for "
+"details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:33
+msgid ""
+"The name of the property to set. Changing this will clear [member index]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:36
+msgid ""
+"[code]set_mode[/code] determines the target object on which the property "
+"will be set. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:41
+msgid "The property will be set on this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:44
+msgid "The property will be set on the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:47
+msgid ""
+"The property will be set on an instanced node with the given type and script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:50
+msgid "The property will be set on a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:53
+msgid "The property will be assigned regularly."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:56
+msgid ""
+"The value will be added to the property. Equivalent of doing [code]+=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:59
+msgid ""
+"The value will be subtracted from the property. Equivalent of doing [code]-"
+"=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:62
+msgid ""
+"The property will be multiplied by the value. Equivalent of doing [code]*=[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:65
+msgid ""
+"The property will be divided by the value. Equivalent of doing [code]/=[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:68
+msgid ""
+"A modulo operation will be performed on the property and the value. "
+"Equivalent of doing [code]%=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:71
+msgid ""
+"The property will be binarly shifted to the left by the given value. "
+"Equivalent of doing [code]<<[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:74
+msgid ""
+"The property will be binarly shifted to the right by the given value. "
+"Equivalent of doing [code]>>[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:77
+msgid ""
+"A binary [code]AND[/code] operation will be performed on the property. "
+"Equivalent of doing [code]&=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:80
+msgid ""
+"A binary [code]OR[/code] operation will be performed on the property. "
+"Equivalent of doing [code]|=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:83
+msgid ""
+"A binary [code]XOR[/code] operation will be performed on the property. "
+"Equivalent of doing [code]^=[/code]."
+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/VisualScriptSceneTree.xml:4
+#: modules/visual_script/doc_classes/VisualScriptSceneTree.xml:7
+msgid "A Visual Script node for accessing [SceneTree] methods."
+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/VisualScriptSubCall.xml:4
+msgid "Calls a method called [code]_subcall[/code] in this object."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSubCall.xml:7
+msgid ""
+"[VisualScriptSubCall] will call method named [code]_subcall[/code] in the "
+"current script. It will fail if the method doesn't exist or the provided "
+"arguments are wrong."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSubCall.xml:16
+msgid "Called by this node."
+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/VisualScriptTypeCast.xml:4
+msgid "A Visual Script node that casts the given value to another type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:7
+msgid ""
+"[VisualScriptTypeCast] will perform a type conversion to an [Object]-derived "
+"type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:15
+msgid ""
+"The target script class to be converted to. If none, only the [member "
+"base_type] will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:18
+msgid "The target type to be converted to."
+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 ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:4
+msgid "A Visual Script node used to pause a function execution."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:7
+msgid ""
+"[VisualScriptYield] will pause the function call and return "
+"[VisualScriptFunctionState], which can be used to resume the function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:15
+msgid ""
+"The mode to use for yielding. See [enum YieldMode] for available options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:18
+msgid "The time to wait when [member mode] is set to [constant YIELD_WAIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:23
+msgid "Yields during an idle frame."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:26
+msgid "Yields during a physics frame."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:29
+msgid "Yields a function and waits the given time."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:4
+msgid "A Visual Script node yielding for a signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:7
+msgid ""
+"[VisualScriptYieldSignal] will pause the function execution until the "
+"provided signal is emitted."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:18
+msgid ""
+"[code]call_mode[/code] determines the target object to wait for the signal "
+"emission. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:24
+msgid "The signal name to be waited for."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:29
+msgid "A signal from this [Object] will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:32
+msgid "A signal from the given [Node] in the scene tree will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:35
+msgid "A signal from an instanced node with the given type will be used."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:4
+msgid "Server for anything visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:7
+msgid ""
+"Server for anything visible. The visual server is the API backend for "
+"everything visible. The whole scene system mounts on it to display.\n"
+"The visual server is completely opaque, the internals are entirely "
+"implementation specific and cannot be accessed.\n"
+"The visual 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 visual server from "
+"a running game, the scenario can be accessed from the scene tree from any "
+"[Spatial] node with [method Spatial.get_world]. 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/VisualServer.xml:18
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html"
+msgstr ""
+
+#: doc/classes/VisualServer.xml:28
+msgid "Sets images to be rendered in the window margin."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:38
+msgid ""
+"Sets margin size, where black bars (or images, if [method "
+"black_bars_set_images] was used) are rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:44
+msgid ""
+"Creates a camera and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]camera_*[/code] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:53
+msgid ""
+"Sets the cull mask associated with this camera. The cull mask describes "
+"which 3D layers are rendered by this camera. Equivalent to [member Camera."
+"cull_mask]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:61
+msgid ""
+"Sets the environment used by this camera. Equivalent to [member Camera."
+"environment]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:72
+msgid ""
+"Sets camera to use frustum projection. This mode allows adjusting the "
+"[code]offset[/code] argument to create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:82
+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/VisualServer.xml:92
+msgid ""
+"Sets camera to use perspective projection. Objects on the screen becomes "
+"smaller when they are far away."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:100
+msgid "Sets [Transform] of camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:108
+msgid ""
+"If [code]true[/code], preserves the horizontal aspect ratio which is "
+"equivalent to [constant Camera.KEEP_WIDTH]. If [code]false[/code], preserves "
+"the vertical aspect ratio which is equivalent to [constant Camera."
+"KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:114
+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] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:125
+msgid "Adds a circle command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:133
+msgid ""
+"If ignore is [code]true[/code], the VisualServer does not perform clipping."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:145
+msgid "Adds a line command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:157
+msgid "Adds a mesh command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:167
+msgid ""
+"Adds a [MultiMesh] to the [CanvasItem]'s draw commands. Only affects its "
+"aabb at the moment."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:184
+msgid ""
+"Adds a nine patch image to the [CanvasItem]'s draw commands.\n"
+"See [NinePatchRect] for more explanation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:195
+msgid "Adds a particle system to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:208
+msgid "Adds a polygon to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:219
+msgid ""
+"Adds a polyline, which is a line from multiple points with a width, to the "
+"[CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:232
+msgid "Adds a primitive to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:241
+msgid "Adds a rectangle to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:249
+msgid ""
+"Adds a [Transform2D] command to the [CanvasItem]'s draw commands.\n"
+"This sets the extra_matrix uniform when executed. This affects the later "
+"commands of the canvas item."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:263
+msgid "Adds a textured rect to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:277
+msgid ""
+"Adds a texture rect with region setting to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:295
+msgid "Adds a triangle array to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:302
+msgid "Clears the [CanvasItem] and removes all commands in it."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:308
+msgid ""
+"Creates a new [CanvasItem] and returns its [RID]. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]canvas_item_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:317
+msgid "Sets clipping for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:326
+msgid "Sets the [CanvasItem] to copy a rect to the backbuffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:335
+msgid "Defines a custom drawing rectangle for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:343
+msgid ""
+"Enables the use of distance fields for GUI elements that are rendering "
+"distance field based fonts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:351
+msgid "Sets [CanvasItem] to be drawn behind its parent."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:359
+msgid "Sets the index for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:367 doc/classes/VisualServer.xml:493
+#: doc/classes/VisualServer.xml:549
+msgid ""
+"The light mask. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:375
+msgid "Sets a new material to the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:383
+msgid "Sets the color that modulates the [CanvasItem] and its children."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:391
+msgid ""
+"Sets the parent for the [CanvasItem]. The parent can be another canvas item, "
+"or it can be the root canvas that is attached to the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:399
+msgid "Sets the color that modulates the [CanvasItem] without children."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:407
+msgid "Sets if [CanvasItem]'s children should be sorted by y-position."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:415
+msgid "Sets the [CanvasItem]'s [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:423
+msgid "Sets if the [CanvasItem] uses its parent's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:431
+msgid "Sets if the canvas item (including its children) is visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:439
+msgid ""
+"If this is enabled, the Z index of the parent will be added to the "
+"children's Z index."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:447
+msgid ""
+"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are "
+"drawn first)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:455
+msgid ""
+"Attaches the canvas light to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:461
+msgid ""
+"Creates a canvas light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:470
+msgid ""
+"Attaches a light occluder to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:476
+msgid ""
+"Creates a light occluder and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_ocluder_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:485
+msgid "Enables or disables light occluder."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:501
+msgid "Sets a light occluder's polygon."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:509
+msgid "Sets a light occluder's [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:517
+msgid "Sets the color for a light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:525
+msgid "Enables or disables a canvas light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:533
+msgid "Sets a canvas light's energy."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:541
+msgid "Sets a canvas light's height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:557
+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/VisualServer.xml:566
+msgid "The layer range that gets rendered with this light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:574
+msgid "The mode of the light, see [enum CanvasLightMode] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:582
+msgid ""
+"Sets the texture's scale factor of the light. Equivalent to [member Light2D."
+"texture_scale]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:590
+msgid ""
+"Sets the width of the shadow buffer, size gets scaled to the next power of "
+"two for this."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:598
+msgid "Sets the color of the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:606
+msgid "Enables or disables the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:614
+msgid ""
+"Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] "
+"constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:622
+msgid "Sets the length of the shadow's gradient."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:630
+msgid "Smoothens the shadow. The lower, the smoother."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:638
+msgid ""
+"Sets texture to be used by light. Equivalent to [member Light2D.texture]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:646
+msgid ""
+"Sets the offset of the light's texture. Equivalent to [member Light2D."
+"offset]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:654
+msgid "Sets the canvas light's [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:663
+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/VisualServer.xml:669
+msgid ""
+"Creates a new light occluder polygon and adds it to the VisualServer. It can "
+"be accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_occluder_polygon_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:678
+msgid ""
+"Sets an occluder polygons cull mode. See [enum "
+"CanvasOccluderPolygonCullMode] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:687
+msgid "Sets the shape of the occluder polygon."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:695
+msgid "Sets the shape of the occluder polygon as lines."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:704
+msgid ""
+"A copy of the canvas item will be drawn with a local offset of the mirroring "
+"[Vector2]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:712
+msgid "Modulates all colors in the given canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:718
+msgid ""
+"Creates a directional light and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:728
+msgid ""
+"Draws a frame. [i]This method is deprecated[/i], please use [method "
+"force_draw] instead."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:734
+msgid ""
+"Creates an environment and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]environment_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:747
+msgid ""
+"Sets the values to be used with the \"Adjustment\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:757
+msgid "Sets the ambient light parameters. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:765
+msgid ""
+"Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment."
+"background_mode]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:773
+msgid ""
+"Color displayed for clear areas of the scene (if using Custom color or Color"
+"+Sky background modes)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:781
+msgid "Sets the intensity of the background color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:789
+msgid "Sets the maximum layer to use if using Canvas background mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:801
+msgid ""
+"Sets the values to be used with the \"DoF Far Blur\" post-process effect. "
+"See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:813
+msgid ""
+"Sets the values to be used with the \"DoF Near Blur\" post-process effect. "
+"See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:824
+msgid ""
+"Sets the variables to be used with the scene fog. See [Environment] for more "
+"details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:837
+msgid ""
+"Sets the variables to be used with the fog depth effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:848
+msgid ""
+"Sets the variables to be used with the fog height effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:866
+msgid ""
+"Sets the variables to be used with the \"glow\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:874
+msgid ""
+"Sets the [Sky] to be used as the environment's background when using "
+"[i]BGMode[/i] sky. Equivalent to [member Environment.background_sky]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:882
+msgid ""
+"Sets a custom field of view for the background [Sky]. Equivalent to [member "
+"Environment.background_sky_custom_fov]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:890
+msgid ""
+"Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent "
+"to [member Environment.background_sky_orientation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:909
+msgid ""
+"Sets the variables to be used with the \"Screen Space Ambient Occlusion "
+"(SSAO)\" post-process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:922
+msgid ""
+"Sets the variables to be used with the \"screen space reflections\" post-"
+"process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:937
+msgid ""
+"Sets the variables to be used with the \"tonemap\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:943
+msgid "Removes buffers and clears testcubes."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:951
+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/VisualServer.xml:957
+msgid "Synchronizes threads."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:964
+msgid "Tries to free an object in the VisualServer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:971
+msgid "Returns a certain information, see [enum RenderInfo] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:977
+msgid "Returns the id of the test cube. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:983
+msgid "Returns the id of the test texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:989
+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/VisualServer.xml:996
+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/VisualServer.xml:1003
+msgid "Returns the id of a white texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1009
+msgid ""
+"Creates a GI probe and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]gi_probe_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"To place in a scene, attach this GI probe to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1018
+msgid ""
+"Returns the bias value for the GI probe. Bias is used to avoid self "
+"occlusion. Equivalent to [member GIProbeData.bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1025
+msgid ""
+"Returns the axis-aligned bounding box that covers the full extent of the GI "
+"probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1032
+msgid "Returns the cell size set by [method gi_probe_set_cell_size]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1039
+msgid "Returns the data used by the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1046
+msgid ""
+"Returns the dynamic range set for this GI probe. Equivalent to [member "
+"GIProbe.dynamic_range]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1053
+msgid ""
+"Returns the energy multiplier for this GI probe. Equivalent to [member "
+"GIProbe.energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1060
+msgid ""
+"Returns the normal bias for this GI probe. Equivalent to [member GIProbe."
+"normal_bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1067
+msgid ""
+"Returns the propagation value for this GI probe. Equivalent to [member "
+"GIProbe.propagation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1074
+msgid "Returns the Transform set by [method gi_probe_set_to_cell_xform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1081
+msgid ""
+"Returns [code]true[/code] if the GI probe data associated with this GI probe "
+"is compressed. Equivalent to [member GIProbe.compress]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1088
+msgid ""
+"Returns [code]true[/code] if the GI probe is set to interior, meaning it "
+"does not account for sky light. Equivalent to [member GIProbe.interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1096
+msgid ""
+"Sets the bias value to avoid self-occlusion. Equivalent to [member GIProbe."
+"bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1104
+msgid ""
+"Sets the axis-aligned bounding box that covers the extent of the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1112
+msgid "Sets the size of individual cells within the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1120
+msgid ""
+"Sets the compression setting for the GI probe data. Compressed data will "
+"take up less space but may look worse. Equivalent to [member GIProbe."
+"compress]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1128
+msgid ""
+"Sets the data to be used in the GI probe for lighting calculations. Normally "
+"this is created and called internally within the [GIProbe] node. You should "
+"not try to set this yourself."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1136
+msgid ""
+"Sets the dynamic range of the GI probe. Dynamic range sets the limit for how "
+"bright lights can be. A smaller range captures greater detail but limits how "
+"bright lights can be. Equivalent to [member GIProbe.dynamic_range]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1144
+msgid ""
+"Sets the energy multiplier for this GI probe. A higher energy makes the "
+"indirect light from the GI probe brighter. Equivalent to [member GIProbe."
+"energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1152
+msgid ""
+"Sets the interior value of this GI probe. A GI probe set to interior does "
+"not include the sky when calculating lighting. Equivalent to [member GIProbe."
+"interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1160
+msgid ""
+"Sets the normal bias for this GI probe. Normal bias behaves similar to the "
+"other form of bias and may help reduce self-occlusion. Equivalent to [member "
+"GIProbe.normal_bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1168
+msgid ""
+"Sets the propagation of light within this GI probe. Equivalent to [member "
+"GIProbe.propagation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1176
+msgid "Sets the to cell [Transform] for this GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1182
+msgid ""
+"Returns [code]true[/code] if changes have been made to the VisualServer's "
+"data. [method draw] is usually called if this happens."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1189
+msgid "Not yet implemented. Always returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1196
+msgid ""
+"Returns [code]true[/code] if the OS supports a certain feature. Features "
+"might be [code]s3tc[/code], [code]etc[/code], [code]etc2[/code], "
+"[code]pvrtc[/code] and [code]skinning_fallback[/code].\n"
+"When rendering with GLES2, returns [code]true[/code] with "
+"[code]skinning_fallback[/code] in case the hardware doesn't support the "
+"default GPU skinning process."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1206
+msgid ""
+"Sets up [ImmediateGeometry] internals to prepare for drawing. Equivalent to "
+"[method ImmediateGeometry.begin]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1213
+msgid ""
+"Clears everything that was set up between [method immediate_begin] and "
+"[method immediate_end]. Equivalent to [method ImmediateGeometry.clear]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1221
+msgid ""
+"Sets the color to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1227
+msgid ""
+"Creates an immediate geometry and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]immediate_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1236
+msgid ""
+"Ends drawing the [ImmediateGeometry] and displays it. Equivalent to [method "
+"ImmediateGeometry.end]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1243
+msgid "Returns the material assigned to the [ImmediateGeometry]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1251
+msgid ""
+"Sets the normal to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_normal]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1259
+msgid "Sets the material to be used to draw the [ImmediateGeometry]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1267
+msgid ""
+"Sets the tangent to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_tangent]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1275
+msgid ""
+"Sets the UV to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_uv]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1283
+msgid ""
+"Sets the UV2 to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_uv2]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1291
+msgid ""
+"Adds the next vertex using the information provided in advance. Equivalent "
+"to [method ImmediateGeometry.add_vertex]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1299
+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 ImmediateGeometry.add_vertex]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1305
+msgid ""
+"Initializes the visual 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/VisualServer.xml:1313
+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/VisualServer.xml:1321
+msgid ""
+"Attaches a skeleton to an instance. Removes the previous skeleton from the "
+"instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1327
+msgid ""
+"Creates a visual instance and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]instance_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1337
+msgid ""
+"Creates a visual instance, adds it to the VisualServer, 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] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1346 doc/classes/VisualServer.xml:1365
+#: doc/classes/VisualServer.xml:1592 doc/classes/VisualServer.xml:2673
+msgid "Not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1354
+msgid ""
+"Sets the shadow casting setting to one of [enum ShadowCastingSetting]. "
+"Equivalent to [member GeometryInstance.cast_shadow]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1374
+msgid ""
+"Sets the flag for a given [enum InstanceFlags]. See [enum InstanceFlags] for "
+"more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1382
+msgid ""
+"Sets a material that will override the material for all surfaces on the mesh "
+"associated with this instance. Equivalent to [member GeometryInstance."
+"material_override]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1390
+msgid ""
+"Sets the base of the instance. A base can be any of the 3D objects that are "
+"created in the VisualServer that can be displayed. For example, any of the "
+"light types, mesh, multimesh, immediate geometry, particle system, "
+"reflection probe, lightmap capture, 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/VisualServer.xml:1399
+msgid "Sets the weight for a given blend shape associated with this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1407
+msgid ""
+"Sets a custom AABB to use when culling objects from the view frustum. "
+"Equivalent to [method GeometryInstance.set_custom_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1415
+msgid "Function not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1423
+msgid ""
+"Sets a margin to increase the size of the AABB when culling objects from the "
+"view frustum. This allows you to avoid culling objects that fall outside the "
+"view frustum. Equivalent to [member GeometryInstance.extra_cull_margin]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1431
+msgid ""
+"Sets the render layers that this instance will be drawn to. Equivalent to "
+"[member VisualInstance.layers]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1439
+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/VisualServer.xml:1448
+msgid ""
+"Sets the material of a specific surface. Equivalent to [method MeshInstance."
+"set_surface_material]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1456
+msgid ""
+"Sets the world space transform of the instance. Equivalent to [member "
+"Spatial.transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1467
+msgid "Sets the lightmap to use with this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1475
+msgid ""
+"Sets whether an instance is drawn or not. Equivalent to [member Spatial."
+"visible]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1483
+msgid ""
+"Returns an array of object IDs intersecting with the provided AABB. Only "
+"visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1492
+msgid ""
+"Returns an array of object IDs intersecting with the provided convex shape. "
+"Only visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1502
+msgid ""
+"Returns an array of object IDs intersecting with the provided 3D ray. Only "
+"visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1511
+msgid ""
+"If [code]true[/code], this directional light will blend between shadow map "
+"splits resulting in a smoother transition between them. Equivalent to "
+"[member DirectionalLight.directional_shadow_blend_splits]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1519
+msgid ""
+"Sets the shadow depth range mode for this directional light. Equivalent to "
+"[member DirectionalLight.directional_shadow_depth_range]. See [enum "
+"LightDirectionalShadowDepthRangeMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1527
+msgid ""
+"Sets the shadow mode for this directional light. Equivalent to [member "
+"DirectionalLight.directional_shadow_mode]. See [enum "
+"LightDirectionalShadowMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1535
+msgid ""
+"Sets whether to use vertical or horizontal detail for this omni light. This "
+"can be used to alleviate artifacts in the shadow map. Equivalent to [member "
+"OmniLight.omni_shadow_detail]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1543
+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 "
+"OmniLight.omni_shadow_mode]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1551
+msgid ""
+"Sets the bake mode for this light, see [enum LightBakeMode] for options. The "
+"bake mode affects how the light will be baked in [BakedLightmap]s and "
+"[GIProbe]s."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1559
+msgid "Sets the color of the light. Equivalent to [member Light.light_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1567
+msgid ""
+"Sets the cull mask for this Light. Lights only affect objects in the "
+"selected layers. Equivalent to [member Light.light_cull_mask]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1575
+msgid ""
+"If [code]true[/code], light will subtract light instead of adding light. "
+"Equivalent to [member Light.light_negative]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1584
+msgid ""
+"Sets the specified light parameter. See [enum LightParam] for options. "
+"Equivalent to [method Light.set_param]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1600
+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 Light.shadow_reverse_cull_face]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1608
+msgid ""
+"If [code]true[/code], light will cast shadows. Equivalent to [member Light."
+"shadow_enabled]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1616
+msgid ""
+"Sets the color of the shadow cast by the light. Equivalent to [member Light."
+"shadow_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1624
+msgid ""
+"Sets whether GI probes capture light information from this light. "
+"[i]Deprecated method.[/i] Use [method light_set_bake_mode] instead. This "
+"method is only kept for compatibility reasons and calls [method "
+"light_set_bake_mode] internally, setting the bake mode to [constant "
+"LIGHT_BAKE_DISABLED] or [constant LIGHT_BAKE_INDIRECT] depending on the "
+"given parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1630
+msgid ""
+"Creates a lightmap capture and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]lightmap_capture_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"To place in a scene, attach this lightmap capture to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1639
+msgid "Returns the size of the lightmap capture area."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1646
+msgid "Returns the energy multiplier used by the lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1653
+msgid "Returns the octree used by the lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1660
+msgid ""
+"Returns the cell subdivision amount used by this lightmap capture's octree."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1667
+msgid "Returns the cell transform for this lightmap capture's octree."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1674
+msgid "Returns [code]true[/code] if capture is in \"interior\" mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1682
+msgid ""
+"Sets the size of the area covered by the lightmap capture. Equivalent to "
+"[member BakedLightmapData.bounds]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1690
+msgid ""
+"Sets the energy multiplier for this lightmap capture. Equivalent to [member "
+"BakedLightmapData.energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1698
+msgid ""
+"Sets the \"interior\" mode for this lightmap capture. Equivalent to [member "
+"BakedLightmapData.interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1706
+msgid ""
+"Sets the octree to be used by this lightmap capture. This function is "
+"normally used by the [BakedLightmap] node. Equivalent to [member "
+"BakedLightmapData.octree]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1714
+msgid ""
+"Sets the subdivision level of this lightmap capture's octree. Equivalent to "
+"[member BakedLightmapData.cell_subdiv]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1722
+msgid ""
+"Sets the octree cell transform for this lightmap capture's octree. "
+"Equivalent to [member BakedLightmapData.cell_space_transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1731
+msgid ""
+"Returns a mesh of a sphere with the given amount of horizontal and vertical "
+"subdivisions."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1737
+msgid ""
+"Creates an empty material and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]material_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1746
+msgid "Returns the value of a certain material's parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1754
+msgid ""
+"Returns the default value for the param if available. Otherwise returns an "
+"empty [Variant]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1761
+msgid ""
+"Returns the shader of a certain material's shader. Returns an empty RID if "
+"the material doesn't have a shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1769
+msgid "Sets a material's line width."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1777
+msgid "Sets an object's next material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1786
+msgid "Sets a material's parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1794
+msgid "Sets a material's render priority."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1802
+msgid "Sets a shader material's shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1813
+msgid ""
+"Adds a surface generated from the Arrays to a mesh. See [enum PrimitiveType] "
+"constants for types."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1820
+msgid "Removes all surfaces from a mesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1826
+msgid ""
+"Creates a new mesh and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]mesh_*[/code] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1835
+msgid "Returns a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1842
+msgid "Returns a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1849
+msgid "Returns a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1856
+msgid "Returns a mesh's number of surfaces."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1864
+msgid "Removes a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1872
+msgid "Sets a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1880
+msgid "Sets a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1888
+msgid "Sets a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1896
+msgid "Returns a mesh's surface's aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1904
+msgid "Returns a mesh's surface's vertex buffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1912
+msgid "Returns a mesh's surface's amount of indices."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1920
+msgid "Returns a mesh's surface's amount of vertices."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1928
+msgid "Returns a mesh's surface's buffer arrays."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1936
+msgid "Returns a mesh's surface's arrays for blend shapes."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1944
+msgid "Returns the format of a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1954
+msgid "Function is unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1971
+msgid "Returns a mesh's surface's index buffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1979
+msgid "Returns a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1987
+msgid "Returns the primitive type of a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1995
+msgid "Returns the aabb of a mesh's surface's skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2004
+msgid "Sets a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2014
+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/VisualServer.xml:2025
+msgid ""
+"Allocates space for the multimesh data. Format parameters determine how the "
+"data will be stored by OpenGL. See [enum MultimeshTransformFormat], [enum "
+"MultimeshColorFormat], and [enum MultimeshCustomDataFormat] for usage. "
+"Equivalent to [member MultiMesh.instance_count]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2031
+msgid ""
+"Creates a new multimesh on the VisualServer and returns an [RID] handle. "
+"This RID will be used in all [code]multimesh_*[/code] VisualServer "
+"functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2040
+msgid ""
+"Calculates and returns the axis-aligned bounding box that encloses all "
+"instances within the multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2047
+msgid "Returns the number of instances allocated for this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2054
+msgid ""
+"Returns the RID of the mesh that will be used in drawing this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2061
+msgid "Returns the number of visible instances for this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2069
+msgid "Returns the color by which the specified instance will be modulated."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2077
+msgid "Returns the custom data associated with the specified instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2085
+msgid "Returns the [Transform] of the specified instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2093
+msgid ""
+"Returns the [Transform2D] of the specified instance. For use when the "
+"multimesh is set to use 2D transforms."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2102
+msgid ""
+"Sets the color by which this instance will be modulated. Equivalent to "
+"[method MultiMesh.set_instance_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2111
+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/VisualServer.xml:2120
+msgid ""
+"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
+"set_instance_transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2129
+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/VisualServer.xml:2137
+msgid ""
+"Sets all data related to the instances in one go. This is especially useful "
+"when loading the data from disk or preparing the data from GDNative.\n"
+"\n"
+"All data is packed in one large float array. An array may look like this: "
+"Transform for instance 1, color data for instance 1, custom data for "
+"instance 1, transform for instance 2, color data for instance 2, etc.\n"
+"\n"
+"[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, "
+"[code]COLOR_8BIT[/code] / [code]CUSTOM_DATA_8BIT[/code] is stored as 1 float "
+"(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/"
+"code] is stored as 4 floats."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2149
+msgid ""
+"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
+"mesh]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2157
+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/VisualServer.xml:2163
+msgid ""
+"Creates a new omni light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2171
+msgid ""
+"Creates a particle system and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]particles_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2180
+msgid ""
+"Calculates and returns the axis-aligned bounding box that contains all the "
+"particles. Equivalent to [method Particles.capture_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2187
+msgid "Returns [code]true[/code] if particles are currently set to emitting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2194
+msgid ""
+"Returns [code]true[/code] if particles are not emitting and particles are "
+"set to inactive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2201
+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/VisualServer.xml:2208
+msgid ""
+"Reset the particles on the next update. Equivalent to [method Particles."
+"restart]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2216
+msgid ""
+"Sets the number of particles to be drawn and allocates the memory for them. "
+"Equivalent to [member Particles.amount]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2224
+msgid ""
+"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
+"to [member Particles.visibility_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2232
+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 Particles.draw_order]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2241
+msgid ""
+"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
+"Particles.draw_pass_1], [member Particles.draw_pass_2], [member Particles."
+"draw_pass_3], and [member Particles.draw_pass_4]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2249
+msgid ""
+"Sets the number of draw passes to use. Equivalent to [member Particles."
+"draw_passes]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2257
+msgid ""
+"Sets the [Transform] that will be used by the particles when they first emit."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2265
+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 Particles.emitting]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2273
+msgid ""
+"Sets the explosiveness ratio. Equivalent to [member Particles.explosiveness]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2281
+msgid ""
+"Sets the frame rate that the particle system rendering will be fixed to. "
+"Equivalent to [member Particles.fixed_fps]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2289
+msgid ""
+"If [code]true[/code], uses fractional delta which smooths the movement of "
+"the particles. Equivalent to [member Particles.fract_delta]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2297
+msgid ""
+"Sets the lifetime of each particle in the system. Equivalent to [member "
+"Particles.lifetime]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2305
+msgid ""
+"If [code]true[/code], particles will emit once and then stop. Equivalent to "
+"[member Particles.one_shot]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2313
+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 Particles.preprocess]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2321
+msgid ""
+"Sets the material for processing the particles.\n"
+"[b]Note:[/b] This is not the material used to draw the materials. Equivalent "
+"to [member Particles.process_material]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2330
+msgid ""
+"Sets the emission randomness ratio. This randomizes the emission of "
+"particles within their phase. Equivalent to [member Particles.randomness]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2338
+msgid ""
+"Sets the speed scale of the particle system. Equivalent to [member Particles."
+"speed_scale]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2346
+msgid ""
+"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
+"they use global coordinates. Equivalent to [member Particles.local_coords]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2352
+msgid ""
+"Creates a reflection probe and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]reflection_probe_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2362
+msgid ""
+"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
+"to [member ReflectionProbe.interior_enable]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2370
+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/VisualServer.xml:2378
+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/VisualServer.xml:2386
+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/VisualServer.xml:2394
+msgid ""
+"Sets the size of the area that the reflection probe will capture. Equivalent "
+"to [member ReflectionProbe.extents]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2402
+msgid ""
+"Sets the intensity of the reflection probe. Intensity modulates the strength "
+"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2410
+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/VisualServer.xml:2418
+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/VisualServer.xml:2426
+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/VisualServer.xml:2434
+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/VisualServer.xml:2442
+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/VisualServer.xml:2450
+msgid ""
+"Sets how often the reflection probe updates. Can either be once or every "
+"frame. See [enum ReflectionProbeUpdateMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2459
+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/VisualServer.xml:2466
+msgid ""
+"Creates a scenario and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]scenario_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"The scenario is the 3D world that all the visual instances exist in."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2476
+msgid ""
+"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
+"ScenarioDebugMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2484
+msgid "Sets the environment that will be used with this scenario."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2492
+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/VisualServer.xml:2501
+msgid ""
+"Sets the size of the reflection atlas shared by all reflection probes in "
+"this scenario."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2511
+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/VisualServer.xml:2518
+msgid ""
+"If [code]true[/code], the engine will generate wireframes for use with the "
+"wireframe debug mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2525
+msgid ""
+"Sets the default clear color which is used when a specific clear color has "
+"not been selected."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2532
+msgid ""
+"Sets the scale to apply to the passage of time for the shaders' [code]TIME[/"
+"code] builtin.\n"
+"The default value is [code]1.0[/code], which means [code]TIME[/code] will "
+"count the real time as it goes by, without narrowing or stretching it."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2540
+msgid "Enables or disables occlusion culling."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2546
+msgid ""
+"Creates an empty shader and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]shader_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2554
+msgid "Returns a shader's code."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2562
+msgid "Returns a default texture from a shader searched by name."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2569
+msgid "Returns the parameters of a shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2577
+msgid "Sets a shader's code."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2586
+msgid "Sets a shader's default texture. Overwrites the texture given by name."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2595
+msgid "Allocates the GPU buffers for this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2603
+msgid "Returns the [Transform] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2611
+msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2620
+msgid "Sets the [Transform] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2629
+msgid "Sets the [Transform2D] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2635
+msgid ""
+"Creates a skeleton and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]skeleton_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2643
+msgid "Returns the number of bones allocated for this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2649
+msgid ""
+"Creates an empty sky and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]sky_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2659
+msgid "Sets a sky's texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2665
+msgid ""
+"Creates a spot light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2686
+msgid "Allocates the GPU memory for the texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2694
+msgid "Binds the texture to a texture slot."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2700
+msgid ""
+"Creates an empty texture and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]texture_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2709
+msgid ""
+"Creates a texture, allocates the space for an image, and fills in the image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2715
+msgid "Returns a list of all the textures and their information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2723
+msgid ""
+"Returns a copy of a texture's image unless it's a CubeMap, in which case it "
+"returns the [RID] of the image at one of the cubes sides."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2730
+msgid "Returns the depth of the texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2737
+msgid "Returns the flags of a texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2744
+msgid "Returns the format of the texture's image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2751
+msgid "Returns the texture's height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2758
+msgid "Returns the texture's path."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2765
+msgid "Returns the opengl id of the texture's image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2772
+msgid "Returns the type of the texture, can be any of the [enum TextureType]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2779
+msgid "Returns the texture's width."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2788
+msgid ""
+"Sets the texture's image data. If it's a CubeMap, it sets the image data at "
+"a cube side."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2804
+msgid ""
+"Sets a part of the data for a texture. Warning: this function calls the "
+"underlying graphics API directly and may corrupt your texture if used "
+"improperly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2812
+msgid "Sets the texture's flags. See [enum TextureFlags] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2820
+msgid "Sets the texture's path."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2827
+msgid ""
+"If [code]true[/code], sets internal processes to shrink all image data to "
+"half the size."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2844
+msgid ""
+"If [code]true[/code], the image will be stored in the texture's images array "
+"if overwritten."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2852
+msgid "Sets a viewport's camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2860
+msgid "Sets a viewport's canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2869
+msgid ""
+"Copies viewport to a region of the screen specified by [code]rect[/code]. If "
+"[member Viewport.render_direct_to_screen] is [code]true[/code], then "
+"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/VisualServer.xml:2882
+msgid ""
+"Creates an empty viewport and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]viewport_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2890
+msgid "Detaches the viewport from the screen."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2898
+msgid ""
+"Returns a viewport's render information. For options, see the [enum "
+"ViewportRenderInfo] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2905
+msgid "Returns the viewport's last rendered frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2913
+msgid "Detaches a viewport from a canvas and vice versa."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2921
+msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2931
+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/VisualServer.xml:2941
+msgid "Sets the transformation of a viewport's canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2949
+msgid ""
+"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2957
+msgid ""
+"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2965
+msgid "If [code]true[/code], a viewport's 3D rendering is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2973
+msgid ""
+"If [code]true[/code], rendering of a viewport's environment is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2981
+msgid "Sets the viewport's global transformation matrix."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2989
+msgid "If [code]true[/code], the viewport renders to hdr."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2997
+msgid "If [code]true[/code], the viewport's canvas is not rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3005
+msgid "Currently unimplemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3013
+msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3021
+msgid "Sets the viewport's parent to another viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3029
+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/VisualServer.xml:3037
+msgid ""
+"Sets a viewport's scenario.\n"
+"The scenario contains information about the [enum ScenarioDebugMode], "
+"environment information, reflection atlas etc."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3047
+msgid "Sets the shadow atlas quadrant's subdivision."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3055
+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/VisualServer.xml:3063
+msgid ""
+"Sets the sharpening [code]intensity[/code] for the [code]viewport[/code]. If "
+"set to a value greater than [code]0.0[/code], contrast-adaptive sharpening "
+"will be applied to the 3D viewport. This has a low performance cost and can "
+"be used to recover some of the sharpness lost from using FXAA. Values around "
+"[code]0.5[/code] generally give the best results. See also [method "
+"viewport_set_use_fxaa]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3072
+msgid "Sets the viewport's width and height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3080
+msgid ""
+"If [code]true[/code], the viewport renders its background as transparent."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3088
+msgid ""
+"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
+"constants for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3096
+msgid ""
+"Sets the viewport's 2D/3D mode. See [enum ViewportUsage] constants for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3104
+msgid ""
+"If [code]true[/code], the viewport uses augmented or virtual reality "
+"technologies. See [ARVRInterface]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3112
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member Viewport.hdr] must "
+"also be [code]true[/code] for debanding to be effective."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3121
+msgid ""
+"Enables fast approximate antialiasing for this viewport. 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [method "
+"viewport_set_sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3129
+msgid "If [code]true[/code], the viewport's rendering is flipped vertically."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3135
+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/VisualServer.xml:3141
+msgid ""
+"Emitted at the end of the frame, after the VisualServer has finished "
+"updating all the Viewports."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3146
+msgid ""
+"Emitted at the beginning of the frame, before the VisualServer updates all "
+"the Viewports."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3152
+msgid "Marks an error that shows that the index array is empty."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3155
+msgid "Number of weights/bones per vertex."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3158
+msgid "The minimum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3161
+msgid "The maximum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3164
+msgid ""
+"Max number of glow levels that can be used with glow post-process effect."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3167
+msgid "Unused enum in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3170
+msgid "The minimum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3173
+msgid "The maximum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3176
+msgid "Marks the left side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3179
+msgid "Marks the right side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3182
+msgid "Marks the bottom side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3185
+msgid "Marks the top side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3188
+msgid "Marks the front side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3191
+msgid "Marks the back side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3194
+msgid "Normal texture with 2 dimensions, width and height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3197
+msgid ""
+"Texture made up of six faces, can be looked up with a [code]vec3[/code] in "
+"shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3200
+msgid "An array of 2-dimensional textures."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3203
+msgid "A 3-dimensional texture with width, height, and depth."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3209
+msgid "Repeats the texture (instead of clamp to edge)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3222
+msgid "Repeats the texture with alternate sections mirrored."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3228
+msgid ""
+"Default flags. [constant TEXTURE_FLAG_MIPMAPS], [constant "
+"TEXTURE_FLAG_REPEAT] and [constant TEXTURE_FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3231
+msgid "Shader is a 3D shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3234
+msgid "Shader is a 2D shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3237
+msgid "Shader is a particle shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3240
+msgid "Represents the size of the [enum ShaderMode] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3243
+msgid "Array is a vertex array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3246
+msgid "Array is a normal array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3249
+msgid "Array is a tangent array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3252
+msgid "Array is a color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3255
+msgid "Array is an UV coordinates array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3258
+msgid "Array is an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3261
+msgid "Array contains bone information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3264
+msgid "Array is weight information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3267
+msgid "Array is index array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3273
+msgid "Flag used to mark a vertex array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3276
+msgid "Flag used to mark a normal array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3279
+msgid "Flag used to mark a tangent array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3282
+msgid "Flag used to mark a color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3285
+msgid "Flag used to mark an UV coordinates array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3288
+msgid ""
+"Flag used to mark an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3291
+msgid "Flag used to mark a bone information array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3294
+msgid "Flag used to mark a weights array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3297
+msgid "Flag used to mark an index array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3336
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
+"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
+"ARRAY_COMPRESS_TEX_UV], [constant ARRAY_COMPRESS_TEX_UV2], [constant "
+"ARRAY_COMPRESS_WEIGHTS], and [constant "
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3339
+msgid "Primitive to draw consists of points."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3342
+msgid "Primitive to draw consists of lines."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3345
+msgid "Primitive to draw consists of a line strip from start to end."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3348
+msgid ""
+"Primitive to draw consists of a line loop (a line strip with a line between "
+"the last and the first vertex)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3351
+msgid "Primitive to draw consists of triangles."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3354
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 3 vertices are "
+"always combined to make a triangle)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3357
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 2 vertices are "
+"always combined with the first to make a triangle)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3360
+msgid "Represents the size of the [enum PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3369
+msgid "Is a directional (sun) light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3372
+msgid "Is an omni light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3375
+msgid "Is a spot light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3378
+msgid "The light's energy."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3381
+msgid "Secondary multiplier used with indirect light (light bounces)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3384
+msgid ""
+"The light's size, currently only used for soft shadows in baked lightmaps."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3387
+msgid "The light's influence on specularity."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3390
+msgid "The light's range."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3393
+msgid "The light's attenuation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3396
+msgid "The spotlight's angle."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3399
+msgid "The spotlight's attenuation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3402
+msgid "Scales the shadow color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3405
+msgid "Max distance that shadows will be rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3408
+msgid "Proportion of shadow atlas occupied by the first split."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3411
+msgid "Proportion of shadow atlas occupied by the second split."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3414
+msgid ""
+"Proportion of shadow atlas occupied by the third split. The fourth split "
+"occupies the rest."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3417
+msgid ""
+"Normal bias used to offset shadow lookup by object normal. Can be used to "
+"fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3420
+msgid "Bias the shadow lookup to fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3423
+msgid ""
+"Increases bias on further splits to fix self-shadowing that only occurs far "
+"away from the camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3426
+msgid "Represents the size of the [enum LightParam] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3435
+msgid "Use a dual paraboloid shadow map for omni lights."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3438
+msgid ""
+"Use a cubemap shadow map for omni lights. Slower but better quality than "
+"dual paraboloid."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3441
+msgid "Use more detail vertically when computing shadow map."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3444
+msgid "Use more detail horizontally when computing shadow map."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3447
+msgid "Use orthogonal shadow projection for directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3450
+msgid "Use 2 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3453
+msgid "Use 4 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3456
+msgid ""
+"Keeps shadows stable as camera moves but has lower effective resolution."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3459
+msgid ""
+"Optimize use of shadow maps, increasing the effective resolution. But may "
+"result in shadows moving or flickering slightly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3462
+msgid "Do not update the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3465
+msgid "Update the viewport once then set to disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3468
+msgid "Update the viewport whenever it is visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3471
+msgid "Always update the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3474
+msgid "The viewport is always cleared before drawing."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3477
+msgid "The viewport is never cleared before drawing."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3480
+msgid ""
+"The viewport is cleared once, then the clear mode is set to [constant "
+"VIEWPORT_CLEAR_NEVER]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3483
+msgid "Multisample antialiasing is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3486
+msgid "Multisample antialiasing is set to 2×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3489
+msgid "Multisample antialiasing is set to 4×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3492
+msgid "Multisample antialiasing is set to 8×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3495
+msgid "Multisample antialiasing is set to 16×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3498
+msgid ""
+"Multisample antialiasing is set to 2× on external texture. Special mode for "
+"GLES2 Android VR (Oculus Quest and Go)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3501
+msgid ""
+"Multisample antialiasing is set to 4× on external texture. Special mode for "
+"GLES2 Android VR (Oculus Quest and Go)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3504
+msgid "The Viewport does not render 3D but samples."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3507
+msgid "The Viewport does not render 3D and does not sample."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3510
+msgid "The Viewport renders 3D with effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3513
+msgid "The Viewport renders 3D but without effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3516
+msgid "Number of objects drawn in a single frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3519
+msgid "Number of vertices drawn in a single frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3522
+msgid "Number of material changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3525
+msgid "Number of shader changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3528
+msgid "Number of surface changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3531
+msgid "Number of draw calls during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3534
+msgid "Number of 2d items drawn this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3537
+msgid "Number of 2d draw calls during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3540
+msgid "Represents the size of the [enum ViewportRenderInfo] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3543
+msgid "Debug draw is disabled. Default setting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3546
+msgid "Debug draw sets objects to unshaded."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3549
+msgid "Overwrites clear color to [code](0,0,0,0)[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3552
+msgid "Debug draw draws objects in wireframe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3555
+msgid "Do not use a debug mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3558
+msgid "Draw all objects as wireframe models."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3561
+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/VisualServer.xml:3564
+msgid ""
+"Draw all objects without shading. Equivalent to setting all objects shaders "
+"to [code]unshaded[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3567
+msgid "The instance does not have a type."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3570
+msgid "The instance is a mesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3573
+msgid "The instance is a multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3576
+msgid "The instance is an immediate geometry."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3579
+msgid "The instance is a particle emitter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3582
+msgid "The instance is a light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3585
+msgid "The instance is a reflection probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3588
+msgid "The instance is a GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3591
+msgid "The instance is a lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3594
+msgid "Represents the size of the [enum InstanceType] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3597
+msgid ""
+"A combination of the flags of geometry instances (mesh, multimesh, immediate "
+"and particles)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3600
+msgid "Allows the instance to be used in baked lighting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3603
+msgid "When set, manually requests to draw geometry on next frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3606
+msgid "Represents the size of the [enum InstanceFlags] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3609
+msgid "Disable shadows from this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3612
+msgid "Cast shadows from this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3615
+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/VisualServer.xml:3618
+msgid ""
+"Only render the shadows from the object. The object itself will not be drawn."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3621
+msgid "The nine patch gets stretched where needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3624
+msgid "The nine patch gets filled with tiles where needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3627
+msgid ""
+"The nine patch gets filled with tiles where needed and stretches them a bit "
+"if needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3630
+msgid "Adds light color additive to the canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3633
+msgid "Adds light color subtractive to the canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3636
+msgid "The light adds color depending on transparency."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3639
+msgid "The light adds color depending on mask."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3642
+msgid "Do not apply a filter to canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3645
+msgid "Use PCF3 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3648
+msgid "Use PCF5 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3651
+msgid "Use PCF7 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3654
+msgid "Use PCF9 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3657
+msgid "Use PCF13 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3660
+msgid "Culling of the canvas occluder is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3663
+msgid "Culling of the canvas occluder is clockwise."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3666
+msgid "Culling of the canvas occluder is counterclockwise."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3669
+msgid "The amount of objects in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3672
+msgid "The amount of vertices in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3675
+msgid "The amount of modified materials in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3678
+msgid "The amount of shader rebinds in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3681
+msgid "The amount of surface changes in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3684
+msgid "The amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3687
+msgid "The amount of 2d items in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3690
+msgid "The amount of 2d draw calls in frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3705
+msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3708
+msgid ""
+"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3711
+msgid "Use [Transform2D] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3714
+msgid "Use [Transform] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3717
+msgid "MultiMesh does not use per-instance color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3720
+msgid ""
+"MultiMesh color uses 8 bits per component. This packs the color into a "
+"single float."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3723
+msgid "MultiMesh color uses a float per channel."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3726
+msgid "MultiMesh does not use custom data."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3729
+msgid ""
+"MultiMesh custom data uses 8 bits per component. This packs the 4-component "
+"custom data into a single float."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3732
+msgid "MultiMesh custom data uses a float per component."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3735
+msgid "Reflection probe will update reflections once and then stop."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3738
+msgid ""
+"Reflection probe will update each frame. This mode is necessary to capture "
+"moving objects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3741
+msgid "Draw particles in the order that they appear in the particles array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3744
+msgid "Sort particles based on their lifetime."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3747
+msgid "Sort particles based on their distance to the camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3750
+msgid "Use the clear color as background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3753
+msgid "Use a specified color as the background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3756
+msgid "Use a sky resource for the background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3759
+msgid ""
+"Use a custom color for background, but use a sky for shading and reflections."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3762
+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/VisualServer.xml:3765
+msgid ""
+"Do not clear the background, use whatever was rendered last frame as the "
+"background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3768
+msgid "Represents the size of the [enum EnvironmentBG] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3771
+msgid "Use lowest blur quality. Fastest, but may look bad."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3774
+msgid "Use medium blur quality."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3777
+msgid "Used highest blur quality. Looks the best, but is the slowest."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3780
+msgid "Add the effect of the glow on top of the scene."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3783
+msgid ""
+"Blends the glow effect with the screen. Does not get as bright as additive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3786
+msgid "Produces a subtle color disturbance around objects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3789
+msgid "Shows the glow effect by itself without the underlying scene."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3792
+msgid "Output color as they came in."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3795
+msgid "Use the Reinhard tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3798
+msgid "Use the filmic tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3801
+msgid "Use the ACES tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3804
+msgid "Use the ACES Fitted tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3807
+msgid "Lowest quality of screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3810
+msgid "Medium quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3813
+msgid "Highest quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3816
+msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3819
+msgid "Perform a 1x1 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3822
+msgid "Performs a 2x2 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3825
+msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
+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:20
+msgid "Adds the specified node to the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:31
+msgid ""
+"Returns [code]true[/code] if the specified nodes and ports can be connected "
+"together."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:42 doc/classes/VisualShader.xml:64
+msgid "Connects the specified nodes and ports."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:53
+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:72
+msgid ""
+"Returns the shader node instance with specified [code]type[/code] and "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:79
+msgid "Returns the list of connected nodes with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:86
+msgid "Returns the list of all nodes in the shader with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:94
+msgid "Returns the position of the specified node within the shader graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:111
+msgid ""
+"Returns [code]true[/code] if the specified node and port connection exist."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:119
+msgid "Removes the specified node from the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:126
+msgid "Sets the mode of this shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:135
+msgid "Sets the position of the specified node."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:141
+msgid "The offset vector of the whole graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:146
+msgid "A vertex shader, operating on vertices."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:149
+msgid "A fragment shader, operating on fragments (pixels)."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:152
+msgid "A shader for light calculations."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:155
+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:7
+msgid ""
+"Visual shader graphs consist of various nodes. Each node in the graph is a "
+"separate object and they are represented as a rectangular boxes with title "
+"and a set of properties. Each node has also connection ports that allow to "
+"connect it to another nodes and control the flow of the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:23
+msgid "Returns the default value of the input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:30
+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:38
+msgid "Sets the default value for the selected input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:44
+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:50
+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:56
+msgid ""
+"Floating-point scalar. Translated to [code]float[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:59
+msgid ""
+"3D vector of floating-point values. Translated to [code]vec3[/code] type in "
+"shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:62
+msgid "Boolean type. Translated to [code]bool[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:65
+msgid "Transform type. Translated to [code]mat4[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:68
+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:71
+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/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
+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 "A 3D vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:32
+msgid "A boolean type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:35
+msgid "A transform ([code]mat4[/code]) type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:38
+msgid "Comparison for equality ([code]a == b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:41
+msgid "Comparison for inequality ([code]a != b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:44
+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:47
+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:50
+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:53
+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:56
+msgid ""
+"The result will be true if all of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:59
+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/3.4/tutorials/plugins/editor/"
+"visual_shader_plugins.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:22
+msgid ""
+"Override this method to define the category of the associated custom node in "
+"the Visual Shader Editor's members dialog. The path may look like "
+"[code]\"MyGame/MyFunctions/Noise\"[/code].\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the \"Custom\" category."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:33
+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:43
+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:51
+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:60
+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:68
+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:76
+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:83
+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:90
+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:98
+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:106
+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:113
+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:120
+msgid ""
+"Override this method to define the subcategory of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the root of the main category (see [method _get_category])."
+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]determinant(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 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/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:18
+msgid ""
+"Adds an input port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:27
+msgid ""
+"Adds an output port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:33
+msgid "Removes all previously specified input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:39
+msgid "Removes all previously specified output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:45
+msgid ""
+"Returns a free input port ID which can be used in [method add_input_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:51
+msgid ""
+"Returns a free output port ID which can be used in [method add_output_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:57
+msgid ""
+"Returns the number of input ports in use. Alternative for [method "
+"get_free_input_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:63
+msgid ""
+"Returns a [String] description of the input ports as a colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:69
+msgid ""
+"Returns the number of output ports in use. Alternative for [method "
+"get_free_output_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:75
+msgid ""
+"Returns a [String] description of the output ports as a colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:82
+msgid "Returns [code]true[/code] if the specified input port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:89
+msgid "Returns [code]true[/code] if the specified output port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:96
+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:103
+msgid "Removes the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:110
+msgid "Removes the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:118
+msgid "Renames the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:126
+msgid ""
+"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:133
+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:141
+msgid "Renames the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:149
+msgid ""
+"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:156
+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:162
+msgid "The size of the node in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:6
+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:9
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/"
+"index.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:20
+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/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/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/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 "
+"[Sprite])."
+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/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:15
+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:39
+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).\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/VSlider.xml:25
+msgid "The background of the area below the grabber."
+msgstr ""
+
+#: doc/classes/VSlider.xml:36
+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:15
+msgid "Returns the [Object] this weakref is referring to."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:13
+msgid "Closes this data channel, notifying the other peer."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:19
+msgid ""
+"Returns the number of bytes currently queued to be sent over this channel."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:25
+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:32
+msgid "Returns the label assigned to this channel during creation."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:38
+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:45
+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:58
+msgid "Returns the current state of this channel, see [enum ChannelState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:64
+msgid ""
+"Returns [code]true[/code] if this channel was created with out-of-band "
+"configuration."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:70
+msgid ""
+"Returns [code]true[/code] if this channel was created with ordering enabled "
+"(default)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:76
+msgid "Reserved, but not used for now."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:82
+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:88
+msgid ""
+"The transfer mode to use when sending outgoing packet. Either text or binary."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:93
+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:96
+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:99
+msgid "The channel was created, but it's still trying to connect."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:102
+msgid "The channel is currently open, and data can flow over it."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:105
+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:108
+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:20
+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:27
+msgid "Close all the add peer connections and channels, freeing all resources."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:34
+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:40
+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:47
+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:55
+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:64
+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:23
+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:29
+msgid ""
+"Close the peer connection and all data channels associated with it.\n"
+"[b]Note:[/b] You cannot reuse this object for a new connection unless you "
+"call [method initialize]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:39
+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:61
+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:68
+msgid "Returns the connection state. See [enum ConnectionState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:76
+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"
+" \"credential\": \"a_password\", # Optional password for the TURN "
+"server.\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:97
+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:105
+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:114
+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:124
+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:133
+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:140
+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:146
+msgid ""
+"The connection is new, data channels and an offer can be created in this "
+"state."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:149
+msgid ""
+"The peer is connecting, ICE is in progress, none of the transports has "
+"failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:152
+msgid "The peer is connected, all ICE transports are connected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:155
+msgid "At least one ICE transport is disconnected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:158
+msgid "One or more of the ICE transports failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:161
+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:22
+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] To avoid mixed content warnings or errors in HTML5, you may "
+"have to use a [code]url[/code] that starts with [code]wss://[/code] (secure) "
+"instead of [code]ws://[/code]. When doing so, make sure to use the fully "
+"qualified domain name that matches the one defined in the server's SSL "
+"certificate. Do not connect directly via the IP address for [code]wss://[/"
+"code] connections, as it won't match with the SSL certificate.\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:35
+msgid ""
+"Disconnects this client from the connected host. See [method WebSocketPeer."
+"close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:41
+msgid "Return the IP address of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:47
+msgid "Return the IP port of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:53
+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:57
+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:65
+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:70
+msgid "Emitted when the connection to the server fails."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:76
+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:81
+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:89
+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:16
+msgid ""
+"Returns the [WebSocketPeer] associated to the given [code]peer_id[/code]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:26
+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:41
+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 represents a specific WebSocket connection, allowing you to 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:18
+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:26
+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:33
+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:40
+msgid ""
+"Returns the current amount of data in the outbound websocket buffer. [b]Note:"
+"[/b] HTML5 exports use WebSocket.bufferedAmount, while other platforms use "
+"an internal buffer."
+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:52
+msgid "Returns [code]true[/code] if this peer is currently connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:59
+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:67
+msgid "Sets the socket to use the given [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:73
+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:79
+msgid ""
+"Specifies that WebSockets messages should be transferred as text payload "
+"(only valid UTF-8 is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:82
+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:20
+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:41
+msgid "Returns [code]true[/code] if a peer with the given ID is connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:47
+msgid ""
+"Returns [code]true[/code] if the server is actively listening on a port."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:56
+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:65
+msgid "Stops the server and clear its state."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:71
+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:74
+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:77
+msgid ""
+"The time in seconds before a pending client (i.e. a client that has not yet "
+"finished the HTTP handshake) is considered stale and forcefully disconnected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:80
+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:83
+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:92
+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:99
+msgid ""
+"Emitted when a new client connects. \"protocol\" will be the sub-protocol "
+"agreed with the client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:106
+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:112
+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 ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:4
+msgid "AR/VR interface using WebXR."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:7
+msgid ""
+"WebXR is an open standard that allows creating VR and AR applications that "
+"run in the web browser.\n"
+"As such, this interface is only available when running in an HTML5 export.\n"
+"WebXR supports a wide range of devices, from the very capable (like Valve "
+"Index, HTC Vive, Oculus Rift and Quest) down to the much less capable (like "
+"Google Cardboard, Oculus Go, GearVR, or plain smartphones).\n"
+"Since WebXR is based on Javascript, it makes extensive use of callbacks, "
+"which means that [WebXRInterface] is forced to use signals, where other AR/"
+"VR interfaces would instead use functions that return a result immediately. "
+"This makes [WebXRInterface] quite a bit more complicated to initialize than "
+"other AR/VR interfaces.\n"
+"Here's the minimum code required to start an immersive VR session:\n"
+"[codeblock]\n"
+"extends Spatial\n"
+"\n"
+"var webxr_interface\n"
+"var vr_supported = false\n"
+"\n"
+"func _ready():\n"
+" # We assume this node has a button as a child.\n"
+" # This button is for the user to consent to entering immersive VR mode.\n"
+" $Button.connect(\"pressed\", self, \"_on_Button_pressed\")\n"
+"\n"
+" webxr_interface = ARVRServer.find_interface(\"WebXR\")\n"
+" if webxr_interface:\n"
+" # WebXR uses a lot of asynchronous callbacks, so we connect to "
+"various\n"
+" # signals in order to receive them.\n"
+" webxr_interface.connect(\"session_supported\", self, "
+"\"_webxr_session_supported\")\n"
+" webxr_interface.connect(\"session_started\", self, "
+"\"_webxr_session_started\")\n"
+" webxr_interface.connect(\"session_ended\", self, "
+"\"_webxr_session_ended\")\n"
+" webxr_interface.connect(\"session_failed\", self, "
+"\"_webxr_session_failed\")\n"
+"\n"
+" # This returns immediately - our _webxr_session_supported() method\n"
+" # (which we connected to the \"session_supported\" signal above) "
+"will\n"
+" # be called sometime later to let us know if it's supported or not.\n"
+" webxr_interface.is_session_supported(\"immersive-vr\")\n"
+"\n"
+"func _webxr_session_supported(session_mode, supported):\n"
+" if session_mode == 'immersive-vr':\n"
+" vr_supported = supported\n"
+"\n"
+"func _on_Button_pressed():\n"
+" if not vr_supported:\n"
+" OS.alert(\"Your browser doesn't support VR\")\n"
+" return\n"
+"\n"
+" # We want an immersive VR session, as opposed to AR ('immersive-ar') or "
+"a\n"
+" # simple 3DoF viewer ('viewer').\n"
+" webxr_interface.session_mode = 'immersive-vr'\n"
+" # 'bounded-floor' is room scale, 'local-floor' is a standing or sitting\n"
+" # experience (it puts you 1.6m above the ground if you have 3DoF "
+"headset),\n"
+" # whereas as 'local' puts you down at the ARVROrigin.\n"
+" # This list means it'll first try to request 'bounded-floor', then\n"
+" # fallback on 'local-floor' and ultimately 'local', if nothing else is\n"
+" # supported.\n"
+" webxr_interface.requested_reference_space_types = 'bounded-floor, local-"
+"floor, local'\n"
+" # In order to use 'local-floor' or 'bounded-floor' we must also\n"
+" # mark the features as required or optional.\n"
+" webxr_interface.required_features = 'local-floor'\n"
+" webxr_interface.optional_features = 'bounded-floor'\n"
+"\n"
+" # This will return false if we're unable to even request the session,\n"
+" # however, it can still fail asynchronously later in the process, so we\n"
+" # only know if it's really succeeded or failed when our\n"
+" # _webxr_session_started() or _webxr_session_failed() methods are "
+"called.\n"
+" if not webxr_interface.initialize():\n"
+" OS.alert(\"Failed to initialize\")\n"
+" return\n"
+"\n"
+"func _webxr_session_started():\n"
+" $Button.visible = false\n"
+" # This tells Godot to start rendering to the headset.\n"
+" get_viewport().arvr = true\n"
+" # This will be the reference space type you ultimately got, out of the\n"
+" # types that you requested above. This is useful if you want the game "
+"to\n"
+" # work a little differently in 'bounded-floor' versus 'local-floor'.\n"
+" print (\"Reference space type: \" + webxr_interface."
+"reference_space_type)\n"
+"\n"
+"func _webxr_session_ended():\n"
+" $Button.visible = true\n"
+" # If the user exits immersive mode, then we tell Godot to render to the "
+"web\n"
+" # page again.\n"
+" get_viewport().arvr = false\n"
+"\n"
+"func _webxr_session_failed(message):\n"
+" OS.alert(\"Failed to initialize: \" + message)\n"
+"[/codeblock]\n"
+"There are several ways to handle \"controller\" input:\n"
+"- Using [ARVRController] nodes and their [signal ARVRController."
+"button_pressed] and [signal ARVRController.button_release] signals. This is "
+"how controllers are typically handled in AR/VR apps in Godot, however, this "
+"will only work with advanced VR controllers like the Oculus Touch or Index "
+"controllers, for example. The buttons codes are defined by [url=https://"
+"immersive-web.github.io/webxr-gamepads-module/#xr-standard-gamepad-"
+"mapping]Section 3.3 of the WebXR Gamepads Module[/url].\n"
+"- Using [method Node._unhandled_input] and [InputEventJoypadButton] or "
+"[InputEventJoypadMotion]. This works the same as normal joypads, except the "
+"[member InputEvent.device] starts at 100, so the left controller is 100 and "
+"the right controller is 101, and the button codes are also defined by "
+"[url=https://immersive-web.github.io/webxr-gamepads-module/#xr-standard-"
+"gamepad-mapping]Section 3.3 of the WebXR Gamepads Module[/url].\n"
+"- Using the [signal select], [signal squeeze] and related signals. This "
+"method will work for both advanced VR controllers, and non-traditional "
+"\"controllers\" like a tap on the screen, a spoken voice command or a button "
+"press on the device itself. The [code]controller_id[/code] passed to these "
+"signals is the same id as used in [member ARVRController.controller_id].\n"
+"You can use one or all of these methods to allow your game or app to support "
+"a wider or narrower set of devices and input methods, or to allow more "
+"advanced interations with more advanced devices."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:94
+msgid "https://www.snopekgames.com/blog/2020/how-make-vr-game-webxr-godot"
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:101
+msgid ""
+"Gets an [ARVRPositionalTracker] for the given [code]controller_id[/code].\n"
+"In the context of WebXR, a \"controller\" can be an advanced VR controller "
+"like the Oculus Touch or Index controllers, or even a tap on the screen, a "
+"spoken voice command or a button press on the device itself. When a non-"
+"traditional controller is used, interpret the position and orientation of "
+"the [ARVRPositionalTracker] as a ray pointing at the object the user wishes "
+"to interact with.\n"
+"Use this method to get information about the controller that triggered one "
+"of these signals:\n"
+"- [signal selectstart]\n"
+"- [signal select]\n"
+"- [signal selectend]\n"
+"- [signal squeezestart]\n"
+"- [signal squeeze]\n"
+"- [signal squeezestart]"
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:116
+msgid ""
+"Checks if the given [code]session_mode[/code] is supported by the user's "
+"browser.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
+"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code].\n"
+"This method returns nothing, instead it emits the [signal session_supported] "
+"signal with the result."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:124
+msgid ""
+"The vertices of a polygon which defines the boundaries of the user's play "
+"area.\n"
+"This will only be available if [member reference_space_type] is "
+"[code]\"bounded-floor\"[/code] and only on certain browsers and devices that "
+"support it.\n"
+"The [signal reference_space_reset] signal may indicate when this changes."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:129
+msgid ""
+"A comma-seperated list of optional features used by [method ARVRInterface."
+"initialize] when setting up the WebXR session.\n"
+"If a user's browser or device doesn't support one of the given features, "
+"initialization will continue, but you won't be able to use the requested "
+"feature.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:135
+msgid ""
+"The reference space type (from the list of requested types set in the "
+"[member requested_reference_space_types] property), that was ultimately used "
+"by [method ARVRInterface.initialize] when setting up the WebXR session.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:139
+msgid ""
+"A comma-seperated list of reference space types used by [method "
+"ARVRInterface.initialize] when setting up the WebXR session.\n"
+"The reference space types are requested in order, and the first on supported "
+"by the users device or browser will be used. The [member "
+"reference_space_type] property contains the reference space type that was "
+"ultimately used.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:145
+msgid ""
+"A comma-seperated list of required features used by [method ARVRInterface."
+"initialize] when setting up the WebXR session.\n"
+"If a user's browser or device doesn't support one of the given features, "
+"initialization will fail and [signal session_failed] will be emitted.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:151
+msgid ""
+"The session mode used by [method ARVRInterface.initialize] when setting up "
+"the WebXR session.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
+"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:156
+msgid ""
+"Indicates if the WebXR session's imagery is visible to the user.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRVisibilityState]WebXR's XRVisibilityState[/url], including "
+"[code]\"hidden\"[/code], [code]\"visible\"[/code], and [code]\"visible-"
+"blurred\"[/code]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:163
+msgid ""
+"Emitted to indicate that the reference space has been reset or "
+"reconfigured.\n"
+"When (or whether) this is emitted depends on the user's browser or device, "
+"but may include when the user has changed the dimensions of their play space "
+"(which you may be able to access via [member bounds_geometry]) or pressed/"
+"held a button to recenter their position.\n"
+"See [url=https://developer.mozilla.org/en-US/docs/Web/API/XRReferenceSpace/"
+"reset_event]WebXR's XRReferenceSpace reset event[/url] for more information."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:171
+msgid ""
+"Emitted after one of the \"controllers\" has finished its \"primary action"
+"\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:178
+msgid ""
+"Emitted when one of the \"controllers\" has finished its \"primary action"
+"\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:185
+msgid ""
+"Emitted when one of the \"controllers\" has started its \"primary action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:191
+msgid ""
+"Emitted when the user ends the WebXR session (which can be done using UI "
+"from the browser or device).\n"
+"At this point, you should do [code]get_viewport().arvr = false[/code] to "
+"instruct Godot to resume rendering to the screen."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:198
+msgid ""
+"Emitted by [method ARVRInterface.initialize] if the session fails to start.\n"
+"[code]message[/code] may optionally contain an error message from WebXR, or "
+"an empty string if no message is available."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:204
+msgid ""
+"Emitted by [method ARVRInterface.initialize] if the session is successfully "
+"started.\n"
+"At this point, it's safe to do [code]get_viewport().arvr = true[/code] to "
+"instruct Godot to start rendering to the AR/VR device."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:212
+msgid ""
+"Emitted by [method is_session_supported] to indicate if the given "
+"[code]session_mode[/code] is supported or not."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:218
+msgid ""
+"Emitted after one of the \"controllers\" has finished its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:225
+msgid ""
+"Emitted when one of the \"controllers\" has finished its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:232
+msgid ""
+"Emitted when one of the \"controllers\" has started its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:238
+msgid "Emitted when [member visibility_state] has changed."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:4
+msgid "Base class for window dialogs."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:7
+msgid ""
+"Windowdialog is the base class for all window-based dialogs. It's a by-"
+"default toplevel [Control] that draws a window decoration and allows motion "
+"and resizing."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:15
+msgid ""
+"Returns the close [TextureButton].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:22
+msgid "If [code]true[/code], the user can resize the window."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:25
+msgid "The text displayed in the window's title bar."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:32
+msgid "The icon for the close button."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:35
+msgid "The horizontal offset of the close button."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:38
+msgid ""
+"The icon used for the close button when it's hovered with the mouse cursor."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:44
+msgid ""
+"The style for both the content background of the [WindowDialog] and the "
+"title bar. The title bar is created with a top border and an expand margin "
+"using the [code]panel[/code] stylebox."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:47
+msgid ""
+"The thickness of the border that can be dragged when scaling the window (if "
+"[member resizable] is enabled)."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:50
+msgid "The color of the title text."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:53
+msgid "The font used to draw the title."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:56
+msgid "The vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/World.xml:4
+msgid "Class that has everything pertaining to a world."
+msgstr ""
+
+#: doc/classes/World.xml:7
+msgid ""
+"Class that has everything pertaining to a world. A physics space, a visual "
+"scenario and a sound space. Spatial nodes register their resources into the "
+"current world."
+msgstr ""
+
+#: doc/classes/World.xml:16
+msgid ""
+"Direct access to the world's physics 3D space state. Used for querying "
+"current and potential collisions."
+msgstr ""
+
+#: doc/classes/World.xml:19
+msgid "The World's [Environment]."
+msgstr ""
+
+#: doc/classes/World.xml:22
+msgid ""
+"The World's fallback_environment will be used if the World's [Environment] "
+"fails or is missing."
+msgstr ""
+
+#: doc/classes/World.xml:25
+msgid "The World's visual scenario."
+msgstr ""
+
+#: doc/classes/World.xml:28
+msgid "The World's physics space."
+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 [VisualServer] 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. When using multi-threaded physics, access "
+"is limited to [code]_physics_process(delta)[/code] in the main thread."
+msgstr ""
+
+#: doc/classes/World2D.xml:22
+msgid ""
+"The [RID] of this world's physics space resource. Used by the "
+"[Physics2DServer] for 2D physics, treating it as both a space and an area."
+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 [Camera]. 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:21
+msgid ""
+"The [Environment] resource used by this [WorldEnvironment], defining the "
+"default properties."
+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:18
+msgid "Loads a certificate from [code]path[/code] (\"*.crt\" file)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:25
+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:15
+msgid "Gets the amount of attributes in the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:22
+msgid ""
+"Gets the name of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:29
+msgid ""
+"Gets the value of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:35
+msgid "Gets the current line in the parsed file (currently not implemented)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:42
+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:49
+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:55
+msgid ""
+"Gets the contents of a text node. This will raise an error in any other type "
+"of node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:61
+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:67
+msgid ""
+"Gets the byte offset of the current node since the beginning of the file or "
+"buffer."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:73
+msgid ""
+"Gets the type of the current node. Compare with [enum NodeType] constants."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:80
+msgid "Check whether the current element has a certain attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:86
+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:93
+msgid "Opens an XML file for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:100
+msgid "Opens an XML raw buffer for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:106
+msgid "Reads the next node of the file. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:113
+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:119
+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:125
+msgid "There's no node (no file or buffer opened)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:128
+msgid "Element (tag)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:131
+msgid "End of element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:134
+msgid "Text node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:137
+msgid "Comment node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:140
+msgid "CDATA content."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:143
+msgid "Unknown node."
+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/nl.po b/doc/translations/nl.po
index f9f0b8af5d..df5a6168a0 100644
--- a/doc/translations/nl.po
+++ b/doc/translations/nl.po
@@ -21,43 +21,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.4.1-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Beschrijving"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Handleidingen"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Eigenschappen"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Methoden"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Thema-eigenschappen"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Signalen"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumeratie"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constanten"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Eigenschapbeschrijvingen"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Methodebeschrijvingen"
@@ -6259,21 +6259,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6281,7 +6285,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6292,7 +6296,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6300,41 +6304,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6342,61 +6346,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6411,7 +6415,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6420,7 +6424,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6429,7 +6433,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6446,29 +6450,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6507,21 +6511,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6529,7 +6537,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6540,7 +6548,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6548,14 +6556,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6563,21 +6571,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6592,7 +6600,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6607,7 +6615,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6616,7 +6624,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6625,7 +6633,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6644,7 +6652,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10228,7 +10236,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10426,19 +10435,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11283,26 +11304,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12771,80 +12799,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12888,49 +12932,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14705,26 +14756,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19954,7 +20012,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20081,7 +20140,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21116,8 +21175,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27727,16 +27789,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27744,7 +27808,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27752,73 +27816,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27828,7 +27892,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27838,7 +27902,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27849,7 +27913,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27857,7 +27921,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27865,7 +27929,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27874,21 +27938,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27897,25 +27961,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27923,7 +27987,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27931,7 +27995,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27939,7 +28003,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27947,7 +28011,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27955,7 +28019,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27965,7 +28029,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27975,7 +28039,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27986,31 +28050,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28025,55 +28089,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28297,6 +28361,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28308,7 +28383,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28318,7 +28393,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28330,7 +28405,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28338,17 +28413,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28358,7 +28433,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28367,53 +28442,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28421,7 +28496,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28430,17 +28505,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28453,7 +28528,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28465,7 +28540,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28475,7 +28550,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28486,13 +28561,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28500,19 +28575,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28521,7 +28596,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28534,12 +28609,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28554,7 +28638,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28564,11 +28648,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28582,7 +28693,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28595,34 +28706,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28630,83 +28741,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28714,23 +28825,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31987,14 +32098,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32487,26 +32605,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37115,26 +37240,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42208,27 +42340,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42260,6 +42392,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42296,11 +42436,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42332,7 +42472,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43598,18 +43738,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43617,7 +43745,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43627,13 +43755,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43647,14 +43790,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43663,7 +43806,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43671,7 +43814,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43687,20 +43830,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43708,75 +43851,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43786,7 +43929,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43796,27 +43939,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43824,81 +43967,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43906,109 +44049,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44019,91 +44162,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44112,13 +44255,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44128,7 +44271,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44136,19 +44279,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44162,45 +44305,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44209,7 +44352,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44220,7 +44363,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44236,14 +44379,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44251,49 +44394,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44302,7 +44445,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44310,7 +44453,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44318,7 +44461,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44328,7 +44471,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44337,7 +44480,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44346,7 +44489,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44356,7 +44499,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44364,7 +44507,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44374,7 +44517,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44384,7 +44527,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44392,7 +44535,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44401,7 +44544,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44409,7 +44552,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44421,477 +44564,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44899,92 +45042,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44994,33 +45137,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45033,7 +45176,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45045,7 +45188,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45057,7 +45200,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45070,7 +45213,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45078,28 +45221,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45109,25 +45252,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45140,7 +45283,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45152,7 +45295,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45164,7 +45307,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45177,13 +45320,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45191,11 +45334,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45209,7 +45352,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45218,7 +45361,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45234,7 +45377,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45244,7 +45387,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45254,7 +45397,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45265,7 +45408,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45275,7 +45418,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45283,7 +45426,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45294,7 +45437,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45309,7 +45452,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45318,13 +45461,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45333,7 +45476,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45343,7 +45486,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45355,7 +45498,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45365,24 +45508,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45391,7 +45534,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45399,7 +45542,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45408,7 +45551,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45418,7 +45561,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45426,31 +45569,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45458,7 +45601,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45468,46 +45611,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45515,7 +45665,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45525,7 +45675,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45534,7 +45684,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45543,20 +45693,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45565,7 +45715,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45573,7 +45723,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45582,7 +45732,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45592,20 +45742,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45614,13 +45764,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45630,46 +45780,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45679,7 +45829,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45691,7 +45841,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45699,7 +45849,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45707,7 +45857,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45716,7 +45866,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45730,7 +45880,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45740,7 +45890,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45749,7 +45899,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45759,54 +45909,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45817,61 +45967,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45882,7 +46032,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45891,26 +46041,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45921,20 +46071,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45946,52 +46096,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45999,7 +46149,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46009,10 +46159,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46021,10 +46171,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46033,10 +46183,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46045,10 +46195,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46057,10 +46207,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57429,26 +57579,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/pl.po b/doc/translations/pl.po
index 441c08c926..921ba76bc8 100644
--- a/doc/translations/pl.po
+++ b/doc/translations/pl.po
@@ -15,12 +15,13 @@
# Seppo Day <piszczatowskis@gmail.com>, 2021.
# cerkiewny <mstarzycki@gmail.com>, 2021.
# Dominik Mielcarek <fogbpl@gmail.com>, 2021.
+# CXVMNER <cxvmner@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-07-05 14:35+0000\n"
-"Last-Translator: Dominik Mielcarek <fogbpl@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: CXVMNER <cxvmner@gmail.com>\n"
"Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/pl/>\n"
"Language: pl\n"
@@ -29,45 +30,45 @@ msgstr ""
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.8-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Opis"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Samouczki"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Właściwości"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metody"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Właściwości motywu"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Sygnały"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Wyliczenia"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Stałe"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Opisy właściwości"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Opisy metod"
@@ -126,7 +127,6 @@ msgstr ""
"Wspierane nazwy są takie same jak stałe zdefiniowane w [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -137,12 +137,10 @@ msgstr ""
"Zwraca wartość bezwzględną parametru [code]s[/code] (tzn. wartość "
"dodatnia).\n"
"[codeblock]\n"
-"# a jest równe 1\n"
-"a = abs(-1)\n"
+"a = abs(-1) # a jest równe 1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
-#, fuzzy
msgid ""
"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -154,14 +152,15 @@ msgid ""
"[/codeblock]"
msgstr ""
"Zwraca arcus cosinus z [code]s[/code] w radianach. Użyj aby otrzymać wartość "
-"kÄ…ta o cosinus'ie [code]s[/code].\n"
+"kąta o cosinus'ie [code]s[/code]. Wartość [code]s[/code] musi być w "
+"przedziale od [code]-1.0[/code] do [code]1.0[/code] (włącznie), w przeciwnym "
+"wypadku [method acos] zwróci [constant NAN].\n"
"[codeblock]\n"
"# c to 0.523599 albo 30 stopni jeżeli przekonwertowane z użyciem rad2deg(s)\n"
"c = acos(0.866025)\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:66
-#, fuzzy
msgid ""
"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
"sine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -173,7 +172,9 @@ msgid ""
"[/codeblock]"
msgstr ""
"Zwraca arcus sinus z [code]s[/code] w radianach. Użyj aby otrzymać wartość "
-"kÄ…ta o sinus'ie [code]s[/code].\n"
+"kąta o sinus'ie [code]s[/code]. Wartość [code]s[/code] musi być w przedziale "
+"od [code]-1.0[/code] do [code]1.0[/code] (włącznie), w przeciwnym wypadku "
+"[method asin] zwróci [constant NAN].\n"
"[codeblock]\n"
"# s to 0.523599 albo 30 stopni jesli przekonwertowane z użyciem rad2deg(s)\n"
"s = asin(0.5)\n"
@@ -444,12 +445,11 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:248
-#, fuzzy
msgid ""
"Converts a dictionary (previously created with [method inst2dict]) back to "
"an instance. Useful for deserializing."
msgstr ""
-"Konwertuje poprzednio konwertowaną instancję do słownika, z powrotem na "
+"Konwertuje słownik (stworzony przy pomocy [method inst2dict]) z powrotem na "
"instancjÄ™. Przydatne podczas deserializacji."
#: modules/gdscript/doc_classes/@GDScript.xml:256
@@ -6661,21 +6661,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6683,7 +6687,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6694,7 +6698,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6702,41 +6706,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6744,61 +6748,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6813,7 +6817,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6822,7 +6826,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6831,7 +6835,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6848,29 +6852,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6909,21 +6913,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6931,7 +6939,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6942,7 +6950,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6950,14 +6958,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6965,21 +6973,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6994,7 +7002,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7009,7 +7017,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7018,7 +7026,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7027,7 +7035,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7046,7 +7054,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10631,7 +10639,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10830,19 +10839,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11687,26 +11708,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13182,80 +13210,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13299,49 +13343,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -15117,26 +15168,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20373,7 +20431,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20500,7 +20559,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21538,8 +21597,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28164,16 +28226,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28181,7 +28245,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28189,73 +28253,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28265,7 +28329,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28275,7 +28339,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28286,7 +28350,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28294,7 +28358,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28302,7 +28366,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28311,21 +28375,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28334,25 +28398,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28360,7 +28424,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28368,7 +28432,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28376,7 +28440,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28384,7 +28448,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28392,7 +28456,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28402,7 +28466,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28412,7 +28476,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28423,31 +28487,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28462,55 +28526,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28735,6 +28799,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28746,7 +28821,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28756,7 +28831,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28768,7 +28843,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28776,17 +28851,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28796,7 +28871,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28805,53 +28880,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28859,7 +28934,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28868,17 +28943,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28891,7 +28966,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28903,7 +28978,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28913,7 +28988,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28924,13 +28999,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28938,19 +29013,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28959,7 +29034,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28972,12 +29047,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28992,7 +29076,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -29002,11 +29086,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -29020,7 +29131,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -29033,34 +29144,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -29068,83 +29179,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29152,23 +29263,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32437,14 +32548,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32937,26 +33055,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37579,26 +37704,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42715,27 +42847,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42767,6 +42899,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42803,11 +42943,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42839,7 +42979,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -44106,18 +44246,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -44125,7 +44253,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -44135,13 +44263,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -44155,14 +44298,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44171,7 +44314,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44179,7 +44322,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44195,20 +44338,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44216,75 +44359,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44294,7 +44437,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44304,27 +44447,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44332,81 +44475,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44414,109 +44557,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44527,91 +44670,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44620,13 +44763,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44636,7 +44779,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44644,19 +44787,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44670,45 +44813,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44717,7 +44860,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44728,7 +44871,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44744,14 +44887,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44759,49 +44902,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44810,7 +44953,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44818,7 +44961,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44826,7 +44969,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44836,7 +44979,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44845,7 +44988,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44854,7 +44997,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44864,7 +45007,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44872,7 +45015,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44882,7 +45025,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44892,7 +45035,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44900,7 +45043,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44909,7 +45052,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44917,7 +45060,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44929,477 +45072,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45407,92 +45550,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45502,33 +45645,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45541,7 +45684,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45553,7 +45696,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45565,7 +45708,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45578,7 +45721,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45586,28 +45729,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45617,25 +45760,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45648,7 +45791,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45660,7 +45803,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45672,7 +45815,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45685,13 +45828,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45699,11 +45842,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45717,7 +45860,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45726,7 +45869,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45742,7 +45885,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45752,7 +45895,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45762,7 +45905,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45773,7 +45916,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45783,7 +45926,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45791,7 +45934,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45802,7 +45945,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45817,7 +45960,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45826,13 +45969,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45841,7 +45984,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45851,7 +45994,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45863,7 +46006,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45873,24 +46016,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45899,7 +46042,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45907,7 +46050,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45916,7 +46059,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45926,7 +46069,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45934,31 +46077,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45966,7 +46109,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45976,46 +46119,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -46023,7 +46173,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -46033,7 +46183,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -46042,7 +46192,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -46051,20 +46201,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -46073,7 +46223,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -46081,7 +46231,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -46090,7 +46240,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -46100,20 +46250,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -46122,13 +46272,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -46138,46 +46288,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46187,7 +46337,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46199,7 +46349,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46207,7 +46357,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46215,7 +46365,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46224,7 +46374,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46238,7 +46388,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46248,7 +46398,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46257,7 +46407,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46267,54 +46417,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46325,61 +46475,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46390,7 +46540,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46399,26 +46549,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46429,20 +46579,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46454,52 +46604,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46507,7 +46657,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46517,10 +46667,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46529,10 +46679,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46541,10 +46691,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46553,10 +46703,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46565,10 +46715,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57962,26 +58112,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/pt_BR.po b/doc/translations/pt_BR.po
index 950979c803..e74b0335e6 100644
--- a/doc/translations/pt_BR.po
+++ b/doc/translations/pt_BR.po
@@ -24,12 +24,14 @@
# Douglas Leão <djlsplays@gmail.com>, 2021.
# Cauê Henrique Sousa Ferrareto <caue313@gmail.com>, 2021.
# William Weber Berrutti <wwberrutti@protonmail.ch>, 2021.
+# jak3z <jose_renato06@outlook.com>, 2021.
+# Henrique Darko <henridark00@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-10-08 03:04+0000\n"
-"Last-Translator: Douglas Leão <djlsplays@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: jak3z <jose_renato06@outlook.com>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"godot-engine/godot-class-reference/pt_BR/>\n"
"Language: pt_BR\n"
@@ -39,43 +41,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Descrição"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Tutoriais"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Propriedades"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Métodos"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Propriedades do Tema"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Sinais"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumerações"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constantes"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Descrições da Propriedade"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descrições do Método"
@@ -312,9 +314,10 @@ msgstr ""
"Arredonda [code]s[/code] para cima (em direção ao infinito positivo), "
"retornando o menor número inteiro que não seja menor que [code]s[/code].\n"
"[codeblock]\n"
-"i = ceil(1.45) # i é 2\n"
-"i = ceil(1.001) # i é 2\n"
-"[/codeblock]"
+"a = ceil(1.45) # a é 2.0\n"
+"a = ceil(1.001) # a é 2.0\n"
+"[/codeblock]\n"
+"Veja também [method floor], [method round], [method stepify] e [int]."
#: modules/gdscript/doc_classes/@GDScript.xml:147
msgid ""
@@ -347,16 +350,12 @@ msgid ""
"a = clamp(15, 1, 20) # a is 15\n"
"[/codeblock]"
msgstr ""
-"Fixa [code] value[/code] e retorna um valor não inferior a [code] min [/"
-"code] e não superior a [code] max [/code].\n"
+"Fixa [code]value[/code] e retorna um valor não inferior a [code]min[/code] e "
+"não superior a [code]max[/code].\n"
"[codeblock]\n"
-"velocidade = 1000\n"
-"# a é 20\n"
-"a = clamp(velocidade, 1, 20)\n"
-"\n"
-"velocidade = -10\n"
-"# a é 1\n"
-"a = clamp(velocidade, 1, 20)\n"
+"a = clamp(1000, 1, 20) # a é 20\n"
+"a = clamp(-10, 1, 20) # a é 1\n"
+"a = clamp(15, 1, 20) # a é 15\n"
"[/ codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:175
@@ -394,11 +393,11 @@ msgid ""
msgstr ""
"Retorna o seno do ângulo [code]s[/code] em radianos.\n"
"[codeblock]\n"
-"sin(0.523599) # Retorna 0.5\n"
+"a = cos(TAU) # a é 1.0\n"
+"a = cos(PI) # a é -1.0\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:201
-#, fuzzy
msgid ""
"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
"[codeblock]\n"
@@ -407,7 +406,7 @@ msgid ""
msgstr ""
"Retorna o cosseno hiperbólico de [code]s[/code] em radianos.\n"
"[codeblock]\n"
-"# Prints 1.543081\n"
+"# Imprime 1.543081\n"
"print(cosh(1))\n"
"[/codeblock]"
@@ -417,10 +416,9 @@ msgstr "Converte de decibéis para energia linear (áudio)."
#: modules/gdscript/doc_classes/@GDScript.xml:218
msgid "Deprecated alias for [method step_decimals]."
-msgstr ""
+msgstr "Apelido descontinuado para [method step_decimals]."
#: modules/gdscript/doc_classes/@GDScript.xml:227
-#, fuzzy
msgid ""
"[b]Note:[/b] [code]dectime[/code] has been deprecated and will be removed in "
"Godot 4.0, please use [method move_toward] instead.\n"
@@ -430,15 +428,15 @@ msgid ""
"a = dectime(60, 10, 0.1)) # a is 59.0\n"
"[/codeblock]"
msgstr ""
+"[b]Nota:[/b] [code]dectime[/code] foi depreciado e será removido no Godot "
+"4.0, por favor use [method move_toward] em vez disso.\n"
"Retorna o resultado de [code]value[/code] decrescido por [code]step[/code] * "
"[code]amount[/code].\n"
"[codeblock]\n"
-"# a = 59\n"
-"a = dectime(60, 10, 0.1))\n"
+"a = dectime(60, 10, 0.1)) # a é 59.0\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:238
-#, fuzzy
msgid ""
"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
@@ -447,8 +445,7 @@ msgid ""
msgstr ""
"Converte um ângulo expresso em graus para radianos.\n"
"[codeblock]\n"
-"# r é 3.141593\n"
-"r = deg2rad(180)\n"
+"r = deg2rad(180) # r é 3.141593\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:248
@@ -461,6 +458,7 @@ msgstr ""
"instância. Útil para desserialização."
#: modules/gdscript/doc_classes/@GDScript.xml:256
+#, fuzzy
msgid ""
"Returns an \"eased\" value of [code]x[/code] based on an easing function "
"defined with [code]curve[/code]. This easing function is based on an "
@@ -480,6 +478,24 @@ msgid ""
"See also [method smoothstep]. If you need to perform more advanced "
"transitions, use [Tween] or [AnimationPlayer]."
msgstr ""
+"Retorna um valor \"suavizado\" de [code]x[/code] baseado em uma função de "
+"atenuação definida com [code]curve[/code]. Essa função de atenuação é "
+"baseada em um exponente. A [code]curve[/code] pode ser qualquer número de "
+"ponto flutuante, com específicos valores lavando para os seguintes "
+"comportamentos:\n"
+"[codeblock]\n"
+"- Menor que -1.0 (exclusivo): Ease in-out\n"
+"- 1.0: Linear\n"
+"- Entre -1.0 and 0.0 (exclusivo): Ease out-in\n"
+"- 0.0: Constant\n"
+"- Entre 0.0 to 1.0 (exclusivo): Ease in\n"
+"- 1.0: Linear\n"
+"- Maior que 1.0 (exclusivo): Ease out\n"
+"[/codeblock]\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
+"Veja também [method smoothstep]. Se você precisa fazer transições mais "
+"avançadas, use [Tween] ou [AnimationPlayer]."
#: modules/gdscript/doc_classes/@GDScript.xml:274
msgid ""
@@ -502,7 +518,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:286
-#, fuzzy
msgid ""
"Rounds [code]s[/code] downward (towards negative infinity), returning the "
"largest whole number that is not more than [code]s[/code].\n"
@@ -516,19 +531,18 @@ msgid ""
"[code]s[/code] is a non-negative number, you can use [code]int(s)[/code] "
"directly."
msgstr ""
-"Arredonda [code]s[/code] para baixo, retornando o maior número inteiro que "
-"não seja superior a [code]s[/code].\n"
+"Arredonda [code]s[/code] para baixo (em direção ao infinito negativo), "
+"retornando o maior número inteiro que não seja superior a [code]s[/code].\n"
"[codeblock]\n"
-"# a é 2.0\n"
-"a = floor(2,99)\n"
-"# a é -3,0\n"
-"a = floor(-2,99)\n"
+"a = floor(2.45) # a é 2.0\n"
+"a = floor(2.99) # a é 2.0\n"
+"a = floor(-2.99) # a é -3.0\n"
"[/codeblock]\n"
-"[b]Nota:[/b] Este método retorna um float. Se você precisar de um inteiro, "
-"você pode usar [code]int(s)[/code] diretamente."
+"[b]Nota:[/b] Este método retorna uma float. Se você precisar de um inteiro e "
+"[code]s[/code] não é um número negativo, você pode usar [code]int(s)[/code] "
+"diretamente."
#: modules/gdscript/doc_classes/@GDScript.xml:301
-#, fuzzy
msgid ""
"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
"of [code]a[/code].\n"
@@ -540,13 +554,11 @@ msgstr ""
"Retorna o resto em ponto flutuante de [code]a/b[/code], mantendo o sinal de "
"[code]a[/code].\n"
"[codeblock]\n"
-"# Restante é 1,5\n"
-"var resto = fmod (7, 5,5)\n"
+"r = fmod(7, 5.5) # r é 1.5\n"
"[/codeblock]\n"
"Para a operação de resto inteiro, use o operador %."
#: modules/gdscript/doc_classes/@GDScript.xml:313
-#, fuzzy
msgid ""
"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
"positive and negative.\n"
@@ -569,25 +581,20 @@ msgstr ""
"Retorna o módulo de ponto flutuante de [code] a / b [/code] que envolve "
"igualmente em positivo e negativo.\n"
"[codeblock]\n"
-"var i = -6\n"
-"while eu <5:\n"
-" prints(i, fposmod (i, 3))\n"
-" i + = 1\n"
-"[/ codeblock]\n"
-"Gera:\n"
+"for i in 7:\n"
+" var x = 0.5 * i - 1.5\n"
+" print(\"%4.1f %4.1f %4.1f\" % [x, fmod(x, 1.5), fposmod(x, 1.5)])\n"
+"[/codeblock]\n"
+"Produz:\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]"
+"-1.5 -0.0 0.0\n"
+"-1.0 -1.0 0.5\n"
+"-0.5 -0.5 1.0\n"
+" 0.0 0.0 0.0\n"
+" 0.5 0.5 0.5\n"
+" 1.0 1.0 1.0\n"
+" 1.5 0.0 0.0\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:336
msgid ""
@@ -809,7 +816,6 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:482
-#, fuzzy
msgid ""
"Linearly interpolates between two values by a normalized value. This is the "
"opposite of [method inverse_lerp].\n"
@@ -7010,21 +7016,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7032,7 +7042,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7043,7 +7053,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7051,41 +7061,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7093,61 +7103,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7162,7 +7172,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7171,7 +7181,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7180,7 +7190,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -7197,29 +7207,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -7256,21 +7266,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -7278,7 +7292,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -7289,7 +7303,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7297,14 +7311,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7312,21 +7326,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7341,7 +7355,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7356,7 +7370,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7365,7 +7379,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7374,7 +7388,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7393,7 +7407,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10975,7 +10989,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -11174,19 +11189,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -12029,26 +12056,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13542,80 +13576,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13659,49 +13709,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14482,10 +14539,10 @@ msgid ""
"var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)\n"
"[/codeblock]"
msgstr ""
-"Constrói uma cor a partir de uma cor existente, mas com um valor alfa "
-"customizado.\n"
+"Constrói uma cor a partir de um inteiro 32-bit no formato RGBA (cada byte "
+"representa um canal de cor).\n"
"[codeblock]\n"
-"var red = Color(Color.red, 0.5) # vermelho 50% transparente.\n"
+"var c = Color(274) # Semelhante a Color(0.0, 0.0, 0.004, 0.07)\n"
"[/codeblock]"
#: doc/classes/Color.xml:49
@@ -15514,26 +15571,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20768,7 +20832,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20895,7 +20960,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21931,8 +21996,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -26188,9 +26256,8 @@ msgid ""
msgstr ""
#: doc/classes/GraphEdit.xml:211
-#, fuzzy
msgid "Emitted when the user presses [code]Ctrl + C[/code]."
-msgstr "Emitido quando o usuário clica no botão de OK."
+msgstr "Emitido quando o usuário pressiona [code]Ctrl + C[/code]."
#: doc/classes/GraphEdit.xml:216
msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
@@ -26213,9 +26280,8 @@ msgid "Emitted when a GraphNode is selected."
msgstr ""
#: doc/classes/GraphEdit.xml:246
-#, fuzzy
msgid "Emitted when the user presses [code]Ctrl + V[/code]."
-msgstr "Emitido quando o usuário clica no botão de OK."
+msgstr "Emitido quando o usuário pressiona [code]Ctrl + V[/code]."
#: doc/classes/GraphEdit.xml:252
msgid ""
@@ -26371,14 +26437,18 @@ msgstr "Retorna o tipo do nó em at [code]idx[/code]."
msgid ""
"Returns [code]true[/code] if left (input) side of the slot [code]idx[/code] "
"is enabled."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] se o lado esquerdo (entrada) do espaço [code]idx[/"
+"code] estiver ativado."
#: doc/classes/GraphNode.xml:120
#, fuzzy
msgid ""
"Returns [code]true[/code] if right (output) side of the slot [code]idx[/"
"code] is enabled."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] se o lado direito (saída) do espaço [code]idx[/"
+"code] estiver ativado."
#: doc/classes/GraphNode.xml:135
msgid ""
@@ -26428,14 +26498,18 @@ msgstr ""
msgid ""
"Sets the left (input) type of the slot [code]idx[/code] to [code]type_left[/"
"code]."
-msgstr "Retorna o tipo do nó em at [code]idx[/code]."
+msgstr ""
+"Define o tipo esquerdo (entrada) do espaço [code]idx[/code] para "
+"[code]type_left[/code]"
#: doc/classes/GraphNode.xml:189
#, fuzzy
msgid ""
"Sets the right (output) type of the slot [code]idx[/code] to "
"[code]type_right[/code]."
-msgstr "Retorna o tipo do nó em at [code]idx[/code]."
+msgstr ""
+"Define o tipo direito (entrada) do espaço [code]idx[/code] para "
+"[code]type_right[/code]"
#: doc/classes/GraphNode.xml:195
msgid "If [code]true[/code], the GraphNode is a comment node."
@@ -28565,16 +28639,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28582,7 +28658,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28590,73 +28666,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28666,7 +28742,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28676,7 +28752,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28687,7 +28763,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28695,7 +28771,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28703,7 +28779,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28712,21 +28788,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28735,25 +28811,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28761,7 +28837,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28769,7 +28845,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28777,7 +28853,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28785,7 +28861,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28793,7 +28869,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28803,7 +28879,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28813,7 +28889,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28824,31 +28900,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28863,55 +28939,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -29137,6 +29213,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -29148,7 +29235,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -29158,7 +29245,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -29170,7 +29257,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -29178,17 +29265,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -29198,7 +29285,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -29207,53 +29294,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -29261,7 +29348,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -29270,17 +29357,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -29293,7 +29380,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -29305,7 +29392,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -29315,7 +29402,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -29326,14 +29413,14 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -29341,20 +29428,20 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -29363,7 +29450,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -29376,12 +29463,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -29396,7 +29492,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -29406,11 +29502,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -29424,7 +29547,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -29437,34 +29560,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -29472,83 +29595,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29556,23 +29679,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31877,7 +32000,9 @@ msgstr ""
msgid ""
"Sets the [Texture] of the piece with index [code]idx[/code] to "
"[code]texture[/code]."
-msgstr "Retorna o tipo do nó em at [code]idx[/code]."
+msgstr ""
+"Define a [Texture] da peça com índice [code]idx[/code] para [code]texture[/"
+"code]."
#: doc/classes/LargeTexture.xml:67
msgid "Sets the size of this [LargeTexture]."
@@ -32840,14 +32965,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -33341,26 +33473,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37979,26 +38118,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -38664,11 +38810,12 @@ msgid ""
msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
#: doc/classes/OS.xml:607
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the platform has a virtual keyboard, "
"[code]false[/code] otherwise."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] se a plataforma possuir um teclado virtual, "
+"[code]false[/code] caso contrário."
#: doc/classes/OS.xml:613
msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
@@ -43116,27 +43263,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -43168,6 +43315,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -43204,11 +43359,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -43240,7 +43395,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -44508,18 +44663,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -44527,7 +44670,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -44537,13 +44680,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -44557,14 +44715,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44573,7 +44731,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44581,7 +44739,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44597,20 +44755,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44618,75 +44776,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44696,7 +44854,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44706,27 +44864,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44734,81 +44892,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44816,109 +44974,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44929,91 +45087,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -45022,13 +45180,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -45038,7 +45196,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -45046,19 +45204,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -45072,45 +45230,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -45119,7 +45277,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -45130,7 +45288,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -45146,14 +45304,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -45161,49 +45319,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -45212,7 +45370,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -45220,7 +45378,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45228,7 +45386,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -45238,7 +45396,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -45247,7 +45405,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -45256,7 +45414,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -45266,7 +45424,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45274,7 +45432,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -45284,7 +45442,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -45294,7 +45452,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45302,7 +45460,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -45311,7 +45469,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45319,7 +45477,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -45331,477 +45489,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45809,92 +45967,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45904,33 +46062,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45943,7 +46101,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45955,7 +46113,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45967,7 +46125,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45980,7 +46138,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45988,28 +46146,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -46019,25 +46177,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -46050,7 +46208,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -46062,7 +46220,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -46074,7 +46232,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -46087,13 +46245,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -46101,11 +46259,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -46119,7 +46277,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -46128,7 +46286,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -46144,7 +46302,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -46154,7 +46312,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -46164,7 +46322,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -46175,7 +46333,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -46185,7 +46343,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -46193,7 +46351,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -46204,7 +46362,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -46219,7 +46377,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -46228,13 +46386,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -46243,7 +46401,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -46253,7 +46411,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -46265,7 +46423,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -46275,24 +46433,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -46301,7 +46459,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -46309,7 +46467,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -46318,7 +46476,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -46328,7 +46486,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -46336,31 +46494,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -46368,7 +46526,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -46378,46 +46536,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -46425,7 +46590,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -46435,7 +46600,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -46444,7 +46609,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -46453,20 +46618,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -46475,7 +46640,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -46483,7 +46648,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -46492,7 +46657,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -46502,20 +46667,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -46524,13 +46689,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -46540,46 +46705,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46589,7 +46754,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46601,7 +46766,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46609,7 +46774,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46617,7 +46782,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46626,7 +46791,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46640,7 +46805,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46650,7 +46815,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46659,7 +46824,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46669,54 +46834,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46727,61 +46892,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46792,7 +46957,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46801,26 +46966,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46831,20 +46996,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46856,52 +47021,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46909,7 +47074,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46919,10 +47084,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46931,10 +47096,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46943,10 +47108,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46955,10 +47120,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46967,10 +47132,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -55631,10 +55796,11 @@ msgid ""
msgstr ""
#: doc/classes/TabContainer.xml:56
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is hidden."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] se a aba no índice [code]tab_idx[/code] estiver "
+"oculta."
#: doc/classes/TabContainer.xml:63 doc/classes/Tabs.xml:62
msgid ""
@@ -56206,14 +56372,18 @@ msgstr ""
#, fuzzy
msgid ""
"Returns [code]true[/code] when the specified [code]line[/code] is bookmarked."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] quando a [code]line[/code] especificada está "
+"marcada."
#: doc/classes/TextEdit.xml:240
#, fuzzy
msgid ""
"Returns [code]true[/code] when the specified [code]line[/code] has a "
"breakpoint."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] quando a [code]line[/code] especificada tem um "
+"ponto de parada."
#: doc/classes/TextEdit.xml:247
#, fuzzy
@@ -58384,26 +58554,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
@@ -60938,11 +61115,12 @@ msgid ""
msgstr ""
#: doc/classes/Vector2.xml:149 doc/classes/Vector3.xml:125
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the vector is normalized, [code]false[/code] "
"otherwise."
-msgstr "Retorna [code]true[/code] se o script pode ser instanciado."
+msgstr ""
+"Retorna [code]true[/code] se o vetor for normalizado, [code]false[/code] "
+"caso contrário."
#: doc/classes/Vector2.xml:155 doc/classes/Vector3.xml:131
msgid "Returns the length (magnitude) of this vector."
diff --git a/doc/translations/ro.po b/doc/translations/ro.po
index e07d09f6e0..94a0476abb 100644
--- a/doc/translations/ro.po
+++ b/doc/translations/ro.po
@@ -22,43 +22,43 @@ msgstr ""
"20)) ? 1 : 2;\n"
"X-Generator: Weblate 4.3-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Descriere"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Tutoriale"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Proprietăți"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metode"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Proprietățile Temei"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Semnale"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Enumerări"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Constante"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Descrieri Proprietate"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Descrierile Metodei"
@@ -6211,21 +6211,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6233,7 +6237,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6244,7 +6248,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6252,41 +6256,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6294,61 +6298,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6363,7 +6367,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6372,7 +6376,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6381,7 +6385,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6398,29 +6402,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6459,21 +6463,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6481,7 +6489,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6492,7 +6500,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6500,14 +6508,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6515,21 +6523,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6544,7 +6552,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6559,7 +6567,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6568,7 +6576,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6577,7 +6585,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6596,7 +6604,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10180,7 +10188,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10378,19 +10387,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11235,26 +11256,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12723,80 +12751,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12840,49 +12884,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14657,26 +14708,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19906,7 +19964,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20033,7 +20092,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21068,8 +21127,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27679,16 +27741,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27696,7 +27760,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27704,73 +27768,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27780,7 +27844,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27790,7 +27854,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27801,7 +27865,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27809,7 +27873,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27817,7 +27881,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27826,21 +27890,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27849,25 +27913,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27875,7 +27939,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27883,7 +27947,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27891,7 +27955,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27899,7 +27963,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27907,7 +27971,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27917,7 +27981,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27927,7 +27991,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27938,31 +28002,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27977,55 +28041,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28249,6 +28313,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28260,7 +28335,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28270,7 +28345,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28282,7 +28357,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28290,17 +28365,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28310,7 +28385,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28319,53 +28394,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28373,7 +28448,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28382,17 +28457,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28405,7 +28480,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28417,7 +28492,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28427,7 +28502,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28438,13 +28513,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28452,19 +28527,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28473,7 +28548,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28486,12 +28561,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28506,7 +28590,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28516,11 +28600,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28534,7 +28645,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28547,34 +28658,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28582,83 +28693,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28666,23 +28777,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31939,14 +32050,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32439,26 +32557,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37067,26 +37192,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42160,27 +42292,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42212,6 +42344,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42248,11 +42388,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42284,7 +42424,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43550,18 +43690,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43569,7 +43697,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43579,13 +43707,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43599,14 +43742,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43615,7 +43758,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43623,7 +43766,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43639,20 +43782,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43660,75 +43803,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43738,7 +43881,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43748,27 +43891,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43776,81 +43919,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43858,109 +44001,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43971,91 +44114,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44064,13 +44207,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44080,7 +44223,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44088,19 +44231,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44114,45 +44257,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44161,7 +44304,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44172,7 +44315,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44188,14 +44331,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44203,49 +44346,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44254,7 +44397,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44262,7 +44405,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44270,7 +44413,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44280,7 +44423,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44289,7 +44432,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44298,7 +44441,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44308,7 +44451,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44316,7 +44459,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44326,7 +44469,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44336,7 +44479,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44344,7 +44487,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44353,7 +44496,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44361,7 +44504,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44373,477 +44516,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44851,92 +44994,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44946,33 +45089,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44985,7 +45128,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44997,7 +45140,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45009,7 +45152,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45022,7 +45165,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45030,28 +45173,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45061,25 +45204,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45092,7 +45235,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45104,7 +45247,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45116,7 +45259,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45129,13 +45272,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45143,11 +45286,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45161,7 +45304,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45170,7 +45313,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45186,7 +45329,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45196,7 +45339,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45206,7 +45349,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45217,7 +45360,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45227,7 +45370,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45235,7 +45378,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45246,7 +45389,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45261,7 +45404,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45270,13 +45413,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45285,7 +45428,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45295,7 +45438,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45307,7 +45450,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45317,24 +45460,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45343,7 +45486,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45351,7 +45494,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45360,7 +45503,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45370,7 +45513,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45378,31 +45521,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45410,7 +45553,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45420,46 +45563,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45467,7 +45617,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45477,7 +45627,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45486,7 +45636,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45495,20 +45645,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45517,7 +45667,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45525,7 +45675,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45534,7 +45684,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45544,20 +45694,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45566,13 +45716,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45582,46 +45732,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45631,7 +45781,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45643,7 +45793,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45651,7 +45801,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45659,7 +45809,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45668,7 +45818,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45682,7 +45832,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45692,7 +45842,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45701,7 +45851,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45711,54 +45861,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45769,61 +45919,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45834,7 +45984,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45843,26 +45993,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45873,20 +46023,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45898,52 +46048,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45951,7 +46101,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45961,10 +46111,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45973,10 +46123,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45985,10 +46135,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45997,10 +46147,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46009,10 +46159,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57380,26 +57530,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/ru.po b/doc/translations/ru.po
index 97c4d45907..4dd2aa3653 100644
--- a/doc/translations/ru.po
+++ b/doc/translations/ru.po
@@ -24,12 +24,15 @@
# Ð§Ñ‚Ð°Ð±Ñ <chtabs2k19@gmail.com>, 2021.
# Nikita Blizniuk <BliznyukNM@gmail.com>, 2021.
# Сергей Волков <zerosar4@gmail.com>, 2021.
+# Alexander Sinitsyn <almoig747@gmail.com>, 2021.
+# Ð¢Ð¾Ð»Ñ Ð‘Ð¾Ð³Ð¾Ð¼Ð¾Ð»Ð¾Ð² <tolya.bogomolov2004@gmail.com>, 2021.
+# Rustam Alieskerov <rustam.aleskerov7@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-10-15 09:31+0000\n"
-"Last-Translator: Сергей Волков <zerosar4@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: Rustam Alieskerov <rustam.aleskerov7@gmail.com>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ru/>\n"
"Language: ru\n"
@@ -40,43 +43,43 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "ОпиÑание"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Уроки"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "СвойÑтва"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Методы"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "СвойÑтва темы"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Сигналы"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "ПеречиÑлениÑ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "КонÑтанты"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "ОпиÑÐ°Ð½Ð¸Ñ ÑвойÑтв"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "ОпиÑÐ°Ð½Ð¸Ñ Ð¼ÐµÑ‚Ð¾Ð´Ð¾Ð²"
@@ -110,7 +113,7 @@ msgstr ""
"Возвращает цвет, поÑтроенный из целочиÑленных значений краÑного, зелёного, "
"Ñинего и альфа каналов. Каждый канал должен хранить 8 бит информации в "
"диапазоне от 0 до 255.\n"
-"[code]r8[/code] — краÑный[/code] канал\n"
+"[code]r8[/code] — краÑный канал\n"
"[code]g8[/code] — зелёный канал\n"
"[code]b8[/code] — Ñиний канал\n"
"[code]a8[/code] — альфа канал\n"
@@ -127,7 +130,7 @@ msgid ""
"[/codeblock]\n"
"Supported color names are the same as the constants defined in [Color]."
msgstr ""
-"Возвращает цвет в ÑоответÑтвии Ñо Ñтандартным [code]name[/code] Ñ "
+"Возвращает цвет, ÑоответÑтвующий Ñтандартизированному [code]name[/code] Ñ "
"[code]alpha[/code] в диапазоне от 0 до 1.\n"
"[codeblock]\n"
"red = ColorN(\"red\", 1)\n"
@@ -135,7 +138,6 @@ msgstr ""
"Поддерживаемые имена цветов Ñовпадают Ñ ÐºÐ¾Ð½Ñтантами, определёнными в [Color]."
#: modules/gdscript/doc_classes/@GDScript.xml:45
-#, fuzzy
msgid ""
"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
"value).\n"
@@ -146,11 +148,10 @@ msgstr ""
"Возвращает абÑолютное значение параметра [code]s[/code] (Ñ‚.е. положительное "
"значение).\n"
"[codeblock]\n"
-"a = abs(-1) # a is 1\n"
+"a = abs(-1) # a равно 1\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:55
-#, fuzzy
msgid ""
"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -162,16 +163,15 @@ msgid ""
"[/codeblock]"
msgstr ""
"Возвращает арккоÑÐ¸Ð½ÑƒÑ Ñ‡Ð¸Ñла [code]s[/code] в радианах. ИÑпользуетÑÑ Ð´Ð»Ñ "
-"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÑƒÐ³Ð»Ð°, коÑÐ¸Ð½ÑƒÑ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ равен [code]s[/code]. \n"
-"ЧиÑло [code]s[/code] должно быть между [code]-1.0[/code] и [code]1.0[/code] "
-"(включительно), в противном Ñлучае [method acos] вернет [constant NAN].\n"
+"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÑƒÐ³Ð»Ð°, коÑÐ¸Ð½ÑƒÑ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ равен [code]s[/code]. [code]s[/code] должно "
+"быть между [code]-1.0[/code] и [code]1.0[/code] (включительно), в противном "
+"Ñлучае [method acos] вернет [constant NAN].\n"
"[codeblock]\n"
-"# c is 0.523599 or 30 degrees if converted with rad2deg(s)\n"
+"# c равно 0.523599 или 30 градуÑов, еÑли превращено Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ rad2deg\n"
"c = acos(0.866025)\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:66
-#, fuzzy
msgid ""
"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
"sine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
@@ -183,7 +183,9 @@ msgid ""
"[/codeblock]"
msgstr ""
"Возвращает аркÑÐ¸Ð½ÑƒÑ Ñ‡Ð¸Ñла [code]s[/code] в радианах. ИÑпользуетÑÑ Ð´Ð»Ñ "
-"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÑƒÐ³Ð»Ð°, ÑÐ¸Ð½ÑƒÑ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ равен [code]s[/code].\n"
+"Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ ÑƒÐ³Ð»Ð°, ÑÐ¸Ð½ÑƒÑ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ равен [code]s[/code]. ЧиÑло [code]s[/code] "
+"должно быть в промежутке между [code]-1.0[/code] и [code]1.0[/code] "
+"(включительно), иначе [method asin] вернет [constant NAN].\n"
"[codeblock]\n"
"# s равно 0.523599, или 30 градуÑов, еÑли конвертировать Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ "
"rad2deg(s)\n"
@@ -331,12 +333,12 @@ msgid ""
"[/codeblock]\n"
"This is the inverse of [method ord]."
msgstr ""
-"Возвращает Ñимвол как тип Строка указанного кода в кодировке Юникод "
+"Возвращает Ñимвол в виде Ñтроки из указанной кодовой позиции Unicode "
"(ÑовмеÑтимого Ñ ASCII).\n"
"[codeblock]\n"
-"a = char(65) # a равно \"A\"\n"
+"a = char(65) # a равно \"A\"\n"
"a = char(65 + 32) # a равно \"a\"\n"
-"a = char(8364) # a равно \"€\"\n"
+"a = char(8364) # a равно \"€\"\n"
"[/codeblock]\n"
"Это Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð° [method ord]."
@@ -376,7 +378,7 @@ msgid ""
"print(a.length())\n"
"[/codeblock]"
msgstr ""
-"Преобразует значение одного типа в другой наилучшим возможным ÑпоÑобом. "
+"Преобразует значение из одного типа в другой наилучшим возможным ÑпоÑобом. "
"Параметр [code]type[/code] иÑпользует Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð· [enum Variant.Type].\n"
"[codeblock]\n"
"a = Vector2(1, 0)\n"
@@ -422,7 +424,7 @@ msgstr "Преобразует децибелы в линейную Ñнерги
#: modules/gdscript/doc_classes/@GDScript.xml:218
msgid "Deprecated alias for [method step_decimals]."
-msgstr ""
+msgstr "УÑтаревший пÑевдоним Ð´Ð»Ñ [method step_decimals]."
#: modules/gdscript/doc_classes/@GDScript.xml:227
#, fuzzy
@@ -499,8 +501,8 @@ msgid ""
msgstr ""
"ЭкÑпонента. Возвращает математичеÑкую конÑтанту [b]e[/b], возведённую в "
"Ñтепень [code]s[/code].\n"
-"КонÑтанта [b]e[/b] имеет примерное значение 2.71828, и может быть получена "
-"через [code]exp(1)[/code].\n"
+"КонÑтанта [b]e[/b] примерно равна 2.71828 и может быть получена через "
+"[code]exp(1)[/code].\n"
"Ð”Ð»Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… функций Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼Ð¸ оÑнованиÑми Ñледует иÑпользовать метод "
"[method pow].\n"
"[codeblock]\n"
@@ -610,16 +612,16 @@ msgid ""
"print(a.call_func()) # Prints bar\n"
"[/codeblock]"
msgstr ""
-"Возвращает ÑÑылку на заданную функцию [code]funcname[/code] в объекте "
+"Возвращает ÑÑылку на указанную функцию [code]funcname[/code] в объекте "
"[code]instance[/code]. Так как функции не ÑвлÑÑŽÑ‚ÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°Ð¼Ð¸ первого клаÑÑа "
"в GDScript, иÑпользуйте [code]funcref[/code] Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ [FuncRef] в "
-"переменной и вызывайте её позже.\n"
+"переменной чтобы вызвать её позже.\n"
"[codeblock]\n"
"func foo():\n"
" return(\"bar\")\n"
"\n"
"a = funcref(self, \"foo\")\n"
-"print(a.call_func()) # Печатает bar\n"
+"print(a.call_func()) # Выводит bar\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:349
@@ -641,7 +643,7 @@ msgid ""
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]"
msgstr ""
-"Возвращает маÑÑив Ñловарей, предÑтавлÑющих текущий Ñтек вызовов.\n"
+"Возвращает маÑÑив Ñловарей, предÑтавлÑющий текущий Ñтек вызовов.\n"
"[codeblock]\n"
"func _ready():\n"
" foo()\n"
@@ -652,7 +654,7 @@ msgstr ""
"func bar():\n"
" print(get_stack())\n"
"[/codeblock]\n"
-"напечатает\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"
@@ -667,7 +669,7 @@ msgid ""
msgstr ""
"Возвращает целочиÑленный хеш переданной переменной.\n"
"[codeblock]\n"
-"print(hash(\"a\")) # Печатает 177670\n"
+"print(hash(\"a\")) # Выводит 177670\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:380
@@ -696,7 +698,7 @@ msgstr ""
" print(d.keys())\n"
" print(d.values())\n"
"[/codeblock]\n"
-"Печатает:\n"
+"Выводит:\n"
"[codeblock]\n"
"[@subpath, @path, foo]\n"
"[, res://test.gd, bar]\n"
@@ -714,14 +716,14 @@ msgid ""
" print(inst.foo) # Prints bar\n"
"[/codeblock]"
msgstr ""
-"Возвращает Объект, который ÑоответÑтвует [code]instance_id[/code]. Ð’Ñе "
-"объекты имеют уникальный идентификатор ÑкземплÑра.\n"
+"Возвращает объект, ÑоответÑтвующий [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"
+" print(inst.foo) # Выведет bar\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:415
@@ -742,8 +744,8 @@ msgstr ""
"[codeblock]\n"
"var middle = lerp(20, 30, 0.75)\n"
"# `middle` ÑÐµÐ¹Ñ‡Ð°Ñ Ñ€Ð°Ð²Ð½Ð¾ 27.5.\n"
-"# Теперь мы притворÑемÑÑ, что забыли иÑходное Ñоотношение и хотим вернуть "
-"его обратно.\n"
+"# ПредÑтавим, что мы забыли иÑходное Ñоотношение и хотим получить его "
+"обратно.\n"
"var ratio = inverse_lerp(20, 30, 27.5)\n"
"# `ratio`ÑÐµÐ¹Ñ‡Ð°Ñ Ñ€Ð°Ð²Ð½Ð¾ 0.75.\n"
"[/codeblock]"
@@ -777,8 +779,8 @@ msgid ""
"Returns whether [code]instance[/code] is a valid object (e.g. has not been "
"deleted from memory)."
msgstr ""
-"Возвращает, ÑвлÑетÑÑ Ð»Ð¸ [code]instance[/code] дейÑтвительным объектом "
-"(например, еÑли он не был удалён из памÑти)."
+"Возвращает, ÑвлÑетÑÑ Ð»Ð¸ [code]instance[/code] дейÑтвительным объектом (Ñ‚.е. "
+"он не был удалён из памÑти)."
#: modules/gdscript/doc_classes/@GDScript.xml:453
msgid ""
@@ -793,9 +795,9 @@ msgid ""
"This method is faster than using [method is_equal_approx] with one value as "
"zero."
msgstr ""
-"Возвращает [code]true[/code], еÑли [code]s[/code] приблизительно равен нулю, "
-"либо ÑвлÑетÑÑ Ð¸Ð¼.\n"
-"Этот метод работает быÑтрее, чем [method is_equal_approx] Ñ Ð½ÑƒÐ»ÐµÐ¼ в качеÑтве "
+"Возвращает [code]true[/code], еÑли [code]s[/code] равен или приблизительно "
+"равен нулю.\n"
+"Этот метод работает быÑтрее, чем [method is_equal_approx] Ñ Ð½ÑƒÐ»Ñ‘Ð¼ в качеÑтве "
"одного из значений."
#: modules/gdscript/doc_classes/@GDScript.xml:468
@@ -864,7 +866,7 @@ msgstr ""
"Ð›Ð¸Ð½ÐµÐ¹Ð½Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»ÑÑ†Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ Ð´Ð²ÑƒÐ¼Ñ ÑƒÐ³Ð»Ð°Ð¼Ð¸ (в радианах) по нормализованному "
"значению.\n"
"Ðналогично [method lerp], но корректно интерполируетÑÑ, когда углы "
-"охватывают [constant @GDScript.TAU].\n"
+"оборачивают [constant @GDScript.TAU].\n"
"[codeblock]\n"
"extends Sprite\n"
"var elapsed = 0.0\n"
@@ -890,13 +892,13 @@ msgid ""
"linear2db($Slider.value))\n"
"[/codeblock]"
msgstr ""
-"Преобразует из линейной Ñнергии в децибелы (аудио). Это может быть "
-"иÑпользовано Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ ползунков громкоÑти, которые ведут ÑÐµÐ±Ñ "
-"предÑказуемо (поÑкольку громкоÑÑ‚ÑŒ не линейнаÑ). Пример:\n"
+"Преобразует линейную Ñнергию в децибелы (аудио). Этот метод может быть "
+"иÑпользован Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ ползунков громкоÑти, ведущих ÑÐµÐ±Ñ ÐºÐ°Ðº ожидаетÑÑ "
+"(поÑкольку громкоÑÑ‚ÑŒ нелинейна). Пример:\n"
"[codeblock]\n"
-"# \"Slider\" отноÑитÑÑ Ðº узлу, который наÑледует Range, такой как HSlider "
-"или VSlider.\n"
-"# Его диапазон должен быть от 0 до 1.\n"
+"# \"Slider\" должен быть узлом, наÑледующим Range, таким как HSlider или "
+"VSlider.\n"
+"# Его диапазон должен быть наÑтроен от 0 до 1.\n"
"# Измените Ð¸Ð¼Ñ ÑˆÐ¸Ð½Ñ‹, еÑли вы хотите изменить громкоÑÑ‚ÑŒ только определенной "
"шины.\n"
"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
@@ -1062,7 +1064,7 @@ msgid ""
"[/codeblock]\n"
"This is the inverse of [method char]."
msgstr ""
-"Возвращает целое чиÑло, предÑтавлÑющее кодовую точку Unicode Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ "
+"Возвращает целое чиÑло, предÑтавлÑющее кодовую позицию Unicode данного "
"Unicode-Ñимвола [code]char[/code].\n"
"[codeblock]\n"
"a = ord(\"A\") # a равно 65\n"
@@ -1220,6 +1222,16 @@ msgid ""
"distinguishes them from print messages used for debugging purposes, while "
"also displaying a stack trace when an error or warning is printed."
msgstr ""
+"Конвертирует наилучшим образом один или более аргументов любого типа в "
+"Ñтроку и выводит результат в конÑоль.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"=\", a) # Выведет a=[1, 2, 3]\n"
+"[/codeblock]\n"
+"[b]Примечание:[/b] Желательно иÑпользовать [method push_error] и [method "
+"push_warning] Ð´Ð»Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð° ошибок и предупреждений, вмеÑто [method print]. Это "
+"поможет отличать их от отладочных Ñообщений, a также отображаетÑÑ "
+"траÑÑировка Ñтека при печати ошибки или предупреждениÑ."
#: modules/gdscript/doc_classes/@GDScript.xml:702
msgid "Like [method print], but prints only when used in debug mode."
@@ -1475,6 +1487,45 @@ msgid ""
"3\n"
"[/codeblock]"
msgstr ""
+"Возвращает маÑÑив Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ð¼ диапазоном. Диапазон может быть одним "
+"аргументом [code]N[/code] (от [code]0[code] до [code]N - 1[/code]), Ð´Ð²ÑƒÐ¼Ñ "
+"аргументами ([code]начальное[/code], [code]поÑледнее - 1[/code]) или Ñ‚Ñ€ÐµÐ¼Ñ "
+"аргументами ([code]начальное[/code], [code]поÑледнее - 1[/code], [code]шаг[/"
+"code]). ЕÑли диапазон не допуÑтим, возвращает пуÑтой маÑÑив (например "
+"[code]range(2, 5, -1)[/code] или [code]range(5, 5, 1)[/code]).\n"
+"Возвращает маÑÑив Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ð¼ диапазоном. Диапазон [code]range()[/code] может "
+"быть одним аргументом [code]N[/code] (от [code]0[code] до [code]N - 1[/"
+"code]), Ð´Ð²ÑƒÐ¼Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð°Ð¼Ð¸ ([code]начальное[/code], [code]поÑледнее - 1[/"
+"code]) или Ñ‚Ñ€ÐµÐ¼Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð°Ð¼Ð¸ ([code]начальное[/code], [code]поÑледнее - 1[/"
+"code], [code]шаг[/code]). [code]Шаг[/code] может быть отрицательным. ЕÑли "
+"[code]шаг[/code] отрицателен, [code]поÑледний - 1[/code] Ñтанет "
+"[code]поÑледний + 1[/code]. Также, чтобы цикл запуÑтилÑÑ, начальное значение "
+"должно быть больше поÑледнего.\n"
+"[codeblock]\n"
+"print(range(4))\n"
+"print(range(2, 5))\n"
+"print(range(0, 6, 2))\n"
+"[/codeblock]\n"
+"Вывод:\n"
+"[codeblock]\n"
+"[0, 1, 2, 3]\n"
+"[2, 3, 4]\n"
+"[0, 2, 4]\n"
+"[/codeblock]\n"
+"Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÐ±Ð¾Ñ€Ð° маÑÑива [Array] в обратном порÑдке, иÑпользуйте:\n"
+"[codeblock]\n"
+"var array = [3, 6, 9]\n"
+"var i := array.size() - 1\n"
+"while i >= 0:\n"
+" print(array[i])\n"
+" i -= 1\n"
+"[/codeblock]\n"
+"Вывод:\n"
+"[codeblock]\n"
+"9\n"
+"6\n"
+"3\n"
+"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:874
msgid ""
@@ -3383,97 +3434,95 @@ msgstr "Ошибка неверных данных."
#: doc/classes/@GlobalScope.xml:941
msgid "Gamepad button 0."
-msgstr ""
+msgstr "Кнопка 0 геймпада."
#: doc/classes/@GlobalScope.xml:944
-#, fuzzy
msgid "Gamepad button 1."
-msgstr "МаÑка дополнительной кнопки мыши 1."
+msgstr "Кнопка 1 геймпада."
#: doc/classes/@GlobalScope.xml:947
-#, fuzzy
msgid "Gamepad button 2."
-msgstr "МаÑка дополнительной кнопки мыши 2."
+msgstr "Кнопка 2 геймпада."
#: doc/classes/@GlobalScope.xml:950
msgid "Gamepad button 3."
-msgstr ""
+msgstr "Кнопка 3 геймпада."
#: doc/classes/@GlobalScope.xml:953
msgid "Gamepad button 4."
-msgstr ""
+msgstr "Кнопка 4 геймпада."
#: doc/classes/@GlobalScope.xml:956
msgid "Gamepad button 5."
-msgstr ""
+msgstr "Кнопка 5 геймпада."
#: doc/classes/@GlobalScope.xml:959
msgid "Gamepad button 6."
-msgstr ""
+msgstr "Кнопка 6 геймпада."
#: doc/classes/@GlobalScope.xml:962
msgid "Gamepad button 7."
-msgstr ""
+msgstr "Кнопка 7 геймпада."
#: doc/classes/@GlobalScope.xml:965
msgid "Gamepad button 8."
-msgstr ""
+msgstr "Кнопка 8 геймпада."
#: doc/classes/@GlobalScope.xml:968
msgid "Gamepad button 9."
-msgstr ""
+msgstr "Кнопка 9 геймпада."
#: doc/classes/@GlobalScope.xml:971
msgid "Gamepad button 10."
-msgstr ""
+msgstr "Кнопка 10 геймпада."
#: doc/classes/@GlobalScope.xml:974
msgid "Gamepad button 11."
-msgstr ""
+msgstr "Кнопка 11 геймпада."
#: doc/classes/@GlobalScope.xml:977
msgid "Gamepad button 12."
-msgstr ""
+msgstr "Кнопка 12 геймпада."
#: doc/classes/@GlobalScope.xml:980
msgid "Gamepad button 13."
-msgstr ""
+msgstr "Кнопка 13 геймпада."
#: doc/classes/@GlobalScope.xml:983
msgid "Gamepad button 14."
-msgstr ""
+msgstr "Кнопка 14 геймпада."
#: doc/classes/@GlobalScope.xml:986
msgid "Gamepad button 15."
-msgstr ""
+msgstr "Кнопка 15 геймпада."
#: doc/classes/@GlobalScope.xml:989
msgid "Gamepad button 16."
-msgstr ""
+msgstr "Кнопка 16 геймпада."
#: doc/classes/@GlobalScope.xml:992
msgid "Gamepad button 17."
-msgstr ""
+msgstr "Кнопка 17 геймпада."
#: doc/classes/@GlobalScope.xml:995
msgid "Gamepad button 18."
-msgstr ""
+msgstr "Кнопка 18 геймпада."
#: doc/classes/@GlobalScope.xml:998
msgid "Gamepad button 19."
-msgstr ""
+msgstr "Кнопка 19 геймпада."
#: doc/classes/@GlobalScope.xml:1001
msgid "Gamepad button 20."
-msgstr ""
+msgstr "Кнопка 20 геймпада."
#: doc/classes/@GlobalScope.xml:1004
msgid "Gamepad button 21."
-msgstr ""
+msgstr "Кнопка 21 геймпада."
#: doc/classes/@GlobalScope.xml:1007
msgid "Gamepad button 22."
-msgstr ""
+msgstr "Кнопка 22 геймпада."
#: doc/classes/@GlobalScope.xml:1010
#, fuzzy
@@ -3704,11 +3753,11 @@ msgstr ""
#: doc/classes/@GlobalScope.xml:1172
msgid "Gamepad left analog trigger."
-msgstr ""
+msgstr "Левый аналоговый курок геймпада."
#: doc/classes/@GlobalScope.xml:1175
msgid "Gamepad right analog trigger."
-msgstr ""
+msgstr "Правый аналоговый курок геймпада."
#: doc/classes/@GlobalScope.xml:1178
#, fuzzy
@@ -5511,7 +5560,7 @@ msgstr ""
#: doc/classes/Animation.xml:272
msgid "Returns the interpolation type of a given track."
-msgstr ""
+msgstr "Возвращает тип интерполÑции данной дорожки."
#: doc/classes/Animation.xml:279
msgid "Returns the amount of keys in a given track."
@@ -5539,7 +5588,7 @@ msgstr ""
#: doc/classes/Animation.xml:317
msgid "Gets the type of a track."
-msgstr ""
+msgstr "Получает тип дорожки."
#: doc/classes/Animation.xml:327
msgid "Insert a generic key in a given track."
@@ -6654,6 +6703,16 @@ msgid ""
"a [Tween] node, but it requires doing everything by code.\n"
"Updating the target properties of animations occurs at process time."
msgstr ""
+"Проигрыватель анимации иÑпользуетÑÑ Ð´Ð»Ñ Ð²Ð¾ÑÐ¿Ñ€Ð¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ñ€ÐµÑурÑов "
+"[Animation]. Он Ñодержит Ñловарь анимаций (ключами ÑвлÑÑŽÑ‚ÑÑ Ð¸Ð¼ÐµÐ½Ð°) и "
+"пользовательÑкое Ð²Ñ€ÐµÐ¼Ñ ÑÐ¼ÐµÑˆÐ¸Ð²Ð°Ð½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ их переходами. Кроме того, анимации "
+"могут воÑпроизводитьÑÑ Ð¸ ÑмешиватьÑÑ Ð² разных каналах.\n"
+"[AnimationPlayer] лучше чем [Tween] подходит Ð´Ð»Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ð¹, в которых "
+"конечные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð·Ð²ÐµÑтны заранее. Ðапример, затухание Ñкрана легче "
+"выполнить Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ узла [AnimationPlayer] Ð±Ð»Ð°Ð³Ð¾Ð´Ð°Ñ€Ñ Ð¸Ð½Ñтрументам анимации, "
+"предоÑтавлÑемым редактором. Этот конкретный пример также можно реализовать Ñ "
+"помощью узла [Tween], но Ð´Ð»Ñ Ñтого придетÑÑ Ð²ÑÑ‘ делать в коде.\n"
+"Обновление целевых ÑвойÑтв анимаций проиÑходит во Ð²Ñ€ÐµÐ¼Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑÑа."
#: doc/classes/AnimationPlayer.xml:22
msgid ""
@@ -6708,6 +6767,8 @@ msgid ""
"Gets the blend time (in seconds) between two animations, referenced by their "
"names."
msgstr ""
+"Получает Ð²Ñ€ÐµÐ¼Ñ ÑÐ¼ÐµÑˆÐ¸Ð²Ð°Ð½Ð¸Ñ (в Ñекундах) между Ð´Ð²ÑƒÐ¼Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñми, на которые "
+"ÑÑылаютÑÑ Ð¸Ñ… имена."
#: doc/classes/AnimationPlayer.xml:90
msgid ""
@@ -6716,21 +6777,29 @@ msgid ""
"[code]custom_speed[/code] argument specified when calling the [method play] "
"method."
msgstr ""
+"Получает фактичеÑкую ÑкороÑÑ‚ÑŒ воÑÐ¿Ñ€Ð¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ анимации или 0, еÑли "
+"она не воÑпроизводитÑÑ. Эта ÑкороÑÑ‚ÑŒ ÑвлÑетÑÑ ÑвойÑтвом [member "
+"playback_speed], умноженным на аргумент [code]custom_speed[/code], указанный "
+"при вызове метода [method play]."
#: doc/classes/AnimationPlayer.xml:96
msgid ""
"Returns a list of the animation names that are currently queued to play."
msgstr ""
+"Возвращает ÑпиÑок имен анимаций, которые в данный момент ÑтоÑÑ‚ в очереди на "
+"воÑпроизведение."
#: doc/classes/AnimationPlayer.xml:103
msgid ""
"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
"with key [code]name[/code]."
msgstr ""
+"Возвращает [code]true[/code], еÑли в [AnimationPlayer] хранитÑÑ [Animation] "
+"Ñ ÐºÐ»ÑŽÑ‡Ð¾Ð¼ [code]name[/code]."
#: doc/classes/AnimationPlayer.xml:109
msgid "Returns [code]true[/code] if playing an animation."
-msgstr ""
+msgstr "Возвращает [code]true[/code], еÑли воÑпроизводитÑÑ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ."
#: doc/classes/AnimationPlayer.xml:119
msgid ""
@@ -6749,6 +6818,22 @@ msgid ""
"time this is called, they may be updated too early. To perform the update "
"immediately, call [code]advance(0)[/code]."
msgstr ""
+"ВоÑпроизводит анимацию Ñ ÐºÐ»ÑŽÑ‡Ð¾Ð¼ [code]name[/code]. Можно задать "
+"пользовательÑкое Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ ÑкороÑÑ‚ÑŒ. ЕÑли [code]custom_speed[/code] "
+"отрицателен и [code]from_end[/code] равен [code]true[/code], Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð±ÑƒÐ´ÐµÑ‚ "
+"воÑпроизводитьÑÑ Ð² обратном направлении (что Ñквивалентно вызову [method "
+"play_backwards]).\n"
+"[AnimationPlayer] отÑлеживает текущую или поÑледнюю воÑпроизведенную "
+"анимацию Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [member assigned_animation]. ЕÑли Ñтот метод вызываетÑÑ Ñ "
+"той же анимацией [code]name[/code] или без параметра [code]name[/code], "
+"Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ð°Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð²Ð¾Ð·Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ воÑпроизведение, еÑли она была "
+"приоÑтановлена, или перезапуÑтитÑÑ, еÑли она была оÑтановлена (Ñм. [method "
+"stop] Ð´Ð»Ñ Ð¿Ð°ÑƒÐ·Ñ‹ и оÑтановки). ЕÑли Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ ÑƒÐ¶Ðµ воÑпроизводитÑÑ, то она "
+"продолжит воÑпроизведение.\n"
+"[b]Примечание:[/b] ÐÐ½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð±ÑƒÐ´ÐµÑ‚ обновлена при Ñледующей обработке "
+"[AnimationPlayer]. ЕÑли одновременно Ñ Ñтим вызовом обновлÑÑŽÑ‚ÑÑ Ð´Ñ€ÑƒÐ³Ð¸Ðµ "
+"переменные, они могут быть обновлены Ñлишком рано. Чтобы выполнить "
+"обновление немедленно, вызовите [code]advance(0)[/code]."
#: doc/classes/AnimationPlayer.xml:129
msgid ""
@@ -6757,6 +6842,10 @@ msgid ""
"code] and [code]from_end = true[/code], so see its description for more "
"information."
msgstr ""
+"ВоÑпроизводит анимацию Ñ ÐºÐ»ÑŽÑ‡Ð¾Ð¼ [code]name[/code] в обратном направлении.\n"
+"Этот метод ÑвлÑетÑÑ ÐºÐ¾Ñ€Ð¾Ñ‚ÐºÐ¾Ð¹ запиÑью Ð´Ð»Ñ [method play] Ñ [code]custom_speed "
+"= -1.0[/code] и [code]from_end = true[/code], поÑтому Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ "
+"дополнительной информации Ñмотрите его опиÑание."
#: doc/classes/AnimationPlayer.xml:137
msgid ""
@@ -6764,6 +6853,12 @@ 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 ""
+"Ставит анимацию в очередь на воÑпроизведение поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ "
+"анимации.\n"
+"[b]Примечание:[/b] ЕÑли в данный момент воÑпроизводитÑÑ Ð·Ð°Ñ†Ð¸ÐºÐ»ÐµÐ½Ð½Ð°Ñ "
+"анимациÑ, то поÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ð°Ñ Ð² очередь Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð½Ð¸ÐºÐ¾Ð³Ð´Ð° не начнёт "
+"воÑпроизводитьÑÑ, пока Ð·Ð°Ñ†Ð¸ÐºÐ»ÐµÐ½Ð½Ð°Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð½Ðµ будет оÑтановлена каким-либо "
+"образом."
#: doc/classes/AnimationPlayer.xml:145
msgid "Removes the animation with key [code]name[/code]."
@@ -6822,6 +6917,15 @@ msgid ""
"get the currently playing animation, and internally for animation playback "
"tracks. For more information, see [Animation]."
msgstr ""
+"Ð˜Ð¼Ñ Ð²Ð¾Ñпроизводимой в данный момент анимации. ЕÑли Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð½Ðµ "
+"воÑпроизводитÑÑ, значением ÑвойÑтва будет пуÑÑ‚Ð°Ñ Ñтрока. Изменение Ñтого "
+"Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð½Ðµ приводит к перезапуÑку анимации. Дополнительные ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ Ð¾ "
+"воÑпроизведении анимации Ñм. в [method play].\n"
+"[b]Примечание:[/b] Ð¥Ð¾Ñ‚Ñ Ñто ÑвойÑтво отображаетÑÑ Ð² инÑпекторе, оно не "
+"предназначено Ð´Ð»Ñ Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸ не ÑохранÑетÑÑ Ð² Ñцене. Это ÑвойÑтво в "
+"оÑновном иÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ воÑпроизводимой анимации, а "
+"также внутри движка Ð´Ð»Ñ Ð´Ð¾Ñ€Ð¾Ð¶ÐµÐº воÑÐ¿Ñ€Ð¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ð¸. Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ "
+"дополнительной информации Ñм. [Animation]."
#: doc/classes/AnimationPlayer.xml:194
msgid "The length (in seconds) of the currently being played animation."
@@ -7423,21 +7527,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7445,7 +7553,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7456,7 +7564,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7464,41 +7572,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7506,61 +7614,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7575,7 +7683,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7584,7 +7692,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7593,7 +7701,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -7610,29 +7718,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -7671,21 +7779,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -7693,7 +7805,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -7704,7 +7816,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7712,14 +7824,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7727,21 +7839,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7756,7 +7868,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7771,7 +7883,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7780,7 +7892,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7789,7 +7901,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7808,7 +7920,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -11433,11 +11545,11 @@ msgstr ""
#: doc/classes/AudioStreamSample.xml:50
msgid "8-bit audio codec."
-msgstr ""
+msgstr "8-битный аудиокодек."
#: doc/classes/AudioStreamSample.xml:53
msgid "16-bit audio codec."
-msgstr ""
+msgstr "16-битный аудиокодек."
#: doc/classes/AudioStreamSample.xml:56
msgid "Audio is compressed using IMA ADPCM."
@@ -11534,7 +11646,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -11733,19 +11846,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -12598,26 +12723,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -14094,80 +14226,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -14211,49 +14359,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14728,7 +14883,7 @@ msgstr ""
#: doc/classes/CollisionObject2D.xml:156
msgid "Returns the shape owner's [Transform2D]."
-msgstr ""
+msgstr "Возвращает [Transform2D] владельца фигуры."
#: doc/classes/CollisionObject2D.xml:180
msgid ""
@@ -15280,7 +15435,7 @@ msgstr ""
#: doc/classes/Color.xml:292
msgid "Beige color."
-msgstr ""
+msgstr "Бежевый цвет."
#: doc/classes/Color.xml:295
msgid "Bisque color."
@@ -15288,7 +15443,7 @@ msgstr ""
#: doc/classes/Color.xml:298
msgid "Black color."
-msgstr ""
+msgstr "Черный цвет."
#: doc/classes/Color.xml:301
msgid "Blanche almond color."
@@ -15296,7 +15451,7 @@ msgstr ""
#: doc/classes/Color.xml:304
msgid "Blue color."
-msgstr ""
+msgstr "Синий цвет."
#: doc/classes/Color.xml:307
msgid "Blue violet color."
@@ -15304,7 +15459,7 @@ msgstr ""
#: doc/classes/Color.xml:310
msgid "Brown color."
-msgstr ""
+msgstr "Коричневый цвет."
#: doc/classes/Color.xml:313
msgid "Burly wood color."
@@ -15320,7 +15475,7 @@ msgstr ""
#: doc/classes/Color.xml:322
msgid "Chocolate color."
-msgstr ""
+msgstr "Шоколадный цвет."
#: doc/classes/Color.xml:325
msgid "Coral color."
@@ -15344,7 +15499,7 @@ msgstr ""
#: doc/classes/Color.xml:340
msgid "Dark blue color."
-msgstr ""
+msgstr "Темно-Ñиний цвет."
#: doc/classes/Color.xml:343
msgid "Dark cyan color."
@@ -15408,7 +15563,7 @@ msgstr ""
#: doc/classes/Color.xml:388
msgid "Dark violet color."
-msgstr ""
+msgstr "Темно-фиолетовый цвет."
#: doc/classes/Color.xml:391
msgid "Deep pink color."
@@ -15440,7 +15595,7 @@ msgstr ""
#: doc/classes/Color.xml:412
msgid "Fuchsia color."
-msgstr ""
+msgstr "Цвет фукÑии."
#: doc/classes/Color.xml:415
msgid "Gainsboro color."
@@ -15452,7 +15607,7 @@ msgstr ""
#: doc/classes/Color.xml:421
msgid "Gold color."
-msgstr ""
+msgstr "Золотой цвет."
#: doc/classes/Color.xml:424
msgid "Goldenrod color."
@@ -15460,11 +15615,11 @@ msgstr ""
#: doc/classes/Color.xml:427
msgid "Gray color."
-msgstr ""
+msgstr "Серый цвет."
#: doc/classes/Color.xml:430
msgid "Green color."
-msgstr ""
+msgstr "Зеленый цвет."
#: doc/classes/Color.xml:433
msgid "Green yellow color."
@@ -15484,7 +15639,7 @@ msgstr ""
#: doc/classes/Color.xml:445
msgid "Indigo color."
-msgstr ""
+msgstr "Цвет индиго."
#: doc/classes/Color.xml:448
msgid "Ivory color."
@@ -15528,7 +15683,7 @@ msgstr ""
#: doc/classes/Color.xml:478
msgid "Light gray color."
-msgstr ""
+msgstr "Светло-Ñерый цвет."
#: doc/classes/Color.xml:481
msgid "Light green color."
@@ -15648,7 +15803,7 @@ msgstr ""
#: doc/classes/Color.xml:568
msgid "Olive color."
-msgstr ""
+msgstr "Оливковый цвет."
#: doc/classes/Color.xml:571
msgid "Olive drab color."
@@ -15656,7 +15811,7 @@ msgstr ""
#: doc/classes/Color.xml:574
msgid "Orange color."
-msgstr ""
+msgstr "Оранжевый цвет."
#: doc/classes/Color.xml:577
msgid "Orange red color."
@@ -15664,7 +15819,7 @@ msgstr ""
#: doc/classes/Color.xml:580
msgid "Orchid color."
-msgstr ""
+msgstr "Цвет орхидеи."
#: doc/classes/Color.xml:583
msgid "Pale goldenrod color."
@@ -15696,7 +15851,7 @@ msgstr ""
#: doc/classes/Color.xml:604
msgid "Pink color."
-msgstr ""
+msgstr "Розовый цвет."
#: doc/classes/Color.xml:607
msgid "Plum color."
@@ -15708,7 +15863,7 @@ msgstr ""
#: doc/classes/Color.xml:613
msgid "Purple color."
-msgstr ""
+msgstr "Фиолетовый цвет."
#: doc/classes/Color.xml:616
msgid "Rebecca purple color."
@@ -15716,7 +15871,7 @@ msgstr ""
#: doc/classes/Color.xml:619
msgid "Red color."
-msgstr ""
+msgstr "КраÑный цвет."
#: doc/classes/Color.xml:622
msgid "Rosy brown color."
@@ -15744,7 +15899,7 @@ msgstr ""
#: doc/classes/Color.xml:640
msgid "Seashell color."
-msgstr ""
+msgstr "Цвет морÑкой раковины."
#: doc/classes/Color.xml:643
msgid "Sienna color."
@@ -15756,7 +15911,7 @@ msgstr ""
#: doc/classes/Color.xml:649
msgid "Sky blue color."
-msgstr ""
+msgstr "ÐебеÑно-голубой цвет."
#: doc/classes/Color.xml:652
msgid "Slate blue color."
@@ -15804,7 +15959,7 @@ msgstr ""
#: doc/classes/Color.xml:685
msgid "Violet color."
-msgstr ""
+msgstr "Фиолетовый цвет."
#: doc/classes/Color.xml:688
msgid "Web gray color."
@@ -15836,7 +15991,7 @@ msgstr ""
#: doc/classes/Color.xml:709
msgid "Yellow color."
-msgstr ""
+msgstr "Желтый цвет."
#: doc/classes/Color.xml:712
msgid "Yellow green color."
@@ -16036,26 +16191,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20043,11 +20205,11 @@ msgstr ""
#: doc/classes/CylinderShape.xml:18
msgid "The cylinder's height."
-msgstr ""
+msgstr "Ð’Ñ‹Ñота цилиндра."
#: doc/classes/CylinderShape.xml:21
msgid "The cylinder's radius."
-msgstr ""
+msgstr "Ð Ð°Ð´Ð¸ÑƒÑ Ñ†Ð¸Ð»Ð¸Ð½Ð´Ñ€Ð°."
#: doc/classes/DampedSpringJoint2D.xml:4
msgid "Damped spring constraint for 2D physics."
@@ -20228,6 +20390,10 @@ msgid ""
"[b]Note:[/b] Don't erase elements while iterating over the dictionary. You "
"can iterate over the [method keys] array instead."
msgstr ""
+"УдалÑет в Ñловаре пару ключ/значение по ключу. Возвращает [code]true[/code] "
+"еÑли ключ приÑутÑтвовал в Ñловаре, иначе возвращает [code]false[/code].\n"
+"[b]Примечание:[/b] Ðе удалÑйте Ñлементы ÑÐ»Ð¾Ð²Ð°Ñ€Ñ Ð²Ð¾ Ð²Ñ€ÐµÐ¼Ñ Ð¿ÐµÑ€ÐµÐ±Ð¾Ñ€Ð°. ВмеÑто "
+"Ñтого, можете перебирать маÑÑив [method keys]."
#: doc/classes/Dictionary.xml:123
msgid ""
@@ -21393,7 +21559,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -21520,7 +21687,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -22562,8 +22729,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28776,7 +28946,7 @@ msgstr ""
#: doc/classes/HTTPRequest.xml:158
msgid "Request successful."
-msgstr ""
+msgstr "Ð—Ð°Ð¿Ñ€Ð¾Ñ ÑƒÑпешен."
#: doc/classes/HTTPRequest.xml:163
msgid "Request failed while connecting."
@@ -29203,16 +29373,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -29220,7 +29392,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -29228,73 +29400,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -29304,7 +29476,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -29314,7 +29486,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -29325,7 +29497,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -29333,7 +29505,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -29341,7 +29513,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -29350,21 +29522,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -29373,25 +29545,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -29399,7 +29571,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29407,7 +29579,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29415,7 +29587,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29423,7 +29595,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29431,7 +29603,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29441,7 +29613,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29451,7 +29623,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -29462,31 +29634,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -29501,55 +29673,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -29774,6 +29946,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -29785,7 +29968,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -29795,7 +29978,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -29807,7 +29990,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -29815,17 +29998,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -29835,7 +30018,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -29844,53 +30027,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -29898,7 +30081,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -29907,17 +30090,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -29930,7 +30113,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -29942,7 +30125,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -29952,7 +30135,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -29963,13 +30146,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -29977,19 +30160,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -29998,7 +30181,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -30011,12 +30194,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -30031,7 +30223,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -30041,11 +30233,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -30059,7 +30278,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -30072,34 +30291,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -30107,83 +30326,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -30191,23 +30410,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -33494,14 +33713,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -33996,26 +34222,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -34260,7 +34493,7 @@ msgstr ""
#: doc/classes/Mesh.xml:207
msgid "Array of colors."
-msgstr ""
+msgstr "МаÑÑив цветов."
#: doc/classes/Mesh.xml:210
msgid "Array of UV coordinates."
@@ -34280,7 +34513,7 @@ msgstr ""
#: doc/classes/Mesh.xml:222
msgid "Array of indices."
-msgstr ""
+msgstr "МаÑÑив индекÑов."
#: doc/classes/MeshDataTool.xml:4
msgid "Helper tool to access and edit [Mesh] data."
@@ -37452,7 +37685,7 @@ msgstr ""
#: doc/classes/Node2D.xml:97
msgid "Global position."
-msgstr ""
+msgstr "Ð“Ð»Ð¾Ð±Ð°Ð»ÑŒÐ½Ð°Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ñ."
#: doc/classes/Node2D.xml:100
msgid "Global rotation in radians."
@@ -37464,7 +37697,7 @@ msgstr ""
#: doc/classes/Node2D.xml:106
msgid "Global scale."
-msgstr ""
+msgstr "Глобальный маÑштаб."
#: doc/classes/Node2D.xml:109
msgid "Global [Transform2D]."
@@ -38647,26 +38880,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -39792,79 +40032,79 @@ msgstr ""
#: doc/classes/OS.xml:1012
msgid "Sunday."
-msgstr ""
+msgstr "ВоÑкреÑенье."
#: doc/classes/OS.xml:1015
msgid "Monday."
-msgstr ""
+msgstr "Понедельник."
#: doc/classes/OS.xml:1018
msgid "Tuesday."
-msgstr ""
+msgstr "Вторник."
#: doc/classes/OS.xml:1021
msgid "Wednesday."
-msgstr ""
+msgstr "Среда."
#: doc/classes/OS.xml:1024
msgid "Thursday."
-msgstr ""
+msgstr "Четверг."
#: doc/classes/OS.xml:1027
msgid "Friday."
-msgstr ""
+msgstr "ПÑтница."
#: doc/classes/OS.xml:1030
msgid "Saturday."
-msgstr ""
+msgstr "Суббота."
#: doc/classes/OS.xml:1033
msgid "January."
-msgstr ""
+msgstr "Январь."
#: doc/classes/OS.xml:1036
msgid "February."
-msgstr ""
+msgstr "Февраль."
#: doc/classes/OS.xml:1039
msgid "March."
-msgstr ""
+msgstr "Март."
#: doc/classes/OS.xml:1042
msgid "April."
-msgstr ""
+msgstr "Ðпрель."
#: doc/classes/OS.xml:1045
msgid "May."
-msgstr ""
+msgstr "Май."
#: doc/classes/OS.xml:1048
msgid "June."
-msgstr ""
+msgstr "Июнь."
#: doc/classes/OS.xml:1051
msgid "July."
-msgstr ""
+msgstr "Июль."
#: doc/classes/OS.xml:1054
msgid "August."
-msgstr ""
+msgstr "ÐвгуÑÑ‚."
#: doc/classes/OS.xml:1057
msgid "September."
-msgstr ""
+msgstr "СентÑбрь."
#: doc/classes/OS.xml:1060
msgid "October."
-msgstr ""
+msgstr "ОктÑбрь."
#: doc/classes/OS.xml:1063
msgid "November."
-msgstr ""
+msgstr "ÐоÑбрь."
#: doc/classes/OS.xml:1066
msgid "December."
-msgstr ""
+msgstr "Декабрь."
#: doc/classes/OS.xml:1069
msgid ""
@@ -39908,11 +40148,11 @@ msgstr ""
#: doc/classes/OS.xml:1097
msgid "Landscape screen orientation."
-msgstr ""
+msgstr "ÐÐ»ÑŒÐ±Ð¾Ð¼Ð½Ð°Ñ Ð¾Ñ€Ð¸ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ñкрана."
#: doc/classes/OS.xml:1100
msgid "Portrait screen orientation."
-msgstr ""
+msgstr "ÐšÐ½Ð¸Ð¶Ð½Ð°Ñ Ð¾Ñ€Ð¸ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ Ñкрана."
#: doc/classes/OS.xml:1103
msgid "Reverse landscape screen orientation."
@@ -43793,27 +44033,27 @@ msgstr "ДобавлÑет Ñлемент в конец маÑÑива."
msgid "Removes an element from the array by index."
msgstr "УдалÑет Ñлемент из маÑÑива по индекÑу."
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -43846,6 +44086,14 @@ msgstr "ДобавлÑет Ñлемент в конец маÑÑива."
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -43886,11 +44134,11 @@ msgstr ""
"Ð’ÑтавлÑет новый Ñлемент в указанную позицию маÑÑива. ÐŸÐ¾Ð·Ð¸Ñ†Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° быть "
"корректна, или указывать на конец маÑÑива ([code]pos == size()[/code])."
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -43923,7 +44171,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr "ДобавлÑет Ñлемент в конец маÑÑива."
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -45208,18 +45456,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -45227,7 +45463,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -45237,13 +45473,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -45257,14 +45508,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -45273,7 +45524,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -45281,7 +45532,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -45297,20 +45548,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -45318,75 +45569,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -45396,7 +45647,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -45406,27 +45657,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -45434,81 +45685,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -45516,80 +45767,80 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr "ЕÑли [code]true[/code], текÑтура будет центрирована."
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
@@ -45597,32 +45848,32 @@ msgstr ""
"ЕÑли [code]true[/code], Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ [member animation] воÑпроизводитÑÑ Ð² данный "
"момент."
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -45633,91 +45884,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -45726,13 +45977,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -45742,7 +45993,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -45750,19 +46001,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -45776,45 +46027,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -45823,7 +46074,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -45834,7 +46085,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -45850,14 +46101,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -45865,49 +46116,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -45916,7 +46167,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -45924,7 +46175,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45932,7 +46183,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -45942,7 +46193,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -45951,7 +46202,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -45960,7 +46211,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -45970,7 +46221,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45978,7 +46229,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -45988,7 +46239,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -45998,7 +46249,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46006,7 +46257,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -46015,7 +46266,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -46023,7 +46274,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -46035,477 +46286,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -46513,92 +46764,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -46608,33 +46859,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -46647,7 +46898,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -46659,7 +46910,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -46671,7 +46922,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -46684,7 +46935,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -46692,28 +46943,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -46723,25 +46974,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -46754,7 +47005,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -46766,7 +47017,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -46778,7 +47029,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -46791,13 +47042,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -46805,11 +47056,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -46823,7 +47074,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -46832,7 +47083,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -46848,7 +47099,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -46858,7 +47109,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -46868,7 +47119,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -46879,7 +47130,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -46889,7 +47140,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -46897,7 +47148,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -46908,7 +47159,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -46923,7 +47174,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -46932,13 +47183,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -46947,7 +47198,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -46957,7 +47208,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -46969,7 +47220,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -46979,24 +47230,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -47005,7 +47256,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -47013,7 +47264,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -47022,7 +47273,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -47032,7 +47283,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -47040,31 +47291,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -47072,7 +47323,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -47082,46 +47333,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -47129,7 +47387,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -47139,7 +47397,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -47148,7 +47406,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -47157,20 +47415,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -47179,7 +47437,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -47187,7 +47445,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -47196,7 +47454,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -47206,20 +47464,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -47228,13 +47486,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -47244,46 +47502,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -47293,7 +47551,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -47305,7 +47563,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -47313,7 +47571,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -47321,7 +47579,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -47330,7 +47588,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -47344,7 +47602,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -47354,7 +47612,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -47363,7 +47621,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -47373,54 +47631,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -47431,61 +47689,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -47496,7 +47754,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -47505,26 +47763,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -47535,20 +47793,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -47560,52 +47818,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -47613,7 +47871,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -47623,10 +47881,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -47635,10 +47893,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -47647,10 +47905,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -47659,10 +47917,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -47671,10 +47929,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -59169,26 +59427,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
@@ -61391,7 +61656,7 @@ msgstr ""
#: modules/upnp/doc_classes/UPNP.xml:239
#: modules/upnp/doc_classes/UPNPDevice.xml:93
msgid "Unknown error."
-msgstr ""
+msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°."
#: modules/upnp/doc_classes/UPNPDevice.xml:4
msgid "UPNP device."
@@ -69852,15 +70117,15 @@ msgstr ""
#: doc/classes/VisualShaderNodeVectorOp.xml:20
msgid "Adds two vectors."
-msgstr ""
+msgstr "Складывает два вектора."
#: doc/classes/VisualShaderNodeVectorOp.xml:23
msgid "Subtracts a vector from a vector."
-msgstr ""
+msgstr "Вычитает из вектора вектор."
#: doc/classes/VisualShaderNodeVectorOp.xml:26
msgid "Multiplies two vectors."
-msgstr ""
+msgstr "Перемножает два вектора."
#: doc/classes/VisualShaderNodeVectorOp.xml:29
msgid "Divides vector by vector."
@@ -69875,14 +70140,18 @@ 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."
@@ -69973,7 +70242,7 @@ msgstr ""
#: doc/classes/VScrollBar.xml:4
msgid "Vertical scroll bar."
-msgstr ""
+msgstr "Ð’ÐµÑ€Ñ‚Ð¸ÐºÐ°Ð»ÑŒÐ½Ð°Ñ Ð¿Ð¾Ð»Ð¾Ñа прокрутки."
#: doc/classes/VScrollBar.xml:7
msgid ""
@@ -70129,7 +70398,7 @@ msgstr ""
#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:76
msgid "Reserved, but not used for now."
-msgstr ""
+msgstr "Зарезервировано, в данный момент не иÑпользуетÑÑ."
#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:82
msgid ""
@@ -71197,7 +71466,7 @@ msgstr ""
#: doc/classes/World.xml:19
msgid "The World's [Environment]."
-msgstr ""
+msgstr "[Environment] мира."
#: doc/classes/World.xml:22
msgid ""
@@ -71211,7 +71480,7 @@ msgstr ""
#: doc/classes/World.xml:28
msgid "The World's physics space."
-msgstr ""
+msgstr "ФизичеÑкое проÑтранÑтво мира."
#: doc/classes/World2D.xml:4
msgid "Class that has everything pertaining to a 2D world."
@@ -71309,7 +71578,7 @@ msgstr ""
#: doc/classes/XMLParser.xml:15
msgid "Gets the amount of attributes in the current element."
-msgstr ""
+msgstr "Получает количеÑтво атрибутов в текущем Ñлементе."
#: doc/classes/XMLParser.xml:22
msgid ""
@@ -71411,7 +71680,7 @@ msgstr ""
#: doc/classes/XMLParser.xml:134
msgid "Text node."
-msgstr ""
+msgstr "ТекÑтовый узел."
#: doc/classes/XMLParser.xml:137
msgid "Comment node."
@@ -71423,7 +71692,7 @@ msgstr ""
#: doc/classes/XMLParser.xml:143
msgid "Unknown node."
-msgstr ""
+msgstr "ÐеизвеÑтный узел."
#: doc/classes/YSort.xml:4
msgid "Sort all child nodes based on their Y positions."
diff --git a/doc/translations/sk.po b/doc/translations/sk.po
index dc2b8c946b..a456ae45ff 100644
--- a/doc/translations/sk.po
+++ b/doc/translations/sk.po
@@ -21,43 +21,43 @@ msgstr ""
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
"X-Generator: Weblate 4.6-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Popis"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Návody"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Vlastnosti"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr ""
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr ""
@@ -6210,21 +6210,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6232,7 +6236,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6243,7 +6247,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6251,41 +6255,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6293,61 +6297,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6362,7 +6366,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6371,7 +6375,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6380,7 +6384,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6397,29 +6401,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6458,21 +6462,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6480,7 +6488,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6491,7 +6499,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6499,14 +6507,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6514,21 +6522,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6543,7 +6551,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6558,7 +6566,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6567,7 +6575,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6576,7 +6584,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6595,7 +6603,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10179,7 +10187,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10377,19 +10386,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11234,26 +11255,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12722,80 +12750,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12839,49 +12883,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14656,26 +14707,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19905,7 +19963,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20032,7 +20091,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21067,8 +21126,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27678,16 +27740,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27695,7 +27759,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27703,73 +27767,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27779,7 +27843,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27789,7 +27853,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27800,7 +27864,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27808,7 +27872,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27816,7 +27880,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27825,21 +27889,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27848,25 +27912,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27874,7 +27938,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27882,7 +27946,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27890,7 +27954,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27898,7 +27962,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27906,7 +27970,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27916,7 +27980,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27926,7 +27990,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27937,31 +28001,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27976,55 +28040,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28248,6 +28312,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28259,7 +28334,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28269,7 +28344,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28281,7 +28356,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28289,17 +28364,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28309,7 +28384,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28318,53 +28393,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28372,7 +28447,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28381,17 +28456,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28404,7 +28479,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28416,7 +28491,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28426,7 +28501,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28437,13 +28512,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28451,19 +28526,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28472,7 +28547,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28485,12 +28560,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28505,7 +28589,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28515,11 +28599,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28533,7 +28644,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28546,34 +28657,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28581,83 +28692,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28665,23 +28776,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31938,14 +32049,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32438,26 +32556,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37066,26 +37191,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42159,27 +42291,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42211,6 +42343,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42247,11 +42387,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42283,7 +42423,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43549,18 +43689,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43568,7 +43696,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43578,13 +43706,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43598,14 +43741,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43614,7 +43757,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43622,7 +43765,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43638,20 +43781,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43659,75 +43802,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43737,7 +43880,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43747,27 +43890,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43775,81 +43918,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43857,109 +44000,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43970,91 +44113,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44063,13 +44206,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44079,7 +44222,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44087,19 +44230,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44113,45 +44256,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44160,7 +44303,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44171,7 +44314,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44187,14 +44330,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44202,49 +44345,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44253,7 +44396,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44261,7 +44404,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44269,7 +44412,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44279,7 +44422,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44288,7 +44431,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44297,7 +44440,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44307,7 +44450,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44315,7 +44458,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44325,7 +44468,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44335,7 +44478,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44343,7 +44486,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44352,7 +44495,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44360,7 +44503,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44372,477 +44515,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44850,92 +44993,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44945,33 +45088,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44984,7 +45127,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -44996,7 +45139,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45008,7 +45151,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45021,7 +45164,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45029,28 +45172,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45060,25 +45203,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45091,7 +45234,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45103,7 +45246,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45115,7 +45258,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45128,13 +45271,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45142,11 +45285,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45160,7 +45303,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45169,7 +45312,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45185,7 +45328,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45195,7 +45338,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45205,7 +45348,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45216,7 +45359,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45226,7 +45369,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45234,7 +45377,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45245,7 +45388,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45260,7 +45403,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45269,13 +45412,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45284,7 +45427,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45294,7 +45437,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45306,7 +45449,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45316,24 +45459,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45342,7 +45485,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45350,7 +45493,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45359,7 +45502,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45369,7 +45512,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45377,31 +45520,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45409,7 +45552,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45419,46 +45562,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45466,7 +45616,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45476,7 +45626,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45485,7 +45635,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45494,20 +45644,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45516,7 +45666,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45524,7 +45674,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45533,7 +45683,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45543,20 +45693,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45565,13 +45715,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45581,46 +45731,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45630,7 +45780,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45642,7 +45792,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45650,7 +45800,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45658,7 +45808,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45667,7 +45817,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45681,7 +45831,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45691,7 +45841,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45700,7 +45850,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45710,54 +45860,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45768,61 +45918,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45833,7 +45983,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45842,26 +45992,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45872,20 +46022,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45897,52 +46047,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45950,7 +46100,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45960,10 +46110,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45972,10 +46122,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45984,10 +46134,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -45996,10 +46146,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46008,10 +46158,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57379,26 +57529,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/sr_Cyrl.po b/doc/translations/sr_Cyrl.po
index bdd83106ae..0bb22e02e9 100644
--- a/doc/translations/sr_Cyrl.po
+++ b/doc/translations/sr_Cyrl.po
@@ -21,52 +21,52 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.3-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Description"
msgstr "ОпиÑ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Tutorials"
msgstr "Туториали"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Properties"
msgstr "ОÑобине"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Methods"
msgstr "Методе"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Theme Properties"
msgstr "ОÑобине Теме"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Signals"
msgstr "Сигнали"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Enumerations"
msgstr "ПопиÑивање"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Constants"
msgstr "КонÑтанте"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Property Descriptions"
msgstr "ОпиÑи ОÑобина"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
#, fuzzy
msgid "Method Descriptions"
msgstr "ОпиÑи Метода"
@@ -6221,21 +6221,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6243,7 +6247,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6254,7 +6258,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6262,41 +6266,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6304,61 +6308,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6373,7 +6377,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6382,7 +6386,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6391,7 +6395,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6408,29 +6412,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6469,21 +6473,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6491,7 +6499,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6502,7 +6510,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6510,14 +6518,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6525,21 +6533,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6554,7 +6562,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6569,7 +6577,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6578,7 +6586,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6587,7 +6595,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6606,7 +6614,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10190,7 +10198,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10388,19 +10397,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11245,26 +11266,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12733,80 +12761,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12850,49 +12894,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14667,26 +14718,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -19916,7 +19974,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20043,7 +20102,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21078,8 +21137,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27689,16 +27751,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27706,7 +27770,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27714,73 +27778,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27790,7 +27854,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27800,7 +27864,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27811,7 +27875,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27819,7 +27883,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27827,7 +27891,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27836,21 +27900,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27859,25 +27923,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27885,7 +27949,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27893,7 +27957,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27901,7 +27965,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27909,7 +27973,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27917,7 +27981,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27927,7 +27991,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27937,7 +28001,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27948,31 +28012,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -27987,55 +28051,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28259,6 +28323,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28270,7 +28345,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28280,7 +28355,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28292,7 +28367,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28300,17 +28375,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28320,7 +28395,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28329,53 +28404,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28383,7 +28458,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28392,17 +28467,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28415,7 +28490,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28427,7 +28502,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28437,7 +28512,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28448,13 +28523,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28462,19 +28537,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28483,7 +28558,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28496,12 +28571,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28516,7 +28600,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28526,11 +28610,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28544,7 +28655,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28557,34 +28668,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28592,83 +28703,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28676,23 +28787,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -31949,14 +32060,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32449,26 +32567,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37077,26 +37202,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42170,27 +42302,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42222,6 +42354,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42258,11 +42398,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42294,7 +42434,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43560,18 +43700,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43579,7 +43707,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43589,13 +43717,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43609,14 +43752,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43625,7 +43768,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43633,7 +43776,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43649,20 +43792,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43670,75 +43813,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43748,7 +43891,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43758,27 +43901,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43786,81 +43929,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -43868,109 +44011,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -43981,91 +44124,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44074,13 +44217,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44090,7 +44233,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44098,19 +44241,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44124,45 +44267,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44171,7 +44314,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44182,7 +44325,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44198,14 +44341,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44213,49 +44356,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44264,7 +44407,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44272,7 +44415,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44280,7 +44423,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44290,7 +44433,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44299,7 +44442,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44308,7 +44451,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44318,7 +44461,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44326,7 +44469,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44336,7 +44479,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44346,7 +44489,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44354,7 +44497,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44363,7 +44506,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44371,7 +44514,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44383,477 +44526,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -44861,92 +45004,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -44956,33 +45099,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -44995,7 +45138,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45007,7 +45150,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45019,7 +45162,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45032,7 +45175,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45040,28 +45183,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45071,25 +45214,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45102,7 +45245,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45114,7 +45257,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45126,7 +45269,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45139,13 +45282,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45153,11 +45296,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45171,7 +45314,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45180,7 +45323,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45196,7 +45339,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45206,7 +45349,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45216,7 +45359,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45227,7 +45370,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45237,7 +45380,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45245,7 +45388,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45256,7 +45399,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45271,7 +45414,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45280,13 +45423,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45295,7 +45438,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45305,7 +45448,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45317,7 +45460,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45327,24 +45470,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45353,7 +45496,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45361,7 +45504,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45370,7 +45513,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45380,7 +45523,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45388,31 +45531,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45420,7 +45563,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45430,46 +45573,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45477,7 +45627,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45487,7 +45637,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45496,7 +45646,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45505,20 +45655,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45527,7 +45677,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45535,7 +45685,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45544,7 +45694,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45554,20 +45704,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45576,13 +45726,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45592,46 +45742,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45641,7 +45791,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45653,7 +45803,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45661,7 +45811,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45669,7 +45819,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45678,7 +45828,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45692,7 +45842,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45702,7 +45852,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45711,7 +45861,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45721,54 +45871,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45779,61 +45929,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45844,7 +45994,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -45853,26 +46003,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -45883,20 +46033,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -45908,52 +46058,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -45961,7 +46111,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -45971,10 +46121,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -45983,10 +46133,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -45995,10 +46145,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46007,10 +46157,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46019,10 +46169,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57390,26 +57540,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/sv.po b/doc/translations/sv.po
new file mode 100644
index 0000000000..1f920b3172
--- /dev/null
+++ b/doc/translations/sv.po
@@ -0,0 +1,69336 @@
+# LANGUAGE translation of the Godot Engine class reference.
+# Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur.
+# Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md).
+# This file is distributed under the same license as the Godot source code.
+#
+# Christoffer Sundbom <christoffer_karlsson@live.se>, 2021.
+# Kent Jofur <kent.jofur@gmail.com>, 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: Godot Engine class reference\n"
+"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
+"PO-Revision-Date: 2021-10-31 13:40+0000\n"
+"Last-Translator: Kent Jofur <kent.jofur@gmail.com>\n"
+"Language-Team: Swedish <https://hosted.weblate.org/projects/godot-engine/"
+"godot-class-reference/sv/>\n"
+"Language: sv\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.9-dev\n"
+
+#: doc/tools/make_rst.py
+msgid "Description"
+msgstr "Beskrivning"
+
+#: doc/tools/make_rst.py
+msgid "Tutorials"
+msgstr "Guider"
+
+#: doc/tools/make_rst.py
+msgid "Properties"
+msgstr "Egenskaper"
+
+#: doc/tools/make_rst.py
+msgid "Methods"
+msgstr "Metoder"
+
+#: doc/tools/make_rst.py
+msgid "Theme Properties"
+msgstr "Tema Egenskaper"
+
+#: doc/tools/make_rst.py
+msgid "Signals"
+msgstr "Signaler"
+
+#: doc/tools/make_rst.py
+msgid "Enumerations"
+msgstr "Uppräkningar"
+
+#: doc/tools/make_rst.py
+msgid "Constants"
+msgstr "Konstanter"
+
+#: doc/tools/make_rst.py
+msgid "Property Descriptions"
+msgstr ""
+
+#: doc/tools/make_rst.py
+msgid "Method Descriptions"
+msgstr "Metodbeskrivning"
+
+#: modules/gdscript/doc_classes/@GDScript.xml:4
+msgid "Built-in GDScript functions."
+msgstr "Inbyggda GDScriptfunktioner."
+
+#: 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:19
+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:34
+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:45
+msgid ""
+"Returns the absolute value of parameter [code]s[/code] (i.e. positive "
+"value).\n"
+"[codeblock]\n"
+"a = abs(-1) # a is 1\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:55
+msgid ""
+"Returns the arc cosine of [code]s[/code] in radians. Use to get the angle of "
+"cosine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
+"[code]1.0[/code] (inclusive), otherwise, [method acos] will return [constant "
+"NAN].\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:66
+msgid ""
+"Returns the arc sine of [code]s[/code] in radians. Use to get the angle of "
+"sine [code]s[/code]. [code]s[/code] must be between [code]-1.0[/code] and "
+"[code]1.0[/code] (inclusive), otherwise, [method asin] will return [constant "
+"NAN].\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:78
+msgid ""
+"Asserts that the [code]condition[/code] is [code]true[/code]. If the "
+"[code]condition[/code] is [code]false[/code], an error is generated. When "
+"running from the editor, the running project will also be paused until you "
+"resume it. This can be used as a stronger form of [method push_error] for "
+"reporting errors to project developers or add-on users.\n"
+"[b]Note:[/b] For performance reasons, the code inside [method assert] is "
+"only executed in debug builds or when running the project from the editor. "
+"Don't include code that has side effects in an [method assert] call. "
+"Otherwise, the project will behave differently when exported in release "
+"mode.\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"
+"var speed = -10\n"
+"assert(speed < 20) # True, the program will continue\n"
+"assert(speed >= 0) # False, the program will stop\n"
+"assert(speed >= 0 and 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:95
+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:107
+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:119
+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:128
+#: 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:135
+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"
+"a = ceil(1.45) # a is 2.0\n"
+"a = ceil(1.001) # a is 2.0\n"
+"[/codeblock]\n"
+"See also [method floor], [method round], [method stepify], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:147
+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:162
+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"
+"a = clamp(1000, 1, 20) # a is 20\n"
+"a = clamp(-10, 1, 20) # a is 1\n"
+"a = clamp(15, 1, 20) # a is 15\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:175
+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:190
+msgid ""
+"Returns the cosine of angle [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"a = cos(TAU) # a is 1.0\n"
+"a = cos(PI) # a is -1.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:201
+msgid ""
+"Returns the hyperbolic cosine of [code]s[/code] in radians.\n"
+"[codeblock]\n"
+"print(cosh(1)) # Prints 1.543081\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:211
+msgid "Converts from decibels to linear energy (audio)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:218
+msgid "Deprecated alias for [method step_decimals]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:227
+msgid ""
+"[b]Note:[/b] [code]dectime[/code] has been deprecated and will be removed in "
+"Godot 4.0, please use [method move_toward] instead.\n"
+"Returns the result of [code]value[/code] decreased by [code]step[/code] * "
+"[code]amount[/code].\n"
+"[codeblock]\n"
+"a = dectime(60, 10, 0.1)) # a is 59.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:238
+msgid ""
+"Converts an angle expressed in degrees to radians.\n"
+"[codeblock]\n"
+"r = deg2rad(180) # r is 3.141593\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:248
+msgid ""
+"Converts a dictionary (previously created with [method inst2dict]) back to "
+"an instance. Useful for deserializing."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:256
+msgid ""
+"Returns an \"eased\" value of [code]x[/code] based on an easing function "
+"defined with [code]curve[/code]. This easing function is based on an "
+"exponent. The [code]curve[/code] can be any floating-point number, with "
+"specific values leading to the following behaviors:\n"
+"[codeblock]\n"
+"- Lower than -1.0 (exclusive): Ease in-out\n"
+"- 1.0: Linear\n"
+"- Between -1.0 and 0.0 (exclusive): Ease out-in\n"
+"- 0.0: Constant\n"
+"- Between 0.0 to 1.0 (exclusive): Ease in\n"
+"- 1.0: Linear\n"
+"- Greater than 1.0 (exclusive): Ease out\n"
+"[/codeblock]\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
+"See also [method smoothstep]. If you need to perform more advanced "
+"transitions, use [Tween] or [AnimationPlayer]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:274
+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:286
+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 = floor(2.45) # a is 2.0\n"
+"a = floor(2.99) # a is 2.0\n"
+"a = floor(-2.99) # a is -3.0\n"
+"[/codeblock]\n"
+"See also [method ceil], [method round], [method stepify], and [int].\n"
+"[b]Note:[/b] This method returns a float. If you need an integer and "
+"[code]s[/code] is a non-negative number, you can use [code]int(s)[/code] "
+"directly."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:301
+msgid ""
+"Returns the floating-point remainder of [code]a/b[/code], keeping the sign "
+"of [code]a[/code].\n"
+"[codeblock]\n"
+"r = fmod(7, 5.5) # r is 1.5\n"
+"[/codeblock]\n"
+"For the integer remainder operation, use the % operator."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:313
+msgid ""
+"Returns the floating-point modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"for i in 7:\n"
+" var x = 0.5 * i - 1.5\n"
+" print(\"%4.1f %4.1f %4.1f\" % [x, fmod(x, 1.5), fposmod(x, 1.5)])\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-1.5 -0.0 0.0\n"
+"-1.0 -1.0 0.5\n"
+"-0.5 -0.5 1.0\n"
+" 0.0 0.0 0.0\n"
+" 0.5 0.5 0.5\n"
+" 1.0 1.0 1.0\n"
+" 1.5 0.0 0.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:336
+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:349
+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:370
+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:380
+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:399
+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:415
+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:430
+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:439
+msgid ""
+"Returns whether [code]s[/code] is an infinity value (either positive "
+"infinity or negative infinity)."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:446
+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:453
+msgid ""
+"Returns whether [code]s[/code] is a NaN (\"Not a Number\" or invalid) value."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:460
+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:468
+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:482
+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]linear_interpolate[/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:497
+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:514
+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:527
+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].\n"
+"This method is a simplified version of [method ResourceLoader.load], which "
+"can be used for more advanced scenarios."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:541
+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:554
+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:566
+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:579
+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:592
+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:609
+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:622
+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:640
+#: 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:648
+msgid ""
+"Returns the integer modulus of [code]a/b[/code] that wraps equally in "
+"positive and negative.\n"
+"[codeblock]\n"
+"for i in range(-3, 4):\n"
+" print(\"%2d %2d %2d\" % [i, i % 3, posmod(i, 3)])\n"
+"[/codeblock]\n"
+"Produces:\n"
+"[codeblock]\n"
+"-3 0 0\n"
+"-2 -2 1\n"
+"-1 -1 2\n"
+" 0 0 0\n"
+" 1 1 1\n"
+" 2 2 2\n"
+" 3 0 0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:670
+msgid ""
+"Returns the result of [code]base[/code] raised to the power of [code]exp[/"
+"code].\n"
+"[codeblock]\n"
+"pow(2, 5) # Returns 32.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:680
+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:691
+msgid ""
+"Converts one or more arguments of any type to string in the best way "
+"possible and prints them to the console.\n"
+"[codeblock]\n"
+"a = [1, 2, 3]\n"
+"print(\"a\", \"=\", a) # Prints a=[1, 2, 3]\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
+"print error and warning messages instead of [method print]. This "
+"distinguishes them from print messages used for debugging purposes, while "
+"also displaying a stack trace when an error or warning is printed."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:702
+msgid "Like [method print], but prints only when used in debug mode."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:708
+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:718
+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:727
+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:739
+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:748
+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:758
+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]\n"
+"[b]Note:[/b] Errors printed this way will not pause project execution. To "
+"print an error message and pause project execution in debug builds, use "
+"[code]assert(false, \"test error\")[/code] instead."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:769
+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:779
+msgid ""
+"Converts an angle expressed in radians to degrees.\n"
+"[codeblock]\n"
+"rad2deg(0.523599) # Returns 30.0\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:790
+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:800
+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:806
+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:815
+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:827
+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:837
+msgid ""
+"Returns an array with the given range. Range can be 1 argument [code]N[/"
+"code] (0 to [code]N[/code] - 1), two arguments ([code]initial[/code], "
+"[code]final - 1[/code]) or three arguments ([code]initial[/code], "
+"[code]final - 1[/code], [code]increment[/code]). Returns an empty array if "
+"the range isn't valid (e.g. [code]range(2, 5, -1)[/code] or [code]range(5, "
+"5, 1)[/code]).\n"
+"Returns an array with the given range. [code]range()[/code] can have 1 "
+"argument N ([code]0[/code] to [code]N - 1[/code]), two arguments "
+"([code]initial[/code], [code]final - 1[/code]) or three arguments "
+"([code]initial[/code], [code]final - 1[/code], [code]increment[/code]). "
+"[code]increment[/code] can be negative. If [code]increment[/code] is "
+"negative, [code]final - 1[/code] will become [code]final + 1[/code]. Also, "
+"the initial value must be greater than the final value for the loop to run.\n"
+"[codeblock]\n"
+"print(range(4))\n"
+"print(range(2, 5))\n"
+"print(range(0, 6, 2))\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"[0, 1, 2, 3]\n"
+"[2, 3, 4]\n"
+"[0, 2, 4]\n"
+"[/codeblock]\n"
+"To iterate over an [Array] backwards, use:\n"
+"[codeblock]\n"
+"var array = [3, 6, 9]\n"
+"var i := array.size() - 1\n"
+"while i >= 0:\n"
+" print(array[i])\n"
+" i -= 1\n"
+"[/codeblock]\n"
+"Output:\n"
+"[codeblock]\n"
+"9\n"
+"6\n"
+"3\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:874
+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:884
+msgid ""
+"Rounds [code]s[/code] to the nearest whole number, with halfway cases "
+"rounded away from zero.\n"
+"[codeblock]\n"
+"a = round(2.49) # a is 2.0\n"
+"a = round(2.5) # a is 3.0\n"
+"a = round(2.51) # a is 3.0\n"
+"[/codeblock]\n"
+"See also [method floor], [method ceil], [method stepify], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:897
+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:908
+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:920
+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:930
+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:943
+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(y) = "
+"3*y^2 - 2*y^3[/code] where [code]y = (x-from) / (to-from)[/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]\n"
+"Compared to [method ease] with a curve value of [code]-1.6521[/code], "
+"[method smoothstep] returns the smoothest possible curve with no sudden "
+"changes in the derivative. If you need to perform more advanced transitions, "
+"use [Tween] or [AnimationPlayer].\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
+"smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, "
+"-1.6521) return values[/url]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:960
+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:971
+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 = step_decimals(5) # n is 0\n"
+"n = step_decimals(1.0005) # n is 4\n"
+"n = step_decimals(0.000000005) # n is 9\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:984
+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.0\n"
+"stepify(3.14159, 0.01) # Returns 3.14\n"
+"[/codeblock]\n"
+"See also [method ceil], [method floor], [method round], and [int]."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:995
+msgid ""
+"Converts one or more arguments of any type 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:1008
+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:1020
+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:1030
+msgid ""
+"Returns the hyperbolic tangent of [code]s[/code].\n"
+"[codeblock]\n"
+"a = log(2.0) # a is 0.693147\n"
+"b = tanh(a) # b is 0.6\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1041
+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:1057
+msgid ""
+"Returns whether the given class exists in [ClassDB].\n"
+"[codeblock]\n"
+"type_exists(\"Sprite\") # Returns true\n"
+"type_exists(\"Variant\") # Returns false\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1068
+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:1082
+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:1098
+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:1105
+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:1123
+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:1133
+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:1157
+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:1176
+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 ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1207
+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:1210
+msgid ""
+"The circle constant, the circumference of the unit circle in radians. This "
+"is equivalent to [code]PI * 2[/code], or 360 degrees in rotations."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1213
+msgid ""
+"Positive floating-point infinity. This is the result of floating-point "
+"division when the divisor is [code]0.0[/code]. For negative infinity, use "
+"[code]-INF[/code]. Dividing by [code]-0.0[/code] will result in negative "
+"infinity if the numerator is positive, so dividing by [code]0.0[/code] is "
+"not the same as dividing by [code]-0.0[/code] (despite [code]0.0 == -0.0[/"
+"code] returning [code]true[/code]).\n"
+"[b]Note:[/b] Numeric infinity is only a concept with floating-point numbers, "
+"and has no equivalent for integers. Dividing an integer number by [code]0[/"
+"code] will not result in [constant INF] and will result in a run-time error "
+"instead."
+msgstr ""
+
+#: modules/gdscript/doc_classes/@GDScript.xml:1217
+msgid ""
+"\"Not a Number\", an invalid floating-point value. [constant NAN] has "
+"special properties, including that it is not equal to itself ([code]NAN == "
+"NAN[/code] returns [code]false[/code]). It is output by some invalid "
+"operations, such as dividing floating-point [code]0.0[/code] by [code]0.0[/"
+"code].\n"
+"[b]Note:[/b] \"Not a Number\" is only a concept with floating-point numbers, "
+"and has no equivalent for integers. Dividing an integer [code]0[/code] by "
+"[code]0[/code] will not result in [constant NAN] and will result in a run-"
+"time error instead."
+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, scancodes, property hints, etc.\n"
+"Singletons are also documented here, since they can be accessed from "
+"anywhere."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:16
+msgid "The [ARVRServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:19
+msgid "The [AudioServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:22
+msgid "The [CameraServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:25
+msgid "The [ClassDB] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:28
+msgid "The [Engine] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:31
+msgid "The [Geometry] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:34
+msgid "The [IP] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:37
+msgid "The [Input] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:40
+msgid "The [InputMap] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:43
+msgid "The [JSON] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:46
+msgid ""
+"The [JavaClassWrapper] singleton.\n"
+"[b]Note:[/b] Only implemented on Android."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:50
+msgid ""
+"The [JavaScript] singleton.\n"
+"[b]Note:[/b] Only implemented on HTML5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:54
+msgid "The [Marshalls] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:57
+msgid "The [EditorNavigationMeshGenerator] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:60
+msgid "The [OS] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:63
+msgid "The [Performance] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:66
+msgid "The [Physics2DServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:69
+msgid "The [PhysicsServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:72
+msgid "The [ProjectSettings] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:75
+msgid "The [ResourceLoader] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:78
+msgid "The [ResourceSaver] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:81
+msgid "The [TranslationServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:84
+msgid "The [VisualScriptEditor] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:87
+msgid "The [VisualServer] singleton."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:92
+msgid "Left margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:95
+msgid "Top margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:98
+msgid "Right margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:101
+msgid ""
+"Bottom margin, usually used for [Control] or [StyleBox]-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:104
+msgid "Top-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:107
+msgid "Top-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:110
+msgid "Bottom-right corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:113
+msgid "Bottom-left corner."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:116
+msgid ""
+"General vertical alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:119
+msgid ""
+"General horizontal alignment, usually used for [Separator], [ScrollBar], "
+"[Slider], etc."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:122
+msgid "Horizontal left alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:125
+msgid "Horizontal center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:128
+msgid "Horizontal right alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:131
+msgid "Vertical top alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:134
+msgid "Vertical center alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:137
+msgid "Vertical bottom alignment, usually for text-derived classes."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:140
+msgid "Scancodes with this bit applied are non-printable."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:143
+msgid "Escape key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:146
+msgid "Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:149
+msgid "Shift+Tab key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:152
+msgid "Backspace key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:155
+msgid "Return key (on the main keyboard)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:158
+msgid "Enter key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:161
+msgid "Insert key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:164
+msgid "Delete key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:167
+msgid "Pause key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:170
+msgid "Print Screen key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:173
+msgid "System Request key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:176
+msgid "Clear key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:179
+msgid "Home key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:182
+msgid "End key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:185
+msgid "Left arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:188
+msgid "Up arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:191
+msgid "Right arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:194
+msgid "Down arrow key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:197
+msgid "Page Up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:200
+msgid "Page Down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:203
+msgid "Shift key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:206
+msgid "Control key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:209
+msgid "Meta key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:212
+msgid "Alt key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:215
+msgid "Caps Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:218
+msgid "Num Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:221
+msgid "Scroll Lock key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:224
+msgid "F1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:227
+msgid "F2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:230
+msgid "F3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:233
+msgid "F4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:236
+msgid "F5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:239
+msgid "F6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:242
+msgid "F7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:245
+msgid "F8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:248
+msgid "F9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:251
+msgid "F10 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:254
+msgid "F11 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:257
+msgid "F12 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:260
+msgid "F13 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:263
+msgid "F14 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:266
+msgid "F15 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:269
+msgid "F16 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:272
+msgid "Multiply (*) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:275
+msgid "Divide (/) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:278
+msgid "Subtract (-) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:281
+msgid "Period (.) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:284
+msgid "Add (+) key on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:287
+msgid "Number 0 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:290
+msgid "Number 1 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:293
+msgid "Number 2 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:296
+msgid "Number 3 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:299
+msgid "Number 4 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:302
+msgid "Number 5 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:305
+msgid "Number 6 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:308
+msgid "Number 7 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:311
+msgid "Number 8 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:314
+msgid "Number 9 on the numeric keypad."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:317
+msgid "Left Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:320
+msgid "Right Super key (Windows key)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:323
+msgid "Context menu key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:326
+msgid "Left Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:329
+msgid "Right Hyper key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:332
+msgid "Help key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:335
+msgid "Left Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:338
+msgid "Right Direction key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:341
+msgid ""
+"Media back key. Not to be confused with the Back button on an Android device."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:344
+msgid "Media forward key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:347 doc/classes/@GlobalScope.xml:380
+msgid "Media stop key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:350
+msgid "Media refresh key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:353
+msgid "Volume down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:356
+msgid "Mute volume key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:359
+msgid "Volume up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:362
+msgid "Bass Boost key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:365
+msgid "Bass up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:368
+msgid "Bass down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:371
+msgid "Treble up key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:374
+msgid "Treble down key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:377
+msgid "Media play key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:383
+msgid "Previous song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:386
+msgid "Next song key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:389
+msgid "Media record key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:392
+msgid "Home page key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:395
+msgid "Favorites key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:398
+msgid "Search key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:401
+msgid "Standby key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:404
+msgid "Open URL / Launch Browser key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:407
+msgid "Launch Mail key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:410
+msgid "Launch Media key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:413
+msgid "Launch Shortcut 0 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:416
+msgid "Launch Shortcut 1 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:419
+msgid "Launch Shortcut 2 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:422
+msgid "Launch Shortcut 3 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:425
+msgid "Launch Shortcut 4 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:428
+msgid "Launch Shortcut 5 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:431
+msgid "Launch Shortcut 6 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:434
+msgid "Launch Shortcut 7 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:437
+msgid "Launch Shortcut 8 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:440
+msgid "Launch Shortcut 9 key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:443
+msgid "Launch Shortcut A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:446
+msgid "Launch Shortcut B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:449
+msgid "Launch Shortcut C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:452
+msgid "Launch Shortcut D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:455
+msgid "Launch Shortcut E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:458
+msgid "Launch Shortcut F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:461
+msgid "Unknown key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:464
+msgid "Space key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:467
+msgid "! key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:470
+msgid "\" key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:473
+msgid "# key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:476
+msgid "$ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:479
+msgid "% 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 "Number 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:515
+msgid "Number 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:518
+msgid "Number 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:521
+msgid "Number 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:524
+msgid "Number 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:527
+msgid "Number 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:530
+msgid "Number 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:533
+msgid "Number 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:536
+msgid "Number 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:539
+msgid "Number 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:542
+msgid ": key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:545
+msgid "; key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:548
+msgid "< key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:551
+msgid "= key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:554
+msgid "> key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:557
+msgid "? key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:560
+msgid "@ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:563
+msgid "A key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:566
+msgid "B key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:569
+msgid "C key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:572
+msgid "D key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:575
+msgid "E key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:578
+msgid "F key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:581
+msgid "G key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:584
+msgid "H key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:587
+msgid "I key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:590
+msgid "J key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:593
+msgid "K key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:596
+msgid "L key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:599
+msgid "M key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:602
+msgid "N key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:605
+msgid "O key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:608
+msgid "P key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:611
+msgid "Q key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:614
+msgid "R key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:617
+msgid "S key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:620
+msgid "T key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:623
+msgid "U key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:626
+msgid "V key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:629
+msgid "W key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:632
+msgid "X key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:635
+msgid "Y key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:638
+msgid "Z key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:641
+msgid "[ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:644
+msgid "\\ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:647
+msgid "] key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:650
+msgid "^ key."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:653
+msgid "_ 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 "Non-breakable space 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 "Â¥ 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 "Soft hyphen 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 "² 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 Code mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:872
+msgid "Modifier key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:875
+msgid "Shift key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:878
+msgid "Alt key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:881
+msgid "Meta key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:884
+msgid "Ctrl key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:887
+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:890
+msgid "Keypad key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:893
+msgid "Group Switch key mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:896
+msgid "Left mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:899
+msgid "Right mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:902
+msgid "Middle mouse button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:905
+msgid "Extra mouse button 1 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:908
+msgid "Extra mouse button 2 (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:911
+msgid "Mouse wheel up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:914
+msgid "Mouse wheel down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:917
+msgid "Mouse wheel left button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:920
+msgid "Mouse wheel right button (only present on some mice)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:923
+msgid "Left mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:926
+msgid "Right mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:929
+msgid "Middle mouse button mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:932
+msgid "Extra mouse button 1 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:935
+msgid "Extra mouse button 2 mask."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:938
+msgid "Invalid button or axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:941
+msgid "Gamepad button 0."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:944
+msgid "Gamepad button 1."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:947
+msgid "Gamepad button 2."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:950
+msgid "Gamepad button 3."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:953
+msgid "Gamepad button 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:956
+msgid "Gamepad button 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:959
+msgid "Gamepad button 6."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:962
+msgid "Gamepad button 7."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:965
+msgid "Gamepad button 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:968
+msgid "Gamepad button 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:971
+msgid "Gamepad button 10."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:974
+msgid "Gamepad button 11."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:977
+msgid "Gamepad button 12."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:980
+msgid "Gamepad button 13."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:983
+msgid "Gamepad button 14."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:986
+msgid "Gamepad button 15."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:989
+msgid "Gamepad button 16."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:992
+msgid "Gamepad button 17."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:995
+msgid "Gamepad button 18."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:998
+msgid "Gamepad button 19."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1001
+msgid "Gamepad button 20."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1004
+msgid "Gamepad button 21."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1007
+msgid "Gamepad button 22."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1010
+msgid "Represents the maximum number of joystick buttons supported."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1013
+msgid "DualShock circle button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1016
+msgid "DualShock X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1019
+msgid "DualShock square button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1022
+msgid "DualShock triangle button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1025
+msgid "Xbox controller B button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1028
+msgid "Xbox controller A button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1031
+msgid "Xbox controller X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1034
+msgid "Xbox controller Y button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1037
+msgid "Nintendo controller A button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1040
+msgid "Nintendo controller B button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1043
+msgid "Nintendo controller X button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1046
+msgid "Nintendo controller Y button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1049
+msgid "Grip (side) buttons on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1052
+msgid "Push down on the touchpad or main joystick on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1055
+msgid "Trigger on a VR controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1058
+msgid ""
+"A button on the right Oculus Touch controller, X button on the left "
+"controller (also when used in OpenVR)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1061
+msgid ""
+"B button on the right Oculus Touch controller, Y button on the left "
+"controller (also when used in OpenVR)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1064
+msgid "Menu button on either Oculus Touch controller."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1067
+msgid "Menu button in OpenVR (Except when Oculus Touch controllers are used)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1070
+msgid "Gamepad button Select."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1073
+msgid "Gamepad button Start."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1076
+msgid "Gamepad DPad up."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1079
+msgid "Gamepad DPad down."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1082
+msgid "Gamepad DPad left."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1085
+msgid "Gamepad DPad right."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1088
+msgid "Gamepad SDL guide button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1091
+msgid "Gamepad SDL miscellaneous button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1094
+msgid "Gamepad SDL paddle 1 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1097
+msgid "Gamepad SDL paddle 2 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1100
+msgid "Gamepad SDL paddle 3 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1103
+msgid "Gamepad SDL paddle 4 button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1106
+msgid "Gamepad SDL touchpad button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1109
+msgid "Gamepad left Shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1112
+msgid "Gamepad left trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1115
+msgid "Gamepad left stick click."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1118
+msgid "Gamepad right Shoulder button."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1121
+msgid "Gamepad right trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1124
+msgid "Gamepad right stick click."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1127 doc/classes/@GlobalScope.xml:1160
+msgid "Gamepad left stick horizontal axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1130 doc/classes/@GlobalScope.xml:1163
+msgid "Gamepad left stick vertical axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1133 doc/classes/@GlobalScope.xml:1166
+msgid "Gamepad right stick horizontal axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1136 doc/classes/@GlobalScope.xml:1169
+msgid "Gamepad right stick vertical axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1139
+msgid "Generic gamepad axis 4."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1142
+msgid "Generic gamepad axis 5."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1145
+msgid "Gamepad left trigger analog axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1148
+msgid "Gamepad right trigger analog axis."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1151
+msgid "Generic gamepad axis 8."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1154
+msgid "Generic gamepad axis 9."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1157
+msgid "Represents the maximum number of joystick axes supported."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1172
+msgid "Gamepad left analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1175
+msgid "Gamepad right analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1178
+msgid "VR Controller analog trigger."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1181
+msgid "VR Controller analog grip (side buttons)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1184
+msgid ""
+"OpenVR touchpad X axis (Joystick axis on Oculus Touch and Windows MR "
+"controllers)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1187
+msgid ""
+"OpenVR touchpad Y axis (Joystick axis on Oculus Touch and Windows MR "
+"controllers)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1190
+msgid "MIDI note OFF message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1193
+msgid "MIDI note ON message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1196
+msgid "MIDI aftertouch message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1199
+msgid "MIDI control change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1202
+msgid "MIDI program change message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1205
+msgid "MIDI channel pressure message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1208
+msgid "MIDI pitch bend message."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1211
+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:1223
+msgid "Generic error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1226
+msgid "Unavailable error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1229
+msgid "Unconfigured error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1232
+msgid "Unauthorized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1235
+msgid "Parameter range error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1238
+msgid "Out of memory (OOM) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1241
+msgid "File: Not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1244
+msgid "File: Bad drive error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1247
+msgid "File: Bad path error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1250
+msgid "File: No permission error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1253
+msgid "File: Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1256
+msgid "File: Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1259
+msgid "File: Can't write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1262
+msgid "File: Can't read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1265
+msgid "File: Unrecognized error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1268
+msgid "File: Corrupt error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1271
+msgid "File: Missing dependencies error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1274
+msgid "File: End of file (EOF) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1277
+msgid "Can't open error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1280
+msgid "Can't create error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1283
+msgid "Query failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1286
+msgid "Already in use error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1289
+msgid "Locked error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1292
+msgid "Timeout error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1295
+msgid "Can't connect error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1298
+msgid "Can't resolve error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1301
+msgid "Connection error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1304
+msgid "Can't acquire resource error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1307
+msgid "Can't fork process error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1310
+msgid "Invalid data error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1313
+msgid "Invalid parameter error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1316
+msgid "Already exists error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1319
+msgid "Does not exist error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1322
+msgid "Database: Read error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1325
+msgid "Database: Write error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1328
+msgid "Compilation failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1331
+msgid "Method not found error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1334
+msgid "Linking failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1337
+msgid "Script failed error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1340
+msgid "Cycling link (import cycle) error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1343
+msgid "Invalid declaration error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1346
+msgid "Duplicate symbol error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1349
+msgid "Parse error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1352
+msgid "Busy error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1355
+msgid "Skip error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1358
+msgid "Help error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1361
+msgid "Bug error."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1364
+msgid ""
+"Printer on fire error. (This is an easter egg, no engine methods return this "
+"error code.)"
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1367
+msgid "No hint for the edited property."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1370
+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:1373
+msgid ""
+"Hints that a 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:1376
+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:1379
+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:1382 doc/classes/@GlobalScope.xml:1385
+msgid "Deprecated hint, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1388
+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:1391
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1394
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 2D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1397
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"render layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1400
+msgid ""
+"Hints that an integer property is a bitmask using the optionally named 3D "
+"physics layers."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1403
+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:1406
+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:1409
+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:1412
+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:1415
+msgid ""
+"Hints that a property is an instance of a [Resource]-derived type, "
+"optionally specified via the hint string (e.g. [code]\"Texture\"[/code]). "
+"Editing it will show a popup menu of valid resource types to instantiate."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1418
+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:1421
+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:1424
+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:1427
+msgid "Hints that an image is compressed using lossy compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1430
+msgid "Hints that an image is compressed using lossless compression."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1433
+msgid "The property is serialized and saved in the scene file (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1436
+msgid "The property is shown in the editor inspector (default)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1439 doc/classes/@GlobalScope.xml:1442
+msgid "Deprecated usage flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1445
+msgid "The property can be checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1448
+msgid "The property is checked in the editor inspector."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1451
+msgid "The property is a translatable string."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1454
+msgid "Used to group properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1457
+msgid "Used to categorize properties together in the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1460
+msgid "The property does not save its state in [PackedScene]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1463
+msgid "Editing the property prompts the user for restarting the editor."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1466
+msgid ""
+"The property is a script variable which should be serialized and saved in "
+"the scene file."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1469
+msgid "Default usage (storage, editor and network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1472
+msgid ""
+"Default usage for translatable strings (storage, editor, network and "
+"internationalized)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1475
+msgid ""
+"Default usage but without showing the property in the editor (storage, "
+"network)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1478
+msgid "Flag for a normal method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1481
+msgid "Flag for an editor method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1484 doc/classes/@GlobalScope.xml:1490
+#: doc/classes/@GlobalScope.xml:1496
+msgid "Deprecated method flag, unused."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1487
+msgid "Flag for a constant method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1493
+msgid "Flag for a virtual method."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1499
+msgid "Default method flags."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1502
+msgid "Variable is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1505
+msgid "Variable is of type [bool]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1508
+msgid "Variable is of type [int]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1511
+msgid "Variable is of type [float] (real)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1514
+msgid "Variable is of type [String]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1517
+msgid "Variable is of type [Vector2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1520
+msgid "Variable is of type [Rect2]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1523
+msgid "Variable is of type [Vector3]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1526
+msgid "Variable is of type [Transform2D]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1529
+msgid "Variable is of type [Plane]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1532
+msgid "Variable is of type [Quat]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1535
+msgid "Variable is of type [AABB]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1538
+msgid "Variable is of type [Basis]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1541
+msgid "Variable is of type [Transform]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1544
+msgid "Variable is of type [Color]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1547
+msgid "Variable is of type [NodePath]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1550
+msgid "Variable is of type [RID]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1553
+msgid "Variable is of type [Object]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1556
+msgid "Variable is of type [Dictionary]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1559
+msgid "Variable is of type [Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1562
+msgid "Variable is of type [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1565
+msgid "Variable is of type [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1568
+msgid "Variable is of type [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1571
+msgid "Variable is of type [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1574
+msgid "Variable is of type [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1577
+msgid "Variable is of type [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1580
+msgid "Variable is of type [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1583
+msgid "Represents the size of the [enum Variant.Type] enum."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1586
+msgid "Equality operator ([code]==[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1589
+msgid "Inequality operator ([code]!=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1592
+msgid "Less than operator ([code]<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1595
+msgid "Less than or equal operator ([code]<=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1598
+msgid "Greater than operator ([code]>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1601
+msgid "Greater than or equal operator ([code]>=[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1604
+msgid "Addition operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1607
+msgid "Subtraction operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1610
+msgid "Multiplication operator ([code]*[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1613
+msgid "Division operator ([code]/[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1616
+msgid "Unary negation operator ([code]-[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1619
+msgid "Unary plus operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1622
+msgid "Remainder/modulo operator ([code]%[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1625
+msgid "String concatenation operator ([code]+[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1628
+msgid "Left shift operator ([code]<<[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1631
+msgid "Right shift operator ([code]>>[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1634
+msgid "Bitwise AND operator ([code]&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1637
+msgid "Bitwise OR operator ([code]|[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1640
+msgid "Bitwise XOR operator ([code]^[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1643
+msgid "Bitwise NOT operator ([code]~[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1646
+msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1649
+msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1652
+msgid "Logical XOR operator (not implemented in GDScript)."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1655
+msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1658
+msgid "Logical IN operator ([code]in[/code])."
+msgstr ""
+
+#: doc/classes/@GlobalScope.xml:1661
+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.\n"
+"It uses floating-point coordinates. The 2D counterpart to [AABB] is "
+"[Rect2].\n"
+"[b]Note:[/b] Unlike [Rect2], [AABB] does not have a variant that uses "
+"integer coordinates."
+msgstr ""
+
+#: doc/classes/AABB.xml:12 doc/classes/Basis.xml:13 doc/classes/Plane.xml:10
+#: doc/classes/Rect2.xml:12 doc/classes/Transform.xml:11
+#: doc/classes/Transform2D.xml:11 doc/classes/Vector2.xml:11
+#: doc/classes/Vector3.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/math/index.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:13 doc/classes/Rect2.xml:13 doc/classes/Vector2.xml:12
+#: doc/classes/Vector3.xml:12
+msgid "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:14 doc/classes/Rect2.xml:14 doc/classes/Vector2.xml:13
+#: doc/classes/Vector3.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html"
+msgstr ""
+
+#: doc/classes/AABB.xml:22
+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:35
+msgid ""
+"Returns [code]true[/code] if this [AABB] completely encloses another one."
+msgstr ""
+
+#: doc/classes/AABB.xml:42
+msgid "Returns this [AABB] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/AABB.xml:48
+msgid "Returns the volume of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:55
+msgid "Gets the position of the 8 endpoints of the [AABB] in space."
+msgstr ""
+
+#: doc/classes/AABB.xml:61
+msgid "Returns the normalized longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:67
+msgid ""
+"Returns the index of the longest axis of the [AABB] (according to "
+"[Vector3]'s [code]AXIS_*[/code] constants)."
+msgstr ""
+
+#: doc/classes/AABB.xml:73
+msgid "Returns the scalar length of the longest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:79
+msgid "Returns the normalized shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:85
+msgid ""
+"Returns the index of the shortest axis of the [AABB] (according to "
+"[Vector3]::AXIS* enum)."
+msgstr ""
+
+#: doc/classes/AABB.xml:91
+msgid "Returns the scalar length of the shortest axis of the [AABB]."
+msgstr ""
+
+#: doc/classes/AABB.xml:98
+msgid ""
+"Returns the support point in a given direction. This is useful for collision "
+"detection algorithms."
+msgstr ""
+
+#: doc/classes/AABB.xml:105
+msgid ""
+"Returns a copy of the [AABB] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/AABB.xml:111
+msgid "Returns [code]true[/code] if the [AABB] is flat or empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:117
+msgid "Returns [code]true[/code] if the [AABB] is empty."
+msgstr ""
+
+#: doc/classes/AABB.xml:124
+msgid "Returns [code]true[/code] if the [AABB] contains a point."
+msgstr ""
+
+#: doc/classes/AABB.xml:131
+msgid ""
+"Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is "
+"returned on failure."
+msgstr ""
+
+#: doc/classes/AABB.xml:138
+msgid "Returns [code]true[/code] if the [AABB] overlaps with another."
+msgstr ""
+
+#: doc/classes/AABB.xml:145
+msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane."
+msgstr ""
+
+#: doc/classes/AABB.xml:153
+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:160
+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:167
+msgid ""
+"Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/AABB.xml:173 doc/classes/Rect2.xml:132
+msgid ""
+"Ending corner. This is calculated as [code]position + size[/code]. Setting "
+"this value will change the size."
+msgstr ""
+
+#: doc/classes/AABB.xml:176 doc/classes/Rect2.xml:135
+msgid "Beginning corner. Typically has values lower than [member end]."
+msgstr ""
+
+#: doc/classes/AABB.xml:179 doc/classes/Rect2.xml:138
+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:18
+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.\n"
+"You can use [method remove_button] method to remove a button created with "
+"this method from the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:27
+msgid ""
+"Adds a button with label [code]name[/code] and a cancel action to the dialog "
+"and returns the created button.\n"
+"You can use [method remove_button] method to remove a button created with "
+"this method from the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:34
+msgid ""
+"Returns the label used for built-in text.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:41
+msgid ""
+"Returns the OK [Button] instance.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:49
+msgid ""
+"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
+"dialog will be accepted."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:56
+msgid ""
+"Removes the [code]button[/code] from the dialog. Does NOT free the "
+"[code]button[/code]. The [code]button[/code] must be a [Button] added with "
+"[method add_button] or [method add_cancel] method. After removal, pressing "
+"the [code]button[/code] will no longer emit this dialog's [signal "
+"custom_action] signal or cancel this dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:62
+msgid "Sets autowrapping for the text in the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:65
+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:69
+msgid "The text displayed by the dialog."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:76
+msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
+msgstr ""
+
+#: doc/classes/AcceptDialog.xml:82
+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:46
+msgid "Close this AES context so it can be started again. See [method start]."
+msgstr ""
+
+#: doc/classes/AESContext.xml:52
+msgid ""
+"Get the current IV state for this context (IV gets updated when calling "
+"[method update]). You normally don't need this function.\n"
+"[b]Note:[/b] 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:62
+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:69
+msgid ""
+"Run the desired operation for this AES context. Will return a "
+"[PoolByteArray] containing the result of encrypting (or decrypting) the "
+"given [code]src[/code]. See [method start] for mode of operation.\n"
+"[b]Note:[/b] The size of [code]src[/code] must be a multiple of 16. Apply "
+"some padding if needed."
+msgstr ""
+
+#: doc/classes/AESContext.xml:76
+msgid "AES electronic codebook encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:79
+msgid "AES electronic codebook decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:82
+msgid "AES cipher blocker chaining encryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:85
+msgid "AES cipher blocker chaining decryption mode."
+msgstr ""
+
+#: doc/classes/AESContext.xml:88
+msgid "Maximum value for the mode enum."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:4
+msgid "Sprite node that can use multiple textures for animation."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel.\n"
+"[b]Note:[/b] You can associate a set of normal maps by creating additional "
+"[SpriteFrames] resources with a [code]_normal[/code] suffix. For example, "
+"having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/"
+"code] will make it so the [code]run[/code] animation uses the normal map."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:11 doc/classes/AnimatedSprite3D.xml:10
+#: doc/classes/AnimationPlayer.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html"
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:12 doc/classes/Area2D.xml:11
+#: doc/classes/AudioStreamPlayer.xml:12 doc/classes/Button.xml:24
+#: doc/classes/CanvasLayer.xml:12 doc/classes/CollisionShape2D.xml:11
+#: doc/classes/ColorRect.xml:10 doc/classes/Input.xml:11
+#: doc/classes/InputEvent.xml:12 doc/classes/InputEventAction.xml:11
+#: doc/classes/Label.xml:12 doc/classes/Particles2D.xml:15
+#: doc/classes/Timer.xml:11 doc/classes/VisibilityNotifier2D.xml:12
+msgid "https://godotengine.org/asset-library/asset/515"
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:18 doc/classes/AnimatedSprite3D.xml:16
+msgid "Returns [code]true[/code] if an animation is currently being played."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:26
+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/AnimatedSprite.xml:32 doc/classes/AnimatedSprite3D.xml:29
+msgid "Stops the current animation (does not reset the frame counter)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:38 doc/classes/AnimatedSprite3D.xml:35
+msgid ""
+"The current animation from the [code]frames[/code] resource. If this value "
+"changes, the [code]frame[/code] counter is reset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:41 doc/classes/SpriteBase3D.xml:48
+msgid "If [code]true[/code], texture will be centered."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:44 doc/classes/Sprite.xml:39
+#: doc/classes/SpriteBase3D.xml:54 doc/classes/TextureButton.xml:21
+#: doc/classes/TextureRect.xml:20
+msgid "If [code]true[/code], texture is flipped horizontally."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:47 doc/classes/Sprite.xml:42
+#: doc/classes/SpriteBase3D.xml:57 doc/classes/TextureButton.xml:24
+#: doc/classes/TextureRect.xml:23
+msgid "If [code]true[/code], texture is flipped vertically."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:50 doc/classes/AnimatedSprite3D.xml:38
+msgid "The displayed animation frame's index."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:53 doc/classes/AnimatedSprite3D.xml:41
+msgid "The [SpriteFrames] resource containing the animation(s)."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:56 doc/classes/Sprite.xml:58
+#: doc/classes/SpriteBase3D.xml:63
+msgid "The texture's drawing offset."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:59 doc/classes/AnimatedSprite3D.xml:44
+msgid "If [code]true[/code], the [member animation] is currently playing."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:62
+msgid "The animation speed is multiplied by this value."
+msgstr ""
+
+#: doc/classes/AnimatedSprite.xml:68 doc/classes/AnimatedSprite3D.xml:50
+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/AnimatedSprite.xml:73 doc/classes/AnimatedSprite3D.xml:55
+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:7
+msgid ""
+"Animations are created using a [SpriteFrames] resource, which can be "
+"configured in the editor via the SpriteFrames panel."
+msgstr ""
+
+#: doc/classes/AnimatedSprite3D.xml:23
+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 [AnimatedSprite], it isn't a [Node], "
+"but has the advantage of being usable anywhere a [Texture] 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.\n"
+"[b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each "
+"frame needs to be a separate [Texture]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:19
+msgid "Returns the given frame's delay value."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:26
+msgid "Returns the given frame's [Texture]."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:34
+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:49
+msgid ""
+"Assigns a [Texture] 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:56
+msgid "Sets the currently visible frame of the texture."
+msgstr ""
+
+#: doc/classes/AnimatedTexture.xml:60
+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:64
+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:67
+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:70
+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:75
+msgid ""
+"The maximum number of frames supported by [AnimatedTexture]. If you need "
+"more frames in your animation, use [AnimationPlayer] or [AnimatedSprite]."
+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] or [AnimationTreePlayer] 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:12
+msgid "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html"
+msgstr ""
+
+#: doc/classes/Animation.xml:28
+msgid "Adds a track to the Animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:36
+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:45
+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:54
+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:62
+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:71
+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:80
+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:91
+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:101
+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:110
+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:119
+msgid ""
+"Sets the stream of the key identified by [code]key_idx[/code] to value "
+"[code]stream[/code]. The [code]track_idx[/code] must be the index of an "
+"Audio Track."
+msgstr ""
+
+#: doc/classes/Animation.xml:127
+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:135
+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:143
+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:154
+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:163
+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:172
+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:181
+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:190
+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:196
+msgid "Clear the animation (clear all tracks and reset all)."
+msgstr ""
+
+#: doc/classes/Animation.xml:204
+msgid ""
+"Adds a new track that is a copy of the given track from [code]to_animation[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:211
+msgid ""
+"Returns the index of the specified track. If the track is not found, return "
+"-1."
+msgstr ""
+
+#: doc/classes/Animation.xml:217
+msgid "Returns the amount of tracks in the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:226
+msgid ""
+"Returns all the key indices of a method track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:234
+msgid "Returns the method name of a method track."
+msgstr ""
+
+#: doc/classes/Animation.xml:242
+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:249
+msgid "Removes a track by specifying the track index."
+msgstr ""
+
+#: doc/classes/Animation.xml:258
+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:265
+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:272
+msgid "Returns the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:279
+msgid "Returns the amount of keys in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:287
+msgid "Returns the time at which the key is located."
+msgstr ""
+
+#: doc/classes/Animation.xml:295
+msgid ""
+"Returns the transition curve (easing) for a specific key (see the built-in "
+"math function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:303
+msgid "Returns the value of a given key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:310
+msgid ""
+"Gets the path of a track. For more information on the path format, see "
+"[method track_set_path]."
+msgstr ""
+
+#: doc/classes/Animation.xml:317
+msgid "Gets the type of a track."
+msgstr ""
+
+#: doc/classes/Animation.xml:327
+msgid "Insert a generic key in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:334
+msgid ""
+"Returns [code]true[/code] if the track at index [code]idx[/code] is enabled."
+msgstr ""
+
+#: doc/classes/Animation.xml:341
+msgid ""
+"Returns [code]true[/code] if the given track is imported. Else, return "
+"[code]false[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:348
+msgid "Moves a track down."
+msgstr ""
+
+#: doc/classes/Animation.xml:356
+msgid ""
+"Changes the index position of track [code]idx[/code] to the one defined in "
+"[code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:363
+msgid "Moves a track up."
+msgstr ""
+
+#: doc/classes/Animation.xml:371
+msgid "Removes a key by index in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:379
+msgid "Removes a key by position (seconds) in a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:387
+msgid "Enables/disables the given track. Tracks are enabled by default."
+msgstr ""
+
+#: doc/classes/Animation.xml:395
+msgid "Sets the given track as imported or not."
+msgstr ""
+
+#: doc/classes/Animation.xml:403
+msgid ""
+"If [code]true[/code], the track at [code]idx[/code] wraps the interpolation "
+"loop."
+msgstr ""
+
+#: doc/classes/Animation.xml:411
+msgid "Sets the interpolation type of a given track."
+msgstr ""
+
+#: doc/classes/Animation.xml:420
+msgid "Sets the time of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:429
+msgid ""
+"Sets the transition curve (easing) for a specific key (see the built-in math "
+"function [method @GDScript.ease])."
+msgstr ""
+
+#: doc/classes/Animation.xml:438
+msgid "Sets the value of an existing key."
+msgstr ""
+
+#: doc/classes/Animation.xml:446
+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:455
+msgid ""
+"Swaps the track [code]idx[/code]'s index position with the track "
+"[code]with_idx[/code]."
+msgstr ""
+
+#: doc/classes/Animation.xml:466
+msgid "Insert a transform key for a transform track."
+msgstr ""
+
+#: doc/classes/Animation.xml:474
+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:483
+msgid ""
+"Returns all the key indices of a value track, given a position and delta "
+"time."
+msgstr ""
+
+#: doc/classes/Animation.xml:490
+msgid "Returns the update mode of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:498
+msgid ""
+"Returns the interpolated value at the given time (in seconds). The "
+"[code]track_idx[/code] must be the index of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:506
+msgid "Sets the update mode (see [enum UpdateMode]) of a value track."
+msgstr ""
+
+#: doc/classes/Animation.xml:512
+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:516
+msgid ""
+"A flag indicating that the animation must loop. This is used for correct "
+"interpolation of animation cycles, and for hinting the player that it must "
+"restart the animation."
+msgstr ""
+
+#: doc/classes/Animation.xml:519
+msgid "The animation step value."
+msgstr ""
+
+#: doc/classes/Animation.xml:525
+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:531
+msgid ""
+"Value tracks set values in node properties, but only those which can be "
+"Interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:534
+msgid ""
+"Transform tracks are used to change node local transforms or skeleton pose "
+"bones. Transitions are interpolated."
+msgstr ""
+
+#: doc/classes/Animation.xml:537
+msgid "Method tracks call functions with given arguments per key."
+msgstr ""
+
+#: doc/classes/Animation.xml:540
+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:543
+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:546
+msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/Animation.xml:549
+msgid "No interpolation (nearest value)."
+msgstr ""
+
+#: doc/classes/Animation.xml:552
+msgid "Linear interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:555
+msgid "Cubic interpolation."
+msgstr ""
+
+#: doc/classes/Animation.xml:558
+msgid "Update between keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:561
+msgid "Update at the keyframes and hold the value."
+msgstr ""
+
+#: doc/classes/Animation.xml:564
+msgid "Update at the keyframes."
+msgstr ""
+
+#: doc/classes/Animation.xml:567
+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:21
+#: doc/classes/AnimationNodeTransition.xml:10 doc/classes/AnimationTree.xml:11
+#: doc/classes/AnimationTreePlayer.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html"
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:18
+msgid ""
+"Adds an input to the node. This is only useful for nodes created for use in "
+"an [AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:29
+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:41
+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:54
+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:60
+msgid "Gets the text caption for this node (used by some editors)."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:67
+msgid ""
+"Gets a child node by index (used by editors inheriting from "
+"[AnimationRootNode])."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:73
+msgid ""
+"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
+"Only useful when inheriting [AnimationRootNode]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:79
+msgid ""
+"Amount of inputs in this node, only useful for nodes that go into "
+"[AnimationNodeBlendTree]."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:86
+msgid "Gets the name of an input by index."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:93
+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:100
+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:106
+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:112
+msgid ""
+"Returns [code]true[/code] whether you want the blend tree editor to display "
+"filter editing on this node."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:119
+msgid "Returns [code]true[/code] whether a given path is filtered."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:127
+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:136
+msgid "Removes an input, call this only when inactive."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:144
+msgid "Adds or removes a path for the filter."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:152
+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:158
+msgid "If [code]true[/code], filtering is enabled."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:164
+msgid "Called when the node was removed from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:169
+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:175
+msgid "Do not use filtering."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:178
+msgid "Paths matching the filter will be allowed to pass."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:181
+msgid "Paths matching the filter will be discarded."
+msgstr ""
+
+#: doc/classes/AnimationNode.xml:184
+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:21
+#: doc/classes/AnimationNodeBlend2.xml:18
+#: 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/AnimationNodeAdd3.xml:15
+#: doc/classes/AnimationNodeAnimation.xml:12
+#: doc/classes/AnimationNodeBlend2.xml:12
+#: doc/classes/AnimationNodeBlendSpace2D.xml:13
+#: doc/classes/AnimationNodeOneShot.xml:11
+#: doc/classes/AnimationNodeOutput.xml:11
+#: doc/classes/AnimationNodeTransition.xml:12
+#: doc/classes/AnimationPlayer.xml:14 doc/classes/AnimationTree.xml:12
+#: doc/classes/AudioEffectReverb.xml:11 doc/classes/Camera.xml:10
+#: doc/classes/CollisionShape.xml:13 doc/classes/CylinderShape.xml:10
+#: doc/classes/Environment.xml:19 doc/classes/GIProbe.xml:14
+#: doc/classes/GIProbeData.xml:8 doc/classes/KinematicBody.xml:16
+#: doc/classes/Light.xml:11 doc/classes/Material.xml:11 doc/classes/Mesh.xml:13
+#: doc/classes/MeshInstance.xml:13 doc/classes/Particles.xml:14
+#: doc/classes/Quat.xml:13 doc/classes/Skeleton.xml:13
+#: doc/classes/SpotLight.xml:12 doc/classes/StaticBody.xml:12
+#: doc/classes/WorldEnvironment.xml:15
+msgid "https://godotengine.org/asset-library/asset/678"
+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:11
+#: doc/classes/AnimationNodeBlend2.xml:11
+#: doc/classes/AnimationNodeOutput.xml:10
+#: doc/classes/AnimationNodeTimeScale.xml:11
+#: doc/classes/AnimationNodeTransition.xml:11 doc/classes/Area.xml:10
+#: doc/classes/Basis.xml:17 doc/classes/BoxShape.xml:12
+#: doc/classes/CollisionShape.xml:12 modules/gridmap/doc_classes/GridMap.xml:15
+#: doc/classes/KinematicBody.xml:14 doc/classes/Mesh.xml:12
+#: doc/classes/MeshInstance.xml:12 doc/classes/MeshLibrary.xml:11
+#: doc/classes/ProjectSettings.xml:14 doc/classes/Transform.xml:15
+msgid "https://godotengine.org/asset-library/asset/125"
+msgstr ""
+
+#: doc/classes/AnimationNodeAnimation.xml:18
+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:22
+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:28
+msgid "Returns the number of points on the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:35
+msgid ""
+"Returns the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:42
+#: doc/classes/AnimationNodeBlendSpace2D.xml:52
+msgid "Returns the position of the point at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:49
+msgid "Removes the point at index [code]point[/code] from the blend axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:57
+#: doc/classes/AnimationNodeBlendSpace2D.xml:88
+msgid ""
+"Changes the [AnimationNode] referenced by the point at index [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:65
+#: doc/classes/AnimationNodeBlendSpace2D.xml:96
+msgid ""
+"Updates the position of the point at index [code]point[/code] on the blend "
+"axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:71
+msgid ""
+"The blend space's axis's upper limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:74
+msgid ""
+"The blend space's axis's lower limit for the points' position. See [method "
+"add_blend_point]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:77
+msgid "Position increment to snap to when moving a point on the axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace1D.xml:80
+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:22
+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:32
+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:38
+msgid "Returns the number of points in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:45
+msgid ""
+"Returns the [AnimationRootNode] referenced by the point at index "
+"[code]point[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:58
+msgid "Returns the number of triangles in the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:66
+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:73
+msgid "Removes the point at index [code]point[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:80
+msgid ""
+"Removes the triangle at index [code]triangle[/code] from the blend space."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:102
+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:105
+msgid ""
+"Controls the interpolation between animations. See [enum BlendMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:108
+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:111
+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:114
+msgid "Position increment to snap to when moving a point."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:117
+msgid "Name of the blend space's X axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:120
+msgid "Name of the blend space's Y axis."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:126
+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:132
+msgid "The interpolation between animations is linear."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendSpace2D.xml:135
+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:138
+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:19
+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:28
+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:36
+msgid "Disconnects the node connected to the specified input."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:43
+msgid "Returns the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:50
+msgid ""
+"Returns the position of the sub-node with the specified [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:57
+msgid ""
+"Returns [code]true[/code] if a sub-node with specified [code]name[/code] "
+"exists."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:64
+msgid "Removes a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:72
+msgid "Changes the name of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:80
+msgid "Modifies the position of a sub-node."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:86
+msgid "The global offset of all sub-nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:91
+msgid "The connection was successful."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:94
+msgid "The input node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:97
+msgid "The specified input port is out of range."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:100
+msgid "The output node is [code]null[/code]."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:103
+msgid "Input and output nodes are the same."
+msgstr ""
+
+#: doc/classes/AnimationNodeBlendTree.xml:106
+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:28
+msgid ""
+"If [code]true[/code], the sub-animation will restart automatically after "
+"finishing."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:31
+msgid "The delay after which the automatic restart is triggered, in seconds."
+msgstr ""
+
+#: doc/classes/AnimationNodeOneShot.xml:34
+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:24
+msgid ""
+"Adds a new node to the graph. The [code]position[/code] is used for display "
+"in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:33
+msgid "Adds a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:39
+#: doc/classes/AnimationNodeStateMachine.xml:72
+msgid "Returns the graph's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:45
+msgid "Returns the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:52
+msgid "Returns the animation node with the given name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:59
+msgid "Returns the given animation node's name."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:66
+msgid "Returns the given node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:79
+msgid "Returns the given transition."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:85
+msgid "Returns the number of connections in the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:92
+msgid "Returns the given transition's start node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:99
+msgid "Returns the given transition's end node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:106
+msgid "Returns [code]true[/code] if the graph contains the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:114
+msgid ""
+"Returns [code]true[/code] if there is a transition between the given nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:121
+msgid "Deletes the given node from the graph."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:129
+msgid "Deletes the transition between the two specified nodes."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:136
+msgid "Deletes the given transition by index."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:144
+msgid "Renames the given node."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:152
+msgid "Replaces the node and keeps its transitions unchanged."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:159
+msgid "Sets the given node as the graph end point."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:166
+msgid "Sets the draw offset of the graph. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:174
+msgid "Sets the node's coordinates. Used for display in the editor."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachine.xml:181
+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:26
+msgid "Returns the currently playing animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:32
+msgid "Returns the playback position within the current animation state."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:38
+msgid ""
+"Returns the current travel path as computed internally by the A* algorithm."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:44
+msgid "Returns [code]true[/code] if an animation is playing."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:51
+msgid "Starts playing the given animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:57
+msgid "Stops the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationNodeStateMachinePlayback.xml:64
+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/3.4/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 animation graph. Use this node type to play an [Animation] from the "
+"start or a certain playback position inside the [AnimationNodeBlendTree]. "
+"After setting the time and changing the animation playback, the seek node "
+"automatically goes into sleep mode on the next process frame by setting its "
+"[code]seek_position[/code] value to [code]-1.0[/code].\n"
+"[codeblock]\n"
+"# Play child animation from the start.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 0.0)\n"
+"# Alternative syntax (same result as above).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 0.0\n"
+"\n"
+"# Play child animation from 12 second timestamp.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 12.0)\n"
+"# Alternative syntax (same result as above).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
+"[/codeblock]"
+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:44
+msgid "The number of available input ports for this node."
+msgstr ""
+
+#: doc/classes/AnimationNodeTransition.xml:47
+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:22
+msgid ""
+"Adds [code]animation[/code] to the player accessible with the key "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:29
+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:36
+msgid "Returns the name of the next animation in the queue."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:44
+msgid ""
+"Triggers the [code]anim_to[/code] animation when the [code]anim_from[/code] "
+"animation completes."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:50
+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:56
+msgid "Clears all queued, unplayed animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:63
+msgid ""
+"Returns the name of [code]animation[/code] or an empty string if not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:70
+msgid ""
+"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
+"not found."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:76
+msgid "Returns the list of stored animation names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:84
+msgid ""
+"Gets the blend time (in seconds) between two animations, referenced by their "
+"names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:90
+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:96
+msgid ""
+"Returns a list of the animation names that are currently queued to play."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:103
+msgid ""
+"Returns [code]true[/code] if the [AnimationPlayer] stores an [Animation] "
+"with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:109
+msgid "Returns [code]true[/code] if playing an animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:119
+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:129
+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:137
+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:145
+msgid "Removes the animation with key [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:153
+msgid ""
+"Renames an existing animation with key [code]name[/code] to [code]newname[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:161
+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:170
+msgid ""
+"Specifies a blend time (in seconds) between two animations, referenced by "
+"their names."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:177
+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:184
+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:187
+msgid "The name of the animation to play when the scene loads."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:190
+msgid ""
+"The name of the currently playing animation. If no animation is playing, the "
+"property's value is an empty string. Changing this value does not restart "
+"the animation. See [method play] for more information on playing "
+"animations.\n"
+"[b]Note:[/b] While this property appears in the inspector, it's not meant to "
+"be edited, and it's not saved in the scene. This property is mainly used to "
+"get the currently playing animation, and internally for animation playback "
+"tracks. For more information, see [Animation]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:194
+msgid "The length (in seconds) of the currently being played animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:197
+msgid "The position (in seconds) of the currently playing animation."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:200
+msgid "The call mode to use for Call Method tracks."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:203
+msgid ""
+"If [code]true[/code], updates animations in response to process-related "
+"notifications."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:206
+msgid ""
+"The default time in which to blend animations. Ranges from 0 to 4096 with "
+"0.01 precision."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:209
+msgid "The process notification in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:212
+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:215
+msgid ""
+"This is used by the editor. If set to [code]true[/code], the scene will be "
+"saved with the effects of the reset animation applied (as if it had been "
+"seeked to time 0), then reverted after saving.\n"
+"In other words, the saved scene file will contain the \"default pose\", as "
+"defined by the reset animation, if any, with the editor keeping the values "
+"that the nodes had before saving."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:219
+msgid "The node from which node path references will travel."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:227
+msgid ""
+"Emitted when a queued animation plays after the previous animation was "
+"finished. See [method queue].\n"
+"[b]Note:[/b] The signal is not emitted when the animation is changed via "
+"[method play] or from [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:234
+msgid "Notifies when an animation finished playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:240
+msgid "Notifies when an animation starts playing."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:245
+msgid ""
+"Notifies when the caches have been cleared, either automatically, or "
+"manually via [method clear_caches]."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:251 doc/classes/AnimationTreePlayer.xml:505
+msgid ""
+"Process animation during the physics process. This is especially useful when "
+"animating physics bodies."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:254 doc/classes/AnimationTreePlayer.xml:508
+msgid "Process animation during the idle process."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:257
+msgid ""
+"Do not process animation. Use [method advance] to process the animation "
+"manually."
+msgstr ""
+
+#: doc/classes/AnimationPlayer.xml:260
+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:263
+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 ""
+"A node to be used for advanced animation transitions in an "
+"[AnimationPlayer].\n"
+"[b]Note:[/b] 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:19
+msgid "Manually advance the animations by the specified time (in seconds)."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:25
+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. See also [member root_motion_track] and [RootMotionView]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:38
+msgid "If [code]true[/code], the [AnimationTree] will be processing."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:41
+msgid "The path to the [AnimationPlayer] used for animating."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:44
+msgid ""
+"The process mode of this [AnimationTree]. See [enum AnimationProcessMode] "
+"for available modes."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:47
+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. See also [method get_root_motion_transform] and "
+"[RootMotionView]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:51
+msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:56
+msgid ""
+"The animations will progress during the physics frame (i.e. [method Node."
+"_physics_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:59
+msgid ""
+"The animations will progress during the idle frame (i.e. [method Node."
+"_process])."
+msgstr ""
+
+#: doc/classes/AnimationTree.xml:62
+msgid "The animations will only progress manually (see [method advance])."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:4
+msgid ""
+"[i]Deprecated.[/i] Animation player that uses a node graph for blending "
+"animations. Superseded by [AnimationTree]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:7
+msgid ""
+"[i]Deprecated.[/i] A node graph tool for blending multiple animations bound "
+"to an [AnimationPlayer]. Especially useful for animating characters or other "
+"skeleton-based rigs. It can combine several animations to form a desired "
+"pose.\n"
+"It takes [Animation]s from an [AnimationPlayer] node and mixes them "
+"depending on the graph.\n"
+"See [AnimationTree] for a more full-featured replacement of this node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:20
+msgid "Adds a [code]type[/code] node to the graph with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:27
+msgid ""
+"Shifts position in the animation timeline. [code]delta[/code] is the time in "
+"seconds to shift. Events between the current frame and [code]delta[/code] "
+"are handled."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:34
+msgid ""
+"Returns the [AnimationPlayer]'s [Animation] bound to the "
+"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:41
+msgid ""
+"Returns the name of the [member master_player]'s [Animation] bound to this "
+"animation node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:48
+msgid ""
+"Returns the absolute playback timestamp of the animation node with name "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:56
+msgid ""
+"Binds a new [Animation] from the [member master_player] to the "
+"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:65
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the animation node with ID "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:73
+msgid ""
+"Binds the [Animation] named [code]source[/code] from [member master_player] "
+"to the animation node [code]id[/code]. Recalculates caches."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:82
+msgid ""
+"Returns whether node [code]id[/code] and [code]dst_id[/code] are connected "
+"at the specified slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:89
+msgid "Returns the blend amount of a Blend2 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:97
+msgid ""
+"Sets the blend amount of a Blend2 node given its name and value.\n"
+"A Blend2 node blends two animations (A and B) with the amount between 0 and "
+"1.\n"
+"At 0, output is input A. Towards 1, the influence of A gets lessened, the "
+"influence of B gets raised. At 1, output is input B."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:108
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the Blend2 node with name "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:115
+msgid "Returns the blend amount of a Blend3 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:123
+msgid ""
+"Sets the blend amount of a Blend3 node given its name and value.\n"
+"A Blend3 Node blends three animations (A, B-, B+) with the amount between -1 "
+"and 1.\n"
+"At -1, output is input B-. From -1 to 0, the influence of B- gets lessened, "
+"the influence of A gets raised and the influence of B+ is 0. At 0, output is "
+"input A. From 0 to 1, the influence of A gets lessened, the influence of B+ "
+"gets raised and the influence of B+ is 0. At 1, output is input B+."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:132
+msgid "Returns the blend amount of a Blend4 node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:140
+msgid ""
+"Sets the blend amount of a Blend4 node given its name and value.\n"
+"A Blend4 Node blends two pairs of animations.\n"
+"The two pairs are blended like Blend2 and then added together."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:151
+msgid ""
+"Connects node [code]id[/code] to [code]dst_id[/code] at the specified input "
+"slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:159
+msgid ""
+"Disconnects nodes connected to [code]id[/code] at the specified input slot."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:165
+msgid "Returns a [PoolStringArray] containing the name of all nodes."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:172
+msgid "Returns the mix amount of a Mix node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:180
+msgid ""
+"Sets the mix amount of a Mix node given its name and value.\n"
+"A Mix node adds input b to input a by the amount given by ratio."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:188
+msgid "Check if a node exists (by name)."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:195
+msgid ""
+"Returns the input count for a given node. Different types of nodes have "
+"different amount of inputs."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:203
+msgid "Returns the input source for a given node input."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:210
+msgid "Returns position of a node in the graph given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:217
+msgid "Gets the node type, will return from [enum NodeType] enum."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:225
+msgid "Renames a node in the graph."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:233
+msgid "Sets the position of a node in the graph given its name and position."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:240
+msgid "Returns the autostart delay of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:247
+msgid "Returns the autostart random delay of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:254
+msgid "Returns the fade in time of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:261
+msgid "Returns the fade out time of a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:268
+msgid "Returns whether a OneShot node will auto restart given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:275
+msgid "Returns whether a OneShot node is active given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:283
+msgid ""
+"Sets the autorestart property of a OneShot node given its name and value."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:291
+msgid ""
+"Sets the autorestart delay of a OneShot node given its name and value in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:299
+msgid ""
+"Sets the autorestart random delay of a OneShot node given its name and value "
+"in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:307
+msgid ""
+"Sets the fade in time of a OneShot node given its name and value in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:315
+msgid ""
+"Sets the fade out time of a OneShot node given its name and value in seconds."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:324
+msgid ""
+"If [code]enable[/code] is [code]true[/code], the OneShot node with ID "
+"[code]id[/code] turns off the track modifying the property at [code]path[/"
+"code]. The modified node's children continue to animate."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:331
+msgid "Starts a OneShot node given its name."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:338
+msgid "Stops the OneShot node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:344
+msgid ""
+"Manually recalculates the cache of track information generated from "
+"animation nodes. Needed when external sources modify the animation nodes' "
+"state."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:351
+msgid "Removes the animation node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:357
+msgid "Resets this [AnimationTreePlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:364
+msgid ""
+"Returns the time scale value of the TimeScale node with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:372
+msgid ""
+"Sets the time scale of the TimeScale node with name [code]id[/code] to "
+"[code]scale[/code].\n"
+"The TimeScale node is used to speed [Animation]s up if the scale is above 1 "
+"or slow them down if it is below 1.\n"
+"If applied after a blend or mix, affects all input animations to that blend "
+"or mix."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:382
+msgid ""
+"Sets the time seek value of the TimeSeek node with name [code]id[/code] to "
+"[code]seconds[/code].\n"
+"This functions as a seek in the [Animation] or the blend or mix of "
+"[Animation]s input in it."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:391
+msgid ""
+"Deletes the input at [code]input_idx[/code] for the transition node with "
+"name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:398
+msgid ""
+"Returns the index of the currently evaluated input for the transition node "
+"with name [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:405
+msgid ""
+"Returns the number of inputs for the transition node with name [code]id[/"
+"code]. You can add inputs by right-clicking on the transition node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:412
+msgid ""
+"Returns the cross fade time for the transition node with name [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:420
+msgid ""
+"Returns [code]true[/code] if the input at [code]input_idx[/code] on the "
+"transition node with name [code]id[/code] is set to automatically advance to "
+"the next input upon completion."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:428
+msgid ""
+"The transition node with name [code]id[/code] sets its current input at "
+"[code]input_idx[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:437
+msgid ""
+"The transition node with name [code]id[/code] advances to its next input "
+"automatically when the input at [code]input_idx[/code] completes."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:445
+msgid ""
+"Resizes the number of inputs available for the transition node with name "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:453
+msgid ""
+"The transition node with name [code]id[/code] sets its cross fade time to "
+"[code]time_sec[/code]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:459
+msgid ""
+"If [code]true[/code], the [AnimationTreePlayer] is able to play animations."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:462
+msgid ""
+"The node from which to relatively access other nodes.\n"
+"It accesses the bones, so it should point to the same node the "
+"[AnimationPlayer] would point its Root Node at."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:466
+msgid ""
+"The path to the [AnimationPlayer] from which this [AnimationTreePlayer] "
+"binds animations to animation nodes.\n"
+"Once set, [Animation] nodes can be added to the [AnimationTreePlayer]."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:470
+msgid "The thread in which to update animations."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:475
+msgid "Output node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:478
+msgid "Animation node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:481
+msgid "OneShot node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:484
+msgid "Mix node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:487
+msgid "Blend2 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:490
+msgid "Blend3 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:493
+msgid "Blend4 node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:496
+msgid "TimeScale node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:499
+msgid "TimeSeek node."
+msgstr ""
+
+#: doc/classes/AnimationTreePlayer.xml:502
+msgid "Transition node."
+msgstr ""
+
+#: doc/classes/Area.xml:4
+msgid "3D area for detection and physics and audio influence."
+msgstr ""
+
+#: doc/classes/Area.xml:7
+msgid ""
+"3D area that detects [CollisionObject] nodes overlapping, entering, or "
+"exiting. Can also alter or override local physics parameters (gravity, "
+"damping) and route audio to custom audio buses."
+msgstr ""
+
+#: doc/classes/Area.xml:11 doc/classes/QuadMesh.xml:10
+#: doc/classes/Viewport.xml:17 doc/classes/ViewportTexture.xml:11
+msgid "https://godotengine.org/asset-library/asset/127"
+msgstr ""
+
+#: doc/classes/Area.xml:17
+msgid ""
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:24
+msgid ""
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:32
+msgid ""
+"If [code]true[/code], the given area overlaps the Area.\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/Area.xml:40
+msgid ""
+"If [code]true[/code], the given physics body overlaps the Area.\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 [PhysicsBody] 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/Area.xml:48
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
+msgid "The name of the area's audio bus."
+msgstr ""
+
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
+msgid ""
+"If [code]true[/code], the area's audio bus overrides the default audio bus."
+msgstr ""
+
+#: doc/classes/Area.xml:58
+msgid ""
+"The area's gravity intensity (in meters per second squared). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
+msgid ""
+"The falloff factor for point gravity. The greater the value, the faster "
+"gravity decreases with distance."
+msgstr ""
+
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
+msgid ""
+"If [code]true[/code], gravity is calculated from a point (set via [member "
+"gravity_vec]). See also [member space_override]."
+msgstr ""
+
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
+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/Area.xml:70
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
+msgid "If [code]true[/code], other monitoring areas can detect this area."
+msgstr ""
+
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
+msgid ""
+"If [code]true[/code], the area detects bodies or areas entering and exiting "
+"it."
+msgstr ""
+
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
+msgid "The area's priority. Higher priority areas are processed first."
+msgstr ""
+
+#: doc/classes/Area.xml:83
+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/Area.xml:86
+msgid "If [code]true[/code], the area applies reverb to its associated audio."
+msgstr ""
+
+#: doc/classes/Area.xml:89
+msgid "The reverb bus name to use for this area's associated audio."
+msgstr ""
+
+#: doc/classes/Area.xml:92
+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/Area.xml:95 doc/classes/Area2D.xml:85
+msgid ""
+"Override mode for gravity and damping calculations within this area. See "
+"[enum SpaceOverride] for possible values."
+msgstr ""
+
+#: doc/classes/Area.xml:102
+msgid ""
+"Emitted when another Area enters this Area. Requires [member monitoring] to "
+"be set to [code]true[/code].\n"
+"[code]area[/code] the other Area."
+msgstr ""
+
+#: doc/classes/Area.xml:109
+msgid ""
+"Emitted when another Area exits this Area. Requires [member monitoring] to "
+"be set to [code]true[/code].\n"
+"[code]area[/code] the other Area."
+msgstr ""
+
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
+msgid ""
+"Emitted when one of another Area's [Shape]s enters one of this Area's "
+"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area's [CollisionObject] used "
+"by the [PhysicsServer].\n"
+"[code]area[/code] the other Area.\n"
+"[code]area_shape_index[/code] the index of the [Shape] of the other Area "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]area."
+"shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this Area used by "
+"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area.xml:142
+msgid ""
+"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
+"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/Area.xml:149
+msgid ""
+"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
+"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
+msgid ""
+"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
+"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
+"code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody] or [MeshLibrary]'s "
+"[CollisionObject] used by the [PhysicsServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the [PhysicsBody] "
+"or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the [PhysicsBody] "
+"or [GridMap] used by the [PhysicsServer]. Get the [CollisionShape] node with "
+"[code]body.shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this Area used by "
+"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
+msgid "This area does not affect gravity/damping."
+msgstr ""
+
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
+msgid ""
+"This area adds its gravity/damping values to whatever has been calculated so "
+"far (in [member priority] order)."
+msgstr ""
+
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
+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/Area.xml:191 doc/classes/Area2D.xml:181
+msgid ""
+"This area replaces any gravity/damping, even the defaults, ignoring any "
+"lower priority areas."
+msgstr ""
+
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
+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/Area2D.xml:4
+msgid "2D area for detection and physics and audio 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) and route audio to a custom audio bus."
+msgstr ""
+
+#: doc/classes/Area2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html"
+msgstr ""
+
+#: doc/classes/Area2D.xml:12 doc/classes/CollisionShape2D.xml:12
+#: doc/classes/RectangleShape2D.xml:10
+msgid "https://godotengine.org/asset-library/asset/121"
+msgstr ""
+
+#: doc/classes/Area2D.xml:13 doc/classes/Camera2D.xml:12
+#: doc/classes/KinematicBody2D.xml:15 doc/classes/TileMap.xml:12
+#: doc/classes/TileSet.xml:12
+msgid "https://godotengine.org/asset-library/asset/120"
+msgstr ""
+
+#: doc/classes/Area2D.xml:19
+msgid ""
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:26
+msgid ""
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:34
+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, the list of overlaps is updated once per frame and before "
+"the physics step. Consider using signals instead."
+msgstr ""
+
+#: doc/classes/Area2D.xml:42
+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 bodies themselves, they "
+"register their tiles with collision shapes as a virtual physics body)."
+msgstr ""
+
+#: doc/classes/Area2D.xml:50
+msgid ""
+"The rate at which objects stop spinning in this area. Represents the angular "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/2d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:60
+msgid ""
+"The area's gravity intensity (in pixels per second squared). This value "
+"multiplies the gravity vector. This is useful to alter the force of gravity "
+"without altering its direction."
+msgstr ""
+
+#: doc/classes/Area2D.xml:72
+msgid ""
+"The rate at which objects stop moving in this area. Represents the linear "
+"velocity lost per second.\n"
+"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/Area2D.xml:92
+msgid ""
+"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
+"to be set to [code]true[/code].\n"
+"[code]area[/code] the other Area2D."
+msgstr ""
+
+#: doc/classes/Area2D.xml:99
+msgid ""
+"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
+"to be set to [code]true[/code].\n"
+"[code]area[/code] the other Area2D."
+msgstr ""
+
+#: doc/classes/Area2D.xml:109
+msgid ""
+"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
+"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area2D's [CollisionObject2D] "
+"used by the [Physics2DServer].\n"
+"[code]area[/code] the other Area2D.\n"
+"[code]area_shape_index[/code] the index of the [Shape2D] of the other Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:122
+msgid ""
+"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
+"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
+"[code]area_rid[/code] the [RID] of the other Area2D's [CollisionObject2D] "
+"used by the [Physics2DServer].\n"
+"[code]area[/code] the other Area2D.\n"
+"[code]area_shape_index[/code] the index of the [Shape2D] of the other Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:132
+msgid ""
+"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
+"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
+"if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:139
+msgid ""
+"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
+"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
+"if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:149
+msgid ""
+"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
+"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
+"[code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision "
+"[Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Area2D.xml:162
+msgid ""
+"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
+"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
+"[code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision "
+"[Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this Area2D "
+"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
+"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:4
+msgid "A generic array datatype."
+msgstr ""
+
+#: doc/classes/Array.xml:7
+msgid ""
+"A generic array that 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 is 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] Concatenating with the [code]+=[/code] operator will create a "
+"new array, which has a cost. If you want to append another array to an "
+"existing array, [method append_array] is more efficient.\n"
+"[b]Note:[/b] Arrays are always passed by reference. To get a copy of an "
+"array that can be modified independently of the original array, use [method "
+"duplicate].\n"
+"[b]Note:[/b] When declaring an array with [code]const[/code], the array "
+"itself can still be mutated by defining the values at individual indices or "
+"pushing/removing elements. Using [code]const[/code] will only prevent "
+"assigning the constant with another value after it was initialized."
+msgstr ""
+
+#: doc/classes/Array.xml:34
+msgid "Constructs an array from a [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:41
+msgid "Constructs an array from a [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:48
+msgid "Constructs an array from a [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/Array.xml:55
+msgid "Constructs an array from a [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:62
+msgid "Constructs an array from a [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:69
+msgid "Constructs an array from a [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:76
+msgid "Constructs an array from a [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/Array.xml:82 doc/classes/PoolByteArray.xml:23
+#: doc/classes/PoolColorArray.xml:23 doc/classes/PoolIntArray.xml:24
+#: doc/classes/PoolRealArray.xml:24 doc/classes/PoolStringArray.xml:24
+#: doc/classes/PoolVector2Array.xml:24 doc/classes/PoolVector3Array.xml:23
+msgid ""
+"Appends an element at the end of the array (alias of [method push_back])."
+msgstr ""
+
+#: doc/classes/Array.xml:88
+msgid ""
+"Appends another array at the end of this array.\n"
+"[codeblock]\n"
+"var array1 = [1, 2, 3]\n"
+"var array2 = [4, 5, 6]\n"
+"array1.append_array(array2)\n"
+"print(array1) # Prints [1, 2, 3, 4, 5, 6].\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Array.xml:100
+msgid ""
+"Returns the last element of the array. Prints an error and returns "
+"[code]null[/code] if the array is empty.\n"
+"[b]Note:[/b] Calling this function is not the same as writing [code]array[-1]"
+"[/code]. If the array is empty, accessing by index will pause project "
+"execution when running from the editor."
+msgstr ""
+
+#: doc/classes/Array.xml:109
+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:120
+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 declared in the [code]obj[/code]. "
+"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"
+"[codeblock]\n"
+"func cardinal_to_algebraic(a):\n"
+" match a:\n"
+" \"one\":\n"
+" return 1\n"
+" \"two\":\n"
+" return 2\n"
+" \"three\":\n"
+" return 3\n"
+" \"four\":\n"
+" return 4\n"
+" _:\n"
+" return 0\n"
+"\n"
+"func compare(a, b):\n"
+" return cardinal_to_algebraic(a) < cardinal_to_algebraic(b)\n"
+"\n"
+"func _ready():\n"
+" var a = [\"one\", \"two\", \"three\", \"four\"]\n"
+" # `compare` is defined in this object, so we use `self` as the `obj` "
+"parameter.\n"
+" print(a.bsearch_custom(\"three\", self, \"compare\", true)) # Expected "
+"value is 2.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Calling [method bsearch_custom] on an unsorted array results in "
+"unexpected behavior."
+msgstr ""
+
+#: doc/classes/Array.xml:148
+msgid ""
+"Clears the array. This is equivalent to using [method resize] with a size of "
+"[code]0[/code]."
+msgstr ""
+
+#: doc/classes/Array.xml:155
+msgid "Returns the number of times an element is in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:162
+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:169 doc/classes/PoolByteArray.xml:61
+#: doc/classes/PoolColorArray.xml:35 doc/classes/PoolIntArray.xml:36
+#: doc/classes/PoolRealArray.xml:36 doc/classes/PoolStringArray.xml:36
+#: doc/classes/PoolVector2Array.xml:36 doc/classes/PoolVector3Array.xml:35
+msgid "Returns [code]true[/code] if the array is empty."
+msgstr ""
+
+#: doc/classes/Array.xml:175
+msgid ""
+"Removes the first occurrence of a value from the array. To remove an element "
+"by index, use [method remove] instead.\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the removed "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the removed element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:185
+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:192
+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:198
+msgid ""
+"Returns the first element of the array. Prints an error and returns "
+"[code]null[/code] if the array is empty.\n"
+"[b]Note:[/b] Calling this function is not the same as writing [code]array[0]"
+"[/code]. If the array is empty, accessing by index will pause project "
+"execution when running from the editor."
+msgstr ""
+
+#: doc/classes/Array.xml:206
+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"
+"[/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:224
+msgid ""
+"Returns a hashed integer value representing the array and its contents.\n"
+"[b]Note:[/b] Arrays with equal contents can still produce different hashes. "
+"Only the exact same arrays will produce the same hashed integer value."
+msgstr ""
+
+#: doc/classes/Array.xml:232
+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]).\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the inserted "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the newly inserted element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:239 doc/classes/PoolByteArray.xml:96
+#: doc/classes/PoolColorArray.xml:48 doc/classes/PoolIntArray.xml:49
+#: doc/classes/PoolRealArray.xml:49 doc/classes/PoolStringArray.xml:49
+#: doc/classes/PoolVector2Array.xml:49 doc/classes/PoolVector3Array.xml:48
+msgid "Reverses the order of the elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:245
+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:251
+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:258
+msgid ""
+"Removes and returns the element of the array at index [code]position[/code]. "
+"If negative, [code]position[/code] is considered relative to the end of the "
+"array. Leaves the array untouched and returns [code]null[/code] if the array "
+"is empty or if it's accessed out of bounds. An error message is printed when "
+"the array is accessed out of bounds, but not when the array is empty.\n"
+"[b]Note:[/b] On large arrays, this method can be slower than [method "
+"pop_back] as it will reindex the array's elements that are located after the "
+"removed element. The larger the array and the lower the index of the removed "
+"element, the slower [method pop_at] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:265
+msgid ""
+"Removes and returns the last element of the array. Returns [code]null[/code] "
+"if the array is empty, without printing an error message. See also [method "
+"pop_front]."
+msgstr ""
+
+#: doc/classes/Array.xml:271
+msgid ""
+"Removes and returns the first element of the array. Returns [code]null[/"
+"code] if the array is empty, without printing an error message. See also "
+"[method pop_back].\n"
+"[b]Note:[/b] On large arrays, this method is much slower than [method "
+"pop_back] as it will reindex all the array's elements every time it's "
+"called. The larger the array, the slower [method pop_front] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:278
+msgid ""
+"Appends an element at the end of the array. See also [method push_front]."
+msgstr ""
+
+#: doc/classes/Array.xml:284
+msgid ""
+"Adds an element at the beginning of the array. See also [method push_back].\n"
+"[b]Note:[/b] On large arrays, this method is much slower than [method "
+"push_back] as it will reindex all the array's elements every time it's "
+"called. The larger the array, the slower [method push_front] will be."
+msgstr ""
+
+#: doc/classes/Array.xml:291
+msgid ""
+"Removes an element from the array by index. If the index does not exist in "
+"the array, nothing happens. To remove an element by searching for its value, "
+"use [method erase] instead.\n"
+"[b]Note:[/b] This method acts in-place and doesn't return a value.\n"
+"[b]Note:[/b] On large arrays, this method will be slower if the removed "
+"element is close to the beginning of the array (index 0). This is because "
+"all elements placed after the removed element have to be reindexed."
+msgstr ""
+
+#: doc/classes/Array.xml:299
+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:307
+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:312
+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:318
+msgid "Returns the number of elements in the array."
+msgstr ""
+
+#: doc/classes/Array.xml:328
+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:333
+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:346
+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"
+"For two elements [code]a[/code] and [code]b[/code], if the given method "
+"returns [code]true[/code], element [code]b[/code] will be after element "
+"[code]a[/code] in the array.\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 = PoolVector3Array()\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 = MeshInstance.new()\n"
+"m.mesh = arr_mesh\n"
+"[/codeblock]\n"
+"The [MeshInstance] is ready to be added to the [SceneTree] to be shown.\n"
+"See also [ImmediateGeometry], [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/3.4/tutorials/content/procedural_geometry/"
+"arraymesh.html"
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:36
+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:46
+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."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:54
+msgid "Removes all blend shapes from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:60
+msgid "Removes all surfaces from this [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:66
+msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:73
+msgid "Returns the name of the blend shape at this index."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:81
+msgid ""
+"Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for "
+"lightmapping."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:87
+msgid "Will regenerate normal maps for the [ArrayMesh]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:101
+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:108
+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:115
+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:122
+msgid ""
+"Returns the format mask of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:129
+msgid "Gets the name assigned to this surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:136
+msgid ""
+"Returns the primitive type of the requested surface (see [method "
+"add_surface_from_arrays])."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:143
+msgid ""
+"Removes a surface at position [code]surf_idx[/code], shifting greater "
+"surfaces one [code]surf_idx[/code] slot down."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:151
+msgid "Sets a name for a given surface."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:160
+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:167
+msgid "Sets the blend shape mode to one of [enum Mesh.BlendShapeMode]."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:170 doc/classes/PrimitiveMesh.xml:26
+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:175
+msgid "Default value used for index_array_len when no indices are present."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:178
+msgid "Amount of weights/bone indices per vertex (always 4)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:181
+msgid "[PoolVector3Array], [PoolVector2Array], or [Array] of vertex positions."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:184
+msgid "[PoolVector3Array] of vertex normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:187
+msgid ""
+"[PoolRealArray] 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:190
+msgid "[PoolColorArray] of vertex colors."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:193
+msgid "[PoolVector2Array] for UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:196
+msgid "[PoolVector2Array] for second UV coordinates."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:199
+msgid ""
+"[PoolRealArray] or [PoolIntArray] of bone indices. Each element in groups of "
+"4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:202
+msgid "[PoolRealArray] of bone weights. Each element in groups of 4 floats."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:205
+msgid ""
+"[PoolIntArray] 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:209 doc/classes/Mesh.xml:225
+#: doc/classes/VisualServer.xml:3270
+msgid "Represents the size of the [enum ArrayType] enum."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:212
+msgid "Array format will include vertices (mandatory)."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:215
+msgid "Array format will include normals."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:218
+msgid "Array format will include tangents."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:221
+msgid "Array format will include a color array."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:224
+msgid "Array format will include UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:227
+msgid "Array format will include another set of UVs."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:230
+msgid "Array format will include bone indices."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:233
+msgid "Array format will include bone weights."
+msgstr ""
+
+#: doc/classes/ArrayMesh.xml:236
+msgid "Index array will be used."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:4
+msgid "An anchor point in AR space."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:7
+msgid ""
+"The [ARVRAnchor] 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/ARVRAnchor.xml:17
+msgid "Returns the name given to this anchor."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:23
+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/ARVRAnchor.xml:29
+msgid ""
+"If provided by the [ARVRInterface], 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/ARVRAnchor.xml:35
+msgid ""
+"Returns a plane aligned with our anchor; handy for intersection testing."
+msgstr ""
+
+#: doc/classes/ARVRAnchor.xml:41
+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/ARVRAnchor.xml:47
+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/ARVRAnchor.xml:54
+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/ARVRCamera.xml:4
+msgid ""
+"A camera node with a few overrules for AR/VR applied, such as location "
+"tracking."
+msgstr ""
+
+#: doc/classes/ARVRCamera.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 "
+"ARVR 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 "
+"ARVR Controller, the render thread has access to the most up-to-date "
+"tracking data of the HMD and the location of the ARVRCamera can lag a few "
+"milliseconds behind what is used for rendering as a result."
+msgstr ""
+
+#: doc/classes/ARVRCamera.xml:11 doc/classes/ARVRController.xml:12
+#: doc/classes/ARVRInterface.xml:11 doc/classes/ARVROrigin.xml:13
+#: doc/classes/ARVRPositionalTracker.xml:12 doc/classes/ARVRServer.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html"
+msgstr ""
+
+#: doc/classes/ARVRController.xml:4
+msgid "A spatial node representing a spatially-tracked controller."
+msgstr ""
+
+#: doc/classes/ARVRController.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 "
+"ARVRController nodes to your scene.\n"
+"The position of the controller node is automatically updated by the "
+"[ARVRServer]. This makes this node ideal to add child nodes to visualize the "
+"controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:18
+msgid ""
+"If active, returns the name of the associated controller if provided by the "
+"AR/VR SDK used."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:24
+msgid ""
+"Returns the hand holding this controller, if known. See [enum "
+"ARVRPositionalTracker.TrackerHand]."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:30
+msgid ""
+"Returns [code]true[/code] if the bound controller is active. ARVR systems "
+"attempt to track active controllers."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:37
+msgid ""
+"Returns the value of the given axis for things like triggers, touchpads, "
+"etc. that are embedded into the controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:43
+msgid ""
+"Returns the ID of the joystick object bound to this. Every controller "
+"tracked by the [ARVRServer] that has buttons and axis will also be "
+"registered as a joystick within Godot. This means that all the normal "
+"joystick tracking and input mapping will work for buttons and axis found on "
+"the AR/VR controllers. This ID is purely offered as information so you can "
+"link up the controller with its joystick entry."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:49
+msgid ""
+"If provided by the [ARVRInterface], this returns a mesh associated with the "
+"controller. This can be used to visualize the controller."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:56
+msgid ""
+"Returns [code]true[/code] if the button at index [code]button[/code] is "
+"pressed. See [enum JoystickList], in particular the [code]JOY_VR_*[/code] "
+"constants."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:62
+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 [ARVRServer] 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/ARVRController.xml:68
+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 ARVRPositionalTracker.rumble] accordingly.\n"
+"This is a useful property to animate if you want the controller to vibrate "
+"for a limited duration."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:76
+msgid "Emitted when a button on this controller is pressed."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:82
+msgid "Emitted when a button on this controller is released."
+msgstr ""
+
+#: doc/classes/ARVRController.xml:88
+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/ARVRInterface.xml:4
+msgid "Base class for an AR/VR interface implementation."
+msgstr ""
+
+#: doc/classes/ARVRInterface.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 ARVRScriptInterface 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 "
+"[ARVRServer]."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:17
+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/ARVRInterface.xml:23
+msgid ""
+"Returns a combination of [enum Capabilities] flags providing information "
+"about the capabilities of this interface."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:29
+msgid "Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:35
+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/ARVRInterface.xml:41
+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/ARVRInterface.xml:47
+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/ARVRInterface.xml:57
+msgid ""
+"Returns [code]true[/code] if the current output of this interface is in "
+"stereo."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:63
+msgid "Turns the interface off."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:69
+msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:72
+msgid "[code]true[/code] if this interface been initialized."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:75
+msgid "[code]true[/code] if this is the primary interface."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:80
+msgid "No ARVR capabilities."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:83
+msgid ""
+"This interface can work with normal rendering output (non-HMD based AR)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:86
+msgid "This interface supports stereoscopic rendering."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:89
+msgid "This interface supports AR (video background and real world tracking)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:92
+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/ARVRInterface.xml:95
+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/ARVRInterface.xml:98
+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/ARVRInterface.xml:101
+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/ARVRInterface.xml:104
+msgid "Tracking is behaving as expected."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:107
+msgid ""
+"Tracking is hindered by excessive motion (the player is moving faster than "
+"tracking can keep up)."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:110
+msgid ""
+"Tracking is hindered by insufficient features, it's too dark (for camera-"
+"based tracking), player is blocked, etc."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:113
+msgid ""
+"We don't know the status of the tracking or this interface does not provide "
+"feedback."
+msgstr ""
+
+#: doc/classes/ARVRInterface.xml:116
+msgid ""
+"Tracking is not functional (camera not plugged in or obscured, lighthouses "
+"turned off, etc.)."
+msgstr ""
+
+#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:4
+msgid "GDNative wrapper for an ARVR interface."
+msgstr ""
+
+#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:7
+msgid ""
+"This is a wrapper class for GDNative implementations of the ARVR interface. "
+"To use a GDNative ARVR interface, simply instantiate this object and set "
+"your GDNative library containing the ARVR interface implementation."
+msgstr ""
+
+#: doc/classes/ARVROrigin.xml:4
+msgid "The origin point in AR/VR."
+msgstr ""
+
+#: doc/classes/ARVROrigin.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 ARVRCamera, ARVRController and ARVRAnchor 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 ARVROrigin 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/ARVROrigin.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 [ARVRServer] itself."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:4
+msgid "A tracked object."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.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 [ARVRServer].\n"
+"The [ARVRController] and [ARVRAnchor] 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/ARVRPositionalTracker.xml:18
+msgid ""
+"Returns the hand holding this tracker, if known. See [enum TrackerHand] "
+"constants."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:24
+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/ARVRPositionalTracker.xml:30
+msgid ""
+"Returns the mesh related to a controller or anchor point if one is available."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:36
+msgid "Returns the controller or anchor point's name if available."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:42
+msgid "Returns the controller's orientation matrix."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:48
+msgid "Returns the world-space controller position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:54
+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 "
+"[ARVRController] and [ARVRAnchor] nodes."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:60
+msgid "Returns [code]true[/code] if this device tracks orientation."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:66
+msgid "Returns [code]true[/code] if this device tracks position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:73
+msgid "Returns the transform combining this device's orientation and position."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:79
+msgid "Returns the tracker's type."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:85
+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/ARVRPositionalTracker.xml:90
+msgid "The hand this tracker is held in is unknown or not applicable."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:93
+msgid "This tracker is the left hand controller."
+msgstr ""
+
+#: doc/classes/ARVRPositionalTracker.xml:96
+msgid "This tracker is the right hand controller."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:4
+msgid "Server for AR and VR features."
+msgstr ""
+
+#: doc/classes/ARVRServer.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/ARVRServer.xml:17
+msgid "Registers an [ARVRInterface] object."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:24
+msgid ""
+"Registers a new [ARVRPositionalTracker] that tracks a spatial location in "
+"real space."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:32
+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/ARVRServer.xml:44
+msgid ""
+"Clears our current primary interface if it is set to the provided interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:51
+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/ARVRServer.xml:57
+msgid "Returns the primary interface's transformation."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:64
+msgid ""
+"Returns the interface registered at a given index in our list of interfaces."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:70
+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/ARVRServer.xml:76
+msgid ""
+"Returns a list of available interfaces the ID and name of each interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:82
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [ARVRServer] commit of "
+"the AR/VR eyes to [VisualServer]. The value comes from an internal call to "
+"[method OS.get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:88
+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/ARVRServer.xml:94
+msgid ""
+"Returns the absolute timestamp (in μs) of the last [ARVRServer] process "
+"callback. The value comes from an internal call to [method OS."
+"get_ticks_usec]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:100
+msgid ""
+"Returns the reference frame transform. Mostly used internally and exposed "
+"for GDNative build interfaces."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:107
+msgid "Returns the positional tracker at the given ID."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:113
+msgid "Returns the number of trackers currently registered."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:120
+msgid "Removes this interface."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:127
+msgid "Removes this positional tracker."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:133
+msgid "The primary [ARVRInterface] currently bound to the [ARVRServer]."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:136
+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/ARVRServer.xml:143
+msgid "Emitted when a new interface has been added."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:149
+msgid "Emitted when an interface is removed."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:157
+msgid ""
+"Emitted when a new tracker has been added. If you don't use a fixed number "
+"of controllers or if you're using [ARVRAnchor]s for an AR solution, it is "
+"important to react to this signal to add the appropriate [ARVRController] or "
+"[ARVRAnchor] nodes related to this new tracker."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:165
+msgid ""
+"Emitted when a tracker is removed. You should remove any [ARVRController] or "
+"[ARVRAnchor] 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/ARVRServer.xml:171
+msgid "The tracker tracks the location of a controller."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:174
+msgid "The tracker tracks the location of a base station."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:177
+msgid "The tracker tracks the location and size of an AR anchor."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:180
+msgid "Used internally to filter trackers of any known type."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:183
+msgid "Used internally if we haven't set the tracker type yet."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:186
+msgid "Used internally to select all trackers."
+msgstr ""
+
+#: doc/classes/ARVRServer.xml:189
+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/ARVRServer.xml:192
+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/ARVRServer.xml:195
+msgid ""
+"Does not reset the orientation of the HMD, only the position of the player "
+"gets centered."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:4
+msgid "Container that preserves its child controls' aspect ratio."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:7
+msgid ""
+"Arranges child controls in a way to preserve their aspect ratio "
+"automatically whenever the container is resized. Solves the problem where "
+"the container size is dynamic and the contents' size needs to adjust "
+"accordingly without losing proportions."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:15
+msgid "Specifies the horizontal relative position of child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:18
+msgid "Specifies the vertical relative position of child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:21
+msgid ""
+"The aspect ratio to enforce on child controls. This is the width divided by "
+"the height. The ratio depends on the [member stretch_mode]."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:24
+msgid "The stretch mode used to align child controls."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:29
+msgid ""
+"The height of child controls is automatically adjusted based on the width of "
+"the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:32
+msgid ""
+"The width of child controls is automatically adjusted based on the height of "
+"the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:35
+msgid ""
+"The bounding rectangle of child controls is automatically adjusted to fit "
+"inside the container while keeping the aspect ratio."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:38
+msgid ""
+"The width and height of child controls is automatically adjusted to make "
+"their bounding rectangle cover the entire area of the container while "
+"keeping the aspect ratio.\n"
+"When the bounding rectangle of child controls exceed the container's size "
+"and [member Control.rect_clip_content] is enabled, this allows to show only "
+"the container's area restricted by its own bounding rectangle."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:42
+msgid ""
+"Aligns child controls with the beginning (left or top) of the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:45
+msgid "Aligns child controls with the center of the container."
+msgstr ""
+
+#: doc/classes/AspectRatioContainer.xml:48
+msgid "Aligns child controls with the end (right or bottom) of the container."
+msgstr ""
+
+#: doc/classes/AStar.xml:4
+msgid ""
+"An implementation of A* to find the 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.\n"
+"If the default [method _estimate_cost] and [method _compute_cost] methods "
+"are used, or if the supplied [method _estimate_cost] method returns a lower "
+"bound of the cost, then the paths returned by A* will be the lowest-cost "
+"paths. Here, the cost of a path equals the sum of the [method _compute_cost] "
+"results of all segments in the path multiplied by the [code]weight_scale[/"
+"code]s of the endpoints of the respective segments. If the default methods "
+"are used and the [code]weight_scale[/code]s of all points are set to "
+"[code]1.0[/code], then this equals the sum of Euclidean distances of all "
+"segments in the path."
+msgstr ""
+
+#: doc/classes/AStar.xml:31
+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:40
+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:50
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
+"be 1 or larger.\n"
+"The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point. Thus, all else being equal, "
+"the algorithm prefers points with lower [code]weight_scale[/code]s to form a "
+"path.\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:65
+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:71 doc/classes/AStar2D.xml:56
+msgid "Clears all the points and segments."
+msgstr ""
+
+#: doc/classes/AStar.xml:80
+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:95
+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:101 doc/classes/AStar2D.xml:85
+msgid "Returns the next available point ID with no point associated to it."
+msgstr ""
+
+#: doc/classes/AStar.xml:109 doc/classes/AStar2D.xml:93
+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:117
+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:133
+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:154 doc/classes/AStar2D.xml:138
+msgid ""
+"Returns the capacity of the structure backing the points, useful in "
+"conjunction with [code]reserve_space[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:161
+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:179 doc/classes/AStar2D.xml:163
+msgid "Returns the number of points currently in the points pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:187
+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.\n"
+"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
+"will return an empty [PoolVector3Array] and will print an error message."
+msgstr ""
+
+#: doc/classes/AStar.xml:195 doc/classes/AStar2D.xml:179
+msgid ""
+"Returns the position of the point associated with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:202 doc/classes/AStar2D.xml:186
+msgid ""
+"Returns the weight scale of the point associated with the given [code]id[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:208 doc/classes/AStar2D.xml:192
+msgid "Returns an array of all points."
+msgstr ""
+
+#: doc/classes/AStar.xml:215 doc/classes/AStar2D.xml:199
+msgid ""
+"Returns whether a point associated with the given [code]id[/code] exists."
+msgstr ""
+
+#: doc/classes/AStar.xml:222 doc/classes/AStar2D.xml:206
+msgid ""
+"Returns whether a point is disabled or not for pathfinding. By default, all "
+"points are enabled."
+msgstr ""
+
+#: doc/classes/AStar.xml:229 doc/classes/AStar2D.xml:213
+msgid ""
+"Removes the point associated with the given [code]id[/code] from the points "
+"pool."
+msgstr ""
+
+#: doc/classes/AStar.xml:236 doc/classes/AStar2D.xml:220
+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:244 doc/classes/AStar2D.xml:228
+msgid ""
+"Disables or enables the specified point for pathfinding. Useful for making a "
+"temporary obstacle."
+msgstr ""
+
+#: doc/classes/AStar.xml:252 doc/classes/AStar2D.xml:236
+msgid ""
+"Sets the [code]position[/code] for the point with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/AStar.xml:260 doc/classes/AStar2D.xml:244
+msgid ""
+"Sets the [code]weight_scale[/code] for the point with the given [code]id[/"
+"code]. The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point."
+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:17
+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:26
+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:36
+msgid ""
+"Adds a new point at the given position with the given identifier. The "
+"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
+"be 1 or larger.\n"
+"The [code]weight_scale[/code] is multiplied by the result of [method "
+"_compute_cost] when determining the overall cost of traveling across a "
+"segment from a neighboring point to this point. Thus, all else being equal, "
+"the algorithm prefers points with lower [code]weight_scale[/code]s to form a "
+"path.\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:50
+msgid "Returns whether there is a connection/segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:65
+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:79
+msgid "Deletes the segment between the given points."
+msgstr ""
+
+#: doc/classes/AStar2D.xml:101
+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:117
+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:145
+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:171
+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.\n"
+"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
+"will return an empty [PoolVector2Array] and will print an error message."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:4
+msgid ""
+"Crops out one part of a texture, such as a texture from a texture atlas."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:7
+msgid ""
+"[Texture] resource that crops out one part of the [member atlas] texture, "
+"defined by [member region]. The main use case is cropping out textures from "
+"a texture atlas, which is a big texture file that packs multiple smaller "
+"textures. Consists of a [Texture] for the [member atlas], a [member region] "
+"that defines the area of [member atlas] to use, and a [member margin] that "
+"defines the border width.\n"
+"[AtlasTexture] cannot be used in an [AnimatedTexture], cannot be tiled in "
+"nodes such as [TextureRect], and does not work properly if used inside of "
+"other [AtlasTexture] resources. Multiple [AtlasTexture] resources can be "
+"used to crop multiple textures from the atlas. Using a texture atlas helps "
+"to optimize video memory costs and render calls compared to using multiple "
+"small files.\n"
+"[b]Note:[/b] AtlasTextures don't support repetition. The [constant Texture."
+"FLAG_REPEAT] and [constant Texture.FLAG_MIRRORED_REPEAT] flags are ignored "
+"when using an AtlasTexture."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:17
+msgid "The texture that contains the atlas. Can be any [Texture] subtype."
+msgstr ""
+
+#: doc/classes/AtlasTexture.xml:20
+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:24
+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:27
+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/AudioEffect.xml:10 doc/classes/AudioEffectRecord.xml:11
+#: doc/classes/AudioServer.xml:12 doc/classes/AudioStream.xml:12
+#: doc/classes/AudioStreamPlayer.xml:15
+msgid "https://godotengine.org/asset-library/asset/527"
+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/AudioEffectCapture.xml:4
+msgid "Captures audio from an audio bus in real-time."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:7
+msgid ""
+"AudioEffectCapture is an AudioEffect which copies all audio frames from the "
+"attached audio effect bus into its internal ring buffer.\n"
+"Application code should consume these audio frames from this ring buffer "
+"using [method get_buffer] and process it as needed, for example to capture "
+"data from a microphone, implement application defined effects, or to "
+"transmit audio over the network."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:17
+msgid ""
+"Returns [code]true[/code] if at least [code]frames[/code] audio frames are "
+"available to read in the internal ring buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:23
+msgid "Clears the internal ring buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:30
+msgid ""
+"Gets the next [code]frames[/code] audio samples from the internal ring "
+"buffer.\n"
+"Returns a [PoolVector2Array] containing exactly [code]frames[/code] audio "
+"samples if available, or an empty [PoolVector2Array] if insufficient data "
+"was available."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:37
+msgid "Returns the total size of the internal ring buffer in frames."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:43
+msgid ""
+"Returns the number of audio frames discarded from the audio bus due to full "
+"buffer."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:49
+msgid ""
+"Returns the number of frames available to read using [method get_buffer]."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:55
+msgid "Returns the number of audio frames inserted from the audio bus."
+msgstr ""
+
+#: doc/classes/AudioEffectCapture.xml:61
+msgid ""
+"Length of the internal ring buffer, in seconds. Setting the buffer length "
+"will have no effect if already initialized."
+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:93
+msgid "The effect's raw signal."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:96 doc/classes/AudioEffectChorus.xml:114
+#: doc/classes/AudioEffectChorus.xml:132 doc/classes/AudioEffectChorus.xml:150
+msgid "The voice's cutoff frequency."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:99 doc/classes/AudioEffectChorus.xml:117
+#: doc/classes/AudioEffectChorus.xml:135 doc/classes/AudioEffectChorus.xml:153
+msgid "The voice's signal delay."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:102 doc/classes/AudioEffectChorus.xml:120
+#: doc/classes/AudioEffectChorus.xml:138 doc/classes/AudioEffectChorus.xml:156
+msgid "The voice filter's depth."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:105 doc/classes/AudioEffectChorus.xml:123
+#: doc/classes/AudioEffectChorus.xml:141 doc/classes/AudioEffectChorus.xml:159
+msgid "The voice's volume."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:108 doc/classes/AudioEffectChorus.xml:126
+#: doc/classes/AudioEffectChorus.xml:144 doc/classes/AudioEffectChorus.xml:162
+msgid "The voice's pan level."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:111 doc/classes/AudioEffectChorus.xml:129
+#: doc/classes/AudioEffectChorus.xml:147 doc/classes/AudioEffectChorus.xml:165
+msgid "The voice's filter rate."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:168
+msgid "The amount of voices in the effect."
+msgstr ""
+
+#: doc/classes/AudioEffectChorus.xml:171
+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 distorted."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:8
+msgid ""
+"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:12
+#: doc/classes/AudioEffectFilter.xml:10
+#: doc/classes/AudioEffectHighShelfFilter.xml:9
+#: doc/classes/AudioEffectLowShelfFilter.xml:9 doc/classes/AudioServer.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html"
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:18
+msgid "Distortion power. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:21
+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:24
+msgid "Distortion type."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:27
+msgid ""
+"Increases or decreases the volume after the effect. Value can range from -80 "
+"to 24."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:30
+msgid ""
+"Increases or decreases the volume before the effect. Value can range from "
+"-60 to 60."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:35
+msgid ""
+"Digital distortion effect which cuts off peaks at the top and bottom of the "
+"waveform."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:40
+msgid ""
+"Low-resolution digital distortion effect. You can use it to emulate the "
+"sound of early digital audio devices."
+msgstr ""
+
+#: doc/classes/AudioEffectDistortion.xml:43
+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:46
+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:16
+msgid "Returns the number of bands of the equalizer."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:23
+msgid "Returns the band's gain at the specified index, in dB."
+msgstr ""
+
+#: doc/classes/AudioEffectEQ.xml:31
+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:16
+msgid "Threshold frequency for the filter, in Hz."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:21
+msgid "Gain amount of the frequencies after the filter."
+msgstr ""
+
+#: doc/classes/AudioEffectFilter.xml:24
+msgid "Amount of boost in the frequency range 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/AudioEffectHighShelfFilter.xml:4
+msgid "Reduces all frequencies above the [member AudioEffectFilter.cutoff_hz]."
+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/AudioEffectLowShelfFilter.xml:4
+msgid "Reduces all frequencies below the [member AudioEffectFilter.cutoff_hz]."
+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:16
+msgid ""
+"The size of the [url=https://en.wikipedia.org/wiki/"
+"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
+"smooth out the effect over time, but have greater latency. The effects of "
+"this higher latency are especially noticeable on sounds that have sudden "
+"amplitude changes."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:19
+msgid ""
+"The oversampling factor to use. Higher values result in better quality, but "
+"are more demanding on the CPU and may cause audio cracking if the CPU can't "
+"keep up."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:22
+msgid ""
+"The pitch scale to use. [code]1.0[/code] is the default pitch and plays "
+"sounds unaltered. [member pitch_scale] can range from [code]0.0[/code] "
+"(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than "
+"the initial pitch)."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:27
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:28
+msgid ""
+"Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, "
+"but least stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:30
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:31
+msgid ""
+"Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but "
+"less stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:33
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:34
+msgid ""
+"Use a buffer of 1024 samples for the Fast Fourier transform. This is a "
+"compromise between latency and stability over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:36
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:37
+msgid ""
+"Use a buffer of 2048 samples for the Fast Fourier transform. High latency, "
+"but stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:39
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:40
+msgid ""
+"Use a buffer of 4096 samples for the Fast Fourier transform. Highest "
+"latency, but most stable over time."
+msgstr ""
+
+#: doc/classes/AudioEffectPitchShift.xml:42
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:43
+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/3.4/tutorials/audio/"
+"recording_with_microphone.html"
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:17
+msgid "Returns the recorded sample."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:23
+msgid "Returns whether the recording is active or not."
+msgstr ""
+
+#: doc/classes/AudioEffectRecord.xml:30
+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:36
+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:17
+msgid ""
+"Defines how reflective the imaginary room's walls are. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:20
+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:23
+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:26
+msgid "Output percent of predelay. Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:29
+msgid ""
+"Time between the original signal and the early reflections of the reverb "
+"signal, in milliseconds."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:32
+msgid ""
+"Dimensions of simulated room. Bigger means more echoes. Value can range from "
+"0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectReverb.xml:35
+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:38
+msgid ""
+"Output percent of modified sound. At 0, only original sound is outputted. "
+"Value can range from 0 to 1."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:4
+msgid "Audio effect that can be used for real-time audio visualizations."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:7
+msgid ""
+"This audio effect does not affect sound output, but can be used for real-"
+"time audio visualizations.\n"
+"See also [AudioStreamGenerator] for procedurally generating sounds."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:11
+msgid "Audio Spectrum Demo"
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:12
+#: doc/classes/AudioStreamGenerator.xml:13
+#: doc/classes/AudioStreamGeneratorPlayback.xml:11
+msgid "Godot 3.2 will get new audio features"
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:18
+msgid ""
+"The length of the buffer to keep (in seconds). Higher values keep data "
+"around for longer, but require more memory."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzer.xml:21
+msgid ""
+"The size of the [url=https://en.wikipedia.org/wiki/"
+"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
+"smooth out the spectrum analysis over time, but have greater latency. The "
+"effects of this higher latency are especially noticeable with sudden "
+"amplitude changes."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:21
+msgid "Use the average value as magnitude."
+msgstr ""
+
+#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:24
+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:11 doc/classes/AudioStreamPlayer.xml:13
+msgid "https://godotengine.org/asset-library/asset/525"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:13 doc/classes/AudioStream.xml:13
+#: doc/classes/AudioStreamPlayer.xml:16 doc/classes/CanvasItem.xml:17
+msgid "https://godotengine.org/asset-library/asset/528"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:20
+msgid "Adds a bus at [code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:29
+msgid ""
+"Adds an [AudioEffect] effect to the bus [code]bus_idx[/code] at "
+"[code]at_position[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:35
+msgid ""
+"Name of the current device for audio input (see [method "
+"capture_get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:41
+msgid "Returns the names of all audio input devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:48
+msgid "Sets which audio input device is used for audio capture."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:54
+msgid "Generates an [AudioBusLayout] using the available buses and effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:61
+msgid ""
+"Returns the amount of channels of the bus at index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:69
+msgid ""
+"Returns the [AudioEffect] at position [code]effect_idx[/code] in bus "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:76
+msgid "Returns the number of effects on the bus at [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:85
+msgid ""
+"Returns the [AudioEffectInstance] assigned to the given bus and effect "
+"indices (and optionally channel)."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:92
+msgid "Returns the index of the bus with the name [code]bus_name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:99
+msgid "Returns the name of the bus with the index [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:107
+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:115
+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:122
+msgid ""
+"Returns the name of the bus that the bus at index [code]bus_idx[/code] sends "
+"to."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:129
+msgid "Returns the volume of the bus at index [code]bus_idx[/code] in dB."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:135
+msgid "Returns the names of all audio devices detected on the system."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:141
+msgid "Returns the sample rate at the output of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:147
+msgid "Returns the audio driver's output latency."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:153
+msgid "Returns the speaker configuration."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:159
+msgid "Returns the relative time since the last mix occurred."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:165
+msgid "Returns the relative time until the next mix occurs."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:172 doc/classes/AudioServer.xml:232
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is bypassing "
+"effects."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:180 doc/classes/AudioServer.xml:241
+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:187 doc/classes/AudioServer.xml:256
+msgid "If [code]true[/code], the bus at index [code]bus_idx[/code] is muted."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:194 doc/classes/AudioServer.xml:280
+msgid ""
+"If [code]true[/code], the bus at index [code]bus_idx[/code] is in solo mode."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:200
+msgid ""
+"Locks the audio driver's main loop.\n"
+"[b]Note:[/b] Remember to unlock it afterwards."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:209
+msgid ""
+"Moves the bus from index [code]index[/code] to index [code]to_index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:216
+msgid "Removes the bus at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:224
+msgid ""
+"Removes the effect at index [code]effect_idx[/code] from the bus at index "
+"[code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:248
+msgid "Overwrites the currently used [AudioBusLayout]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:264
+msgid ""
+"Sets the name of the bus at index [code]bus_idx[/code] to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:272
+msgid ""
+"Connects the output of the bus at [code]bus_idx[/code] to the bus named "
+"[code]send[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:288
+msgid ""
+"Sets the volume of the bus at index [code]bus_idx[/code] to [code]volume_db[/"
+"code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:297
+msgid "Swaps the position of two effects in bus [code]bus_idx[/code]."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:303
+msgid ""
+"Unlocks the audio driver's main loop. (After locking it, you should always "
+"unlock it.)"
+msgstr ""
+
+#: doc/classes/AudioServer.xml:309
+msgid "Number of available audio buses."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:312
+msgid ""
+"Name of the current device for audio output (see [method get_device_list])."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:315
+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:321
+msgid "Emitted when the [AudioBusLayout] changes."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:327
+msgid "Two or fewer speakers were detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:330
+msgid "A 3.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:333
+msgid "A 5.1 channel surround setup was detected."
+msgstr ""
+
+#: doc/classes/AudioServer.xml:336
+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:11
+#: doc/classes/AudioStreamPlayer2D.xml:12
+#: doc/classes/AudioStreamPlayer3D.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:11 doc/classes/AudioStreamGenerator.xml:12
+#: doc/classes/AudioStreamGeneratorPlayback.xml:10
+#: doc/classes/AudioStreamPlayback.xml:10 doc/classes/AudioStreamPlayer.xml:14
+msgid "https://godotengine.org/asset-library/asset/526"
+msgstr ""
+
+#: doc/classes/AudioStream.xml:19
+msgid "Returns the length of the audio stream in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:4
+msgid "Audio stream that generates sounds procedurally."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:7
+msgid ""
+"This audio stream does not play back sounds, but expects a script to "
+"generate audio data for it instead. See also "
+"[AudioStreamGeneratorPlayback].\n"
+"See also [AudioEffectSpectrumAnalyzer] for performing real-time audio "
+"spectrum analysis.\n"
+"[b]Note:[/b] Due to performance constraints, this class is best used from C# "
+"or from a compiled language via GDNative. If you still want to use this "
+"class from GDScript, consider using a lower [member mix_rate] such as 11,025 "
+"Hz or 22,050 Hz."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:19
+msgid ""
+"The length of the buffer to generate (in seconds). Lower values result in "
+"less latency, but require the script to generate audio data faster, "
+"resulting in increased CPU usage and more risk for audio cracking if the CPU "
+"can't keep up."
+msgstr ""
+
+#: doc/classes/AudioStreamGenerator.xml:22
+msgid ""
+"The sample rate to use (in Hz). Higher values are more demanding for the CPU "
+"to generate, but result in better quality.\n"
+"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
+"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
+"[code]48000[/code].\n"
+"According to the [url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], "
+"there is no quality difference to human hearing when going past 40,000 Hz "
+"(since most humans can only hear up to ~20,000 Hz, often less). If you are "
+"generating lower-pitched sounds such as voices, lower sample rates such as "
+"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
+"quality."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:4
+msgid "Plays back audio generated using [AudioStreamGenerator]."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:7
+msgid ""
+"This class is meant to be used with [AudioStreamGenerator] to play back the "
+"generated audio in real-time."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:18
+msgid ""
+"Returns [code]true[/code] if a buffer of the size [code]amount[/code] can be "
+"pushed to the audio sample data buffer without overflowing it, [code]false[/"
+"code] otherwise."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:24
+msgid "Clears the audio sample data buffer."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:30
+msgid ""
+"Returns the number of audio data frames left to play. If this returned "
+"number reaches [code]0[/code], the audio will stop playing until frames are "
+"added again. Therefore, make sure your script can always generate and push "
+"new audio frames fast enough to avoid audio cracking."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:42
+msgid ""
+"Pushes several audio data frames to the buffer. This is usually more "
+"efficient than [method push_frame] in C# and compiled languages via "
+"GDNative, but [method push_buffer] may be [i]less[/i] efficient in GDScript."
+msgstr ""
+
+#: doc/classes/AudioStreamGeneratorPlayback.xml:49
+msgid ""
+"Pushes a single audio data frame to the buffer. This is usually less "
+"efficient than [method push_buffer] in C# and compiled languages via "
+"GDNative, but [method push_frame] may be [i]more[/i] efficient in GDScript."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:4
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:7
+msgid "MP3 audio stream driver."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:15
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:15
+msgid "Contains the audio data in bytes."
+msgstr ""
+
+#: modules/minimp3/doc_classes/AudioStreamMP3.xml:18
+#: 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/minimp3/doc_classes/AudioStreamMP3.xml:21
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:21
+msgid "Time in seconds at which the stream starts after being looped."
+msgstr ""
+
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:4
+#: modules/stb_vorbis/doc_classes/AudioStreamOGGVorbis.xml:7
+msgid "OGG Vorbis audio stream driver."
+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.\n"
+"To play audio positionally, use [AudioStreamPlayer2D] or "
+"[AudioStreamPlayer3D] instead of [AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:22
+msgid "Returns the position in the [AudioStream] in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:28
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:35
+msgid "Plays the audio from the given [code]from_position[/code], in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:42 doc/classes/AudioStreamPlayer2D.xml:38
+#: doc/classes/AudioStreamPlayer3D.xml:39
+msgid "Sets the position from which audio will be played, in seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:48 doc/classes/AudioStreamPlayer2D.xml:44
+#: doc/classes/AudioStreamPlayer3D.xml:45
+msgid "Stops the audio."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:54 doc/classes/AudioStreamPlayer2D.xml:56
+msgid "If [code]true[/code], audio plays when added to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:57 doc/classes/AudioStreamPlayer2D.xml:59
+msgid "Bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:60
+msgid ""
+"If the audio configuration has more than two speakers, this sets the target "
+"channels. See [enum MixTarget] constants."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:63 doc/classes/AudioStreamPlayer2D.xml:65
+#: doc/classes/AudioStreamPlayer3D.xml:91
+msgid ""
+"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
+"sample rate."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:66 doc/classes/AudioStreamPlayer2D.xml:68
+#: doc/classes/AudioStreamPlayer3D.xml:94
+msgid "If [code]true[/code], audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:69 doc/classes/AudioStreamPlayer2D.xml:71
+msgid "The [AudioStream] object to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:72 doc/classes/AudioStreamPlayer2D.xml:74
+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:75
+msgid "Volume of sound, in dB."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:81 doc/classes/AudioStreamPlayer2D.xml:83
+#: doc/classes/AudioStreamPlayer3D.xml:112
+msgid "Emitted when the audio stops playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:87
+msgid "The audio will be played only on the first channel."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:90
+msgid "The audio will be played on all surround channels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer.xml:93
+msgid ""
+"The audio will be played on the second channel, which is usually the center."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:4
+msgid "Plays positional sound in 2D space."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:7
+msgid ""
+"Plays audio that dampens with distance from screen center.\n"
+"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
+"[b]Note:[/b] Hiding an [AudioStreamPlayer2D] node does not disable its audio "
+"output. To temporarily disable an [AudioStreamPlayer2D]'s audio output, set "
+"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
+"audible to human hearing)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:18
+#: doc/classes/AudioStreamPlayer3D.xml:19
+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:31
+#: doc/classes/AudioStreamPlayer3D.xml:32
+msgid ""
+"Plays the audio from the given position [code]from_position[/code], in "
+"seconds."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:50
+#: doc/classes/AudioStreamPlayer3D.xml:51
+msgid "Areas in which this sound plays."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:53
+msgid "Dampens audio over distance with this as an exponent."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:62
+msgid "Maximum distance from which audio is still hearable."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer2D.xml:77
+msgid "Base volume without dampening."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:4
+msgid "Plays positional 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. For greater realism, "
+"a low-pass filter is automatically applied to distant sounds. This can be "
+"disabled by setting [member attenuation_filter_cutoff_hz] to [code]20500[/"
+"code].\n"
+"By default, audio is heard from the camera position. This can be changed by "
+"adding a [Listener] node to the scene and enabling it by calling [method "
+"Listener.make_current] on it.\n"
+"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
+"[b]Note:[/b] Hiding an [AudioStreamPlayer3D] node does not disable its audio "
+"output. To temporarily disable an [AudioStreamPlayer3D]'s audio output, set "
+"[member unit_db] to a very low value like [code]-100[/code] (which isn't "
+"audible to human hearing)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:25
+msgid ""
+"Returns the [AudioStreamPlayback] object associated with this "
+"[AudioStreamPlayer3D]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:54
+msgid ""
+"Dampens audio using a low-pass filter above this frequency, in Hz. To "
+"disable the dampening effect entirely, set this to [code]20500[/code] as "
+"this frequency is above the human hearing limit."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:57
+msgid "Amount how much the filter affects the loudness, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:60
+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:63
+msgid ""
+"If [code]true[/code], audio plays when the AudioStreamPlayer3D node is added "
+"to scene tree."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:66
+msgid "The bus on which this audio is playing."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:69
+msgid ""
+"Decides in which step the [url=https://en.wikipedia.org/wiki/"
+"Doppler_effect]Doppler effect[/url] should be calculated.\n"
+"[b]Note:[/b] Only effective if the current [Camera]'s [member Camera."
+"doppler_tracking] property is set to a value other than [constant Camera."
+"DOPPLER_TRACKING_DISABLED]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:73
+msgid "The angle in which the audio reaches cameras undampened."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:76
+msgid ""
+"If [code]true[/code], the audio should be dampened according to the "
+"direction of the sound."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:79
+msgid ""
+"Dampens audio if camera is outside of [member emission_angle_degrees] and "
+"[member emission_angle_enabled] is set by this factor, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:82
+msgid "Sets the absolute maximum of the soundlevel, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:85
+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:88
+msgid ""
+"Decides if audio should pause when source is outside of [member "
+"max_distance] range."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:97
+msgid "The [AudioStream] resource to be played."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:100
+msgid ""
+"If [code]true[/code], the playback is paused. You can resume it by setting "
+"[member stream_paused] to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:103
+msgid "The base sound level unaffected by dampening, in decibels."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:106
+msgid ""
+"The factor for the attenuation effect. Higher values make the sound audible "
+"over a larger distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:118
+msgid "Linear dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:121
+msgid "Squared dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:124
+msgid "Logarithmic dampening of loudness according to distance."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:127
+msgid ""
+"No dampening of loudness according to distance. The sound will still be "
+"heard positionally, unlike an [AudioStreamPlayer]. [constant "
+"ATTENUATION_DISABLED] can be combined with a [member max_distance] value "
+"greater than [code]0.0[/code] to achieve linear attenuation clamped to a "
+"sphere of a defined size."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:130
+msgid ""
+"Mix this audio in, even when it's out of range. This increases CPU usage, "
+"but keeps the sound playing at the correct position if the camera leaves and "
+"enters the [AudioStreamPlayer3D]'s [member max_distance] radius."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:133
+msgid ""
+"Pause this audio when it gets out of range. This decreases CPU usage, but "
+"will cause the sound to restart if the camera leaves and enters the "
+"[AudioStreamPlayer3D]'s [member max_distance] radius."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:136
+msgid "Disables doppler tracking."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:139
+msgid "Executes doppler tracking in idle step (every rendered frame)."
+msgstr ""
+
+#: doc/classes/AudioStreamPlayer3D.xml:142
+msgid ""
+"Executes doppler tracking in physics step (every simulated physics frame)."
+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. "
+"See also [AudioStreamGenerator] for procedural audio generation."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:17
+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:24
+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:28
+msgid "Audio format. See [enum Format] constants for values."
+msgstr ""
+
+#: doc/classes/AudioStreamSample.xml:31
+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:34
+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:37
+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:40
+msgid ""
+"The sample rate for mixing this audio. Higher values require more storage "
+"space, but result in better quality.\n"
+"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
+"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
+"[code]48000[/code].\n"
+"According to the [url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], "
+"there is no quality difference to human hearing when going past 40,000 Hz "
+"(since most humans can only hear up to ~20,000 Hz, often less). If you are "
+"using lower-pitched sounds such as voices, lower sample rates such as "
+"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
+"quality."
+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 buffered 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/BakedLightmap.xml:4
+msgid "Prerendered indirect light map for a scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:7
+msgid ""
+"Baked lightmaps are an alternative workflow for adding indirect (or baked) "
+"lighting to a scene. Unlike the [GIProbe] approach, baked lightmaps work "
+"fine on low-end PCs and mobile devices as they consume almost no resources "
+"in run-time.\n"
+"[b]Note:[/b] Due to how lightmaps work, most properties only have a visible "
+"effect once lightmaps are baked again."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:19
+msgid ""
+"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
+"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
+"[member light_data]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:25
+msgid ""
+"When enabled, the lightmapper will merge the textures for all meshes into a "
+"single large layered texture. Not supported in GLES2."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:28
+msgid ""
+"Maximum size of each lightmap layer, only used when [member atlas_generate] "
+"is enabled."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:31
+msgid ""
+"Raycasting bias used during baking to avoid floating point precision issues."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:34
+msgid ""
+"The energy multiplier for each bounce. Higher values will make indirect "
+"lighting brighter. A value of [code]1.0[/code] represents physically "
+"accurate behavior, but higher values can be used to make indirect lighting "
+"propagate more visibly when using a low number of bounces. This can be used "
+"to speed up bake times by lowering the number of [member bounces] then "
+"increasing [member bounce_indirect_energy]. Unlike [member BakedLightmapData."
+"energy], this property does not affect direct lighting emitted by light "
+"nodes, emissive materials and the environment.\n"
+"[b]Note:[/b] [member bounce_indirect_energy] only has an effect if [member "
+"bounces] is set to a value greater than or equal to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:38
+msgid ""
+"Number of light bounces that are taken into account during baking. See also "
+"[member bounce_indirect_energy]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:41
+msgid "Grid size used for real-time capture information on dynamic objects."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:44
+msgid ""
+"When enabled, an octree containing the scene's lighting information will be "
+"computed. This octree will then be used to light dynamic objects in the "
+"scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:47
+msgid ""
+"Bias value to reduce the amount of light proagation in the captured octree."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:50
+msgid "Bake quality of the capture data."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:53
+msgid ""
+"If a baked mesh doesn't have a UV2 size hint, this value will be used to "
+"roughly compute a suitable lightmap size."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:56
+msgid ""
+"The environment color when [member environment_mode] is set to [constant "
+"ENVIRONMENT_MODE_CUSTOM_COLOR]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:59
+msgid ""
+"The energy scaling factor when when [member environment_mode] is set to "
+"[constant ENVIRONMENT_MODE_CUSTOM_COLOR] or [constant "
+"ENVIRONMENT_MODE_CUSTOM_SKY]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:62
+msgid ""
+"The [Sky] resource to use when [member environment_mode] is set o [constant "
+"ENVIRONMENT_MODE_CUSTOM_SKY]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:65
+msgid "The rotation of the baked custom sky."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:68
+msgid ""
+"Minimum ambient light for all the lightmap texels. This doesn't take into "
+"account any occlusion from the scene's geometry, it simply ensures a minimum "
+"amount of light on all the lightmap texels. Can be used for artistic control "
+"on shadow color."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:71
+msgid "Decides which environment to use during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:74
+msgid ""
+"Size of the baked lightmap. Only meshes inside this region will be included "
+"in the baked lightmap, also used as the bounds of the captured region for "
+"dynamic lighting."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:77
+msgid ""
+"Deprecated, in previous versions it determined the location where lightmaps "
+"were be saved."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:80
+msgid "The calculated light data."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:83
+msgid ""
+"Determines the amount of samples per texel used in indrect light baking. The "
+"amount of samples for each quality level can be configured in the project "
+"settings."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:86
+msgid ""
+"Store full color values in the lightmap textures. When disabled, lightmap "
+"textures will store a single brightness channel. Can be disabled to reduce "
+"disk usage if the scene contains only white lights or you don't mind losing "
+"color information in indirect lighting."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:89
+msgid ""
+"When enabled, a lightmap denoiser will be used to reduce the noise inherent "
+"to Monte Carlo based global illumination."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:92
+msgid ""
+"If [code]true[/code], stores the lightmap textures in a high dynamic range "
+"format (EXR). If [code]false[/code], stores the lightmap texture in a low "
+"dynamic range PNG image. This can be set to [code]false[/code] to reduce "
+"disk usage, but light values over 1.0 will be clamped and you may see "
+"banding caused by the reduced precision.\n"
+"[b]Note:[/b] Setting [member use_hdr] to [code]true[/code] will decrease "
+"lightmap banding even when using the GLES2 backend or if [member "
+"ProjectSettings.rendering/quality/depth/hdr] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:98
+msgid "The lowest bake quality mode. Fastest to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:101
+msgid "The default bake quality mode."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:104
+msgid "A higher bake quality mode. Takes longer to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:107
+msgid "The highest bake quality mode. Takes the longest to calculate."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:110
+msgid "Baking was successful."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:113
+msgid ""
+"Returns if no viable save path is found. This can happen where an [member "
+"image_path] is not specified or when the save location is invalid."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:116 doc/classes/SpatialMaterial.xml:622
+msgid "Currently unused."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:119
+msgid "Returns when the baker cannot save per-mesh textures to file."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:122
+msgid "The size of the generated lightmaps is too large."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:125
+msgid "Some mesh contains UV2 values outside the [code][0,1][/code] range."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:128
+msgid "Returns if user cancels baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
+msgid "No environment is used during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:140
+msgid "The baked environment is automatically picked from the current scene."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:143
+msgid "A custom sky is used as environment during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:146
+msgid "A custom solid color is used as environment during baking."
+msgstr ""
+
+#: doc/classes/BakedLightmapData.xml:56
+msgid ""
+"Global energy multiplier for baked and dynamic capture objects. This can be "
+"changed at run-time without having to bake lightmaps again.\n"
+"To adjust only the energy of indirect lighting (without affecting direct "
+"lighting or emissive materials), adjust [member BakedLightmap."
+"bounce_indirect_energy] and bake lightmaps again."
+msgstr ""
+
+#: doc/classes/BakedLightmapData.xml:60
+msgid ""
+"Controls whether dynamic capture objects receive environment lighting or not."
+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:15
+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:22
+msgid ""
+"Called when the button is toggled (only if [member toggle_mode] is active)."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:28
+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:34
+msgid ""
+"Returns [code]true[/code] if the mouse has entered the button and has not "
+"left it yet."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:41
+msgid ""
+"Changes the [member pressed] state of the button, without emitting [signal "
+"toggled]. Use when you just want to change the state of the button without "
+"sending the pressed event (e.g. when initializing scene). Only works if "
+"[member toggle_mode] is [code]true[/code].\n"
+"[b]Note:[/b] This method doesn't unpress other buttons in its button [member "
+"group]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:48
+msgid ""
+"Determines when the button is considered clicked, one of the [enum "
+"ActionMode] constants."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:51
+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:55
+msgid ""
+"If [code]true[/code], the button is in disabled state and can't be clicked "
+"or toggled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:58
+msgid ""
+"[i]Deprecated.[/i] This property has been deprecated due to redundancy and "
+"will be removed in Godot 4.0. This property no longer has any effect when "
+"set. Please use [member Control.focus_mode] instead."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:62
+msgid "[ButtonGroup] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:65
+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:69
+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). Only works if "
+"[member toggle_mode] is [code]true[/code].\n"
+"[b]Note:[/b] Setting [member pressed] will result in [signal toggled] to be "
+"emitted. If you want to change the pressed state without emitting that "
+"signal, use [method set_pressed_no_signal]."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:73
+msgid "[ShortCut] associated to the button."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:76
+msgid ""
+"If [code]true[/code], the button will add information about its shortcut in "
+"the tooltip."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:79
+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:85
+msgid "Emitted when the button starts being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:90
+msgid "Emitted when the button stops being held down."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:95
+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:102
+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:108
+msgid ""
+"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
+"buttons."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:111
+msgid "The state of buttons are pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:114
+msgid "The state of buttons are hovered."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:117
+msgid "The state of buttons are disabled."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:120
+msgid "The state of buttons are both hovered and pressed."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:123
+msgid "Require just a press to consider the button clicked."
+msgstr ""
+
+#: doc/classes/BaseButton.xml:126
+msgid ""
+"Require a press and a subsequent release before considering the button "
+"clicked."
+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:14 doc/classes/Transform.xml:12
+#: doc/classes/Transform2D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms."
+"html"
+msgstr ""
+
+#: doc/classes/Basis.xml:15 doc/classes/Transform.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html"
+msgstr ""
+
+#: doc/classes/Basis.xml:16 doc/classes/Line2D.xml:11
+#: doc/classes/Transform.xml:14 doc/classes/Transform2D.xml:13
+#: doc/classes/Vector2.xml:15 doc/classes/Vector3.xml:15
+msgid "https://godotengine.org/asset-library/asset/584"
+msgstr ""
+
+#: doc/classes/Basis.xml:18 doc/classes/CylinderShape.xml:12
+#: doc/classes/Dictionary.xml:88 doc/classes/DynamicFont.xml:18
+#: doc/classes/DynamicFontData.xml:10 doc/classes/File.xml:29
+#: doc/classes/Input.xml:12 doc/classes/InputEvent.xml:13
+#: doc/classes/InputEventAction.xml:12 doc/classes/InputEventMouseMotion.xml:12
+#: doc/classes/KinematicBody.xml:15 doc/classes/RayCast.xml:15
+#: doc/classes/StaticBody.xml:13 doc/classes/SurfaceTool.xml:22
+#: doc/classes/TextureButton.xml:12 doc/classes/TextureRect.xml:11
+#: doc/classes/Thread.xml:13 doc/classes/VBoxContainer.xml:10
+msgid "https://godotengine.org/asset-library/asset/676"
+msgstr ""
+
+#: doc/classes/Basis.xml:19 doc/classes/Line2D.xml:12
+#: doc/classes/Transform.xml:16 doc/classes/Transform2D.xml:14
+msgid "https://godotengine.org/asset-library/asset/583"
+msgstr ""
+
+#: doc/classes/Basis.xml:26
+msgid "Constructs a pure rotation basis matrix from the given quaternion."
+msgstr ""
+
+#: doc/classes/Basis.xml:33
+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:42
+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:51
+msgid "Constructs a basis matrix from 3 axis vectors (matrix columns)."
+msgstr ""
+
+#: doc/classes/Basis.xml:57
+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:64
+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:71
+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:77
+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:83
+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:89
+msgid "Returns the inverse of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:97
+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.\n"
+"[b]Note:[/b] For complicated reasons, the epsilon argument is always "
+"discarded. Don't use the epsilon argument, it does nothing."
+msgstr ""
+
+#: doc/classes/Basis.xml:104
+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:112
+msgid ""
+"Introduce an additional rotation around the given axis by phi (radians). The "
+"axis must be a normalized vector."
+msgstr ""
+
+#: doc/classes/Basis.xml:119
+msgid ""
+"Introduce an additional scaling specified by the given 3D scaling factor."
+msgstr ""
+
+#: doc/classes/Basis.xml:127
+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:134
+msgid "Transposed dot product with the X axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:141
+msgid "Transposed dot product with the Y axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:148
+msgid "Transposed dot product with the Z axis of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:154
+msgid "Returns the transposed version of the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:161
+msgid "Returns a vector transformed (multiplied) by the matrix."
+msgstr ""
+
+#: doc/classes/Basis.xml:168
+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:175 doc/classes/Transform2D.xml:150
+msgid ""
+"The basis matrix's X vector (column 0). Equivalent to array index [code]0[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:178 doc/classes/Transform2D.xml:153
+msgid ""
+"The basis matrix's Y vector (column 1). Equivalent to array index [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:181
+msgid ""
+"The basis matrix's Z vector (column 2). Equivalent to array index [code]2[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Basis.xml:186
+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:190
+msgid ""
+"The basis that will flip something along the X axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:193
+msgid ""
+"The basis that will flip something along the Y axis when used in a "
+"transformation."
+msgstr ""
+
+#: doc/classes/Basis.xml:196
+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:16
+msgid ""
+"Creates a bitmap with the specified size, filled with [code]false[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:24
+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:31
+msgid "Returns bitmap's value at the specified position."
+msgstr ""
+
+#: doc/classes/BitMap.xml:37
+msgid "Returns bitmap's dimensions."
+msgstr ""
+
+#: doc/classes/BitMap.xml:43
+msgid ""
+"Returns the amount of bitmap elements that are set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/BitMap.xml:51
+msgid ""
+"Applies morphological dilation to the bitmap. The first argument is the "
+"dilation amount, Rect2 is the area where the dilation will be applied."
+msgstr ""
+
+#: doc/classes/BitMap.xml:66
+msgid ""
+"Sets the bitmap's element at the specified position, to the specified value."
+msgstr ""
+
+#: doc/classes/BitMap.xml:74
+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:21
+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:30
+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:37
+msgid "Adds a texture to the [BitmapFont]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:43
+msgid "Clears all the font data and settings."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:50
+msgid ""
+"Creates a BitmapFont from the [code]*.fnt[/code] file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:58
+msgid "Returns a kerning pair as a difference."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:65
+msgid "Returns the font atlas texture at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:71
+msgid "Returns the number of textures in the BitmapFont atlas."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:77
+msgid "Ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:80
+msgid "If [code]true[/code], distance field hint is enabled."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:83
+msgid "The fallback font."
+msgstr ""
+
+#: doc/classes/BitmapFont.xml:86
+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:18
+msgid "Stores the node's current transforms in [member rest]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:24
+msgid ""
+"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:30
+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:36
+msgid ""
+"Length of the bone's representation drawn in the editor's viewport in pixels."
+msgstr ""
+
+#: doc/classes/Bone2D.xml:39
+msgid ""
+"Rest transform of the bone. You can reset the node's transforms to this "
+"value using [method apply_rest]."
+msgstr ""
+
+#: doc/classes/BoneAttachment.xml:4
+msgid "A node that will attach to a bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment.xml:7
+msgid ""
+"This node must be the child of a [Skeleton] node. You can then select a bone "
+"for this node to attach to. The BoneAttachment node will copy the transform "
+"of the selected bone."
+msgstr ""
+
+#: doc/classes/BoneAttachment.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 a 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:47
+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:54
+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:61
+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 controls vertically or horizontally, and rearranges the "
+"controls automatically when their minimum size changes."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:16
+msgid ""
+"Adds a control to the box as a spacer. If [code]true[/code], [code]begin[/"
+"code] will insert the spacer control in front of other children."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:22
+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:28
+msgid "Aligns children with the beginning of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:31
+msgid "Aligns children with the center of the container."
+msgstr ""
+
+#: doc/classes/BoxContainer.xml:34
+msgid "Aligns children with the end of the container."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:4
+msgid "Box shape resource."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:7
+msgid "3D box shape that can be a child of a [PhysicsBody] or [Area]."
+msgstr ""
+
+#: doc/classes/BoxShape.xml:10 doc/classes/CapsuleShape.xml:10
+#: doc/classes/ConcavePolygonShape.xml:11 doc/classes/ConvexPolygonShape.xml:10
+#: doc/classes/CylinderShape.xml:11 doc/classes/ProjectSettings.xml:13
+#: doc/classes/RigidBody.xml:16 doc/classes/SphereShape.xml:10
+#: doc/classes/StaticBody.xml:11
+msgid "https://godotengine.org/asset-library/asset/675"
+msgstr ""
+
+#: doc/classes/BoxShape.xml:11 doc/classes/CollisionShape.xml:11
+#: modules/gridmap/doc_classes/GridMap.xml:16 doc/classes/KinematicBody.xml:13
+#: doc/classes/Mesh.xml:11 doc/classes/MeshInstance.xml:11
+#: doc/classes/MeshLibrary.xml:10
+msgid "https://godotengine.org/asset-library/asset/126"
+msgstr ""
+
+#: doc/classes/BoxShape.xml:18
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node.\n"
+"[b]Note:[/b] Buttons do not interpret touch input and therefore don't "
+"support multitouch, since mouse emulation can only press one button at a "
+"given time. Use [TouchScreenButton] for buttons that trigger gameplay "
+"movement or actions, as [TouchScreenButton] supports multitouch."
+msgstr ""
+
+#: doc/classes/Button.xml:25 doc/classes/Dictionary.xml:89
+#: doc/classes/GridContainer.xml:12 doc/classes/OS.xml:10
+#: doc/classes/PoolStringArray.xml:11 doc/classes/ProjectSettings.xml:15
+#: doc/classes/ResourceLoader.xml:11 doc/classes/RichTextLabel.xml:17
+msgid "https://godotengine.org/asset-library/asset/677"
+msgstr ""
+
+#: doc/classes/Button.xml:31
+msgid ""
+"Text alignment policy for the button's text, use one of the [enum TextAlign] "
+"constants."
+msgstr ""
+
+#: doc/classes/Button.xml:34
+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:37
+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:40
+msgid "Flat buttons don't display decoration."
+msgstr ""
+
+#: doc/classes/Button.xml:43
+msgid ""
+"Button's icon, if text is present the icon will be placed before the text."
+msgstr ""
+
+#: doc/classes/Button.xml:46 doc/classes/LinkButton.xml:18
+msgid "The button's text that will be displayed inside the button's area."
+msgstr ""
+
+#: doc/classes/Button.xml:51
+msgid "Align the text to the left."
+msgstr ""
+
+#: doc/classes/Button.xml:54
+msgid "Align the text to the center."
+msgstr ""
+
+#: doc/classes/Button.xml:57
+msgid "Align the text to the right."
+msgstr ""
+
+#: doc/classes/Button.xml:62
+msgid "[StyleBox] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:65
+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:68
+msgid "[Font] of the [Button]'s text."
+msgstr ""
+
+#: doc/classes/Button.xml:71
+msgid "Default text [Color] of the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:74
+msgid "Text [Color] used when the [Button] is disabled."
+msgstr ""
+
+#: doc/classes/Button.xml:77
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/Button.xml:80
+msgid "Text [Color] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:83
+msgid "Text [Color] used when the [Button] is being pressed."
+msgstr ""
+
+#: doc/classes/Button.xml:86
+msgid "[StyleBox] used when the [Button] is being hovered."
+msgstr ""
+
+#: doc/classes/Button.xml:89
+msgid "The horizontal space between [Button]'s icon and text."
+msgstr ""
+
+#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
+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:16
+msgid ""
+"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
+"[member BaseButton.group])."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:22
+msgid "Returns the current pressed button."
+msgstr ""
+
+#: doc/classes/ButtonGroup.xml:33
+msgid "Emitted when one of the buttons of the group is pressed."
+msgstr ""
+
+#: doc/classes/Camera.xml:4
+msgid "Camera node, displays from a point of view."
+msgstr ""
+
+#: doc/classes/Camera.xml:7
+msgid ""
+"Camera 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/Camera.xml:17
+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/Camera.xml:23
+msgid "Returns the camera's RID from the [VisualServer]."
+msgstr ""
+
+#: doc/classes/Camera.xml:29
+msgid ""
+"Returns the transform of the camera plus the vertical ([member v_offset]) "
+"and horizontal ([member h_offset]) offsets; and any other adjustments made "
+"to the position and orientation of the camera by subclassed cameras such as "
+"[ClippedCamera], [InterpolatedCamera] and [ARVRCamera]."
+msgstr ""
+
+#: doc/classes/Camera.xml:36
+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/Camera.xml:42
+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/Camera.xml:49
+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/Camera.xml:56
+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/Camera.xml:63
+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/Camera.xml:71
+msgid ""
+"Returns the 3D point in world space 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/Camera.xml:78
+msgid ""
+"Returns a normal vector in world space, 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/Camera.xml:85
+msgid ""
+"Returns a 3D position in world space, 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/Camera.xml:93
+msgid ""
+"Enables or disables the given [code]layer[/code] in the [member cull_mask]."
+msgstr ""
+
+#: doc/classes/Camera.xml:103
+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/Camera.xml:112
+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/Camera.xml:121
+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/Camera.xml:128
+msgid ""
+"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
+"3D point in world space.\n"
+"[b]Note:[/b] When using this to position GUI elements over a 3D viewport, "
+"use [method is_position_behind] to prevent them from appearing if the 3D "
+"point is behind the camera:\n"
+"[codeblock]\n"
+"# This code block is part of a script that inherits from Spatial.\n"
+"# `control` is a reference to a node inheriting from Control.\n"
+"control.visible = not get_viewport().get_camera()."
+"is_position_behind(global_transform.origin)\n"
+"control.rect_position = get_viewport().get_camera()."
+"unproject_position(global_transform.origin)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Camera.xml:141
+msgid ""
+"The culling mask that describes which 3D render layers are rendered by this "
+"camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:144
+msgid ""
+"If [code]true[/code], the ancestor [Viewport] is currently using this camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:147
+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. The Doppler "
+"effect is only simulated for [AudioStreamPlayer3D] nodes that have [member "
+"AudioStreamPlayer3D.doppler_tracking] set to a value other than [constant "
+"AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED].\n"
+"[b]Note:[/b] To toggle the Doppler effect preview in the editor, use the "
+"Perspective menu in the top-left corner of the 3D viewport and toggle "
+"[b]Enable Doppler[/b]."
+msgstr ""
+
+#: doc/classes/Camera.xml:151
+msgid "The [Environment] to use for this camera."
+msgstr ""
+
+#: doc/classes/Camera.xml:154
+msgid ""
+"The distance to the far culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera.xml:157
+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]70.0[/code]) "
+"is equivalent to a horizontal FOV of:\n"
+"- ~86.07 degrees in a 4:3 viewport\n"
+"- ~96.50 degrees in a 16:10 viewport\n"
+"- ~102.45 degrees in a 16:9 viewport\n"
+"- ~117.06 degrees in a 21:9 viewport"
+msgstr ""
+
+#: doc/classes/Camera.xml:165
+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/Camera.xml:168
+msgid "The horizontal (X) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera.xml:171
+msgid ""
+"The axis to lock during [member fov]/[member size] adjustments. Can be "
+"either [constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/Camera.xml:174
+msgid ""
+"The distance to the near culling boundary for this camera relative to its "
+"local Z axis."
+msgstr ""
+
+#: doc/classes/Camera.xml:177
+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/Camera.xml:180
+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/Camera.xml:183
+msgid "The vertical (Y) offset of the camera viewport."
+msgstr ""
+
+#: doc/classes/Camera.xml:188
+msgid ""
+"Perspective projection. Objects on the screen becomes smaller when they are "
+"far away."
+msgstr ""
+
+#: doc/classes/Camera.xml:191
+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/Camera.xml:194
+msgid ""
+"Frustum projection. This mode allows adjusting [member frustum_offset] to "
+"create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/Camera.xml:197
+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/Camera.xml:200
+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/Camera.xml:203
+msgid ""
+"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
+"url] simulation (default)."
+msgstr ""
+
+#: doc/classes/Camera.xml:206
+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/Camera.xml:209
+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/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, but "
+"more functionality may be desired to change how the camera works. To make "
+"your own custom camera node, inherit it 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:13 doc/classes/TileMap.xml:13
+#: doc/classes/TileSet.xml:13
+msgid "https://godotengine.org/asset-library/asset/112"
+msgstr ""
+
+#: doc/classes/Camera2D.xml:14 doc/classes/Environment.xml:18
+#: doc/classes/WorldEnvironment.xml:14
+msgid "https://godotengine.org/asset-library/asset/110"
+msgstr ""
+
+#: doc/classes/Camera2D.xml:20
+msgid "Aligns the camera to the tracked node."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:26
+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:38
+msgid "Returns the camera position."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:44
+msgid ""
+"Returns the location of the [Camera2D]'s screen-center, relative to the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:51
+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:58
+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:64
+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:70
+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:79
+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:87
+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:93
+msgid "The Camera2D's anchor point. See [enum AnchorMode] constants."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:96
+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:99
+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:102
+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:105
+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:108
+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:111
+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:114
+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:117
+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:120
+msgid ""
+"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:123
+msgid ""
+"If [code]true[/code], draws the camera's limits rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:126
+msgid ""
+"If [code]true[/code], draws the camera's screen rectangle in the editor."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:129
+msgid ""
+"Bottom scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:132
+msgid ""
+"Left scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:135
+msgid ""
+"Right scroll limit in pixels. The camera stops moving when reaching this "
+"value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:138
+msgid ""
+"If [code]true[/code], the camera smoothly stops when reaches its limits.\n"
+"This has no effect if smoothing is disabled.\n"
+"[b]Note:[/b] To immediately update the camera's position to be within limits "
+"without smoothing, even with this setting enabled, invoke [method "
+"reset_smoothing]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:143
+msgid ""
+"Top scroll limit in pixels. The camera stops moving when reaching this value."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:146
+msgid ""
+"The camera's offset, useful for looking around or camera shake animations."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:149
+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:153
+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:157
+msgid "The camera's process callback. See [enum Camera2DProcessMode]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:160
+msgid "If [code]true[/code], the camera rotates with the target."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:163
+msgid ""
+"If [code]true[/code], the camera smoothly moves towards the target at "
+"[member smoothing_speed]."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:166
+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:169
+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:174
+msgid ""
+"The camera's position is fixed so that the top-left corner is always at the "
+"origin."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:177
+msgid ""
+"The camera's position takes into account vertical/horizontal offsets and the "
+"screen size."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:180 doc/classes/ClippedCamera.xml:89
+msgid "The camera updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Camera2D.xml:183 doc/classes/ClippedCamera.xml:92
+msgid "The camera updates with the [code]_process[/code] callback."
+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.\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/CameraFeed.xml:16
+msgid "Returns the unique ID for this feed."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:22
+msgid "Returns the camera's name."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:28
+msgid "Returns the position of camera on the device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:34
+msgid "If [code]true[/code], the feed is active."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:37
+msgid "The transform applied to the camera's image."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:42
+msgid "No image set for the feed."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:45
+msgid "Feed supplies RGB images."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:48
+msgid "Feed supplies YCbCr images that need to be converted to RGB."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:51
+msgid ""
+"Feed supplies separate Y and CbCr images that need to be combined and "
+"converted to RGB."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:54
+msgid "Unspecified position."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:57
+msgid "Camera is mounted at the front of the device."
+msgstr ""
+
+#: doc/classes/CameraFeed.xml:60
+msgid "Camera is mounted at the back of the device."
+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."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:17
+msgid "Adds a camera feed to the camera server."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:23
+msgid "Returns an array of [CameraFeed]s."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:30
+msgid "Returns the [CameraFeed] with this id."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:36
+msgid "Returns the number of [CameraFeed]s registered."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:43
+msgid "Removes a [CameraFeed]."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:51
+msgid "Emitted when a [CameraFeed] is added (e.g. webcam is plugged in)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:57
+msgid "Emitted when a [CameraFeed] is removed (e.g. webcam is unplugged)."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:63
+msgid "The RGBA camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:66
+msgid "The YCbCr camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:69
+msgid "The Y component camera image."
+msgstr ""
+
+#: doc/classes/CameraServer.xml:72
+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:23
+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/3.4/tutorials/2d/2d_transforms.html"
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:18
+#: doc/classes/Node2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:37
+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:48
+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:57
+msgid "Draws a colored circle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:69
+msgid "Draws a colored polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:80
+msgid ""
+"Draws a line from a 2D point to another, with a given color and width. It "
+"can be optionally antialiased."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:91
+msgid ""
+"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
+"related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:101
+msgid ""
+"Draws multiple, parallel lines with a uniform [code]color[/code].\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
+"not implemented and have no effect."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:112
+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].\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
+"not implemented and have no effect."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:122
+msgid ""
+"Draws a [MultiMesh] in 2D with the provided texture. See "
+"[MultiMeshInstance2D] for related documentation."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:134
+msgid "Draws a polygon of any amount of points, convex or concave."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:144
+msgid ""
+"Draws interconnected line segments with a uniform [code]color[/code] and "
+"[code]width[/code] and optional antialiasing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:154
+msgid ""
+"Draws interconnected line segments with a uniform [code]width[/code], "
+"segment-by-segment coloring, and optional antialiasing. Colors assigned to "
+"line segments match by index between [code]points[/code] and [code]colors[/"
+"code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:166
+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:177
+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. If "
+"[code]antialiased[/code] is [code]true[/code], the lines will be "
+"antialiased.\n"
+"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are only "
+"effective if [code]filled[/code] is [code]false[/code]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:187
+msgid ""
+"Sets a custom transform for drawing via components. Anything drawn "
+"afterwards will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:194
+msgid ""
+"Sets a custom transform for drawing via matrix. Anything drawn afterwards "
+"will be transformed by this."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:205
+msgid ""
+"Draws [code]text[/code] using the specified [code]font[/code] at the "
+"[code]position[/code] (bottom-left corner using the baseline of the font). "
+"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:222
+msgid "Draws a styled rectangle."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:232
+msgid "Draws a texture at a given position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:244
+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:257
+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:263 doc/classes/Spatial.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:269
+msgid "Returns the [RID] of the [World2D] canvas where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:275
+msgid "Returns the canvas item RID used by [VisualServer] for this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:281
+msgid "Returns the transform matrix of this item's canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:287
+msgid "Returns the global position of the mouse."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:293
+msgid "Returns the global transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:299
+msgid ""
+"Returns the global transform matrix of this item in relation to the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:305
+msgid "Returns the mouse position relative to this item's position."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:311
+msgid "Returns the transform matrix of this item."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:317
+msgid "Returns the viewport's boundaries as a [Rect2]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:323
+msgid "Returns this item's transform in relation to the viewport."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:329
+msgid "Returns the [World2D] where this item is in."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:335
+msgid "Hide the [CanvasItem] if it's currently visible."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:341
+msgid ""
+"Returns [code]true[/code] if local transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:347
+msgid ""
+"Returns [code]true[/code] if the node is set as top-level. See [method "
+"set_as_toplevel]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:353
+msgid ""
+"Returns [code]true[/code] if global transform notifications are communicated "
+"to children."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:359 doc/classes/Spatial.xml:89
+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:366
+msgid "Assigns [code]screen_point[/code] as this node's new local transform."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:373
+msgid ""
+"Transformations issued by [code]event[/code]'s inputs are applied in local "
+"space instead of global space."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:380
+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:387
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"local transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:394
+msgid ""
+"If [code]enable[/code] is [code]true[/code], children will be updated with "
+"global transform data."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:400
+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:406
+msgid ""
+"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
+"called on idle time to request redraw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:412
+msgid ""
+"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:415
+msgid "The material applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:418
+msgid "The color applied to textures on this [CanvasItem]."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:421
+msgid ""
+"The color applied to textures on this [CanvasItem]. This is not inherited by "
+"children [CanvasItem]s."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:424
+msgid "If [code]true[/code], the object draws behind its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:427
+msgid "If [code]true[/code], the object draws on top of its parent."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:430
+msgid ""
+"If [code]true[/code], the parent [CanvasItem]'s [member material] property "
+"is used as this one's material."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:433
+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:440
+msgid ""
+"Emitted when the [CanvasItem] must redraw. This can only be connected "
+"realtime, as deferred will not allow drawing."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:445
+msgid "Emitted when becoming hidden."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:450
+msgid ""
+"Emitted when the item's [Rect2] boundaries (position or size) have changed, "
+"or when an action is taking place that may have impacted these boundaries (e."
+"g. changing [member Sprite.texture])."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:455
+msgid "Emitted when the visibility (hidden/visible) changes."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:461 doc/classes/CanvasItemMaterial.xml:39
+msgid ""
+"Mix blending mode. Colors are assumed to be independent of the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:464 doc/classes/CanvasItemMaterial.xml:42
+msgid "Additive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:467 doc/classes/CanvasItemMaterial.xml:45
+msgid "Subtractive blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:470 doc/classes/CanvasItemMaterial.xml:48
+msgid "Multiplicative blending mode."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:473 doc/classes/CanvasItemMaterial.xml:51
+msgid ""
+"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
+"(opacity) value."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:476
+msgid ""
+"Disables blending mode. Colors including alpha are written as-is. Only "
+"applicable for render targets with a transparent background. No lighting "
+"will be applied."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:479
+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:482
+msgid "The [CanvasItem] is requested to draw."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:485
+msgid "The [CanvasItem]'s visibility has changed."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:488
+msgid "The [CanvasItem] has entered the canvas."
+msgstr ""
+
+#: doc/classes/CanvasItem.xml:491
+msgid "The [CanvasItem] has exited the canvas."
+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 [Texture] for a "
+"[Particles2D] 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 [Texture] for a "
+"[Particles2D] 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 [Particles2D] 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: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/3.4/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 middle cylindrical part of the capsule (without the "
+"hemispherical ends).\n"
+"[b]Note:[/b] The capsule's total height is equal to [member mid_height] + 2 "
+"* [member radius]."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:19
+msgid "Number of radial segments on the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:22
+msgid "Radius of the capsule mesh."
+msgstr ""
+
+#: doc/classes/CapsuleMesh.xml:25
+msgid "Number of rings along the height of the capsule."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:4 doc/classes/CapsuleShape.xml:7
+msgid "Capsule shape for collisions."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:16 doc/classes/CapsuleShape2D.xml:15
+msgid "The capsule's height."
+msgstr ""
+
+#: doc/classes/CapsuleShape.xml:19 doc/classes/CapsuleShape2D.xml:18
+msgid "The capsule's radius."
+msgstr ""
+
+#: doc/classes/CapsuleShape2D.xml:4 doc/classes/CapsuleShape2D.xml:7
+msgid "Capsule shape for 2D 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:15
+msgid ""
+"https://docs.godotengine.org/en/3.4/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 [RichTextLabel] is paused (see [member Node."
+"pause_mode]). Resets when the text in the [RichTextLabel] is changed.\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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:22
+msgid "The vertical offset used when rendering the check icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:25
+msgid "The check icon to display when the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:34
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is focused."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:37
+msgid "The [Font] to use for the [CheckBox] text."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:40
+msgid "The [CheckBox] text's font color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:43
+msgid "The [CheckBox] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
+msgid "The [CheckBox] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:52
+msgid "The [CheckBox] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:55
+msgid "The [CheckBox] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:58
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:61
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
+"pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:64
+msgid "The separation between the check icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
+msgid "The [StyleBox] to display as a background."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:70
+msgid ""
+"The [StyleBox] to display as a background when the [CheckBox] is pressed."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:73
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is checked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:78
+msgid ""
+"If the [CheckBox] is configured as a radio button, the icon to display when "
+"the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:83
+msgid "The check icon to display when the [CheckBox] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:22
+msgid "The vertical offset used when rendering the toggle icons (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:25
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:28
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is focused."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:31
+msgid "The [Font] to use for the [CheckButton] text."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:34
+msgid "The [CheckButton] text's font color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:37
+msgid "The [CheckButton] text's font color when it's disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:40
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:43
+msgid "The [CheckButton] text's font color when it's hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:46
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:55
+msgid ""
+"The [StyleBox] to display as a background when the [CheckButton] is hovered "
+"and pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:58
+msgid "The separation between the toggle icon and the text (in pixels)."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:64
+msgid "The icon to display when the [CheckButton] is unchecked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:67
+msgid "The icon to display when the [CheckButton] is unchecked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:70
+msgid "The icon to display when the [CheckButton] is checked."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:73
+msgid "The icon to display when the [CheckButton] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:76
+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:16
+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:23
+msgid "Returns whether the specified [code]class[/code] is available or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:30
+msgid ""
+"Returns a category associated with the class for use in documentation and "
+"the Asset Library. Debug mode required."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:39
+msgid ""
+"Returns an array with all the keys in [code]enum[/code] of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:47
+msgid ""
+"Returns an array with all the enums of [code]class[/code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:55
+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:64
+msgid ""
+"Returns which enum the integer constant [code]name[/code] of [code]class[/"
+"code] or its ancestry belongs to."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:72
+msgid ""
+"Returns an array with the names all the integer constants of [code]class[/"
+"code] or its ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:80
+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].\n"
+"[b]Note:[/b] In exported release builds the debug info is not available, so "
+"the returned dictionaries will contain only method names."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:89
+msgid ""
+"Returns the value of [code]property[/code] of [code]class[/code] or its "
+"ancestry."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:97
+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:105
+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:122
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an enum called "
+"[code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:130
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has an integer constant "
+"called [code]name[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:139
+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:147
+msgid ""
+"Returns whether [code]class[/code] or its ancestry has a signal called "
+"[code]signal[/code] or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:156
+msgid ""
+"Sets [code]property[/code] value of [code]class[/code] to [code]value[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:162
+msgid "Returns the names of all the classes available."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:169
+msgid ""
+"Returns the names of all the classes that directly or indirectly inherit "
+"from [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:176
+msgid "Returns the parent class of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:183
+msgid "Creates an instance of [code]class[/code]."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:190
+msgid "Returns whether this [code]class[/code] is enabled or not."
+msgstr ""
+
+#: doc/classes/ClassDB.xml:198
+msgid ""
+"Returns whether [code]inherits[/code] is an ancestor of [code]class[/code] "
+"or not."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:4
+msgid "A [Camera] that includes collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:7
+msgid ""
+"This node extends [Camera] to add collisions with [Area] and/or "
+"[PhysicsBody] nodes. The camera cannot move through colliding objects."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:16
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"node."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:23
+msgid ""
+"Adds a collision exception so the camera does not collide with the specified "
+"[RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:29
+msgid "Removes all collision exceptions."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:35
+msgid "Returns the distance the camera has been offset due to a collision."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:42
+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/ClippedCamera.xml:50
+msgid "Removes a collision exception with the specified node."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:57
+msgid "Removes a collision exception with the specified [RID]."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:65
+msgid ""
+"Sets the specified bit index to the [code]value[/code].\n"
+"[b]Note:[/b] Bit indices range from 0-19."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:72
+msgid "If [code]true[/code], the camera stops on contact with [Area]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:75
+msgid "If [code]true[/code], the camera stops on contact with [PhysicsBody]s."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:78
+msgid ""
+"The camera's collision mask. Only objects in at least one collision layer "
+"matching the mask will be detected. See [url=https://docs.godotengine.org/"
+"en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks]Collision layers and masks[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:81
+msgid ""
+"The camera's collision margin. The camera can't get closer than this "
+"distance to a colliding object."
+msgstr ""
+
+#: doc/classes/ClippedCamera.xml:84
+msgid "The camera's process callback. See [enum ProcessMode]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:4
+msgid "Base node for collision objects."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:7
+msgid ""
+"CollisionObject is the base class for physics objects. It can hold any "
+"number of collision [Shape]s. Each shape must be assigned to a [i]shape "
+"owner[/i]. The CollisionObject 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/CollisionObject.xml:20
+msgid ""
+"Receives unhandled [InputEvent]s. [code]position[/code] is the location in "
+"world space of the mouse pointer on the surface of the shape with index "
+"[code]shape_idx[/code] and [code]normal[/code] is the normal vector of the "
+"surface at that point. Connect to the [signal input_event] signal to easily "
+"pick up these events."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:27 doc/classes/CollisionObject2D.xml:25
+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/CollisionObject.xml:34 doc/classes/CollisionObject2D.xml:32
+msgid ""
+"Returns whether or not the specified [code]bit[/code] of the [member "
+"collision_layer] is set."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:41 doc/classes/CollisionObject2D.xml:39
+msgid ""
+"Returns whether or not the specified [code]bit[/code] of the [member "
+"collision_mask] is set."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:47 doc/classes/CollisionObject2D.xml:45
+msgid "Returns the object's [RID]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:53 doc/classes/CollisionObject2D.xml:58
+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/CollisionObject.xml:60 doc/classes/CollisionObject2D.xml:65
+msgid "If [code]true[/code], the shape owner and its shapes are disabled."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:67 doc/classes/CollisionObject2D.xml:79
+msgid "Removes the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:75 doc/classes/CollisionObject2D.xml:87
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the the [member collision_layer].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the the [member collision_layer]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:84 doc/classes/CollisionObject2D.xml:96
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the the [member collision_mask].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the the [member collision_mask]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:92 doc/classes/CollisionObject2D.xml:104
+msgid "Returns the [code]owner_id[/code] of the given shape."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:100
+msgid "Adds a [Shape] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:107 doc/classes/CollisionObject2D.xml:119
+msgid "Removes all shapes from the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:114 doc/classes/CollisionObject2D.xml:126
+msgid "Returns the parent object of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:122
+msgid "Returns the [Shape] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:129 doc/classes/CollisionObject2D.xml:141
+msgid "Returns the number of shapes the given shape owner contains."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:137
+msgid ""
+"Returns the child index of the [Shape] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:144
+msgid "Returns the shape owner's [Transform]."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:152 doc/classes/CollisionObject2D.xml:164
+msgid "Removes a shape from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:160 doc/classes/CollisionObject2D.xml:172
+msgid "If [code]true[/code], disables the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:168
+msgid "Sets the [Transform] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:174
+msgid ""
+"The physics layers this CollisionObject3D is in. Collision objects can exist "
+"in one or more of 32 different layers. See also [member collision_mask].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:178
+msgid ""
+"The physics layers this CollisionObject3D scans. Collision objects can scan "
+"one or more of 32 different layers. See also [member collision_layer].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:182
+msgid ""
+"If [code]true[/code], the [CollisionObject] will continue to receive input "
+"events as the mouse is dragged across its shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:185
+msgid ""
+"If [code]true[/code], the [CollisionObject]'s shapes will respond to "
+"[RayCast]s."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:196
+msgid ""
+"Emitted when the object receives an unhandled [InputEvent]. [code]position[/"
+"code] is the location in world space of the mouse pointer on the surface of "
+"the shape with index [code]shape_idx[/code] and [code]normal[/code] is the "
+"normal vector of the surface at that point."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:201
+msgid "Emitted when the mouse pointer enters any of this object's shapes."
+msgstr ""
+
+#: doc/classes/CollisionObject.xml:206
+msgid "Emitted when the mouse pointer exits all this object's shapes."
+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:18
+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:52
+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: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:112
+msgid "Adds a [Shape2D] to the shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:134
+msgid "Returns the [Shape2D] with the given id from the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:149
+msgid ""
+"Returns the child index of the [Shape2D] with the given id from the given "
+"shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:156
+msgid "Returns the shape owner's [Transform2D]."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:180
+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:188
+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:196
+msgid "Sets the [Transform2D] of the given shape owner."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:202
+msgid ""
+"The physics layers this CollisionObject2D is in. Collision objects can exist "
+"in one or more of 32 different layers. See also [member collision_mask].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:206
+msgid ""
+"The physics layers this CollisionObject2D scans. Collision objects can scan "
+"one or more of 32 different layers. See also [member collision_layer].\n"
+"[b]Note:[/b] 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 "
+"[url=https://docs.godotengine.org/en/latest/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/CollisionObject2D.xml:210
+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:219
+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:224
+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:229
+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/CollisionPolygon.xml:4
+msgid "Editor-only class for defining a collision polygon in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.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 [Shape] "
+"for gameplay. Properties modified during gameplay will have no effect."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:15
+msgid ""
+"Length that the resulting collision extends in either direction "
+"perpendicular to its polygon."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:18
+msgid "If [code]true[/code], no collision will be produced."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:21
+msgid ""
+"The collision margin for the generated [Shape]. See [member Shape.margin] "
+"for more details."
+msgstr ""
+
+#: doc/classes/CollisionPolygon.xml:24
+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/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 [PoolVector2Array], 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/CollisionShape.xml:4
+msgid "Node that represents collision shape data in 3D space."
+msgstr ""
+
+#: doc/classes/CollisionShape.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 [Area] to give it a detection shape, or add it to a "
+"[PhysicsBody] to create a solid object. [b]IMPORTANT[/b]: this is an Editor-"
+"only helper to create shapes, use [method CollisionObject."
+"shape_owner_get_shape] to get the actual shape."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:10 doc/classes/CollisionShape2D.xml:10
+#: doc/classes/Physics2DDirectBodyState.xml:10
+#: doc/classes/Physics2DDirectSpaceState.xml:10 doc/classes/PhysicsBody.xml:10
+#: doc/classes/PhysicsBody2D.xml:10 doc/classes/PhysicsDirectBodyState.xml:10
+#: doc/classes/PhysicsDirectSpaceState.xml:10 doc/classes/RigidBody.xml:14
+#: doc/classes/Shape.xml:10 doc/classes/Shape2D.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html"
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:19
+msgid ""
+"Sets the collision shape's shape to the addition of all its convexed "
+"[MeshInstance] siblings geometry."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:26
+msgid ""
+"If this method exists within a script it will be called whenever the shape "
+"resource has been modified."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:32
+msgid "A disabled collision shape has no effect in the world."
+msgstr ""
+
+#: doc/classes/CollisionShape.xml:35 doc/classes/CollisionShape2D.xml:28
+msgid "The actual shape owned by this collision shape."
+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:13 doc/classes/KinematicBody2D.xml:14
+#: doc/classes/RectangleShape2D.xml:11 doc/classes/TileMap.xml:17
+#: doc/classes/TileSet.xml:17
+msgid "https://godotengine.org/asset-library/asset/113"
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:19
+msgid ""
+"A disabled collision shape has no effect in the world. This property should "
+"be changed with [method Object.set_deferred]."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:22
+msgid ""
+"Sets whether this collision shape should only detect collision on one side "
+"(top or bottom)."
+msgstr ""
+
+#: doc/classes/CollisionShape2D.xml:25
+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/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].\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"color_constants.png]Color constants cheatsheet[/url]"
+msgstr ""
+
+#: doc/classes/Color.xml:14 doc/classes/ColorPickerButton.xml:13
+msgid "https://godotengine.org/asset-library/asset/517"
+msgstr ""
+
+#: doc/classes/Color.xml:15 doc/classes/ColorPicker.xml:11
+msgid "https://godotengine.org/asset-library/asset/146"
+msgstr ""
+
+#: doc/classes/Color.xml:16 doc/classes/ColorPickerButton.xml:12
+msgid "https://godotengine.org/asset-library/asset/133"
+msgstr ""
+
+#: doc/classes/Color.xml:23
+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 in RGBA format (each byte "
+"represents a color channel).\n"
+"[codeblock]\n"
+"var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:49
+msgid ""
+"Constructs a color from RGB values, typically between 0 and 1. Alpha will be "
+"1.\n"
+"[codeblock]\n"
+"var color = Color(0.2, 1.0, 0.7) # Similar to Color8(51, 255, 178, 255)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:62
+msgid ""
+"Constructs a color from RGBA values, typically between 0 and 1.\n"
+"[codeblock]\n"
+"var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to Color8(51, 255, 178, "
+"204)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:72
+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:83
+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:94
+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:108
+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:117
+msgid ""
+"Returns the color's grayscale representation.\n"
+"The gray value is calculated as [code](r + g + b) / 3[/code].\n"
+"[codeblock]\n"
+"var c = Color(0.2, 0.45, 0.82)\n"
+"var gray = c.gray() # A value of 0.466667\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:128
+msgid ""
+"Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
+"[codeblock]\n"
+"var color = Color(0.3, 0.4, 0.9)\n"
+"var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:139
+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:146
+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:158
+msgid ""
+"Returns the linear interpolation with another color. The interpolation "
+"factor [code]weight[/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.linear_interpolate(c2, 0.5) # Equivalent to Color(0.5, 0.5, "
+"0.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:169
+msgid ""
+"Returns the color converted to a 32-bit integer in ABGR format (each byte "
+"represents a color channel). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr32()) # Prints 4281565439\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:179
+msgid ""
+"Returns the color converted to a 64-bit integer in ABGR format (each word "
+"represents a color channel). ABGR is the reversed version of the default "
+"format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr64()) # Prints -225178692812801\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:189
+msgid ""
+"Returns the color converted to a 32-bit integer in ARGB format (each byte "
+"represents a color channel). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb32()) # Prints 4294934323\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:199
+msgid ""
+"Returns the color converted to a 64-bit integer in ARGB format (each word "
+"represents a color channel). ARGB is more compatible with DirectX.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb64()) # Prints -2147470541\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:210
+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:222
+msgid ""
+"Returns the color converted to a 32-bit integer in RGBA format (each byte "
+"represents a color channel). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba32()) # Prints 4286526463\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:232
+msgid ""
+"Returns the color converted to a 64-bit integer in RGBA format (each word "
+"represents a color channel). RGBA is Godot's default format.\n"
+"[codeblock]\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba64()) # Prints -140736629309441\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Color.xml:242
+msgid ""
+"The color's alpha (transparency) component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:245
+msgid "Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:248
+msgid "The color's blue component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:251
+msgid "Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:254
+msgid "The color's green component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:257
+msgid "Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:260
+msgid "The HSV hue of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:263
+msgid "The color's red component, typically on the range of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:266
+msgid "Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:269
+msgid "The HSV saturation of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:272
+msgid "The HSV value (brightness) of this color, on the range 0 to 1."
+msgstr ""
+
+#: doc/classes/Color.xml:277
+msgid "Alice blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:280
+msgid "Antique white color."
+msgstr ""
+
+#: doc/classes/Color.xml:283
+msgid "Aqua color."
+msgstr ""
+
+#: doc/classes/Color.xml:286
+msgid "Aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:289
+msgid "Azure color."
+msgstr ""
+
+#: doc/classes/Color.xml:292
+msgid "Beige color."
+msgstr ""
+
+#: doc/classes/Color.xml:295
+msgid "Bisque color."
+msgstr ""
+
+#: doc/classes/Color.xml:298
+msgid "Black color."
+msgstr ""
+
+#: doc/classes/Color.xml:301
+msgid "Blanche almond color."
+msgstr ""
+
+#: doc/classes/Color.xml:304
+msgid "Blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:307
+msgid "Blue violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:310
+msgid "Brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:313
+msgid "Burly wood color."
+msgstr ""
+
+#: doc/classes/Color.xml:316
+msgid "Cadet blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:319
+msgid "Chartreuse color."
+msgstr ""
+
+#: doc/classes/Color.xml:322
+msgid "Chocolate color."
+msgstr ""
+
+#: doc/classes/Color.xml:325
+msgid "Coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:328
+msgid "Cornflower color."
+msgstr ""
+
+#: doc/classes/Color.xml:331
+msgid "Corn silk color."
+msgstr ""
+
+#: doc/classes/Color.xml:334
+msgid "Crimson color."
+msgstr ""
+
+#: doc/classes/Color.xml:337
+msgid "Cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:340
+msgid "Dark blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:343
+msgid "Dark cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:346
+msgid "Dark goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:349
+msgid "Dark gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:352
+msgid "Dark green color."
+msgstr ""
+
+#: doc/classes/Color.xml:355
+msgid "Dark khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:358
+msgid "Dark magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:361
+msgid "Dark olive green color."
+msgstr ""
+
+#: doc/classes/Color.xml:364
+msgid "Dark orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:367
+msgid "Dark orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:370
+msgid "Dark red color."
+msgstr ""
+
+#: doc/classes/Color.xml:373
+msgid "Dark salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:376
+msgid "Dark sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:379
+msgid "Dark slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:382
+msgid "Dark slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:385
+msgid "Dark turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:388
+msgid "Dark violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:391
+msgid "Deep pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:394
+msgid "Deep sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:397
+msgid "Dim gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:400
+msgid "Dodger blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:403
+msgid "Firebrick color."
+msgstr ""
+
+#: doc/classes/Color.xml:406
+msgid "Floral white color."
+msgstr ""
+
+#: doc/classes/Color.xml:409
+msgid "Forest green color."
+msgstr ""
+
+#: doc/classes/Color.xml:412
+msgid "Fuchsia color."
+msgstr ""
+
+#: doc/classes/Color.xml:415
+msgid "Gainsboro color."
+msgstr ""
+
+#: doc/classes/Color.xml:418
+msgid "Ghost white color."
+msgstr ""
+
+#: doc/classes/Color.xml:421
+msgid "Gold color."
+msgstr ""
+
+#: doc/classes/Color.xml:424
+msgid "Goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:427
+msgid "Gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:430
+msgid "Green color."
+msgstr ""
+
+#: doc/classes/Color.xml:433
+msgid "Green yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:436
+msgid "Honeydew color."
+msgstr ""
+
+#: doc/classes/Color.xml:439
+msgid "Hot pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:442
+msgid "Indian red color."
+msgstr ""
+
+#: doc/classes/Color.xml:445
+msgid "Indigo color."
+msgstr ""
+
+#: doc/classes/Color.xml:448
+msgid "Ivory color."
+msgstr ""
+
+#: doc/classes/Color.xml:451
+msgid "Khaki color."
+msgstr ""
+
+#: doc/classes/Color.xml:454
+msgid "Lavender color."
+msgstr ""
+
+#: doc/classes/Color.xml:457
+msgid "Lavender blush color."
+msgstr ""
+
+#: doc/classes/Color.xml:460
+msgid "Lawn green color."
+msgstr ""
+
+#: doc/classes/Color.xml:463
+msgid "Lemon chiffon color."
+msgstr ""
+
+#: doc/classes/Color.xml:466
+msgid "Light blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:469
+msgid "Light coral color."
+msgstr ""
+
+#: doc/classes/Color.xml:472
+msgid "Light cyan color."
+msgstr ""
+
+#: doc/classes/Color.xml:475
+msgid "Light goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:478
+msgid "Light gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:481
+msgid "Light green color."
+msgstr ""
+
+#: doc/classes/Color.xml:484
+msgid "Light pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:487
+msgid "Light salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:490
+msgid "Light sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:493
+msgid "Light sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:496
+msgid "Light slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:499
+msgid "Light steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:502
+msgid "Light yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:505
+msgid "Lime color."
+msgstr ""
+
+#: doc/classes/Color.xml:508
+msgid "Lime green color."
+msgstr ""
+
+#: doc/classes/Color.xml:511
+msgid "Linen color."
+msgstr ""
+
+#: doc/classes/Color.xml:514
+msgid "Magenta color."
+msgstr ""
+
+#: doc/classes/Color.xml:517
+msgid "Maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:520
+msgid "Medium aquamarine color."
+msgstr ""
+
+#: doc/classes/Color.xml:523
+msgid "Medium blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:526
+msgid "Medium orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:529
+msgid "Medium purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:532
+msgid "Medium sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:535
+msgid "Medium slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:538
+msgid "Medium spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:541
+msgid "Medium turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:544
+msgid "Medium violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:547
+msgid "Midnight blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:550
+msgid "Mint cream color."
+msgstr ""
+
+#: doc/classes/Color.xml:553
+msgid "Misty rose color."
+msgstr ""
+
+#: doc/classes/Color.xml:556
+msgid "Moccasin color."
+msgstr ""
+
+#: doc/classes/Color.xml:559
+msgid "Navajo white color."
+msgstr ""
+
+#: doc/classes/Color.xml:562
+msgid "Navy blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:565
+msgid "Old lace color."
+msgstr ""
+
+#: doc/classes/Color.xml:568
+msgid "Olive color."
+msgstr ""
+
+#: doc/classes/Color.xml:571
+msgid "Olive drab color."
+msgstr ""
+
+#: doc/classes/Color.xml:574
+msgid "Orange color."
+msgstr ""
+
+#: doc/classes/Color.xml:577
+msgid "Orange red color."
+msgstr ""
+
+#: doc/classes/Color.xml:580
+msgid "Orchid color."
+msgstr ""
+
+#: doc/classes/Color.xml:583
+msgid "Pale goldenrod color."
+msgstr ""
+
+#: doc/classes/Color.xml:586
+msgid "Pale green color."
+msgstr ""
+
+#: doc/classes/Color.xml:589
+msgid "Pale turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:592
+msgid "Pale violet red color."
+msgstr ""
+
+#: doc/classes/Color.xml:595
+msgid "Papaya whip color."
+msgstr ""
+
+#: doc/classes/Color.xml:598
+msgid "Peach puff color."
+msgstr ""
+
+#: doc/classes/Color.xml:601
+msgid "Peru color."
+msgstr ""
+
+#: doc/classes/Color.xml:604
+msgid "Pink color."
+msgstr ""
+
+#: doc/classes/Color.xml:607
+msgid "Plum color."
+msgstr ""
+
+#: doc/classes/Color.xml:610
+msgid "Powder blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:613
+msgid "Purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:616
+msgid "Rebecca purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:619
+msgid "Red color."
+msgstr ""
+
+#: doc/classes/Color.xml:622
+msgid "Rosy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:625
+msgid "Royal blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:628
+msgid "Saddle brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:631
+msgid "Salmon color."
+msgstr ""
+
+#: doc/classes/Color.xml:634
+msgid "Sandy brown color."
+msgstr ""
+
+#: doc/classes/Color.xml:637
+msgid "Sea green color."
+msgstr ""
+
+#: doc/classes/Color.xml:640
+msgid "Seashell color."
+msgstr ""
+
+#: doc/classes/Color.xml:643
+msgid "Sienna color."
+msgstr ""
+
+#: doc/classes/Color.xml:646
+msgid "Silver color."
+msgstr ""
+
+#: doc/classes/Color.xml:649
+msgid "Sky blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:652
+msgid "Slate blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:655
+msgid "Slate gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:658
+msgid "Snow color."
+msgstr ""
+
+#: doc/classes/Color.xml:661
+msgid "Spring green color."
+msgstr ""
+
+#: doc/classes/Color.xml:664
+msgid "Steel blue color."
+msgstr ""
+
+#: doc/classes/Color.xml:667
+msgid "Tan color."
+msgstr ""
+
+#: doc/classes/Color.xml:670
+msgid "Teal color."
+msgstr ""
+
+#: doc/classes/Color.xml:673
+msgid "Thistle color."
+msgstr ""
+
+#: doc/classes/Color.xml:676
+msgid "Tomato color."
+msgstr ""
+
+#: doc/classes/Color.xml:679
+msgid "Transparent color (white with no alpha)."
+msgstr ""
+
+#: doc/classes/Color.xml:682
+msgid "Turquoise color."
+msgstr ""
+
+#: doc/classes/Color.xml:685
+msgid "Violet color."
+msgstr ""
+
+#: doc/classes/Color.xml:688
+msgid "Web gray color."
+msgstr ""
+
+#: doc/classes/Color.xml:691
+msgid "Web green color."
+msgstr ""
+
+#: doc/classes/Color.xml:694
+msgid "Web maroon color."
+msgstr ""
+
+#: doc/classes/Color.xml:697
+msgid "Web purple color."
+msgstr ""
+
+#: doc/classes/Color.xml:700
+msgid "Wheat color."
+msgstr ""
+
+#: doc/classes/Color.xml:703
+msgid "White color."
+msgstr ""
+
+#: doc/classes/Color.xml:706
+msgid "White smoke color."
+msgstr ""
+
+#: doc/classes/Color.xml:709
+msgid "Yellow color."
+msgstr ""
+
+#: doc/classes/Color.xml:712
+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.\n"
+"[b]Note:[/b] This control is the color picker widget itself. You can use a "
+"[ColorPickerButton] instead if you need a button that brings up a "
+"[ColorPicker] in a pop-up."
+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:26
+msgid ""
+"Removes the given color from the list of color presets of this color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:32
+msgid "Returns the list of colors in the presets of the color picker."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:38 doc/classes/ColorPickerButton.xml:33
+msgid "The currently selected color."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:41
+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:44
+msgid "If [code]true[/code], shows an alpha channel slider (transparency)."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:47
+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:51
+msgid "If [code]true[/code], the \"add preset\" button is enabled."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:54
+msgid "If [code]true[/code], saved color presets are visible."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:57
+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:65
+msgid "Emitted when the color is changed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:71
+msgid "Emitted when a preset is added."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:77
+msgid "Emitted when a preset is removed."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:85
+msgid "The icon for the \"Add Preset\" button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:88
+msgid "Custom texture for the hue selection slider on the right."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:93
+msgid "The width of the hue selection slider."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:98
+msgid "The margin around the [ColorPicker]."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:101
+msgid ""
+"The indicator used to signalize that the color value is outside the 0-1 "
+"range."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:106
+msgid "The icon for the screen color picker button."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:109
+msgid "The height of the saturation-value selection box."
+msgstr ""
+
+#: doc/classes/ColorPicker.xml:112
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node.\n"
+"[b]Note:[/b] By default, the button may not be wide enough for the color "
+"preview swatch to be visible. Make sure to set [member Control."
+"rect_min_size] to a big enough value to give the button enough space."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:19
+msgid ""
+"Returns the [ColorPicker] that this node toggles.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:26
+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.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:36
+msgid ""
+"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
+"be visible."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:44
+msgid "Emitted when the color changes."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:49
+msgid ""
+"Emitted when the [ColorPicker] is created (the button is pressed for the "
+"first time)."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:54
+msgid "Emitted when the [ColorPicker] is closed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:62
+msgid "The background of the color preview rect on the button."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:65
+msgid "[StyleBox] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:68
+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:71
+msgid "[Font] of the [ColorPickerButton]'s text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:74
+msgid "Default text [Color] of the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:77
+msgid "Text [Color] used when the [ColorPickerButton] is disabled."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:80
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:86
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:89
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:92
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
+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 rectangle filled with a solid [member color]. If you need to "
+"display the border alone, consider using [ReferenceRect] instead."
+msgstr ""
+
+#: doc/classes/ColorRect.xml:16
+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/ConcavePolygonShape.xml:4
+msgid "Concave polygon shape."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:7
+msgid ""
+"Concave polygon shape resource, which can be set into a [PhysicsBody] or "
+"area. This shape is created by feeding a list of triangles.\n"
+"[b]Note:[/b] When used for collision, [ConcavePolygonShape] is intended to "
+"work with static [PhysicsBody] nodes like [StaticBody] and will not work "
+"with [KinematicBody] or [RigidBody] with a mode other than Static."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:17
+msgid "Returns the faces (an array of triangles)."
+msgstr ""
+
+#: doc/classes/ConcavePolygonShape.xml:24
+msgid "Sets the faces (an array of triangles)."
+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/ConeTwistJoint.xml:4
+msgid "A twist joint between two 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:7
+msgid ""
+"The joint can rotate the bodies across an axis defined by the local x-axes "
+"of the [Joint].\n"
+"The twist axis is initiated as the X axis of the [Joint].\n"
+"Once the Bodies swing, the twist axis is calculated as the middle of the x-"
+"axes of the Joint in the local space of the two Bodies. See also "
+"[Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:30 doc/classes/ConeTwistJoint.xml:62
+#: doc/classes/PhysicsServer.xml:1076
+msgid ""
+"The speed with which the swing or twist will take place.\n"
+"The higher, the faster."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:34 doc/classes/ConeTwistJoint.xml:69
+#: doc/classes/PhysicsServer.xml:1083
+msgid ""
+"Defines, how fast the swing- and twist-speed-difference on both sides gets "
+"synced."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:37 doc/classes/ConeTwistJoint.xml:66
+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/ConeTwistJoint.xml:40 doc/classes/ConeTwistJoint.xml:52
+#: doc/classes/PhysicsServer.xml:1066
+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 [ConeTwistJoint].\n"
+"If below 0.05, this behavior is locked."
+msgstr ""
+
+#: doc/classes/ConeTwistJoint.xml:46 doc/classes/ConeTwistJoint.xml:58
+#: doc/classes/PhysicsServer.xml:1072
+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/ConeTwistJoint.xml:72 doc/classes/Generic6DOFJoint.xml:384
+#: doc/classes/HingeJoint.xml:99 doc/classes/Light.xml:124
+#: doc/classes/SliderJoint.xml:165
+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 World!\"\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 create a simple [ConfigFile] and save it "
+"on disk:\n"
+"[codeblock]\n"
+"# Create new ConfigFile object.\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# Store some values.\n"
+"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
+"config.set_value(\"Player1\", \"best_score\", 10)\n"
+"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
+"config.set_value(\"Player2\", \"best_score\", 9001)\n"
+"\n"
+"# Save it to a file (overwrite if already exists).\n"
+"config.save(\"user://scores.cfg\")\n"
+"[/codeblock]\n"
+"This example shows how the above file could be loaded:\n"
+"[codeblock]\n"
+"var score_data = {}\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# Load data from a file.\n"
+"var err = config.load(\"user://scores.cfg\")\n"
+"\n"
+"# If the file didn't load, ignore it.\n"
+"if err != OK:\n"
+" return\n"
+"\n"
+"# Iterate over all sections.\n"
+"for player in config.get_sections():\n"
+" # Fetch the data for each section.\n"
+" var player_name = config.get_value(player, \"player_name\")\n"
+" var player_score = config.get_value(player, \"best_score\")\n"
+" score_data[player_name] = player_score\n"
+"[/codeblock]\n"
+"Any operation that mutates the ConfigFile such as [method set_value], "
+"[method clear], or [method erase_section], only changes what is loaded in "
+"memory. If you want to write the change to a file, you have to save the "
+"changes with [method save], [method save_encrypted], or [method "
+"save_encrypted_pass].\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.\n"
+"[b]Note:[/b] The file extension given to a ConfigFile does not have any "
+"impact on its formatting or behavior. By convention, the [code].cfg[/code] "
+"extension is used here, but any other extension such as [code].ini[/code] is "
+"also valid. Since neither [code].cfg[/code] nor [code].ini[/code] are "
+"standardized, Godot's ConfigFile formatting may differ from files written by "
+"other programs."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:59
+msgid "Removes the entire contents of the config."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:66
+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:74
+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:81
+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:87
+msgid "Returns an array of all defined section identifiers."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:96
+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:103
+msgid "Returns [code]true[/code] if the specified section exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:111
+msgid "Returns [code]true[/code] if the specified section-key pair exists."
+msgstr ""
+
+#: doc/classes/ConfigFile.xml:118
+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:127
+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:136
+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:144
+msgid ""
+"Parses 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:152
+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:161
+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:170
+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:180
+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:19
+msgid ""
+"Returns the cancel button.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+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:18
+msgid ""
+"Fit a child control in a given rect. This is mainly a helper for creating "
+"custom container classes."
+msgstr ""
+
+#: doc/classes/Container.xml:24
+msgid ""
+"Queue resort of the contained children. This is called automatically anyway, "
+"but can be called upon request."
+msgstr ""
+
+#: doc/classes/Container.xml:31
+msgid "Emitted when sorting the children is needed."
+msgstr ""
+
+#: doc/classes/Container.xml:37
+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 "
+"[method MainLoop._input_event]. Call [method accept_event] so no other node "
+"receives the event. Once you accept 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_*_override[/code] methods, "
+"like [method add_font_override]. You can override the theme with the "
+"inspector.\n"
+"[b]Note:[/b] Theme items are [i]not[/i] [Object] properties. This means you "
+"can't access their values using [method Object.get] and [method Object.set]. "
+"Instead, use [method get_color], [method get_constant], [method get_font], "
+"[method get_icon], [method get_stylebox], and the [code]add_*_override[/"
+"code] methods provided by this class."
+msgstr ""
+
+#: doc/classes/Control.xml:17
+msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html"
+msgstr ""
+
+#: doc/classes/Control.xml:19
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html"
+msgstr ""
+
+#: doc/classes/Control.xml:20
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/gui"
+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:33
+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:41
+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 the parent's rectangle and the parent has either "
+"[member rect_clip_content] or [method _clips_input] enabled.\n"
+"[b]Note:[/b] Event position is relative to the control origin."
+msgstr ""
+
+#: doc/classes/Control.xml:62
+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. The [code]for_text[/"
+"code] includes the contents of the [member hint_tooltip] property.\n"
+"The returned node must be of type [Control] or Control-derived. It can have "
+"child nodes of any type. It is freed when the tooltip disappears, so make "
+"sure you always provide a new instance (if you want to use a pre-existing "
+"node from your scene tree, you can duplicate it and pass the duplicated "
+"instance). When [code]null[/code] or a non-Control node is returned, the "
+"default tooltip will be used instead.\n"
+"The returned node will be added as child to a [PopupPanel], so you should "
+"only provide the contents of that panel. That [PopupPanel] can be themed "
+"using [method Theme.set_stylebox] for the type [code]\"TooltipPanel\"[/code] "
+"(see [member hint_tooltip] for an example).\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 a 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 a custom scene instance:\n"
+"[codeblock]\n"
+"func _make_custom_tooltip(for_text):\n"
+" var tooltip = preload(\"res://SomeTooltipScene.tscn\").instance()\n"
+" tooltip.get_node(\"Label\").text = for_text\n"
+" return tooltip\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:85
+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:93
+msgid ""
+"Creates a local override for a theme [Color] with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override cannot be removed, but it can be overridden with "
+"the corresponding default value.\n"
+"See also [method get_color].\n"
+"[b]Example of overriding a label's color and resetting it later:[/b]\n"
+"[codeblock]\n"
+"# Given the child Label node \"MyLabel\", override its font color with a "
+"custom value.\n"
+"$MyLabel.add_color_override(\"font_color\", Color(1, 0.5, 0))\n"
+"# Reset the font color of the child label.\n"
+"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", \"Label"
+"\"))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:109
+msgid ""
+"Creates a local override for a theme constant with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override cannot be removed, but it can be overridden with "
+"the corresponding default value.\n"
+"See also [method get_constant]."
+msgstr ""
+
+#: doc/classes/Control.xml:118
+msgid ""
+"Creates a local override for a theme [Font] with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value.\n"
+"See also [method get_font]."
+msgstr ""
+
+#: doc/classes/Control.xml:127
+msgid ""
+"Creates a local override for a theme icon with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value.\n"
+"See also [method get_icon]."
+msgstr ""
+
+#: doc/classes/Control.xml:136
+msgid ""
+"Creates a local override for a theme shader with the specified [code]name[/"
+"code]. Local overrides always take precedence when fetching theme items for "
+"the control. An override can be removed by assigning it a [code]null[/code] "
+"value."
+msgstr ""
+
+#: doc/classes/Control.xml:144
+msgid ""
+"Creates a local override for a theme [StyleBox] with the specified "
+"[code]name[/code]. Local overrides always take precedence when fetching "
+"theme items for the control. An override can be removed by assigning it a "
+"[code]null[/code] value.\n"
+"See also [method get_stylebox].\n"
+"[b]Example of modifying a property in a StyleBox by duplicating it:[/b]\n"
+"[codeblock]\n"
+"# The snippet below assumes the child node MyButton has a StyleBoxFlat "
+"assigned.\n"
+"# Resources are shared across instances, so we need to duplicate it\n"
+"# to avoid modifying the appearance of all other buttons.\n"
+"var new_stylebox_normal = $MyButton.get_stylebox(\"normal\").duplicate()\n"
+"new_stylebox_normal.border_width_top = 3\n"
+"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
+"$MyButton.add_stylebox_override(\"normal\", new_stylebox_normal)\n"
+"# Remove the stylebox override.\n"
+"$MyButton.add_stylebox_override(\"normal\", null)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:165
+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:180
+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:193
+msgid ""
+"Finds the next (below in the tree) [Control] that can receive the focus."
+msgstr ""
+
+#: doc/classes/Control.xml:199
+msgid ""
+"Finds the previous (above in the tree) [Control] that can receive the focus."
+msgstr ""
+
+#: doc/classes/Control.xml:207
+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:215
+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:221
+msgid ""
+"Returns [member margin_left] and [member margin_top]. See also [member "
+"rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:229
+msgid ""
+"Returns a [Color] from the first matching [Theme] in the tree if that "
+"[Theme] has a color item with the specified [code]name[/code] and "
+"[code]theme_type[/code]. If [code]theme_type[/code] is omitted the class "
+"name of the current control is used as the type. If the type is a class name "
+"its parent classes are also checked, in order of inheritance.\n"
+"For the current control its local overrides are considered first (see "
+"[method add_color_override]), then its assigned [member theme]. After the "
+"current control, each parent control and its assigned [member theme] are "
+"considered; controls without a [member theme] assigned are skipped. If no "
+"matching [Theme] is found in the tree, a custom project [Theme] (see [member "
+"ProjectSettings.gui/theme/custom]) and the default [Theme] are used.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # Get the font color defined for the current Control's class, if it "
+"exists.\n"
+" modulate = get_color(\"font_color\")\n"
+" # Get the font color defined for the Button class.\n"
+" modulate = get_color(\"font_color\", \"Button\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:243
+msgid ""
+"Returns combined minimum size from [member rect_min_size] and [method "
+"get_minimum_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:251
+msgid ""
+"Returns a constant from the first matching [Theme] in the tree if that "
+"[Theme] has a constant item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:259
+msgid ""
+"Returns the mouse cursor shape the control displays on mouse hover. See "
+"[enum CursorShape]."
+msgstr ""
+
+#: doc/classes/Control.xml:266
+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:279
+msgid "Returns [member margin_right] and [member margin_bottom]."
+msgstr ""
+
+#: doc/classes/Control.xml:286
+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:292
+msgid ""
+"Returns the control that has the keyboard focus or [code]null[/code] if none."
+msgstr ""
+
+#: doc/classes/Control.xml:300
+msgid ""
+"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
+"has a font item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:307
+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:315
+msgid ""
+"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
+"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:323
+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:329
+msgid "Returns the minimum size for this control. See [member rect_min_size]."
+msgstr ""
+
+#: doc/classes/Control.xml:335
+msgid "Returns the width/height occupied in the parent control."
+msgstr ""
+
+#: doc/classes/Control.xml:341
+msgid "Returns the parent control node."
+msgstr ""
+
+#: doc/classes/Control.xml:347
+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:353
+msgid "Returns the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:361
+msgid ""
+"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
+"[Theme] has a stylebox item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:368
+msgid ""
+"Returns the default font from the first matching [Theme] in the tree if that "
+"[Theme] has a valid [member Theme.default_font] value.\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:376
+msgid ""
+"Returns the tooltip, which will appear when the cursor is resting over this "
+"control. See [member hint_tooltip]."
+msgstr ""
+
+#: doc/classes/Control.xml:382
+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:392
+msgid ""
+"Steal the focus from another control and become the focused control (see "
+"[member focus_mode])."
+msgstr ""
+
+#: doc/classes/Control.xml:400
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a color item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:408
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme [Color] "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_color_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:417
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a constant item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:425
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme constant "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_constant_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:432
+msgid ""
+"Returns [code]true[/code] if this is the current focused control. See "
+"[member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:440
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a font item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:448
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme [Font] "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_font_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:457
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
+"code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:465
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme icon with "
+"the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_icon_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:473
+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:482
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme shader "
+"with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_shader_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:491
+msgid ""
+"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
+"has a stylebox item with the specified [code]name[/code] and "
+"[code]theme_type[/code].\n"
+"See [method get_color] for details."
+msgstr ""
+
+#: doc/classes/Control.xml:499
+msgid ""
+"Returns [code]true[/code] if there is a local override for a theme "
+"[StyleBox] with the specified [code]name[/code] in this [Control] node.\n"
+"See [method add_stylebox_override]."
+msgstr ""
+
+#: doc/classes/Control.xml:506
+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:512
+msgid ""
+"Give up the focus. No other control will be able to receive keyboard input."
+msgstr ""
+
+#: doc/classes/Control.xml:522
+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:534
+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:543
+msgid ""
+"Sets both anchor preset and margin preset. See [method set_anchors_preset] "
+"and [method set_margins_preset]."
+msgstr ""
+
+#: doc/classes/Control.xml:551
+msgid ""
+"Sets the anchors to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is the code equivalent to using the Layout menu in the 2D "
+"editor.\n"
+"If [code]keep_margins[/code] is [code]true[/code], control's position will "
+"also be updated."
+msgstr ""
+
+#: doc/classes/Control.xml:559
+msgid ""
+"Sets [member margin_left] and [member margin_top] at the same time. "
+"Equivalent of changing [member rect_position]."
+msgstr ""
+
+#: doc/classes/Control.xml:566
+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:594
+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. You should not free the control, and you should not keep a reference "
+"to the control beyond the duration of the drag. It will be deleted "
+"automatically after the drag has ended.\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:612
+msgid "Sets [member margin_right] and [member margin_bottom] at the same time."
+msgstr ""
+
+#: doc/classes/Control.xml:620
+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:628
+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:637
+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:646
+msgid ""
+"Sets the margins to a [code]preset[/code] from [enum Control.LayoutPreset] "
+"enum. This is the code equivalent to using the Layout menu in the 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:656
+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:664
+msgid "Sets the rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Control.xml:672
+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:680
+msgid ""
+"Displays a control as modal. Control must be a subwindow. Modal controls "
+"capture the input signals until closed or the area outside them is accessed. "
+"When a modal control loses focus, or the ESC key is pressed, they "
+"automatically hide. Modal controls are used extensively for popup dialogs "
+"and menus.\n"
+"If [code]exclusive[/code] is [code]true[/code], other controls will not "
+"receive input and clicking outside this control will not close it."
+msgstr ""
+
+#: doc/classes/Control.xml:688
+msgid ""
+"Moves the mouse cursor to [code]to_position[/code], relative to [member "
+"rect_position] of this [Control]."
+msgstr ""
+
+#: doc/classes/Control.xml:694
+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:697
+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:700
+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:703
+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:706
+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:709
+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:712
+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:715
+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:718
+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:721
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"Tab 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:725
+msgid ""
+"Tells Godot which node it should give keyboard focus to if the user presses "
+"Shift+Tab 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:729
+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:732
+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:735
+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.\n"
+"The tooltip popup will use either a default implementation, or a custom one "
+"that you can provide by overriding [method _make_custom_tooltip]. The "
+"default tooltip includes a [PopupPanel] and [Label] whose theme properties "
+"can be customized using [Theme] methods with the [code]\"TooltipPanel\"[/"
+"code] and [code]\"TooltipLabel\"[/code] respectively. For example:\n"
+"[codeblock]\n"
+"var style_box = StyleBoxFlat.new()\n"
+"style_box.set_bg_color(Color(1, 1, 0))\n"
+"style_box.set_border_width_all(2)\n"
+"# We assume here that the `theme` property has been assigned a custom Theme "
+"beforehand.\n"
+"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
+"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Control.xml:747
+msgid ""
+"Enables whether input should propagate when you close the control as modal.\n"
+"If [code]false[/code], stops event handling at the viewport input event "
+"handling. The viewport first hides the modal and after marks the input as "
+"handled."
+msgstr ""
+
+#: doc/classes/Control.xml:751
+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:755
+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:759
+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:763
+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:767
+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:771
+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:774
+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:777
+msgid ""
+"The node's global position, relative to the world (usually to the top-left "
+"corner of the window)."
+msgstr ""
+
+#: doc/classes/Control.xml:780
+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:783
+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:786
+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:789
+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:792
+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/3.4/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:797
+msgid ""
+"The size of the node's bounding rectangle, in pixels. [Container] nodes "
+"update this property automatically."
+msgstr ""
+
+#: doc/classes/Control.xml:800
+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:803
+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:806
+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:809
+msgid ""
+"Changing this property replaces the current [Theme] resource this node and "
+"all its [Control] children use."
+msgstr ""
+
+#: doc/classes/Control.xml:815
+msgid "Emitted when the node gains keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:820
+msgid "Emitted when the node loses keyboard focus."
+msgstr ""
+
+#: doc/classes/Control.xml:826
+msgid "Emitted when the node receives an [InputEvent]."
+msgstr ""
+
+#: doc/classes/Control.xml:831
+msgid "Emitted when the node's minimum size changes."
+msgstr ""
+
+#: doc/classes/Control.xml:836
+msgid "Emitted when a modal [Control] is closed. See [method show_modal]."
+msgstr ""
+
+#: doc/classes/Control.xml:841
+msgid ""
+"Emitted when the mouse enters the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it.\n"
+"[b]Note:[/b] [signal mouse_entered] will not be emitted if the mouse enters "
+"a child [Control] node before entering the parent's [code]Rect[/code] area, "
+"at least until the mouse is moved to reach the parent's [code]Rect[/code] "
+"area."
+msgstr ""
+
+#: doc/classes/Control.xml:847
+msgid ""
+"Emitted when the mouse leaves the control's [code]Rect[/code] area, provided "
+"its [member mouse_filter] lets the event reach it.\n"
+"[b]Note:[/b] [signal mouse_exited] will be emitted if the mouse enters a "
+"child [Control] node, even if the mouse cursor is still inside the parent's "
+"[code]Rect[/code] area."
+msgstr ""
+
+#: doc/classes/Control.xml:853
+msgid "Emitted when the control changes size."
+msgstr ""
+
+#: doc/classes/Control.xml:858
+msgid ""
+"Emitted when one of the size flags changes. See [member "
+"size_flags_horizontal] and [member size_flags_vertical]."
+msgstr ""
+
+#: doc/classes/Control.xml:864
+msgid "The node cannot grab focus. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:867
+msgid ""
+"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
+msgstr ""
+
+#: doc/classes/Control.xml:870
+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:873
+msgid ""
+"Sent when the node changes size. Use [member rect_size] to get the new size."
+msgstr ""
+
+#: doc/classes/Control.xml:876
+msgid "Sent when the mouse pointer enters the node."
+msgstr ""
+
+#: doc/classes/Control.xml:879
+msgid "Sent when the mouse pointer exits the node."
+msgstr ""
+
+#: doc/classes/Control.xml:882
+msgid "Sent when the node grabs focus."
+msgstr ""
+
+#: doc/classes/Control.xml:885
+msgid "Sent when the node loses focus."
+msgstr ""
+
+#: doc/classes/Control.xml:888
+msgid ""
+"Sent when the node's [member theme] changes, right before Godot redraws the "
+"control. Happens when you call one of the [code]add_*_override[/code] "
+"methods."
+msgstr ""
+
+#: doc/classes/Control.xml:891
+msgid "Sent when an open modal dialog closes. See [method show_modal]."
+msgstr ""
+
+#: doc/classes/Control.xml:894
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has begun being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:897
+msgid ""
+"Sent when this node is inside a [ScrollContainer] which has stopped being "
+"scrolled."
+msgstr ""
+
+#: doc/classes/Control.xml:900
+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:903
+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:906
+msgid ""
+"Show the system's pointing hand mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:909
+msgid "Show the system's cross mouse cursor when the user hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:912
+msgid ""
+"Show the system's wait mouse cursor, often an hourglass, when the user "
+"hovers the node."
+msgstr ""
+
+#: doc/classes/Control.xml:915
+msgid ""
+"Show the system's busy mouse cursor when the user hovers the node. Often an "
+"hourglass."
+msgstr ""
+
+#: doc/classes/Control.xml:918
+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:921
+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:924
+msgid ""
+"Show the system's forbidden mouse cursor when the user hovers the node. "
+"Often a crossed circle."
+msgstr ""
+
+#: doc/classes/Control.xml:927
+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:930
+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:933
+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:936
+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:939
+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:942
+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:945
+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:948
+msgid ""
+"Show the system's help mouse cursor when the user hovers the node, a "
+"question mark."
+msgstr ""
+
+#: doc/classes/Control.xml:951
+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:954
+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:957
+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:960
+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:963
+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:966
+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:969
+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:972
+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:975
+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:978
+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:981
+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:984
+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:987
+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:990
+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:993
+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:996
+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:999
+msgid "The control will be resized to its minimum size."
+msgstr ""
+
+#: doc/classes/Control.xml:1002
+msgid "The control's width will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1005
+msgid "The control's height will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1008
+msgid "The control's size will not change."
+msgstr ""
+
+#: doc/classes/Control.xml:1011
+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:1014
+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:1017
+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:1020
+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:1023
+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:1026
+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:1029
+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:1032
+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:1035
+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:1038
+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:1041
+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:1044
+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:1047
+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/ConvexPolygonShape.xml:4
+msgid "Convex polygon shape for 3D physics."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape.xml:7
+msgid ""
+"Convex polygon shape resource, which can be added to a [PhysicsBody] or area."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape.xml:16
+msgid "The list of 3D points forming the convex polygon shape."
+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:17
+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 Geometry.convex_hull_2d] for details."
+msgstr ""
+
+#: doc/classes/ConvexPolygonShape2D.xml:23
+msgid ""
+"The polygon's list of vertices. Can be in either clockwise or "
+"counterclockwise order."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:4
+msgid "CPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:7
+msgid ""
+"CPU-based 3D particle node used to create a variety of particle systems and "
+"effects.\n"
+"See also [Particles], which provides the same functionality with hardware "
+"acceleration, but may not run on older devices.\n"
+"[b]Note:[/b] Unlike [Particles], the visibility rect is generated on-the-fly "
+"and doesn't need to be configured by the user."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:18
+msgid ""
+"Sets this node's properties to match a given [Particles] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:25 doc/classes/CPUParticles2D.xml:26
+msgid "Returns the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:32 doc/classes/CPUParticles2D.xml:33
+msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:39 doc/classes/CPUParticles2D.xml:40
+msgid ""
+"Returns the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:46 doc/classes/CPUParticles2D.xml:47
+msgid ""
+"Returns the enabled state of the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:52 doc/classes/CPUParticles2D.xml:53
+msgid "Restarts the particle emitter."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:60 doc/classes/CPUParticles2D.xml:61
+msgid "Sets the base value of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:68 doc/classes/CPUParticles2D.xml:69
+msgid "Sets the [Curve] of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:76 doc/classes/CPUParticles2D.xml:77
+msgid ""
+"Sets the randomness factor of the parameter specified by [enum Parameter]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:84 doc/classes/CPUParticles2D.xml:85
+msgid "Enables or disables the given flag (see [enum Flags] for options)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:90 doc/classes/CPUParticles2D.xml:91
+#: doc/classes/Particles.xml:47 doc/classes/Particles2D.xml:33
+msgid ""
+"The number of particles emitted in one emission cycle (corresponding to the "
+"[member lifetime]).\n"
+"[b]Note:[/b] Changing [member amount] will reset the particle emission, "
+"therefore removing all particles that were already emitted before changing "
+"[member amount]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:94 doc/classes/CPUParticles2D.xml:95
+msgid "Initial rotation applied to each particle, in degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:97 doc/classes/CPUParticles2D.xml:98
+msgid "Each particle's rotation will be animated along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:100 doc/classes/CPUParticles2D.xml:101
+#: doc/classes/ParticlesMaterial.xml:84
+msgid "Rotation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:103 doc/classes/CPUParticles2D.xml:104
+msgid ""
+"Initial angular velocity applied to each particle. Sets the speed of "
+"rotation of the particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:106 doc/classes/CPUParticles2D.xml:107
+msgid "Each particle's angular velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:109 doc/classes/CPUParticles2D.xml:110
+#: doc/classes/ParticlesMaterial.xml:94
+msgid "Angular velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:112 doc/classes/CPUParticles2D.xml:113
+#: doc/classes/ParticlesMaterial.xml:97
+msgid "Particle animation offset."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:115 doc/classes/CPUParticles2D.xml:116
+msgid "Each particle's animation offset will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:118 doc/classes/CPUParticles2D.xml:119
+#: doc/classes/ParticlesMaterial.xml:103
+msgid "Animation offset randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:121 doc/classes/CPUParticles2D.xml:122
+#: doc/classes/ParticlesMaterial.xml:106
+msgid "Particle animation speed."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:124 doc/classes/CPUParticles2D.xml:125
+msgid "Each particle's animation speed will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:127 doc/classes/CPUParticles2D.xml:128
+#: doc/classes/ParticlesMaterial.xml:112
+msgid "Animation speed randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:130
+msgid ""
+"Each particle's initial color. To have particle display color in a "
+"[SpatialMaterial] make sure to set [member SpatialMaterial."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:133 doc/classes/ParticlesMaterial.xml:118
+msgid ""
+"Each particle's color will vary along this [GradientTexture] over its "
+"lifetime (multiplied with [member color])."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:136 doc/classes/CPUParticles2D.xml:137
+#: doc/classes/ParticlesMaterial.xml:121
+msgid "The rate at which particles lose velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:139 doc/classes/CPUParticles2D.xml:140
+msgid "Damping will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:142 doc/classes/CPUParticles2D.xml:143
+#: doc/classes/ParticlesMaterial.xml:127
+msgid "Damping randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:145 doc/classes/CPUParticles2D.xml:146
+#: doc/classes/ParticlesMaterial.xml:130
+msgid "Unit vector specifying the particles' emission direction."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:148 doc/classes/CPUParticles2D.xml:149
+#: doc/classes/Particles.xml:51 doc/classes/Particles2D.xml:37
+msgid "Particle draw order. Uses [enum DrawOrder] values."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:151
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:154 doc/classes/CPUParticles2D.xml:152
+msgid ""
+"Sets the [Color]s to modulate particles by when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:157 doc/classes/CPUParticles2D.xml:155
+msgid ""
+"Sets the direction the particles will be emitted in when using [constant "
+"EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:160 doc/classes/CPUParticles2D.xml:158
+msgid ""
+"Sets the initial positions to spawn particles when using [constant "
+"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:163
+msgid ""
+"The axis for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:166
+msgid ""
+"The height for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:169
+msgid ""
+"The inner radius for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:172
+msgid ""
+"The radius for the ring shaped emitter when using [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:175 doc/classes/CPUParticles2D.xml:164
+msgid ""
+"Particles will be emitted inside this region. See [enum EmissionShape] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:178
+msgid ""
+"The sphere's radius if [enum EmissionShape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:181 doc/classes/CPUParticles2D.xml:170
+#: doc/classes/Particles.xml:69 doc/classes/Particles2D.xml:40
+msgid "If [code]true[/code], particles are being emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:184 doc/classes/CPUParticles2D.xml:173
+#: doc/classes/Particles2D.xml:43
+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/CPUParticles.xml:187
+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/CPUParticles.xml:190 doc/classes/CPUParticles2D.xml:179
+#: doc/classes/ParticlesMaterial.xml:166
+msgid "Align Y axis of particle with the direction of its velocity."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:193 doc/classes/ParticlesMaterial.xml:169
+msgid "If [code]true[/code], particles will not move on the z axis."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:196 doc/classes/ParticlesMaterial.xml:172
+msgid "If [code]true[/code], particles rotate around Y axis by [member angle]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:199
+msgid ""
+"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
+"particles to X/Z plane."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:202 doc/classes/CPUParticles2D.xml:182
+#: doc/classes/Particles.xml:78 doc/classes/Particles2D.xml:49
+msgid ""
+"If [code]true[/code], results in fractional delta calculation which has a "
+"smoother particles display effect."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:205 doc/classes/CPUParticles2D.xml:185
+#: doc/classes/ParticlesMaterial.xml:178
+msgid "Gravity applied to every particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:208 doc/classes/CPUParticles2D.xml:188
+#: doc/classes/ParticlesMaterial.xml:181
+msgid "Initial hue variation applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:211 doc/classes/CPUParticles2D.xml:191
+msgid "Each particle's hue will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:214 doc/classes/CPUParticles2D.xml:194
+#: doc/classes/ParticlesMaterial.xml:187
+msgid "Hue variation randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:217 doc/classes/CPUParticles2D.xml:197
+#: doc/classes/ParticlesMaterial.xml:190
+msgid ""
+"Initial velocity magnitude for each particle. Direction comes from [member "
+"spread] and the node's orientation."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:220 doc/classes/CPUParticles2D.xml:200
+#: doc/classes/ParticlesMaterial.xml:193
+msgid "Initial velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:223 doc/classes/CPUParticles2D.xml:203
+#: doc/classes/Particles.xml:81 doc/classes/Particles2D.xml:52
+msgid "The amount of time each particle will exist (in seconds)."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:226 doc/classes/CPUParticles2D.xml:206
+#: doc/classes/ParticlesMaterial.xml:196
+msgid "Particle lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:229 doc/classes/CPUParticles2D.xml:209
+#: doc/classes/ParticlesMaterial.xml:199
+msgid ""
+"Linear acceleration applied to each particle in the direction of motion."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:232 doc/classes/CPUParticles2D.xml:212
+msgid "Each particle's linear acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:235 doc/classes/CPUParticles2D.xml:215
+#: doc/classes/ParticlesMaterial.xml:205
+msgid "Linear acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:238 doc/classes/CPUParticles2D.xml:218
+#: doc/classes/Particles.xml:84 doc/classes/Particles2D.xml:55
+msgid ""
+"If [code]true[/code], particles use the parent node's coordinate space. If "
+"[code]false[/code], they use global coordinates."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:241
+msgid ""
+"The [Mesh] used for each particle. If [code]null[/code], particles will be "
+"spheres."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:244 doc/classes/CPUParticles2D.xml:225
+#: doc/classes/Particles2D.xml:62
+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/CPUParticles.xml:247
+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/CPUParticles.xml:251 doc/classes/CPUParticles2D.xml:231
+msgid "Each particle's orbital velocity will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:254 doc/classes/CPUParticles2D.xml:234
+#: doc/classes/ParticlesMaterial.xml:215
+msgid "Orbital velocity randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:257 doc/classes/CPUParticles2D.xml:237
+#: doc/classes/Particles2D.xml:65
+msgid "Particle system starts as if it had already run for this many seconds."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:260 doc/classes/CPUParticles2D.xml:240
+#: doc/classes/ParticlesMaterial.xml:218
+msgid ""
+"Radial acceleration applied to each particle. Makes particle accelerate away "
+"from origin."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:263 doc/classes/CPUParticles2D.xml:243
+msgid "Each particle's radial acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:266 doc/classes/CPUParticles2D.xml:246
+#: doc/classes/ParticlesMaterial.xml:224
+msgid "Radial acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:269 doc/classes/CPUParticles2D.xml:249
+#: doc/classes/Particles2D.xml:71
+msgid "Emission lifetime randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:272 doc/classes/CPUParticles2D.xml:252
+#: doc/classes/ParticlesMaterial.xml:227
+msgid "Initial scale applied to each particle."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:275 doc/classes/CPUParticles2D.xml:255
+msgid "Each particle's scale will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:278 doc/classes/CPUParticles2D.xml:258
+#: doc/classes/ParticlesMaterial.xml:233
+msgid "Scale randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:281 doc/classes/CPUParticles2D.xml:261
+#: doc/classes/Particles2D.xml:74
+msgid ""
+"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
+"be used to pause the particles."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:284
+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/CPUParticles.xml:287 doc/classes/CPUParticles2D.xml:267
+#: doc/classes/ParticlesMaterial.xml:239
+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/CPUParticles.xml:290 doc/classes/CPUParticles2D.xml:270
+msgid "Each particle's tangential acceleration will vary along this [Curve]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:293 doc/classes/CPUParticles2D.xml:273
+#: doc/classes/ParticlesMaterial.xml:245
+msgid "Tangential acceleration randomness ratio."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:298 doc/classes/CPUParticles2D.xml:281
+#: doc/classes/Particles.xml:109 doc/classes/Particles2D.xml:86
+msgid "Particles are drawn in the order emitted."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:301 doc/classes/CPUParticles2D.xml:284
+#: doc/classes/Particles.xml:112 doc/classes/Particles2D.xml:89
+msgid "Particles are drawn in order of remaining lifetime."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:304 doc/classes/Particles.xml:115
+msgid "Particles are drawn in order of depth."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:307 doc/classes/CPUParticles2D.xml:287
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set initial velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:310 doc/classes/CPUParticles2D.xml:290
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angular velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:313 doc/classes/CPUParticles2D.xml:293
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set orbital velocity properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:316 doc/classes/CPUParticles2D.xml:296
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set linear acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:319 doc/classes/CPUParticles2D.xml:299
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set radial acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:322 doc/classes/CPUParticles2D.xml:302
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set tangential acceleration properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:325 doc/classes/CPUParticles2D.xml:305
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set damping properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:328 doc/classes/CPUParticles2D.xml:308
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set angle properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:331 doc/classes/CPUParticles2D.xml:311
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set scale properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:334 doc/classes/CPUParticles2D.xml:314
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set hue variation properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:337 doc/classes/CPUParticles2D.xml:317
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation speed properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:340 doc/classes/CPUParticles2D.xml:320
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_curve] to set animation offset properties."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:343 doc/classes/CPUParticles2D.xml:323
+#: doc/classes/ParticlesMaterial.xml:295
+msgid "Represents the size of the [enum Parameter] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:346 doc/classes/CPUParticles2D.xml:326
+msgid "Use with [method set_particle_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:349
+msgid "Use with [method set_particle_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:352
+msgid "Use with [method set_particle_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:355 doc/classes/CPUParticles2D.xml:335
+#: doc/classes/GeometryInstance.xml:109 doc/classes/ParticlesMaterial.xml:307
+#: doc/classes/SpatialMaterial.xml:564
+msgid "Represents the size of the [enum Flags] enum."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:358 doc/classes/CPUParticles2D.xml:338
+#: doc/classes/ParticlesMaterial.xml:310
+msgid "All particles will be emitted from a single point."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:361 doc/classes/ParticlesMaterial.xml:313
+msgid "Particles will be emitted in the volume of a sphere."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:364 doc/classes/ParticlesMaterial.xml:316
+msgid "Particles will be emitted in the volume of a box."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:367 doc/classes/CPUParticles2D.xml:347
+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/CPUParticles.xml:370 doc/classes/CPUParticles2D.xml:350
+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/CPUParticles.xml:373 doc/classes/ParticlesMaterial.xml:325
+msgid "Particles will be emitted in a ring or cylinder."
+msgstr ""
+
+#: doc/classes/CPUParticles.xml:376 doc/classes/CPUParticles2D.xml:353
+#: doc/classes/ParticlesMaterial.xml:328
+msgid "Represents the size of the [enum EmissionShape] enum."
+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 [Particles2D], which provides the same functionality with hardware "
+"acceleration, but may not run on older devices.\n"
+"[b]Note:[/b] Unlike [Particles2D], the visibility rect is generated on-the-"
+"fly and doesn't need to be configured by the user."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:12 doc/classes/Particles2D.xml:14
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html"
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:19
+msgid ""
+"Sets this node's properties to match a given [Particles2D] node with an "
+"assigned [ParticlesMaterial]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:131
+msgid ""
+"Each particle's initial color. If [member texture] is defined, it will be "
+"multiplied by this color."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:134
+msgid ""
+"Each particle's color will vary along this [Gradient] (multiplied with "
+"[member color])."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:161
+msgid ""
+"The rectangle's extents if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_RECTANGLE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:167
+msgid ""
+"The sphere's radius if [member emission_shape] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:176 doc/classes/Particles.xml:75
+#: doc/classes/Particles2D.xml:46
+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:221 doc/classes/Particles2D.xml:58
+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:228
+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:264 doc/classes/ParticlesMaterial.xml:236
+msgid ""
+"Each particle's initial direction range from [code]+spread[/code] to [code]-"
+"spread[/code] degrees."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:276 doc/classes/Particles2D.xml:77
+msgid "Particle texture. If [code]null[/code], particles will be squares."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:329 doc/classes/CPUParticles2D.xml:332
+msgid "Present for consistency with 3D particle nodes, not used in 2D."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:341
+msgid ""
+"Particles will be emitted on the surface of a sphere flattened to two "
+"dimensions."
+msgstr ""
+
+#: doc/classes/CPUParticles2D.xml:344
+msgid "Particles will be emitted in the area of a rectangle."
+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:47
+msgid ""
+"Compares two [PoolByteArray]s for equality without leaking timing "
+"information in order to prevent timing attacks.\n"
+"See [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
+"string-comparison-with-double-hmac-strategy]this blog post[/url] for more "
+"information."
+msgstr ""
+
+#: doc/classes/Crypto.xml:56
+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:65
+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:73
+msgid ""
+"Generates a [PoolByteArray] of cryptographically secure random bytes with "
+"given [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Crypto.xml:80
+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:90
+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:107
+msgid ""
+"Generates an [url=https://en.wikipedia.org/wiki/HMAC]HMAC[/url] digest of "
+"[code]msg[/code] using [code]key[/code]. The [code]hash_type[/code] "
+"parameter is the hashing algorithm that is used for the inner and outer "
+"hashes.\n"
+"Currently, only [constant HashingContext.HASH_SHA256] and [constant "
+"HashingContext.HASH_SHA1] are supported."
+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:127
+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:17
+msgid ""
+"Return [code]true[/code] if this CryptoKey only has the public part, and not "
+"the private one."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:25
+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 be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:34
+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:42
+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 be a \"*.pub\" file if "
+"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
+msgstr ""
+
+#: doc/classes/CryptoKey.xml:50
+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/CSGBox.xml:4
+msgid "A CSG Box shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:7
+msgid "This node allows you to create a box for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:15
+msgid "Depth of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:18
+msgid "Height of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:21
+msgid "The material used to render the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGBox.xml:24
+msgid "Width of the box measured from the center of the box."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner.xml:4
+msgid "A CSG node that allows you to combine other CSG modifiers."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCombiner.xml:7
+msgid ""
+"For complex arrangements of shapes, it is sometimes needed to add structure "
+"to your CSG nodes. The CSGCombiner 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 CSGCombiner node, and a set of separate operations on a "
+"second set of shapes that are children of a second CSGCombiner 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/CSGCylinder.xml:4
+msgid "A CSG Cylinder shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:7
+msgid ""
+"This node allows you to create a cylinder (or cone) for use with the CSG "
+"system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.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/CSGCylinder.xml:18
+msgid "The height of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:21
+msgid "The material used to render the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.xml:24
+msgid "The radius of the cylinder."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGCylinder.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/CSGCylinder.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/CSGMesh.xml:4
+msgid "A CSG Mesh shape that uses a mesh resource."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh.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/CSGMesh.xml:15
+msgid "The [Material] used in drawing the CSG shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGMesh.xml:18
+msgid ""
+"The [Mesh] resource to use as a CSG shape.\n"
+"[b]Note:[/b] When using an [ArrayMesh], avoid meshes with vertex normals "
+"unless a flat shader is required. By default, CSGMesh will ignore the mesh's "
+"vertex normals and use a smooth shader calculated using the faces' normals. "
+"If a flat shader is required, ensure that all faces' vertex normals are "
+"parallel."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:4
+msgid "Extrudes a 2D polygon shape to create a 3D mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:7
+msgid ""
+"An array of 2D points is extruded to quickly and easily create a variety of "
+"3D meshes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:15
+msgid ""
+"When [member mode] is [constant MODE_DEPTH], the depth of the extrusion."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:18
+msgid ""
+"Material to use for the resulting mesh. The UV maps the top half of the "
+"material to the extruded shape (U along the the length of the extrusions and "
+"V around the outline of the [member polygon]), the bottom-left quarter to "
+"the front end face, and the bottom-right quarter to the back end face."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:21
+msgid "The [member mode] used to extrude the [member polygon]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:24
+msgid ""
+"When [member mode] is [constant MODE_PATH], by default, the top half of the "
+"[member material] is stretched along the entire length of the extruded "
+"shape. If [code]false[/code] the top half of the material is repeated every "
+"step of the extrusion."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:27
+msgid ""
+"When [member mode] is [constant MODE_PATH], the path interval or ratio of "
+"path points to extrusions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:30
+msgid ""
+"When [member mode] is [constant MODE_PATH], this will determine if the "
+"interval should be by distance ([constant PATH_INTERVAL_DISTANCE]) or "
+"subdivision fractions ([constant PATH_INTERVAL_SUBDIVIDE])."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:33
+msgid ""
+"When [member mode] is [constant MODE_PATH], if [code]true[/code] the ends of "
+"the path are joined, by adding an extrusion between the last and first "
+"points of the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:36
+msgid ""
+"When [member mode] is [constant MODE_PATH], if [code]true[/code] the "
+"[Transform] of the [CSGPolygon] is used as the starting point for the "
+"extrusions, not the [Transform] of the [member path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:39
+msgid ""
+"When [member mode] is [constant MODE_PATH], the location of the [Path] "
+"object used to extrude the [member polygon]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:42
+msgid ""
+"When [member mode] is [constant MODE_PATH], the [enum PathRotation] method "
+"used to rotate the [member polygon] as it is extruded."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:45
+msgid ""
+"When [member mode] is [constant MODE_PATH], extrusions that are less than "
+"this angle, will be merged together to reduce polygon count."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:48
+msgid ""
+"When [member mode] is [constant MODE_PATH], this is the distance along the "
+"path, in meters, the texture coordinates will tile. When set to 0, texture "
+"coordinates will match geometry exactly with no tiling."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:51
+msgid "The point array that defines the 2D polygon that is extruded."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:54
+msgid "If [code]true[/code], applies smooth shading to the extrusions."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:57
+msgid ""
+"When [member mode] is [constant MODE_SPIN], the total number of degrees the "
+"[member polygon] is rotated when extruding."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:60
+msgid ""
+"When [member mode] is [constant MODE_SPIN], the number of extrusions made."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:65
+msgid "The [member polygon] shape is extruded along the negative Z axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:68
+msgid ""
+"The [member polygon] shape is extruded by rotating it around the Y axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:71
+msgid ""
+"The [member polygon] shape is extruded along the [Path] specified in [member "
+"path_node]."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:74
+msgid ""
+"The [member polygon] shape is not rotated.\n"
+"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
+"ensure viable shapes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:78
+msgid ""
+"The [member polygon] shape is rotated along the path, but it is not rotated "
+"around the path axis.\n"
+"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
+"ensure viable shapes."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:82
+msgid ""
+"The [member polygon] shape follows the path and its rotations around the "
+"path axis."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:85
+msgid ""
+"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
+"will determine the distance, in meters, each interval of the path will "
+"extrude."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPolygon.xml:88
+msgid ""
+"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
+"will subdivide the polygons along the path."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive.xml:4
+msgid "Base class for CSG primitives."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGPrimitive.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/CSGPrimitive.xml:15
+msgid "Invert the faces of the mesh."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:4
+msgid "The CSG base class."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.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/CSGShape.xml:16
+#: modules/csg/doc_classes/CSGShape.xml:23 doc/classes/RayCast2D.xml:60
+#: doc/classes/SoftBody.xml:30 doc/classes/SoftBody.xml:37
+msgid "Returns an individual bit on the collision mask."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:29
+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/CSGShape.xml:35
+msgid ""
+"Returns [code]true[/code] if this is a root shape and is thus the object "
+"that is rendered."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:43 doc/classes/SoftBody.xml:66
+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/CSGShape.xml:51 doc/classes/SoftBody.xml:74
+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/CSGShape.xml:57
+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/CSGShape.xml:60
+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. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:65
+msgid ""
+"The physics layers this CSG shape scans for collisions. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:68
+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/CSGShape.xml:71
+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/CSGShape.xml:74
+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/CSGShape.xml:79
+msgid ""
+"Geometry of both primitives is merged, intersecting geometry is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:82
+msgid "Only intersecting geometry remains, the rest is removed."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGShape.xml:85
+msgid ""
+"The second shape is subtracted from the first, leaving a dent with its shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:4
+msgid "A CSG Sphere shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:7
+msgid "This node allows you to create a sphere for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:15
+msgid "The material used to render the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:18
+msgid "Number of vertical slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:21
+msgid "Radius of the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.xml:24
+msgid "Number of horizontal slices for the sphere."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGSphere.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/CSGTorus.xml:4
+msgid "A CSG Torus shape."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:7
+msgid "This node allows you to create a torus for use with the CSG system."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:15
+msgid "The inner radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:18
+msgid "The material used to render the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:21
+msgid "The outer radius of the torus."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:24
+msgid "The number of edges each ring of the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.xml:27
+msgid "The number of slices the torus is constructed of."
+msgstr ""
+
+#: modules/csg/doc_classes/CSGTorus.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/3.4/getting_started/scripting/c_sharp/index."
+"html"
+msgstr ""
+
+#: modules/mono/doc_classes/CSharpScript.xml:18
+#: modules/gdnative/doc_classes/PluginScript.xml:13
+msgid "Returns a new instance of the script."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:4
+msgid "A CubeMap is a 6-sided 3D texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:7
+msgid ""
+"A 6-sided 3D texture typically used for faking reflections. It can be used "
+"to make an object look as if it's reflecting its surroundings. This usually "
+"delivers much better performance than other reflection methods."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:15
+msgid "Returns the [CubeMap]'s height."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:22
+msgid ""
+"Returns an [Image] for a side of the [CubeMap] using one of the [enum Side] "
+"constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:28
+msgid "Returns the [CubeMap]'s width."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:36
+msgid ""
+"Sets an [Image] for a side of the [CubeMap] using one of the [enum Side] "
+"constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:42
+msgid ""
+"The render flags for the [CubeMap]. See the [enum Flags] constants for "
+"details."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:45
+msgid ""
+"The lossy storage quality of the [CubeMap] if the storage mode is set to "
+"[constant STORAGE_COMPRESS_LOSSY]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:48
+msgid "The [CubeMap]'s storage mode. See [enum Storage] constants."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:53
+msgid "Store the [CubeMap] without any compression."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:56
+msgid "Store the [CubeMap] with strong compression that reduces image quality."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:59
+msgid ""
+"Store the [CubeMap] with moderate compression that doesn't reduce image "
+"quality."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:62
+msgid "Identifier for the left face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:65
+msgid "Identifier for the right face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:68
+msgid "Identifier for the bottom face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:71
+msgid "Identifier for the top face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:74
+msgid "Identifier for the front face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:77
+msgid "Identifier for the back face of the [CubeMap]."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:80
+msgid "Generate mipmaps, to enable smooth zooming out of the texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:83
+msgid "Repeat (instead of clamp to edge)."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:86
+msgid "Turn on magnifying filter, to enable smooth zooming in of the texture."
+msgstr ""
+
+#: doc/classes/CubeMap.xml:89
+msgid "Default flags. Generate mipmaps, repeat, and filter are enabled."
+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].\n"
+"[b]Note:[/b] When using a large textured [CubeMesh] (e.g. as a floor), you "
+"may stumble upon UV jittering issues depending on the camera angle. To solve "
+"this, increase [member subdivide_depth], [member subdivide_height] and "
+"[member subdivide_width] until you no longer notice UV jittering."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:17
+msgid "Size of the cuboid mesh."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:20
+msgid "Number of extra edge loops inserted along the Z axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:23
+msgid "Number of extra edge loops inserted along the Y axis."
+msgstr ""
+
+#: doc/classes/CubeMesh.xml:26
+msgid "Number of extra edge loops inserted along the X axis."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:4
+msgid "Parent of all nodes that can be culled by the Portal system."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:7
+msgid ""
+"Provides common functionality to nodes that can be culled by the [Portal] "
+"system.\n"
+"[code]Static[/code] and [code]Dynamic[/code] objects are the most "
+"efficiently managed objects in the system, but there are some caveats. They "
+"are expected to be present initially when [Room]s are converted using the "
+"[RoomManager] [code]rooms_convert[/code] function, and their lifetime should "
+"be the same as the game level (i.e. present until you call "
+"[code]rooms_clear[/code] on the [RoomManager]. Although you shouldn't "
+"create / delete these objects during gameplay, you can manage their "
+"visibility with the standard [code]hide[/code] and [code]show[/code] "
+"commands.\n"
+"[code]Roaming[/code] objects on the other hand, require extra processing to "
+"keep track of which [Room] they are within. This enables them to be culled "
+"effectively, wherever they are.\n"
+"[code]Global[/code] objects are not culled by the portal system, and use "
+"view frustum culling only.\n"
+"Objects that are not [code]Static[/code] or [code]Dynamic[/code] can be "
+"freely created and deleted during the lifetime of the game level."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:19
+msgid ""
+"When set to [code]0[/code], [CullInstance]s will be autoplaced in the [Room] "
+"with the highest priority.\n"
+"When set to a value other than [code]0[/code], the system will attempt to "
+"autoplace in a [Room] with the [code]autoplace_priority[/code], if it is "
+"present.\n"
+"This can be used to control autoplacement of building exteriors in an outer "
+"[RoomGroup]."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:24
+msgid ""
+"When a manual bound has not been explicitly specified for a [Room], the "
+"convex hull bound will be estimated from the geometry of the objects within "
+"the room. This setting determines whether the geometry of an object is "
+"included in this estimate of the room bound.\n"
+"[b]Note:[/b] This setting is only relevant when the object is set to "
+"[code]PORTAL_MODE_STATIC[/code] or [code]PORTAL_MODE_DYNAMIC[/code], and for "
+"[Portal]s."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:28
+msgid ""
+"When using [Room]s and [Portal]s, this specifies how the [CullInstance] is "
+"processed in the system."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:33
+msgid ""
+"Use for instances within [Room]s that will [b]not move[/b] - e.g. walls, "
+"floors.\n"
+"[b]Note:[/b] If you attempt to delete a [code]PORTAL_MODE_STATIC[/code] "
+"instance while the room graph is loaded (converted), it will unload the room "
+"graph and deactivate portal culling. This is because the [b]room graph[/b] "
+"data has been invalidated. You will need to reconvert the rooms using the "
+"[RoomManager] to activate the system again."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:37
+msgid ""
+"Use for instances within rooms that will move but [b]not change room[/b] - e."
+"g. moving platforms.\n"
+"[b]Note:[/b] If you attempt to delete a [code]PORTAL_MODE_DYNAMIC[/code] "
+"instance while the room graph is loaded (converted), it will unload the room "
+"graph and deactivate portal culling. This is because the [b]room graph[/b] "
+"data has been invalidated. You will need to reconvert the rooms using the "
+"[RoomManager] to activate the system again."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:41
+msgid "Use for instances that will move [b]between[/b] [Room]s - e.g. players."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:44
+msgid ""
+"Use for instances that will be frustum culled only - e.g. first person "
+"weapon, debug."
+msgstr ""
+
+#: doc/classes/CullInstance.xml:47
+msgid ""
+"Use for instances that will not be shown at all - e.g. [b]manual room "
+"bounds[/b] (specified by prefix [i]'Bound_'[/i])."
+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:20
+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:26
+msgid "Recomputes the baked cache of points for the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:32
+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:38 doc/classes/Curve2D.xml:27
+#: doc/classes/Curve3D.xml:27
+msgid "Removes all points from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:44 doc/classes/Curve2D.xml:61
+#: doc/classes/Curve3D.xml:74
+msgid "Returns the number of points describing the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:51
+msgid ""
+"Returns the left [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:58
+msgid ""
+"Returns the left tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:65
+msgid "Returns the curve coordinates for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:72
+msgid ""
+"Returns the right [enum TangentMode] for the point at [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:79
+msgid ""
+"Returns the right tangent angle (in degrees) for the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:86
+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:93
+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:100
+msgid "Removes the point at [code]index[/code] from the curve."
+msgstr ""
+
+#: doc/classes/Curve.xml:108
+msgid ""
+"Sets the left [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:116
+msgid ""
+"Sets the left tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:124
+msgid "Sets the offset from [code]0.5[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:132
+msgid ""
+"Sets the right [enum TangentMode] for the point at [code]index[/code] to "
+"[code]mode[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:140
+msgid ""
+"Sets the right tangent angle for the point at [code]index[/code] to "
+"[code]tangent[/code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:148
+msgid ""
+"Assigns the vertical position [code]y[/code] to the point at [code]index[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Curve.xml:154
+msgid "The number of points to include in the baked (i.e. cached) curve data."
+msgstr ""
+
+#: doc/classes/Curve.xml:157
+msgid "The maximum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:160
+msgid "The minimum value the curve can reach."
+msgstr ""
+
+#: doc/classes/Curve.xml:166
+msgid "Emitted when [member max_value] or [member min_value] is changed."
+msgstr ""
+
+#: doc/classes/Curve.xml:172
+msgid "The tangent on this side of the point is user-defined."
+msgstr ""
+
+#: doc/classes/Curve.xml:175
+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:178
+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:20 doc/classes/Curve3D.xml:20
+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:33 doc/classes/Curve3D.xml:33
+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:39
+msgid "Returns the cache of points as a [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:46
+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:54 doc/classes/Curve3D.xml:67
+msgid ""
+"Returns the closest baked 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:68
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. The returned position is relative 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:75
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. The returned position is relative 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:82
+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:90
+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:99
+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:108 doc/classes/Curve3D.xml:138
+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:115 doc/classes/Curve3D.xml:145
+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:123 doc/classes/Curve3D.xml:153
+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. The position is relative to the vertex."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:131 doc/classes/Curve3D.xml:161
+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. The position is relative to the vertex."
+msgstr ""
+
+#: doc/classes/Curve2D.xml:139 doc/classes/Curve3D.xml:169
+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:147 doc/classes/Curve3D.xml:186
+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:156
+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 [Path], 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:39
+msgid "Returns the cache of points as a [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:45
+msgid "Returns the cache of tilts as a [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:51
+msgid ""
+"Returns the cache of up vectors as a [PoolVector3Array].\n"
+"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:59
+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:81
+msgid ""
+"Returns the position of the control point leading to the vertex [code]idx[/"
+"code]. The returned position is relative 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:88
+msgid ""
+"Returns the position of the control point leading out of the vertex "
+"[code]idx[/code]. The returned position is relative 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:95
+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:102
+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:110
+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:119
+msgid ""
+"Returns a point 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 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/Curve3D.xml:129
+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:177
+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 [PathFollow], this "
+"tilt is an offset over the natural tilt the [PathFollow] calculates."
+msgstr ""
+
+#: doc/classes/Curve3D.xml:195
+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:198
+msgid ""
+"If [code]true[/code], the curve will bake up vectors used for orientation. "
+"This is used when [member PathFollow.rotation_mode] is set to [constant "
+"PathFollow.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 [code]0.0[/code]."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:15
+msgid ""
+"Bottom radius of the cylinder. If set to [code]0.0[/code], the bottom faces "
+"will not be generated, resulting in a conic shape."
+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. Higher values result in a more "
+"detailed cylinder/cone at the cost of performance."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:24
+msgid ""
+"Number of edge rings along the height of the cylinder. Changing [member "
+"rings] does not have any visual impact unless a shader or procedural mesh "
+"tool is used to alter the vertex data. Higher values result in more "
+"subdivisions, which can be used to create smoother-looking effects with "
+"shaders or procedural mesh tools (at the cost of performance). When not "
+"altering the vertex data using a shader or procedural mesh tool, [member "
+"rings] should be kept to its default value."
+msgstr ""
+
+#: doc/classes/CylinderMesh.xml:27
+msgid ""
+"Top radius of the cylinder. If set to [code]0.0[/code], the top faces will "
+"not be generated, resulting in a conic shape."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:4 doc/classes/CylinderShape.xml:7
+msgid "Cylinder shape for collisions."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:18
+msgid "The cylinder's height."
+msgstr ""
+
+#: doc/classes/CylinderShape.xml:21
+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/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 a 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_dict = {} # Creates an empty dictionary.\n"
+"\n"
+"var dict_variable_key = \"Another key name\"\n"
+"var dict_variable_value = \"value2\"\n"
+"var another_dict = {\n"
+" \"Some key name\": \"value1\",\n"
+" dict_variable_key: dict_variable_value,\n"
+"}\n"
+"\n"
+"var points_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"\n"
+"# Alternative Lua-style syntax.\n"
+"# Doesn't require quotes around keys, but only string constants can be used "
+"as key names.\n"
+"# Additionally, key names must start with a letter or an underscore.\n"
+"# Here, `some_key` is a string literal, not a variable!\n"
+"another_dict = {\n"
+" some_key = 42,\n"
+"}\n"
+"[/codeblock]\n"
+"You can access a dictionary's values by referencing the appropriate key. In "
+"the above example, [code]points_dict[\"White\"][/code] will return [code]50[/"
+"code]. You can also write [code]points_dict.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_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"func _ready():\n"
+" # We can't use dot syntax here as `my_color` is a variable.\n"
+" var points = points_dict[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_dict = {\"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_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"points_dict[\"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_dict.sub_dict."
+"sub_key` or `my_dict[\"sub_dict\"][\"sub_key\"]`.\n"
+"# Indexing styles can be mixed and matched depending on your needs.\n"
+"var my_dict = {\n"
+" \"String Key\": 5,\n"
+" 4: [1, 2, 3],\n"
+" 7: \"Hello\",\n"
+" \"sub_dict\": {\"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"
+"var dict1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"var dict2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dict1 == dict2) # 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"
+"var dict1 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"var dict2 = {\"a\": 1, \"b\": 2, \"c\": 3}\n"
+"\n"
+"func compare_dictionaries():\n"
+" print(dict1.hash() == dict2.hash()) # Will print true.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] When declaring a dictionary with [code]const[/code], the "
+"dictionary itself can still be mutated by defining the values of individual "
+"keys. Using [code]const[/code] will only prevent assigning the constant with "
+"another value after it was initialized."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:87
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_basics.html#dictionary"
+msgstr ""
+
+#: doc/classes/Dictionary.xml:94
+msgid "Clear the dictionary, removing all key/value pairs."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:101
+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:107
+msgid "Returns [code]true[/code] if the dictionary is empty."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:114
+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.\n"
+"[b]Note:[/b] Don't erase elements while iterating over the dictionary. You "
+"can iterate over the [method keys] array instead."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:123
+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:130
+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 the keys in the given "
+"array."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:150
+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:163
+msgid "Returns the list of keys in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:169
+msgid "Returns the number of keys in the dictionary."
+msgstr ""
+
+#: doc/classes/Dictionary.xml:175
+msgid "Returns the list of values in the [Dictionary]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:4
+msgid "Directional light from a distance, as from the Sun."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:7
+msgid ""
+"A directional light is a type of [Light] 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 DirectionalLight transform "
+"(origin) is ignored. Only the basis is used to determine light direction."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:10 doc/classes/Light.xml:10
+#: doc/classes/OmniLight.xml:11 doc/classes/SpotLight.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html"
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:16
+msgid ""
+"Amount of extra bias for shadow splits that are far away. If self-shadowing "
+"occurs only on the splits far away, increasing this value can fix them."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:19
+msgid ""
+"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
+"transitions between splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:22
+msgid ""
+"Optimizes shadow rendering for detail versus movement. See [enum "
+"ShadowDepthRange]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:25
+msgid "The maximum distance for shadow splits."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:28
+msgid "The light's shadow rendering algorithm. See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:31
+msgid ""
+"Can be used to fix special cases of self shadowing when objects are "
+"perpendicular to the light."
+msgstr ""
+
+#: doc/classes/DirectionalLight.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/DirectionalLight.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/DirectionalLight.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/DirectionalLight.xml:46
+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/DirectionalLight.xml:49
+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/DirectionalLight.xml:52
+msgid ""
+"Splits the view frustum in 4 areas, each with its own shadow map. This is "
+"the slowest directional shadow mode."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:55
+msgid ""
+"Keeps the shadow stable when the camera moves, at the cost of lower "
+"effective shadow resolution."
+msgstr ""
+
+#: doc/classes/DirectionalLight.xml:58
+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], 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"
+"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
+"files), and their source asset will not be included in the exported game, as "
+"only the imported version is used. Use [ResourceLoader] to access imported "
+"resources.\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:28 doc/classes/File.xml:28
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem."
+"html"
+msgstr ""
+
+#: doc/classes/Directory.xml:35
+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:44
+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:51
+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:58
+msgid ""
+"Returns whether the target directory exists. The argument can be relative to "
+"the current directory, or an absolute path."
+msgstr ""
+
+#: doc/classes/Directory.xml:65
+msgid ""
+"Returns whether the target file exists. The argument can be relative to the "
+"current directory, or an absolute path."
+msgstr ""
+
+#: doc/classes/Directory.xml:71
+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:77
+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:84
+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 exist, the method returns an empty String."
+msgstr ""
+
+#: doc/classes/Directory.xml:90
+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:96
+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:103
+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:111
+msgid ""
+"Initializes the stream used to list all files and directories using the "
+"[method get_next] function, closing the currently 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:119
+msgid ""
+"Closes the current stream opened with [method list_dir_begin] (whether it "
+"has been fully processed with [method get_next] does not matter)."
+msgstr ""
+
+#: doc/classes/Directory.xml:126
+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:134
+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:142
+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:150
+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:159
+msgid ""
+"Renames (move) the [code]from[/code] file or directory to the [code]to[/"
+"code] destination. Both arguments should be paths to files or directories, "
+"either relative or absolute. If the destination file or directory 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/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:70
+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:77
+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 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 fallback "
+"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. Supported formats are TrueType ([code].ttf[/code]), "
+"OpenType ([code].otf[/code]) and Web Open Font Format 1 ([code].woff[/"
+"code]). Web Open Font Format 2 ([code].woff2[/code]) is [i]not[/i] "
+"supported.\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 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 > Generate Fonts[/b], click [b]Options[/b], choose "
+"the desired features then generate the font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:25
+msgid "Adds a fallback font."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:31
+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:39
+msgid "Returns the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:45
+msgid "Returns the number of fallback fonts."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:52
+msgid ""
+"Returns the spacing for the given [code]type[/code] (see [enum SpacingType])."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:59
+msgid "Removes the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:67
+msgid "Sets the fallback font at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:75
+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:81
+msgid "Extra spacing at the bottom in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:84
+msgid ""
+"Extra spacing for each character in pixels.\n"
+"This can be a negative number to make the distance between characters "
+"smaller."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:88
+msgid ""
+"Extra spacing for the space character (in addition to [member "
+"extra_spacing_char]) in pixels.\n"
+"This can be a negative number to make the distance between words smaller."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:92
+msgid "Extra spacing at the top in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:95
+msgid "The font data."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:98
+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:102
+msgid "The font outline's thickness in pixels (not relative to the font size)."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:105
+msgid "The font size in pixels."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:108
+msgid ""
+"If [code]true[/code], filtering is used. This makes the font blurry instead "
+"of pixelated when scaling it if font oversampling is disabled or "
+"ineffective. It's recommended to enable this when using the font in a "
+"control whose size changes over time, unless a pixel art aesthetic is "
+"desired."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:111
+msgid ""
+"If [code]true[/code], mipmapping is used. This improves the font's "
+"appearance when downscaling it if font oversampling is disabled or "
+"ineffective."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:116
+msgid "Spacing at the top."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:119
+msgid "Spacing at the bottom."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:122
+msgid "Spacing for each character."
+msgstr ""
+
+#: doc/classes/DynamicFont.xml:125
+msgid "Spacing for the space character."
+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:16
+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:19
+msgid "The path to the vector font file."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:22
+msgid "The font hinting mode used by FreeType. See [enum Hinting] for options."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:27
+msgid "Disables font hinting (smoother but less crisp)."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:30
+msgid "Use the light font hinting mode."
+msgstr ""
+
+#: doc/classes/DynamicFontData.xml:33
+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 the project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:7
+msgid ""
+"Editor export plugins are automatically activated whenever the user exports "
+"the project. Their most common use is to determine what files are being "
+"included in the exported project. For each plugin, [method _export_begin] is "
+"called at the beginning of the export process and then [method _export_file] "
+"is called for each exported file."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:19
+msgid ""
+"Virtual method to be overridden by the user. It is called when the export "
+"starts and provides all information about the export. [code]features[/code] "
+"is the list of features for the export, [code]is_debug[/code] is [code]true[/"
+"code] for debug builds, [code]path[/code] is the target path for the "
+"exported project. [code]flags[/code] is only used when running a runnable "
+"profile, e.g. when using native run on Android."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:25
+msgid ""
+"Virtual method to be overridden by the user. Called when the export is "
+"finished."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:34
+msgid ""
+"Virtual method to be overridden by the user. Called for each exported file, "
+"providing arguments that can be used to identify the file. [code]path[/code] "
+"is the path of the file, [code]type[/code] is the [Resource] represented by "
+"the file (e.g. [PackedScene]) and [code]features[/code] is the list of "
+"features for the export.\n"
+"Calling [method skip] inside this callback will make the file not included "
+"in the export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:44
+msgid ""
+"Adds a custom file to be exported. [code]path[/code] is the virtual path "
+"that can be used to load the file, [code]file[/code] is the binary data of "
+"the file. If [code]remap[/code] is [code]true[/code], file will not be "
+"exported, but instead remapped to the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:51
+msgid ""
+"Adds an iOS bundle file from the given [code]path[/code] to the exported "
+"project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:58
+msgid ""
+"Adds a C++ code to the iOS export. The final code is created from the code "
+"appended by each active export plugin."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:65
+msgid ""
+"Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's "
+"Xcode project and embeds it into resulting binary.\n"
+"[b]Note:[/b] For static libraries (*.a) works in same way as [method "
+"add_ios_framework].\n"
+"This method should not be used for System libraries as they are already "
+"present on the device."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:74
+msgid ""
+"Adds a static library (*.a) or dynamic library (*.dylib, *.framework) to "
+"Linking Phase in iOS's Xcode project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:81
+msgid "Adds linker flags for the iOS export."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:88
+msgid "Adds content for iOS Property List files."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:95
+msgid "Adds a static lib from the given [code]path[/code] to the iOS project."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:103
+msgid ""
+"Adds a shared object with the given [code]tags[/code] and destination "
+"[code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorExportPlugin.xml:109
+msgid ""
+"To be called inside [method _export_file]. Skips the current file, so it's "
+"not included in the export."
+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:17
+msgid "Returns the specified [code]feature[/code]'s human-readable name."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:24
+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:31
+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:39
+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:46
+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:53
+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:60
+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:68
+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:76
+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:85
+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:93
+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:99
+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:102
+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:105
+msgid ""
+"The AssetLib tab. If this feature is disabled, the AssetLib tab won't "
+"display."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:108
+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:111
+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:114
+msgid ""
+"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
+"be visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:117
+msgid ""
+"The Import dock. If this feature is disabled, the Import dock won't be "
+"visible."
+msgstr ""
+
+#: doc/classes/EditorFeatureProfile.xml:120 doc/classes/SpatialMaterial.xml:471
+msgid "Represents the size of the [enum Feature] enum."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:4
+msgid "A modified version of [FileDialog] used by the editor."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:15
+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:22
+msgid "Removes all filters except for \"All Files (*)\"."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:28
+msgid ""
+"Returns the [code]VBoxContainer[/code] used to display the file system.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:35
+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:41
+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:44
+msgid "The currently occupied directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:47
+msgid "The currently selected file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:50
+msgid "The file system path in the address bar."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:54
+msgid ""
+"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
+"overwriting files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:57
+msgid ""
+"The view format in which the [EditorFileDialog] displays resources to the "
+"user."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:60
+msgid ""
+"The purpose of the [EditorFileDialog], which defines the allowed behaviors."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:64
+msgid ""
+"If [code]true[/code], hidden files and directories will be visible in the "
+"[EditorFileDialog]."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:72
+msgid "Emitted when a directory is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:78
+msgid "Emitted when a file is selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:84
+msgid "Emitted when multiple files are selected."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:90
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"open the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:93
+msgid ""
+"The [EditorFileDialog] can select multiple files. Accepting the window will "
+"open all files."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:96
+msgid ""
+"The [EditorFileDialog] can select only one directory. Accepting the window "
+"will open the directory."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:99
+msgid ""
+"The [EditorFileDialog] can select a file or directory. Accepting the window "
+"will open it."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:102
+msgid ""
+"The [EditorFileDialog] can select only one file. Accepting the window will "
+"save the file."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:105
+msgid ""
+"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:108
+msgid ""
+"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:111
+msgid "The [EditorFileDialog] can view the entire local file system."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:114
+msgid "The [EditorFileDialog] displays resources as thumbnails."
+msgstr ""
+
+#: doc/classes/EditorFileDialog.xml:117
+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:17
+msgid ""
+"Returns the resource type of the file, given the full path. This returns a "
+"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
+"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:23
+msgid "Gets the root directory object."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:30
+msgid "Returns a view into the filesystem at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:36
+msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:42
+msgid "Returns [code]true[/code] of the filesystem is being scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:48
+msgid "Scan the filesystem for changes."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:54
+msgid "Check if the source of any imported resource changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:61
+msgid ""
+"Update a file information. Call this if an external program (not Godot) "
+"modified the file."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:67
+msgid "Scans the script files and updates the list of custom class names."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:74
+msgid "Emitted if the filesystem changed."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:80
+msgid "Emitted if a resource is reimported."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:86
+msgid ""
+"Emitted if at least one resource is reloaded when the filesystem is scanned."
+msgstr ""
+
+#: doc/classes/EditorFileSystem.xml:92
+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:16
+msgid ""
+"Returns the index of the directory with name [code]name[/code] or [code]-1[/"
+"code] if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:23
+msgid ""
+"Returns the index of the file with name [code]name[/code] or [code]-1[/code] "
+"if not found."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:30
+msgid "Returns the name of the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:36
+msgid "Returns the number of files in this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:43
+msgid ""
+"Returns [code]true[/code] if the file at index [code]idx[/code] imported "
+"properly."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:50
+msgid "Returns the path to the file at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:57
+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:64
+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:71
+msgid ""
+"Returns the resource type of the file at index [code]idx[/code]. This "
+"returns a string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/"
+"code], [i]not[/i] a file extension such as [code]\".gd\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:77
+msgid "Returns the name of this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:83
+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:89
+msgid "Returns the path to this directory."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:96
+msgid "Returns the subdirectory at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/EditorFileSystemDirectory.xml:102
+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 (see "
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_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\"\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"
+" return ResourceSaver.save(filename, mesh)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:51 doc/classes/ResourceImporter.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins."
+"html"
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:58
+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:64
+msgid ""
+"Gets the order of this importer to be run when importing resources. "
+"Importers with [i]lower[/i] import orders will be called first, and higher "
+"values will be called later. Use this to ensure the importer runs after the "
+"dependencies are already imported. The default import order is [code]0[/"
+"code] unless overridden by a specific importer. See [enum ResourceImporter."
+"ImportOrder] for some predefined values."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:70
+msgid "Gets the unique name of the importer."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:78
+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:93
+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:100
+msgid "Gets the name of the options preset at this index."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:106
+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:112
+msgid ""
+"Gets the list of file extensions to associate with this loader (case-"
+"insensitive). e.g. [code][\"obj\"][/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:118
+msgid ""
+"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh"
+"\"[/code] or [code]\"Animation\"[/code]."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:124
+msgid ""
+"Gets the extension used to save this resource in the [code].import[/code] "
+"directory (see [member ProjectSettings.application/config/"
+"use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:130
+msgid ""
+"Gets the name to display in the import window. You should choose this name "
+"as a continuation to \"Import as\", e.g. \"Import as Special Mesh\"."
+msgstr ""
+
+#: doc/classes/EditorImportPlugin.xml:141
+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 [Sprite] 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:16
+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:28
+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:34
+msgid "Emitted when a property is edited in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:40
+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:46
+msgid "Emitted when a property is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:53
+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:61
+msgid "Emitted when a resource is selected in the inspector."
+msgstr ""
+
+#: doc/classes/EditorInspector.xml:66
+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 ""
+"These plugins allow 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:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/"
+"inspector_plugins.html"
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:23
+msgid "Adds a custom control, which is not necessarily a property editor."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:31
+msgid ""
+"Adds a property editor for an individual property. The [code]editor[/code] "
+"control must extend [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:40
+msgid ""
+"Adds an editor that allows modifying multiple properties. The [code]editor[/"
+"code] control must extend [EditorProperty]."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:47
+msgid "Returns [code]true[/code] if this object can be handled by this plugin."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:54
+msgid "Called to allow adding controls at the beginning of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:62
+msgid "Called to allow adding controls at the beginning of the category."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:68
+msgid "Called to allow adding controls at the end of the list."
+msgstr ""
+
+#: doc/classes/EditorInspectorPlugin.xml:80
+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:17
+msgid ""
+"Edits the given [Node]. The node will be also selected if it's inside the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:24
+msgid "Edits the given [Resource]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:30
+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.\n"
+"[b]Warning:[/b] Removing and freeing this node will render the editor "
+"useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:37
+msgid "Returns the current path being viewed in the [FileSystemDock]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:43
+msgid "Returns the edited (current) scene's root [Node]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:49
+msgid ""
+"Returns the actual scale of the editor UI ([code]1.0[/code] being 100% "
+"scale). This can be used to adjust position and dimensions of the UI added "
+"by plugins.\n"
+"[b]Note:[/b] This value is set via the [code]interface/editor/display_scale[/"
+"code] and [code]interface/editor/custom_display_scale[/code] editor "
+"settings. Editor must be restarted for changes to be properly applied."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:56
+msgid "Returns the editor's [EditorSettings] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:62
+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.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:70
+msgid ""
+"Returns the editor's [FileSystemDock] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:77
+msgid ""
+"Returns the editor's [EditorInspector] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:84
+msgid "Returns an [Array] with the file paths of the currently opened scenes."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:90
+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:96
+msgid "Returns the editor's [EditorFileSystem] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:102
+msgid "Returns the editor's [EditorResourcePreview] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:108
+msgid ""
+"Returns the editor's [ScriptEditor] instance.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:115
+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:121
+msgid "Returns the editor's [EditorSelection] instance."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:130
+msgid ""
+"Shows the given property on the given [code]object[/code] in the editor's "
+"Inspector dock. If [code]inspector_only[/code] is [code]true[/code], plugins "
+"will not attempt to edit [code]object[/code]."
+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:143
+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:151
+msgid ""
+"Returns mesh previews rendered at the given size as an [Array] of [Texture]s."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:158
+msgid "Opens the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:164
+msgid "Plays the currently active scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:171
+msgid "Plays the scene specified by its filepath."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:177
+msgid "Plays the main scene."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:184
+msgid "Reloads the scene at the given path."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:190
+msgid ""
+"Saves the scene. Returns either [code]OK[/code] or [code]ERR_CANT_CREATE[/"
+"code] (see [@GlobalScope] constants)."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:198
+msgid "Saves the scene as a file at [code]path[/code]."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:205
+msgid ""
+"Selects the file, with the path provided by [code]file[/code], in the "
+"FileSystem dock."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:212
+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:220
+msgid ""
+"Sets the enabled status of a plugin. The plugin name is the same as its "
+"directory name."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:226
+msgid "Stops the scene that is currently playing."
+msgstr ""
+
+#: doc/classes/EditorInterface.xml:232
+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/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/3.4/tutorials/plugins/editor/index.html"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:18
+msgid ""
+"Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:26
+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:34
+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:44
+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:56
+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 "
+"(ie, \"Spatial\", \"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:66
+msgid ""
+"Registers a new [EditorExportPlugin]. Export plugins are used to perform "
+"tasks when the project is being exported.\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:74
+msgid ""
+"Registers a new [EditorImportPlugin]. Import plugins are used to import "
+"custom and unsupported assets as a custom [Resource] type.\n"
+"[b]Note:[/b] If you want to import custom 3D asset formats use [method "
+"add_scene_import_plugin] instead.\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:83
+msgid ""
+"Registers a new [EditorInspectorPlugin]. Inspector plugins are used to "
+"extend [EditorInspector] and provide custom configuration tools for your "
+"object's properties.\n"
+"[b]Note:[/b] Always use [method remove_inspector_plugin] to remove the "
+"registered [EditorInspectorPlugin] when your [EditorPlugin] is disabled to "
+"prevent leaks and an unexpected behavior.\n"
+"[codeblock]\n"
+"const MyInspectorPlugin = preload(\"res://addons/your_addon/path/to/your/"
+"script.gd\")\n"
+"var inspector_plugin = MyInspectorPlugin.new()\n"
+"\n"
+"func _enter_tree():\n"
+" add_inspector_plugin(inspector_plugin)\n"
+"\n"
+"func _exit_tree():\n"
+" remove_inspector_plugin(inspector_plugin)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:101
+msgid ""
+"Registers a new [EditorSceneImporter]. Scene importers are used to import "
+"custom 3D asset formats as scenes."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:108
+msgid ""
+"Registers a new [EditorSpatialGizmoPlugin]. Gizmo plugins are used to add "
+"custom gizmos to the 3D preview viewport for a [Spatial].\n"
+"See [method add_inspector_plugin] for an example of how to register a plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:119
+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:127
+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:133
+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:140
+msgid ""
+"This method is called when the editor is about to run the project. The "
+"plugin can then perform required operations before the project runs.\n"
+"This method must return a boolean. If this method returns [code]false[/"
+"code], the project will not run. The run is aborted immediately, so this "
+"also prevents all other plugins' [method build] methods from running."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:147
+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:153
+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:160
+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:166
+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:173
+msgid ""
+"Called by the engine when the 2D editor's viewport is updated. Use the "
+"[code]overlay[/code] [Control] for drawing. You can update the viewport "
+"manually by calling [method update_overlays].\n"
+"[codeblock]\n"
+"func forward_canvas_draw_over_viewport(overlay):\n"
+" # Draw a circle at cursor position.\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64, Color."
+"white)\n"
+"\n"
+"func forward_canvas_gui_input(event):\n"
+" if event is InputEventMouseMotion:\n"
+" # Redraw viewport when cursor is moved.\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:192
+msgid ""
+"This method is the same as [method forward_canvas_draw_over_viewport], "
+"except it draws on top of everything. Useful when you need an extra layer "
+"that shows over anything else.\n"
+"You need to enable calling of this method by using [method "
+"set_force_draw_over_forwarding_enabled]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:200
+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:222
+msgid ""
+"Called by the engine when the 3D editor's viewport is updated. Use the "
+"[code]overlay[/code] [Control] for drawing. You can update the viewport "
+"manually by calling [method update_overlays].\n"
+"[codeblock]\n"
+"func forward_spatial_draw_over_viewport(overlay):\n"
+" # Draw a circle at cursor position.\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64)\n"
+"\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" if event is InputEventMouseMotion:\n"
+" # Redraw viewport when cursor is moved.\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:241
+msgid ""
+"This method is the same as [method forward_spatial_draw_over_viewport], "
+"except it draws on top of everything. Useful when you need an extra layer "
+"that shows over anything else.\n"
+"You need to enable calling of this method by using [method "
+"set_force_draw_over_forwarding_enabled]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:250
+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:271
+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:277
+msgid ""
+"Returns the [EditorInterface] object that gives you control over Godot "
+"editor's window and its functionalities."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:283
+msgid ""
+"Override this method in your plugin to return a [Texture] 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:305
+msgid ""
+"Gets the Editor's dialogue used for making scripts.\n"
+"[b]Note:[/b] Users can configure it before use.\n"
+"[b]Warning:[/b] Removing and freeing this node will render a part of the "
+"editor useless and may cause a crash."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:313
+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:319
+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:326
+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:333
+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:339
+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:345
+msgid "Minimizes the bottom panel."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:352
+msgid "Makes a specific item in the bottom panel visible."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:359
+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:366
+msgid "Queue save the project's editor layout."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:373
+msgid "Removes an Autoload [code]name[/code] from the list."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:380
+msgid ""
+"Removes the control from the bottom panel. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:388
+msgid ""
+"Removes the control from the specified container. You have to manually "
+"[method Node.queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:395
+msgid ""
+"Removes the control from the dock. You have to manually [method Node."
+"queue_free] the control."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:402
+msgid "Removes a custom type added by [method add_custom_type]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:409
+msgid "Removes an export plugin registered by [method add_export_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:416
+msgid "Removes an import plugin registered by [method add_import_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:423
+msgid "Removes an inspector plugin registered by [method add_import_plugin]"
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:430
+msgid ""
+"Removes a scene importer registered by [method add_scene_import_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:437
+msgid "Removes a gizmo plugin registered by [method add_spatial_gizmo_plugin]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:444
+msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:450
+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:456
+msgid ""
+"Enables calling of [method forward_canvas_force_draw_over_viewport] for the "
+"2D editor and [method forward_spatial_force_draw_over_viewport] for the 3D "
+"editor when their viewports are updated. You need to call this method only "
+"once and it will work permanently for this plugin."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:462
+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:469
+msgid "Restore the state saved by [method get_state]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:476
+msgid "Restore the plugin GUI layout saved by [method get_window_layout]."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:482
+msgid ""
+"Updates the overlays of the 2D and 3D editor viewport. Causes methods "
+"[method forward_canvas_draw_over_viewport], [method "
+"forward_canvas_force_draw_over_viewport], [method "
+"forward_spatial_draw_over_viewport] and [method "
+"forward_spatial_force_draw_over_viewport] to be called."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:490
+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:501
+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:507
+msgid ""
+"Emitted when user closes a scene. The argument is file path to a closed "
+"scene."
+msgstr ""
+
+#: doc/classes/EditorPlugin.xml:553
+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:16
+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:26
+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:32
+msgid "Gets the edited object."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:38
+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:44
+msgid "Must be implemented to provide a custom tooltip to the property editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:51
+msgid ""
+"Puts the [code]editor[/code] control below the property label. The control "
+"must be previously added using [method Node.add_child]."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:57
+msgid "When this virtual function is called, you must update your editor."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:63
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is "
+"checkable."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:66
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is checked."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:69
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is drawn "
+"with the editor theme's warning color. This is used for editable children's "
+"properties."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:72
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property can add "
+"keys for animation."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:75
+msgid "Set this property to change the label (if you want to show one)."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:78
+msgid ""
+"Used by the inspector, set to [code]true[/code] when the property is read-"
+"only."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:86
+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:93
+msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:100
+msgid ""
+"Do not emit this manually, use the [method emit_changed] method instead."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:107
+msgid "Emitted when a property was checked. Used internally."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:113
+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:120
+msgid "Emit it if you want to key a property with a single value."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:127
+msgid ""
+"If you want a sub-resource to be edited, emit this signal with the resource."
+msgstr ""
+
+#: doc/classes/EditorProperty.xml:134
+msgid "Emitted when selected. Used internally."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:4
+msgid "Godot editor's control for selecting [Resource] type properties."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:7
+msgid ""
+"This [Control] node is used in the editor's Inspector dock to allow editing "
+"of [Resource] type properties. It provides options for creating, loading, "
+"saving and converting resources. Can be used with [EditorInspectorPlugin] to "
+"recreate the same behavior.\n"
+"[b]Note:[/b] This [Control] does not include any editor for the resource, as "
+"editing is controlled by the Inspector dock itself or sub-Inspectors."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:32
+msgid ""
+"Returns a list of all allowed types and subtypes corresponding to the "
+"[member base_type]. If the [member base_type] is empty, an empty list is "
+"returned."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:46
+msgid ""
+"This virtual method can be implemented to handle context menu items not "
+"handled by default. See [method set_create_options]."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:53
+msgid ""
+"This virtual method is called when updating the context menu of "
+"[EditorResourcePicker]. Implement this method to override the \"New ...\" "
+"items with your own options. [code]menu_node[/code] is a reference to the "
+"[PopupMenu] node.\n"
+"[b]Note:[/b] Implement [method handle_menu_selected] to handle these custom "
+"items."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:61
+msgid ""
+"Sets the toggle mode state for the main button. Works only if [member "
+"toggle_mode] is set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:67
+msgid ""
+"The base type of allowed resource types. Can be a comma-separated list of "
+"several options."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:70
+msgid "If [code]true[/code], the value can be selected and edited."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:73
+msgid "The edited resource value."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:76
+msgid ""
+"If [code]true[/code], the main button with the resource preview works in the "
+"toggle mode. Use [method set_toggle_pressed] to manually set the state."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:83
+msgid "Emitted when the value of the edited resource was changed."
+msgstr ""
+
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+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:17
+msgid "Create an own, custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:24
+msgid ""
+"Check if the resource changed, if so, it will be invalidated and the "
+"corresponding signal emitted."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:34
+msgid ""
+"Queue the [code]resource[/code] being edited for preview. Once the preview "
+"is ready, the [code]receiver[/code]'s [code]receiver_func[/code] will be "
+"called. The [code]receiver_func[/code] must take the following four "
+"arguments: [String] path, [Texture] preview, [Texture] thumbnail_preview, "
+"[Variant] userdata. [code]userdata[/code] can be anything, and will be "
+"returned when [code]receiver_func[/code] is called.\n"
+"[b]Note:[/b] If it was not possible to create the preview the "
+"[code]receiver_func[/code] will still be called, but the preview will be "
+"null."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:45
+msgid ""
+"Queue a resource file located at [code]path[/code] for preview. Once the "
+"preview is ready, the [code]receiver[/code]'s [code]receiver_func[/code] "
+"will be called. The [code]receiver_func[/code] must take the following four "
+"arguments: [String] path, [Texture] preview, [Texture] thumbnail_preview, "
+"[Variant] userdata. [code]userdata[/code] can be anything, and will be "
+"returned when [code]receiver_func[/code] is called.\n"
+"[b]Note:[/b] If it was not possible to create the preview the "
+"[code]receiver_func[/code] will still be called, but the preview will be "
+"null."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:53
+msgid "Removes a custom preview generator."
+msgstr ""
+
+#: doc/classes/EditorResourcePreview.xml:61
+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:15
+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:24
+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:34
+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:42
+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:50
+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 ""
+
+#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:4
+msgid "FBX 3D asset importer."
+msgstr ""
+
+#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:7
+msgid ""
+"This is an FBX 3D asset importer with full support for most FBX features.\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/3.4/getting_started/workflow/assets/"
+"importing_scenes.html#custom-script"
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:35
+msgid ""
+"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
+"code])."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:41
+msgid "Returns the resource folder the imported scene file is located in."
+msgstr ""
+
+#: doc/classes/EditorScenePostImport.xml:48
+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 [code]Ctrl+Shift+X[/code]) 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:25
+msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:32
+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:39
+msgid "Returns the [EditorInterface] singleton instance."
+msgstr ""
+
+#: doc/classes/EditorScript.xml:45
+msgid "Returns the Editor's currently active scene."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:4
+msgid ""
+"Godot editor's control for selecting the [code]script[/code] property of a "
+"[Node]."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:7
+msgid ""
+"Similar to [EditorResourcePicker] this [Control] node is used in the "
+"editor's Inspector dock, but only to edit the [code]script[/code] property "
+"of a [Node]. Default options for creating new resources of all possible "
+"subtypes are replaced with dedicated buttons that open the \"Attach Node "
+"Script\" dialog. Can be used with [EditorInspectorPlugin] to recreate the "
+"same behavior.\n"
+"[b]Note:[/b] You must set the [member script_owner] for the custom context "
+"menu items to work."
+msgstr ""
+
+#: doc/classes/EditorScriptPicker.xml:16
+msgid "The owner [Node] of the script property that holds the edited resource."
+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:17
+msgid ""
+"Adds a node to the selection.\n"
+"[b]Note:[/b] The newly selected node will not be automatically edited in the "
+"inspector. If you want to edit a node, use [method EditorInterface."
+"edit_node]."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:24
+msgid "Clear the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:30
+msgid "Gets the list of selected nodes."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:36
+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:43
+msgid "Removes a node from the selection."
+msgstr ""
+
+#: doc/classes/EditorSelection.xml:50
+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:28
+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:51
+msgid "Erases the setting whose name is specified by [code]property[/code]."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:57
+msgid "Returns the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:66
+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:72
+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:78
+msgid ""
+"Returns the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:85
+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:91
+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:100
+msgid ""
+"Returns [code]true[/code] if the setting specified by [code]name[/code] "
+"exists, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:107
+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:114
+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:121
+msgid "Sets the list of favorite files and directories for this project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:130
+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:139
+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:146
+msgid ""
+"Sets the list of recently visited folders in the file dialog for this "
+"project."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:154
+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:161
+msgid "Emitted after any editor setting has changed."
+msgstr ""
+
+#: doc/classes/EditorSettings.xml:167
+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/EditorSpatialGizmo.xml:4
+msgid "Custom gizmo for editing Spatial objects."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:7
+msgid ""
+"Custom gizmo that is used for providing custom visualization and editing "
+"(handles) for 3D Spatial objects. See [EditorSpatialGizmoPlugin] for more "
+"information."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:16
+msgid ""
+"Adds the specified [code]segments[/code] to the gizmo's collision shape for "
+"picking. Call this function during [method redraw]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:23
+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/EditorSpatialGizmo.xml:33
+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/EditorSpatialGizmo.xml:44
+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/EditorSpatialGizmo.xml:54
+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/EditorSpatialGizmo.xml:63
+msgid ""
+"Adds an unscaled billboard for visualization. Call this function during "
+"[method redraw]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:69
+msgid ""
+"Removes everything in the gizmo including meshes, collisions and handles."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:78
+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/EditorSpatialGizmo.xml:86
+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/EditorSpatialGizmo.xml:94
+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/EditorSpatialGizmo.xml:100
+msgid ""
+"Returns the [EditorSpatialGizmoPlugin] that owns this gizmo. It's useful to "
+"retrieve materials using [method EditorSpatialGizmoPlugin.get_material]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:106
+msgid "Returns the Spatial node associated with this gizmo."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:113
+msgid ""
+"Returns [code]true[/code] if the handle at index [code]index[/code] is "
+"highlighted by being hovered with the mouse."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:119
+msgid ""
+"This function is called when the [Spatial] this gizmo refers to changes (the "
+"[method Spatial.update_gizmo] is called)."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:128
+msgid ""
+"This function is used when the user drags a gizmo handle (previously added "
+"with [method add_handles]) in screen coordinates.\n"
+"The [Camera] is also provided so screen coordinates can be converted to "
+"raycasts."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmo.xml:136
+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/EditorSpatialGizmo.xml:143
+msgid ""
+"Sets the reference [Spatial] node for the gizmo. [code]node[/code] must "
+"inherit from [Spatial]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:4
+msgid "Used by the editor to define Spatial gizmo types."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:7
+msgid ""
+"EditorSpatialGizmoPlugin allows you to define a new type of Gizmo. There are "
+"two main ways to do so: extending [EditorSpatialGizmoPlugin] for the simpler "
+"gizmos, or creating a new [EditorSpatialGizmo] type. See the tutorial in the "
+"documentation for more info."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos."
+"html"
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:18
+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/EditorSpatialGizmoPlugin.xml:24
+msgid ""
+"Override this method to define whether the gizmo can be hidden or not. "
+"Returns [code]true[/code] if not overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:34
+msgid ""
+"Override this method to commit gizmo handles. Called for this plugin's "
+"active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:41
+msgid ""
+"Override this method to return a custom [EditorSpatialGizmo] for the spatial "
+"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
+"also [method has_gizmo]."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:50
+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 EditorSpatialGizmo.add_handles]. "
+"Should not be overridden.\n"
+"You can optionally provide a texture to use instead of the default icon."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:61
+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 EditorSpatialGizmo."
+"add_unscaled_billboard]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:72
+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 EditorSpatialGizmo.add_mesh] and "
+"[method EditorSpatialGizmo.add_lines]. Should not be overridden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:80
+msgid ""
+"Override this method to provide gizmo's handle names. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:88
+msgid ""
+"Gets actual value of a handle from gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:96
+msgid ""
+"Gets material from the internal list of materials. If an "
+"[EditorSpatialGizmo] is provided, it will try to get the corresponding "
+"variant (selected and/or editable)."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:102
+msgid ""
+"Override this method to provide the name that will appear in the gizmo "
+"visibility menu."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:108
+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/EditorSpatialGizmoPlugin.xml:116
+msgid ""
+"Override this method to define which Spatial nodes have a gizmo from this "
+"plugin. Whenever a [Spatial] node is added to a scene this method is called, "
+"if it returns [code]true[/code] the node gets a generic [EditorSpatialGizmo] "
+"assigned and is added to this plugin's list of active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:124
+msgid ""
+"Gets whether a handle is highlighted or not. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:130
+msgid ""
+"Override this method to define whether a Spatial with this gizmo should be "
+"selectable even when the gizmo is hidden."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:137
+msgid ""
+"Callback to redraw the provided gizmo. Called for this plugin's active "
+"gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpatialGizmoPlugin.xml:147
+msgid ""
+"Update the value of a handle after it has been updated. Called for this "
+"plugin's active gizmos."
+msgstr ""
+
+#: doc/classes/EditorSpinSlider.xml:4
+msgid "Godot editor's control for editing numeric values."
+msgstr ""
+
+#: doc/classes/EditorSpinSlider.xml:7
+msgid ""
+"This [Control] node is used in the editor's Inspector dock to allow editing "
+"of numeric values. Can be used with [EditorInspectorPlugin] to recreate the "
+"same behavior."
+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:16
+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:23
+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:36
+msgid ""
+"Returns a [Dictionary] containing the path of the detected file change "
+"mapped to an integer signifying what kind of 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:48
+msgid "Returns the project name of the VCS working directory."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:54
+msgid ""
+"Returns the name of the VCS if the VCS has been initialized, else return an "
+"empty string."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:61
+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:67
+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:73
+msgid ""
+"Returns [code]true[/code] if the VCS addon has been initialized, else "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/EditorVCSInterface.xml:79
+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:86
+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:93
+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:15
+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:25
+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:33
+msgid ""
+"Returns a Dictionary of Arrays of donor names.\n"
+"{[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]}"
+msgstr ""
+
+#: doc/classes/Engine.xml:40
+msgid ""
+"Returns the total number of frames drawn. On headless platforms, or if the "
+"render loop is disabled with [code]--disable-render-loop[/code] via command "
+"line, [method get_frames_drawn] always returns [code]0[/code]. See [method "
+"get_idle_frames]."
+msgstr ""
+
+#: doc/classes/Engine.xml:46
+msgid "Returns the frames per second of the running game."
+msgstr ""
+
+#: doc/classes/Engine.xml:52
+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] and [method "
+"get_physics_frames].\n"
+"[method get_idle_frames] can be used to run expensive logic less often "
+"without relying on a [Timer]:\n"
+"[codeblock]\n"
+"func _process(_delta):\n"
+" if Engine.get_idle_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 idle (render) frames "
+"here.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:64
+msgid ""
+"Returns Dictionary of licenses used by Godot and included third party "
+"components."
+msgstr ""
+
+#: doc/classes/Engine.xml:70
+msgid "Returns Godot license text."
+msgstr ""
+
+#: doc/classes/Engine.xml:76
+msgid "Returns the main loop object (see [MainLoop] and [SceneTree])."
+msgstr ""
+
+#: doc/classes/Engine.xml:82
+msgid ""
+"Returns the total number of frames passed since engine initialization which "
+"is advanced on each [b]physics frame[/b]. See also [method "
+"get_idle_frames].\n"
+"[method get_physics_frames] can be used to run expensive logic less often "
+"without relying on a [Timer]:\n"
+"[codeblock]\n"
+"func _physics_process(_delta):\n"
+" if Engine.get_physics_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 physics frames here.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Engine.xml:94
+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:101
+msgid ""
+"Returns a global singleton with given [code]name[/code]. Often used for "
+"plugins, e.g. [code]GodotPayment[/code] on Android."
+msgstr ""
+
+#: doc/classes/Engine.xml:107
+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:130
+msgid ""
+"Returns [code]true[/code] if a singleton with given [code]name[/code] exists "
+"in global scope."
+msgstr ""
+
+#: doc/classes/Engine.xml:136
+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:142
+msgid ""
+"If [code]true[/code], the script is currently running inside the editor. "
+"This is useful for [code]tool[/code] scripts to conditionally draw editor "
+"helpers, or prevent accidentally running \"game\" code that would affect the "
+"scene state while in the editor:\n"
+"[codeblock]\n"
+"if Engine.editor_hint:\n"
+" draw_gizmos()\n"
+"else:\n"
+" simulate_physics()\n"
+"[/codeblock]\n"
+"See [url=https://docs.godotengine.org/en/3.4/tutorials/misc/"
+"running_code_in_the_editor.html]Running code in the editor[/url] in the "
+"documentation for more information.\n"
+"[b]Note:[/b] To detect whether the script is run from an editor [i]build[/i] "
+"(e.g. when pressing [code]F5[/code]), use [method OS.has_feature] with the "
+"[code]\"editor\"[/code] argument instead. [code]OS.has_feature(\"editor\")[/"
+"code] will evaluate to [code]true[/code] both when the code is running in "
+"the editor and when running the project from the editor, but it will "
+"evaluate to [code]false[/code] when the code is run from an exported project."
+msgstr ""
+
+#: doc/classes/Engine.xml:153
+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:156
+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 the in-game clock and real clock but 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.\n"
+"[b]Note:[/b] For best results, when using a custom physics interpolation "
+"solution, the physics jitter fix should be disabled by setting [member "
+"physics_jitter_fix] to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Engine.xml:160
+msgid ""
+"If [code]false[/code], stops printing error and warning messages to the "
+"console and editor Output log. This can be used to hide error and warning "
+"messages during unit test suite runs. This property is equivalent to the "
+"[member ProjectSettings.application/run/disable_stderr] project setting.\n"
+"[b]Warning:[/b] If you set this to [code]false[/code] anywhere in the "
+"project, important error messages may be hidden even if they are emitted "
+"from other scripts. If this is set to [code]false[/code] in a [code]@tool[/"
+"code] script, this will also impact the editor itself. Do [i]not[/i] report "
+"bugs before ensuring error messages are enabled (as they are by default).\n"
+"[b]Note:[/b] This property does not impact the editor's Errors tab when "
+"running a project from the editor."
+msgstr ""
+
+#: doc/classes/Engine.xml:165
+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:168
+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\n"
+"These effects will only apply when the [Viewport]'s intended usage is \"3D\" "
+"or \"3D Without Effects\". This can be configured for the root Viewport with "
+"[member ProjectSettings.rendering/quality/intended_usage/"
+"framebuffer_allocation], or for specific Viewports via the [member Viewport."
+"usage] property."
+msgstr ""
+
+#: doc/classes/Environment.xml:15 doc/classes/WorldEnvironment.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/"
+"environment_and_post_processing.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html"
+msgstr ""
+
+#: doc/classes/Environment.xml:17 doc/classes/Material.xml:10
+#: doc/classes/Mesh.xml:10 doc/classes/MeshInstance.xml:10
+#: doc/classes/WorldEnvironment.xml:13
+msgid "https://godotengine.org/asset-library/asset/123"
+msgstr ""
+
+#: doc/classes/Environment.xml:26
+msgid ""
+"Returns [code]true[/code] if the glow level [code]idx[/code] is specified, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Environment.xml:34
+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:40
+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:43
+msgid ""
+"Applies the provided [Texture] 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:46
+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:49
+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:52
+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:55
+msgid "The ambient light's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:58
+msgid ""
+"The ambient light's energy. The higher the value, the stronger the light."
+msgstr ""
+
+#: doc/classes/Environment.xml:61
+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:64
+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:67
+msgid "The maximum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:70
+msgid "The minimum luminance value for the auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:73
+msgid ""
+"The scale of the auto exposure effect. Affects the intensity of auto "
+"exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:76
+msgid ""
+"The speed of the auto exposure effect. Affects the time needed for the "
+"camera to perform auto exposure."
+msgstr ""
+
+#: doc/classes/Environment.xml:79
+msgid "The ID of the camera feed to show in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:82
+msgid ""
+"The maximum layer ID to display. Only effective when using the [constant "
+"BG_CANVAS] background mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:85
+msgid ""
+"The [Color] displayed for clear areas of the scene. Only effective when "
+"using the [constant BG_COLOR] or [constant BG_COLOR_SKY] background modes)."
+msgstr ""
+
+#: doc/classes/Environment.xml:88
+msgid "The power of the light emitted by the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:91
+msgid "The background mode. See [enum BGMode] for possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:94
+msgid "The [Sky] resource defined as background."
+msgstr ""
+
+#: doc/classes/Environment.xml:97
+msgid "The [Sky] resource's custom field of view."
+msgstr ""
+
+#: doc/classes/Environment.xml:100
+msgid "The [Sky] resource's rotation expressed as a [Basis]."
+msgstr ""
+
+#: doc/classes/Environment.xml:103
+msgid "The [Sky] resource's rotation expressed as Euler angles in radians."
+msgstr ""
+
+#: doc/classes/Environment.xml:106
+msgid "The [Sky] resource's rotation expressed as Euler angles in degrees."
+msgstr ""
+
+#: doc/classes/Environment.xml:109
+msgid "The amount of far blur for the depth-of-field effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:112
+msgid ""
+"The distance from the camera where the far blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:115
+msgid "If [code]true[/code], enables the depth-of-field far blur effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:118
+msgid ""
+"The depth-of-field far blur's quality. Higher values can mitigate the "
+"visible banding effect seen at higher strengths, but are much slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:121
+msgid "The length of the transition between the no-blur area and far blur."
+msgstr ""
+
+#: doc/classes/Environment.xml:124
+msgid "The amount of near blur for the depth-of-field effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:127
+msgid ""
+"Distance from the camera where the near blur effect affects the rendering."
+msgstr ""
+
+#: doc/classes/Environment.xml:130
+msgid "If [code]true[/code], enables the depth-of-field near blur effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:133
+msgid ""
+"The depth-of-field near blur's quality. Higher values can mitigate the "
+"visible banding effect seen at higher strengths, but are much slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:136
+msgid "The length of the transition between the near blur and no-blur area."
+msgstr ""
+
+#: doc/classes/Environment.xml:139
+msgid "The fog's [Color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:142
+msgid "The fog's depth starting distance from the camera."
+msgstr ""
+
+#: doc/classes/Environment.xml:145
+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:148
+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:151
+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 Camera.far] value."
+msgstr ""
+
+#: doc/classes/Environment.xml:154
+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:157
+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:160
+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:163
+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:166
+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:169
+msgid ""
+"The intensity of the depth fog color transition when looking towards the "
+"sun. The sun's direction is determined automatically using the "
+"DirectionalLight node in the scene."
+msgstr ""
+
+#: doc/classes/Environment.xml:172
+msgid "The depth fog's [Color] when looking towards the sun."
+msgstr ""
+
+#: doc/classes/Environment.xml:175
+msgid ""
+"The intensity of the fog light transmittance effect. Amount of light that "
+"the fog transmits."
+msgstr ""
+
+#: doc/classes/Environment.xml:178
+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:181
+msgid ""
+"Smooths out the blockiness created by sampling higher levels, at the cost of "
+"performance.\n"
+"[b]Note:[/b] When using the GLES2 renderer, this is only available if the "
+"GPU supports the [code]GL_EXT_gpu_shader4[/code] extension."
+msgstr ""
+
+#: doc/classes/Environment.xml:185
+msgid "The glow blending mode."
+msgstr ""
+
+#: doc/classes/Environment.xml:188
+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:191
+msgid "If [code]true[/code], the glow effect is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:194
+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:197
+msgid "The bleed scale of the HDR glow."
+msgstr ""
+
+#: doc/classes/Environment.xml:200
+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:203
+msgid ""
+"Takes more samples during downsample pass of glow. This ensures that single "
+"pixels are captured by glow which makes the glow look smoother and more "
+"stable during movement. However, it is very expensive and makes the glow "
+"post process take twice as long."
+msgstr ""
+
+#: doc/classes/Environment.xml:206
+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:209
+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:212
+msgid "If [code]true[/code], the 2th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:215
+msgid "If [code]true[/code], the 3th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:218
+msgid "If [code]true[/code], the 4th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:221
+msgid "If [code]true[/code], the 5th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:224
+msgid "If [code]true[/code], the 6th level of glow is enabled."
+msgstr ""
+
+#: doc/classes/Environment.xml:227
+msgid ""
+"If [code]true[/code], the 7th level of glow is enabled. This is the most "
+"\"global\" level (blurriest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:230
+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:233
+msgid "The depth tolerance for screen-space reflections."
+msgstr ""
+
+#: doc/classes/Environment.xml:236
+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:239
+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:242
+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:245
+msgid ""
+"The maximum number of steps for screen-space reflections. Higher values are "
+"slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:248
+msgid ""
+"If [code]true[/code], screen-space reflections will take the material "
+"roughness into account."
+msgstr ""
+
+#: doc/classes/Environment.xml:251
+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:254
+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:257
+msgid ""
+"The screen-space ambient occlusion blur quality. See [enum SSAOBlur] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/Environment.xml:260
+msgid "The screen-space ambient occlusion color."
+msgstr ""
+
+#: doc/classes/Environment.xml:263
+msgid "The screen-space ambient occlusion edge sharpness."
+msgstr ""
+
+#: doc/classes/Environment.xml:266
+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:269
+msgid ""
+"The primary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius]."
+msgstr ""
+
+#: doc/classes/Environment.xml:272
+msgid ""
+"The secondary screen-space ambient occlusion intensity. See also [member "
+"ssao_radius2]."
+msgstr ""
+
+#: doc/classes/Environment.xml:275
+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:278
+msgid ""
+"The screen-space ambient occlusion quality. Higher qualities will make "
+"better use of small objects for ambient occlusion, but are slower."
+msgstr ""
+
+#: doc/classes/Environment.xml:281
+msgid "The primary screen-space ambient occlusion radius."
+msgstr ""
+
+#: doc/classes/Environment.xml:284
+msgid ""
+"The secondary screen-space ambient occlusion radius. If set to a value "
+"higher than [code]0[/code], enables the secondary screen-space ambient "
+"occlusion effect which can be used to improve the effect's appearance (at "
+"the cost of performance)."
+msgstr ""
+
+#: doc/classes/Environment.xml:287
+msgid "The default exposure used for tonemapping."
+msgstr ""
+
+#: doc/classes/Environment.xml:290
+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:293
+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:298
+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:301
+msgid ""
+"Clears the background using the clear color defined in [member "
+"ProjectSettings.rendering/environment/default_clear_color]."
+msgstr ""
+
+#: doc/classes/Environment.xml:304
+msgid "Clears the background using a custom clear color."
+msgstr ""
+
+#: doc/classes/Environment.xml:307
+msgid "Displays a user-defined sky in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:310
+msgid ""
+"Clears the background using a custom clear color and allows defining a sky "
+"for shading and reflection. This mode is slightly faster than [constant "
+"BG_SKY] and should be preferred in scenes where reflections can be visible, "
+"but the sky itself never is (e.g. top-down camera)."
+msgstr ""
+
+#: doc/classes/Environment.xml:313
+msgid "Displays a [CanvasLayer] in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:316
+msgid "Displays a camera feed in the background."
+msgstr ""
+
+#: doc/classes/Environment.xml:319
+msgid "Represents the size of the [enum BGMode] enum."
+msgstr ""
+
+#: doc/classes/Environment.xml:322
+msgid ""
+"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
+"flare, bright sources."
+msgstr ""
+
+#: doc/classes/Environment.xml:325
+msgid ""
+"Screen glow blending mode. Increases brightness, used frequently with bloom."
+msgstr ""
+
+#: doc/classes/Environment.xml:328
+msgid ""
+"Soft light glow blending mode. Modifies contrast, exposes shadows and "
+"highlights (vivid bloom)."
+msgstr ""
+
+#: doc/classes/Environment.xml:331
+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:334
+msgid ""
+"Linear tonemapper operator. Reads the linear data and passes it on "
+"unmodified."
+msgstr ""
+
+#: doc/classes/Environment.xml:337
+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:340
+msgid "Filmic tonemapper operator."
+msgstr ""
+
+#: doc/classes/Environment.xml:343
+msgid ""
+"Academy Color Encoding System tonemapper operator. Performs an aproximation "
+"of the ACES tonemapping curve."
+msgstr ""
+
+#: doc/classes/Environment.xml:346
+msgid ""
+"High quality Academy Color Encoding System tonemapper operator that matches "
+"the industry standard. Performs a more physically accurate curve fit which "
+"better simulates how light works in the real world. The color of lights and "
+"emissive materials will become lighter as the emissive energy increases, and "
+"will eventually become white if the light is bright enough to saturate the "
+"camera sensor."
+msgstr ""
+
+#: doc/classes/Environment.xml:349
+msgid "Low depth-of-field blur quality (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:352
+msgid "Medium depth-of-field blur quality."
+msgstr ""
+
+#: doc/classes/Environment.xml:355
+msgid "High depth-of-field blur quality (slowest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:358
+msgid "No blur for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:361
+msgid "1×1 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:364
+msgid "2×2 blur for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:367
+msgid "3×3 blur for the screen-space ambient occlusion effect (slowest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:370
+msgid "Low quality for the screen-space ambient occlusion effect (fastest)."
+msgstr ""
+
+#: doc/classes/Environment.xml:373
+msgid "Low quality for the screen-space ambient occlusion effect."
+msgstr ""
+
+#: doc/classes/Environment.xml:376
+msgid "Low quality for the screen-space ambient occlusion effect (slowest)."
+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:35
+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:42
+msgid "Returns the error text if [method parse] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:48
+msgid "Returns [code]true[/code] if [method execute] has failed."
+msgstr ""
+
+#: doc/classes/Expression.xml:56
+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/ExternalTexture.xml:4
+msgid "Enable OpenGL ES external texture extension."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:7
+msgid ""
+"Enable support for the OpenGL ES external texture extension as defined by "
+"[url=https://www.khronos.org/registry/OpenGL/extensions/OES/"
+"OES_EGL_image_external.txt]OES_EGL_image_external[/url].\n"
+"[b]Note:[/b] This is only supported for Android platforms."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:16
+msgid "Returns the external texture name."
+msgstr ""
+
+#: doc/classes/ExternalTexture.xml:23
+msgid "External texture size."
+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/3.4/tutorials/io/"
+"data_paths.html]Data paths[/url] documentation.\n"
+"[b]Note:[/b] To access project resources once exported, it is recommended to "
+"use [ResourceLoader] instead of the [File] API, as some files are converted "
+"to engine-specific formats and their original source files might not be "
+"present in the exported PCK package.\n"
+"[b]Note:[/b] Files are automatically closed only if the process exits "
+"\"normally\" (such as by clicking the window manager's close button or "
+"pressing [b]Alt + F4[/b]). If you stop the project execution by pressing "
+"[b]F8[/b] while the project is running, the file won't be closed as the game "
+"process will be killed. You can work around this by calling [method flush] "
+"at regular intervals."
+msgstr ""
+
+#: doc/classes/File.xml:35
+msgid ""
+"Closes the currently opened file and prevents subsequent read/write "
+"operations. Use [method flush] to persist the data to disk without closing "
+"the file."
+msgstr ""
+
+#: doc/classes/File.xml:41
+msgid ""
+"Returns [code]true[/code] if the file cursor has already read past the end "
+"of the file.\n"
+"[b]Note:[/b] [code]eof_reached() == false[/code] cannot be used to check "
+"whether there is more data available. To loop while there is more data "
+"available, use:\n"
+"[codeblock]\n"
+"while file.get_position() < file.get_len():\n"
+" # Read data\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/File.xml:53
+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 their source asset will not be included in the exported game, as "
+"only the imported version is used. See [method ResourceLoader.exists] for an "
+"alternative approach that takes resource remapping into account."
+msgstr ""
+
+#: doc/classes/File.xml:60
+msgid ""
+"Writes the file's buffer to disk. Flushing is automatically performed when "
+"the file is closed. This means you don't need to call [method flush] "
+"manually before closing a file using [method close]. Still, calling [method "
+"flush] can be used to ensure the data is safe even if the project crashes "
+"instead of being closed gracefully.\n"
+"[b]Note:[/b] Only call [method flush] when you actually need it. Otherwise, "
+"it will decrease performance due to constant disk writes."
+msgstr ""
+
+#: doc/classes/File.xml:67
+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:73
+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:79
+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:85
+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:91
+msgid ""
+"Returns the whole file as a [String].\n"
+"Text is interpreted as being UTF-8 encoded."
+msgstr ""
+
+#: doc/classes/File.xml:99
+msgid "Returns next [code]len[/code] bytes of the file as a [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/File.xml:106
+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, and cannot be a double quotation mark.\n"
+"Text is interpreted as being UTF-8 encoded. Text values must be enclosed in "
+"double quotes if they include the delimiter character. Double quotes within "
+"a text value can be escaped by doubling their occurrence.\n"
+"For example, the following CSV lines are valid and will be properly parsed "
+"as two strings each:\n"
+"[codeblock]\n"
+"Alice,\"Hello, Bob!\"\n"
+"Bob,Alice! What a surprise!\n"
+"Alice,\"I thought you'd reply with \"\"Hello, world\"\".\"\n"
+"[/codeblock]\n"
+"Note how the second line can omit the enclosing quotes as it does not "
+"include the delimiter. However it [i]could[/i] very well use quotes, it was "
+"only written without for demonstration purposes. The third line must use "
+"[code]\"\"[/code] for each quotation mark that needs to be interpreted as "
+"such instead of the end of a text value."
+msgstr ""
+
+#: doc/classes/File.xml:120
+msgid "Returns the next 64 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:126
+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:132
+msgid "Returns the next 32 bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:138
+msgid "Returns the size of the file in bytes."
+msgstr ""
+
+#: doc/classes/File.xml:144
+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:152
+msgid ""
+"Returns an MD5 String representing the file at the given path or an empty "
+"[String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:159
+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:165
+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:172
+msgid "Returns the path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:178
+msgid "Returns the absolute path as a [String] for the current open file."
+msgstr ""
+
+#: doc/classes/File.xml:184
+msgid "Returns the file cursor's position."
+msgstr ""
+
+#: doc/classes/File.xml:190
+msgid "Returns the next bits from the file as a floating-point number."
+msgstr ""
+
+#: doc/classes/File.xml:197
+msgid ""
+"Returns a SHA-256 [String] representing the file at the given path or an "
+"empty [String] on failure."
+msgstr ""
+
+#: doc/classes/File.xml:204
+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:211
+msgid "Returns [code]true[/code] if the file is currently opened."
+msgstr ""
+
+#: doc/classes/File.xml:219
+msgid "Opens the file for writing or reading, depending on the flags."
+msgstr ""
+
+#: doc/classes/File.xml:228
+msgid ""
+"Opens a compressed file for reading or writing.\n"
+"[b]Note:[/b] [method open_compressed] can only read files that were saved by "
+"Godot, not third-party compression formats. See [url=https://github.com/"
+"godotengine/godot/issues/28999]GitHub issue #28999[/url] for a workaround."
+msgstr ""
+
+#: doc/classes/File.xml:238
+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:248
+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:255
+msgid ""
+"Changes the file reading/writing cursor to the specified position (in bytes "
+"from the beginning of the file)."
+msgstr ""
+
+#: doc/classes/File.xml:262
+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:270
+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:297
+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:306
+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:314
+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:323
+msgid "Stores the given array of bytes in the file."
+msgstr ""
+
+#: doc/classes/File.xml:331
+msgid ""
+"Store the given [PoolStringArray] 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:339
+msgid "Stores a floating-point number as 64 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:346
+msgid "Stores a floating-point number as 32 bits in the file."
+msgstr ""
+
+#: doc/classes/File.xml:353
+msgid ""
+"Appends [code]line[/code] to the file followed by a line return character "
+"([code]\\n[/code]), encoding the text as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:360
+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:368
+msgid "Stores a floating-point number in the file."
+msgstr ""
+
+#: doc/classes/File.xml:375
+msgid ""
+"Appends [code]string[/code] to the file without a line return, encoding the "
+"text as UTF-8."
+msgstr ""
+
+#: doc/classes/File.xml:383
+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).\n"
+"[b]Note:[/b] Not all properties are included. Only properties that are "
+"configured with the [constant PROPERTY_USAGE_STORAGE] flag set will be "
+"serialized. You can add a new usage flag to a property by overriding the "
+"[method Object._get_property_list] method in your class. You can also check "
+"how property usage is configured by calling [method Object."
+"_get_property_list]. See [enum PropertyUsageFlags] for the possible usage "
+"flags."
+msgstr ""
+
+#: doc/classes/File.xml:390
+msgid ""
+"If [code]true[/code], the file is read with big-endian [url=https://en."
+"wikipedia.org/wiki/Endianness]endianness[/url]. If [code]false[/code], the "
+"file is read with little-endian endianness. If in doubt, leave this to "
+"[code]false[/code] as most files are written with little-endian endianness.\n"
+"[b]Note:[/b] [member endian_swap] is only about the file format, not the CPU "
+"type. The CPU endianness doesn't affect the default endianness for files "
+"written.\n"
+"[b]Note:[/b] This is always reset to [code]false[/code] whenever you open "
+"the file. Therefore, you must set [member endian_swap] [i]after[/i] opening "
+"the file, not before."
+msgstr ""
+
+#: doc/classes/File.xml:397
+msgid ""
+"Opens the file for read operations. The cursor is positioned at the "
+"beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:400
+msgid ""
+"Opens the file for write operations. The file is created if it does not "
+"exist, and truncated if it does."
+msgstr ""
+
+#: doc/classes/File.xml:403
+msgid ""
+"Opens the file for read and write operations. Does not truncate the file. "
+"The cursor is positioned at the beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:406
+msgid ""
+"Opens the file for read and write operations. The file is created if it does "
+"not exist, and truncated if it does. The cursor is positioned at the "
+"beginning of the file."
+msgstr ""
+
+#: doc/classes/File.xml:409
+msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
+msgstr ""
+
+#: doc/classes/File.xml:412
+msgid ""
+"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] "
+"compression method."
+msgstr ""
+
+#: doc/classes/File.xml:415
+msgid ""
+"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
+"method."
+msgstr ""
+
+#: doc/classes/File.xml:418
+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 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:16
+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:22
+msgid "Clear all the added filters in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:28
+msgid "Clear currently selected items in the dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:34
+msgid ""
+"Returns the LineEdit for the selected file.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:41
+msgid ""
+"Returns the vertical box container of the dialog, custom controls can be "
+"added to it.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:48
+msgid "Invalidate and update the current dialog content list."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:54
+msgid ""
+"The file system access scope. See enum [code]Access[/code] constants.\n"
+"[b]Warning:[/b] Currently, in sandboxed environments such as HTML5 builds or "
+"sandboxed macOS apps, FileDialog cannot access the host file system. See "
+"[url=https://github.com/godotengine/godot-proposals/issues/1123]godot-"
+"proposals#1123[/url]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:58
+msgid "The current working directory of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:61
+msgid "The currently selected file of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:64
+msgid "The currently selected file path of the file dialog."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:68
+msgid ""
+"The available file type filters. For example, this shows only [code].png[/"
+"code] and [code].gd[/code] files: [code]set_filters(PoolStringArray([\"*."
+"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:71
+msgid ""
+"The dialog's open or save mode, which affects the selection behavior. See "
+"enum [code]Mode[/code] constants."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:74
+msgid ""
+"If [code]true[/code], changing the [code]Mode[/code] property will set the "
+"window title accordingly (e.g. setting mode to [constant MODE_OPEN_FILE] "
+"will change the window title to \"Open a File\")."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:77
+msgid "If [code]true[/code], the dialog will show hidden files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:85
+msgid "Emitted when the user selects a directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:91
+msgid ""
+"Emitted when the user selects a file by double-clicking it or pressing the "
+"[b]OK[/b] button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:97
+msgid "Emitted when the user selects multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:103
+msgid "The dialog allows selecting one, and only one file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:106
+msgid "The dialog allows selecting multiple files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:109
+msgid ""
+"The dialog only allows selecting a directory, disallowing the selection of "
+"any file."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:112
+msgid "The dialog allows selecting one file or directory."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:115
+msgid "The dialog will warn when a file exists."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:118
+msgid ""
+"The dialog only allows accessing files under the [Resource] path "
+"([code]res://[/code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:121
+msgid ""
+"The dialog only allows accessing files under user data path ([code]user://[/"
+"code])."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:124
+msgid "The dialog allows accessing files on the whole file system."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:129
+msgid "Custom icon for files."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:132
+msgid "The color modulation applied to the file icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:135
+msgid ""
+"The color tint for disabled files (when the [FileDialog] is used in open "
+"folder mode)."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:138
+msgid "Custom icon for folders."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:141
+msgid "The color modulation applied to the folder icon."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:144
+msgid "Custom icon for the parent folder arrow."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:147
+msgid "Custom icon for the reload button."
+msgstr ""
+
+#: doc/classes/FileDialog.xml:150
+msgid "Custom icon for the toggle hidden button."
+msgstr ""
+
+#: doc/classes/float.xml:4
+msgid "Float built-in type."
+msgstr ""
+
+#: doc/classes/float.xml:7
+msgid ""
+"The [float] built-in type is a 64-bit double-precision floating-point "
+"number, equivalent to [code]double[/code] in C++. This type has 14 reliable "
+"decimal digits of precision. The [float] type can be stored in [Variant], "
+"which is the generic type used by the engine. The maximum value of [float] "
+"is approximately [code]1.79769e308[/code], and the minimum is approximately "
+"[code]-1.79769e308[/code].\n"
+"Most methods and properties in the engine use 32-bit single-precision "
+"floating-point numbers instead, equivalent to [code]float[/code] in C++, "
+"which have 6 reliable decimal digits of precision. For data structures such "
+"as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers.\n"
+"Math done using the [float] type is not guaranteed to be exact or "
+"deterministic, and will often result in small errors. You should usually use "
+"the [method @GDScript.is_equal_approx] and [method @GDScript.is_zero_approx] "
+"methods instead of [code]==[/code] to compare [float] values for equality."
+msgstr ""
+
+#: doc/classes/float.xml:12
+msgid "https://en.wikipedia.org/wiki/Double-precision_floating-point_format"
+msgstr ""
+
+#: doc/classes/float.xml:13
+msgid "https://en.wikipedia.org/wiki/Single-precision_floating-point_format"
+msgstr ""
+
+#: doc/classes/float.xml:20
+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:34
+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.\n"
+"[b]Note:[/b] If a [DynamicFont] doesn't contain a character used in a "
+"string, the character in question will be replaced with codepoint "
+"[code]0xfffd[/code] if it's available in the [DynamicFont]. If this "
+"replacement character isn't available in the DynamicFont, the character will "
+"be hidden without displaying any replacement character in the string.\n"
+"[b]Note:[/b] If a [BitmapFont] doesn't contain a character used in a string, "
+"the character in question will be hidden without displaying any replacement "
+"character in the string.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Font.xml:24
+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:37
+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:43
+msgid "Returns the font ascent (number of pixels above the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:51
+msgid ""
+"Returns the size of a character, optionally taking kerning into account if "
+"the next character is provided. Note that the height returned is the font "
+"height (see [method get_height]) and has no relation to the glyph height."
+msgstr ""
+
+#: doc/classes/Font.xml:57
+msgid "Returns the font descent (number of pixels below the baseline)."
+msgstr ""
+
+#: doc/classes/Font.xml:63
+msgid "Returns the total font height (ascent plus descent) in pixels."
+msgstr ""
+
+#: doc/classes/Font.xml:70
+msgid ""
+"Returns the size of a string, taking kerning and advance into account. Note "
+"that the height returned is the font height (see [method get_height]) and "
+"has no relation to the string."
+msgstr ""
+
+#: doc/classes/Font.xml:78
+msgid ""
+"Returns the size that the string would have with word wrapping enabled with "
+"a fixed [code]width[/code]."
+msgstr ""
+
+#: doc/classes/Font.xml:84
+msgid "Returns [code]true[/code] if the font has an outline."
+msgstr ""
+
+#: doc/classes/Font.xml:95
+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:16
+msgid ""
+"Calls the referenced function previously set in [member function] or [method "
+"@GDScript.funcref]."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:23
+msgid ""
+"Calls the referenced function previously set in [member 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:29
+msgid "Returns whether the object still exists and has the function assigned."
+msgstr ""
+
+#: doc/classes/FuncRef.xml:36
+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 ""
+
+#: doc/classes/FuncRef.xml:42
+msgid "The name of the referenced function."
+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 [ARVRInterfaceGDNative]. 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/3.4/tutorials/plugins/gdnative/gdnative-c-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-"
+"example.html"
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:17
+msgid ""
+"Returns paths to all dependency libraries for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:23
+msgid ""
+"Returns the path to the dynamic library file for the current platform and "
+"architecture."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:29
+msgid ""
+"This resource in INI-style [ConfigFile] format, as in [code].gdnlib[/code] "
+"files."
+msgstr ""
+
+#: modules/gdnative/doc_classes/GDNativeLibrary.xml:32
+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:36
+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:40
+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:44
+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/3.4/getting_started/scripting/gdscript/index."
+"html"
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:17
+msgid "Returns byte code for the script source code."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScript.xml:23
+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 ""
+"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 "
+"function call can then be resumed later by calling [method resume] on this "
+"state object."
+msgstr ""
+
+#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:16
+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:24
+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"
+"This function returns what the resumed function call returns, possibly "
+"another function state if yielded again."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.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/Generic6DOFJoint.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/Generic6DOFJoint.xml:93
+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/Generic6DOFJoint.xml:97
+msgid "If [code]true[/code], rotation across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:100
+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/Generic6DOFJoint.xml:103
+msgid ""
+"The maximum amount of force that can occur, when rotating around the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:106
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:109
+msgid ""
+"The amount of rotational restitution across the X axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:112
+msgid "The speed of all rotations across the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:115
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:118
+msgid ""
+"The amount of rotational damping across the Y axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:121
+msgid "If [code]true[/code], rotation across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:124
+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/Generic6DOFJoint.xml:127
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:130
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:133
+msgid ""
+"The amount of rotational restitution across the Y axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:136
+msgid "The speed of all rotations across the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:139
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:142
+msgid ""
+"The amount of rotational damping across the Z axis. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:145
+msgid "If [code]true[/code], rotation across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:148
+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/Generic6DOFJoint.xml:151
+msgid ""
+"The maximum amount of force that can occur, when rotating around the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:154
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:157
+msgid ""
+"The amount of rotational restitution across the Z axis. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:160
+msgid "The speed of all rotations across the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:163
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:166
+msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:169
+msgid "Maximum acceleration for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:172
+msgid "Target speed for the motor at the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:175
+msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:178
+msgid "Maximum acceleration for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:181
+msgid "Target speed for the motor at the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:184
+msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:187
+msgid "Maximum acceleration for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:190
+msgid "Target speed for the motor at the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:217
+msgid "The amount of damping that happens at the X motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:220
+msgid "If [code]true[/code], the linear motion across the X axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:223
+msgid "The minimum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:226
+msgid ""
+"The amount of restitution on the X axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:229
+msgid ""
+"A factor applied to the movement across the X axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:232
+msgid "The maximum difference between the pivot points' X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:235
+msgid "The amount of damping that happens at the Y motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:238
+msgid "If [code]true[/code], the linear motion across the Y axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:241
+msgid "The minimum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:244
+msgid ""
+"The amount of restitution on the Y axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:247
+msgid ""
+"A factor applied to the movement across the Y axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:250
+msgid "The maximum difference between the pivot points' Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:253
+msgid "The amount of damping that happens at the Z motion."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:256
+msgid "If [code]true[/code], the linear motion across the Z axis is limited."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:259
+msgid "The minimum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:262
+msgid ""
+"The amount of restitution on the Z axis movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:265
+msgid ""
+"A factor applied to the movement across the Z axis. The lower, the slower "
+"the movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:268
+msgid "The maximum difference between the pivot points' Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:271
+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/Generic6DOFJoint.xml:274
+msgid ""
+"The maximum force the linear motor can apply on the X axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:277
+msgid "The speed that the linear motor will attempt to reach on the X axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:280
+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/Generic6DOFJoint.xml:283
+msgid ""
+"The maximum force the linear motor can apply on the Y axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:286
+msgid "The speed that the linear motor will attempt to reach on the Y axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:289
+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/Generic6DOFJoint.xml:292
+msgid ""
+"The maximum force the linear motor can apply on the Z axis while trying to "
+"reach the target velocity."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:295
+msgid "The speed that the linear motor will attempt to reach on the Z axis."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:324 doc/classes/PhysicsServer.xml:1086
+msgid "The minimum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:327 doc/classes/PhysicsServer.xml:1089
+msgid "The maximum difference between the pivot points' axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:330
+msgid ""
+"A factor applied to the movement across the axes. The lower, the slower the "
+"movement."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:333
+msgid ""
+"The amount of restitution on the axes' movement. The lower, the more "
+"momentum gets lost."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:336 doc/classes/PhysicsServer.xml:1098
+msgid ""
+"The amount of damping that happens at the linear motion across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:339
+msgid "The velocity the linear motor will try to reach."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:342
+msgid ""
+"The maximum force the linear motor will apply while trying to reach the "
+"velocity target."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:351 doc/classes/PhysicsServer.xml:1107
+msgid ""
+"The minimum rotation in negative direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:354 doc/classes/PhysicsServer.xml:1110
+msgid ""
+"The minimum rotation in positive direction to break loose and rotate around "
+"the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:357
+msgid "The speed of all rotations across the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:360 doc/classes/PhysicsServer.xml:1116
+msgid ""
+"The amount of rotational damping across the axes. The lower, the more "
+"dampening occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:363 doc/classes/PhysicsServer.xml:1119
+msgid ""
+"The amount of rotational restitution across the axes. The lower, the more "
+"restitution occurs."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:366 doc/classes/PhysicsServer.xml:1122
+msgid ""
+"The maximum amount of force that can occur, when rotating around the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:369
+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/Generic6DOFJoint.xml:372 doc/classes/PhysicsServer.xml:1128
+msgid "Target speed for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:375 doc/classes/PhysicsServer.xml:1131
+msgid "Maximum acceleration for the motor at the axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:387
+msgid "If enabled, linear motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:390
+msgid "If enabled, rotational motion is possible within the given limits."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:397
+msgid "If enabled, there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:400
+msgid "If enabled, there is a linear motor across these axes."
+msgstr ""
+
+#: doc/classes/Generic6DOFJoint.xml:403 doc/classes/HingeJoint.xml:108
+msgid "Represents the size of the [enum Flag] enum."
+msgstr ""
+
+#: doc/classes/Geometry.xml:4
+msgid "Helper node to calculate generic geometry operations."
+msgstr ""
+
+#: doc/classes/Geometry.xml:7
+msgid ""
+"Geometry 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/Geometry.xml:16
+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/Geometry.xml:27
+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/Geometry.xml:37
+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/Geometry.xml:45
+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/Geometry.xml:53
+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/Geometry.xml:62
+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/Geometry.xml:69
+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/Geometry.xml:77
+msgid ""
+"Mutually excludes common area defined by intersection of [code]polygon_a[/"
+"code] and [code]polygon_b[/code] (see [method intersect_polygons_2d]) 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/Geometry.xml:87
+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/Geometry.xml:96
+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/Geometry.xml:105
+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/Geometry.xml:114
+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/Geometry.xml:124
+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 [PoolVector3Array] 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/Geometry.xml:134
+msgid ""
+"Given the two 2D segments ([code]p1[/code], [code]q1[/code]) and ([code]p2[/"
+"code], [code]q2[/code]), finds those two points on the two segments that are "
+"closest to each other. Returns a [PoolVector2Array] that contains this point "
+"on ([code]p1[/code], [code]q1[/code]) as well the accompanying point on "
+"([code]p2[/code], [code]q2[/code])."
+msgstr ""
+
+#: doc/classes/Geometry.xml:141
+msgid "Used internally by the engine."
+msgstr ""
+
+#: doc/classes/Geometry.xml:149
+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/Geometry.xml:158
+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/Geometry.xml:167
+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/Geometry.xml:175
+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/Geometry.xml:182
+msgid ""
+"Returns [code]true[/code] if [code]polygon[/code]'s vertices are ordered in "
+"clockwise order, otherwise returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:192
+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/Geometry.xml:200
+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/Geometry.xml:208
+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 multiple inner "
+"polygons (holes) produced which could be distinguished by calling [method "
+"is_polygon_clockwise]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:218
+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 = PoolVector2Array([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/Geometry.xml:237
+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/Geometry.xml:250
+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/Geometry.xml:261
+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/Geometry.xml:271
+msgid ""
+"Given the 2D segment ([code]segment_from[/code], [code]segment_to[/code]), "
+"returns the position on the segment (as a number between 0 and 1) at which "
+"the segment hits the circle that is located at position "
+"[code]circle_position[/code] and has radius [code]circle_radius[/code]. If "
+"the segment does not intersect the circle, -1 is returned (this is also the "
+"case if the line extending the segment would intersect the circle, but the "
+"segment does not)."
+msgstr ""
+
+#: doc/classes/Geometry.xml:280
+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 [PoolVector3Array] "
+"containing the point the intersection and the hull's normal. If no "
+"intersecion is found, an the returned array is empty."
+msgstr ""
+
+#: doc/classes/Geometry.xml:290
+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 [PoolVector3Array]. "
+"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/Geometry.xml:300
+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/Geometry.xml:310
+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 [PoolVector3Array]. If "
+"yes, returns a [PoolVector3Array] containing the point of intersection and "
+"the sphere's normal at the point of intersection."
+msgstr ""
+
+#: doc/classes/Geometry.xml:321
+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/Geometry.xml:328
+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 [PoolIntArray] 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 [PoolIntArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Geometry.xml:335
+msgid ""
+"Triangulates the polygon specified by the points in [code]polygon[/code]. "
+"Returns a [PoolIntArray] 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 [PoolIntArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/Geometry.xml:341
+msgid ""
+"Create regions where either subject or clip polygons (or both) are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:344
+msgid ""
+"Create regions where subject polygons are filled except where clip polygons "
+"are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:347
+msgid "Create regions where both subject and clip polygons are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:350
+msgid ""
+"Create regions where either subject or clip polygons are filled but not "
+"where both are filled."
+msgstr ""
+
+#: doc/classes/Geometry.xml:353
+msgid ""
+"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Geometry.xml:356
+msgid ""
+"While flattened paths can never perfectly trace an arc, they are "
+"approximated by a series of arc chords."
+msgstr ""
+
+#: doc/classes/Geometry.xml:359
+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/Geometry.xml:362
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polygon."
+msgstr ""
+
+#: doc/classes/Geometry.xml:365
+msgid ""
+"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
+"as a polyline."
+msgstr ""
+
+#: doc/classes/Geometry.xml:368
+msgid "Endpoints are squared off with no extension."
+msgstr ""
+
+#: doc/classes/Geometry.xml:371
+msgid "Endpoints are squared off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/Geometry.xml:374
+msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:4
+msgid "Base node for geometry-based visual instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:7
+msgid ""
+"Base node for geometry-based visual instances. Shares some common "
+"functionality like visibility and custom materials."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:16
+msgid ""
+"Returns the [enum GeometryInstance.Flags] that have been set for this object."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:23
+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/GeometryInstance.xml:31
+msgid ""
+"Sets the [enum GeometryInstance.Flags] specified. See [enum GeometryInstance."
+"Flags] for options."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:37
+msgid ""
+"The selected shadow casting flag. See [enum ShadowCastingSetting] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:40
+msgid ""
+"The extra distance added to the GeometryInstance's bounding box ([AABB]) to "
+"increase its cull box."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:43
+msgid ""
+"When disabled, the mesh will be taken into account when computing indirect "
+"lighting, but the resulting lightmap will not be saved. Useful for emissive "
+"only materials or shadow casters."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:46
+msgid ""
+"Scale factor for the generated baked lightmap. Useful for adding detail to "
+"certain mesh instances."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:49
+msgid ""
+"The GeometryInstance's max LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:53
+msgid ""
+"The GeometryInstance's max LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:57
+msgid ""
+"The GeometryInstance's min LOD distance.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:61
+msgid ""
+"The GeometryInstance's min LOD margin.\n"
+"[b]Note:[/b] This property currently has no effect."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:65
+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/GeometryInstance.xml:69
+msgid ""
+"If [code]true[/code], this GeometryInstance will be used when baking lights "
+"using a [GIProbe] or [BakedLightmap]."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:74
+msgid "The generated lightmap texture will have the original size."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:77
+msgid "The generated lightmap texture will be twice as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:80
+msgid "The generated lightmap texture will be 4 times as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:83
+msgid "The generated lightmap texture will be 8 times as large, on each axis."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:88
+msgid "Will not cast any shadows."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:91
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance.\n"
+"Will take culling into account, so faces not being rendered will not be "
+"taken into account when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:95
+msgid ""
+"Will cast shadows from all visible faces in the GeometryInstance.\n"
+"Will not take culling into account, so all faces will be taken into account "
+"when shadow casting."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:99
+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/GeometryInstance.xml:103
+msgid ""
+"Will allow the GeometryInstance to be used when baking lights using a "
+"[GIProbe] or [BakedLightmap]."
+msgstr ""
+
+#: doc/classes/GeometryInstance.xml:106
+msgid ""
+"Unused in this class, exposed for consistency with [enum VisualServer."
+"InstanceFlags]."
+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/voxel_cone_tracing/"
+"high_quality].\n"
+"[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light "
+"leaks (avoid one-sided walls). For interior levels, enclose your level "
+"geometry in a sufficiently large box and bridge the loops to close the "
+"mesh.\n"
+"[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot "
+"emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can "
+"emit light in a [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html"
+msgstr ""
+
+#: doc/classes/GIProbe.xml:22
+msgid ""
+"Bakes the effect from all [GeometryInstance]s marked with [member "
+"GeometryInstance.use_in_baked_light] and [Light]s marked with either "
+"[constant Light.BAKE_INDIRECT] or [constant Light.BAKE_ALL]. 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:28
+msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:34
+msgid ""
+"Offsets the lookup of the light contribution from the [GIProbe]. This can be "
+"used to avoid self-shadowing, but may introduce light leaking at higher "
+"values. This and [member normal_bias] should be played around with to "
+"minimize self-shadowing and light leaking.\n"
+"[b]Note:[/b] [code]bias[/code] should usually be above 1.0 as that is the "
+"size of the voxels."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:38
+msgid ""
+"[i]Deprecated.[/i] This property has been deprecated due to known bugs and "
+"no longer has any effect when enabled."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:41
+msgid "The [GIProbeData] resource that holds the data for this [GIProbe]."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:44
+msgid ""
+"The maximum brightness that the [GIProbe] will recognize. Brightness will be "
+"scaled within this range."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:47
+msgid ""
+"Energy multiplier. Makes the lighting contribution from the [GIProbe] "
+"brighter."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:50
+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:53
+msgid ""
+"If [code]true[/code], ignores the sky contribution when calculating lighting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:56
+msgid ""
+"Offsets the lookup into the [GIProbe] based on the object's normal "
+"direction. Can be used to reduce some self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:59
+msgid ""
+"How much light propagates through the probe internally. A higher value "
+"allows light to spread further."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:62
+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:67
+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:70
+msgid "Use 128 subdivisions. This is the default quality setting."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:73
+msgid "Use 256 subdivisions."
+msgstr ""
+
+#: doc/classes/GIProbe.xml:76
+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:79
+msgid "Represents the size of the [enum Subdiv] enum."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:13
+msgid ""
+"The [Color] of the light. Defaults to white. A black color causes the light "
+"to have no effect."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:16
+msgid ""
+"The inner angle of the cone in a spotlight. Must be less than or equal to "
+"the outer cone angle.\n"
+"Within this angle, the light is at full brightness. Between the inner and "
+"outer cone angles, there is a transition from full brightness to zero "
+"brightness. When creating a Godot [SpotLight], the ratio between the inner "
+"and outer cone angles is used to calculate the attenuation of the light."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:20
+msgid ""
+"The intensity of the light. This is expressed in candelas (lumens per "
+"steradian) for point and spot lights, and lux (lumens per m²) for "
+"directional lights. When creating a Godot light, this value is converted to "
+"a unitless multiplier."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:23
+msgid ""
+"The outer angle of the cone in a spotlight. Must be greater than or equal to "
+"the inner angle.\n"
+"At this angle, the light drops off to zero brightness. Between the inner and "
+"outer cone angles, there is a transition from full brightness to zero "
+"brightness. If this angle is a half turn, then the spotlight emits in all "
+"directions. When creating a Godot [SpotLight], the outer cone angle is used "
+"as the angle of the spotlight."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:27
+msgid ""
+"The range of the light, beyond which the light has no effect. GLTF lights "
+"with no range defined behave like physical lights (which have infinite "
+"range). When creating a Godot light, the range is clamped to 4096."
+msgstr ""
+
+#: modules/gltf/doc_classes/GLTFLight.xml:30
+msgid ""
+"The type of the light. The values accepted by Godot are \"point\", \"spot\", "
+"and \"directional\", which correspond to Godot's [OmniLight], [SpotLight], "
+"and [DirectionalLight] respectively."
+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/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:17
+msgid ""
+"Adds the specified color to the end of the ramp, with the specified offset."
+msgstr ""
+
+#: doc/classes/Gradient.xml:24
+msgid "Returns the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:31
+msgid "Returns the offset of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:37
+msgid "Returns the number of colors in the ramp."
+msgstr ""
+
+#: doc/classes/Gradient.xml:44
+msgid "Returns the interpolated color specified by [code]offset[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:51
+msgid "Removes the color at the index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:59
+msgid "Sets the color of the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:67
+msgid "Sets the offset for the ramp color at index [code]point[/code]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:73
+msgid "Gradient's colors returned as a [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/Gradient.xml:76
+msgid "Gradient's offsets returned as a [PoolRealArray]."
+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:18
+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:25
+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:32
+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:38
+msgid "Removes all connections between nodes."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:48
+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:58
+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:64
+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:70
+msgid ""
+"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
+"the top left of the graph. You can use this method to reposition the toolbar "
+"or to add your own custom controls to it.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:81
+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:89
+msgid "Returns whether it's possible to connect slots of the specified types."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:97
+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:104
+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:111
+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:122
+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:129
+msgid "Sets the specified [code]node[/code] as the one selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:136
+msgid "If [code]true[/code], the minimap is visible."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:139
+msgid "The opacity of the minimap rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:142
+msgid ""
+"The size of the minimap rectangle. The map itself is based on the size of "
+"the grid area and is scaled to fit this rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:146
+msgid ""
+"If [code]true[/code], enables disconnection of existing connections in the "
+"GraphEdit by dragging the right end."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:149
+msgid "The scroll offset."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:152
+msgid ""
+"If [code]true[/code], makes a label with the current zoom level visible. The "
+"zoom value is displayed in percents."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:155
+msgid "The snapping distance in pixels."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:158
+msgid "If [code]true[/code], enables snapping."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:161
+msgid "The current zoom value."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:164
+msgid "The upper zoom limit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:167
+msgid "The lower zoom limit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:170
+msgid "The step of each zoom level."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:176
+msgid "Emitted at the beginning of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:181
+msgid "Emitted at the end of a GraphNode movement."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:189
+msgid ""
+"Emitted when user dragging connection from input port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:198
+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:206
+msgid ""
+"Emitted when user dragging connection from output port into empty space of "
+"the graph."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:211
+msgid "Emitted when the user presses [code]Ctrl + C[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:216
+msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:225
+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:230
+msgid ""
+"Emitted when a GraphNode is attempted to be duplicated in the GraphEdit."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:236
+msgid "Emitted when a GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:246
+msgid "Emitted when the user presses [code]Ctrl + V[/code]."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:252
+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:258
+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:272
+msgid "The background drawn under the grid."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:275
+msgid "Color of major grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:278
+msgid "Color of minor grid lines."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:283
+msgid "The icon for the zoom out button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:286
+msgid "The icon for the zoom in button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:289
+msgid ""
+"The horizontal range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:292
+msgid "The vertical range within which a port can be grabbed (on both sides)."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:295
+msgid "The icon for the zoom reset button."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:298
+msgid "The fill color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:301
+msgid "The outline color of the selection rectangle."
+msgstr ""
+
+#: doc/classes/GraphEdit.xml:304
+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:17
+msgid "Disables all input and output slots of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:24
+msgid "Disables input and output slot whose index is [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:31
+msgid "Returns the [Color] of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:37
+msgid ""
+"Returns the number of enabled input slots (connections) to the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:44
+msgid "Returns the position of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:51
+msgid "Returns the type of the input connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:58
+msgid "Returns the [Color] of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:64
+msgid ""
+"Returns the number of enabled output slots (connections) of the GraphNode."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:71
+msgid "Returns the position of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:78
+msgid "Returns the type of the output connection [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:85
+msgid "Returns the left (input) [Color] of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:92
+msgid "Returns the right (output) [Color] of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:99
+msgid "Returns the left (input) type of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:106
+msgid "Returns the right (output) type of the slot [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:113
+msgid ""
+"Returns [code]true[/code] if left (input) side of the slot [code]idx[/code] "
+"is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:120
+msgid ""
+"Returns [code]true[/code] if right (output) side of the slot [code]idx[/"
+"code] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:135
+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.\n"
+"Individual properties can be set using one of the [code]set_slot_*[/code] "
+"methods. You must enable at least one side of the slot to do so."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:149
+msgid ""
+"Sets the [Color] of the left (input) side of the slot [code]idx[/code] to "
+"[code]color_left[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:157
+msgid ""
+"Sets the [Color] of the right (output) side of the slot [code]idx[/code] to "
+"[code]color_right[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:165
+msgid ""
+"Toggles the left (input) side of the slot [code]idx[/code]. If "
+"[code]enable_left[/code] is [code]true[/code], a port will appear on the "
+"left side and the slot will be able to be connected from this side."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:173
+msgid ""
+"Toggles the right (output) side of the slot [code]idx[/code]. If "
+"[code]enable_right[/code] is [code]true[/code], a port will appear on the "
+"right side and the slot will be able to be connected from this side."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:181
+msgid ""
+"Sets the left (input) type of the slot [code]idx[/code] to [code]type_left[/"
+"code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:189
+msgid ""
+"Sets the right (output) type of the slot [code]idx[/code] to "
+"[code]type_right[/code]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:195
+msgid "If [code]true[/code], the GraphNode is a comment node."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:198
+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:202
+msgid "Sets the overlay shown above the GraphNode. See [enum Overlay]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:205
+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:209
+msgid "If [code]true[/code], the GraphNode is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:212
+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:216
+msgid "The text displayed in the GraphNode's title bar."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:222
+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:229
+msgid "Emitted when the GraphNode is dragged."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:234
+msgid "Emitted when the GraphNode is moved."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:239
+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:245
+msgid ""
+"Emitted when the GraphNode is requested to be resized. Happens on dragging "
+"the resizer handle (see [member resizable])."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:251
+msgid "Emitted when any GraphNode's slot is updated."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:257
+msgid "No overlay is shown."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:260
+msgid "Show overlay set in the [code]breakpoint[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:263
+msgid "Show overlay set in the [code]position[/code] theme property."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:268
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_BREAKPOINT]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:271
+msgid ""
+"The icon for the close button, visible when [member show_close] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:274
+msgid "The color modulation applied to the close button icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:277 doc/classes/WindowDialog.xml:41
+msgid "The vertical offset of the close button."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:280
+msgid "The [StyleBox] used when [member comment] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:283
+msgid ""
+"The [StyleBox] used when [member comment] is enabled and the [GraphNode] is "
+"focused."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:290
+msgid "The default background for [GraphNode]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:293
+msgid "The icon used for representing ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:296
+msgid "Horizontal offset for the ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:299
+msgid ""
+"The background used when [member overlay] is set to [constant "
+"OVERLAY_POSITION]."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:302
+msgid "The icon used for resizer, visible when [member resizable] is enabled."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:305
+msgid "The color modulation applied to the resizer icon."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:308
+msgid "The background used when the [GraphNode] is selected."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:311
+msgid "The vertical distance between ports."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:314
+msgid "Color of the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:317
+msgid "Font used for the title text."
+msgstr ""
+
+#: doc/classes/GraphNode.xml:320
+msgid "Vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:4
+msgid ""
+"Grid container used to arrange Control-derived children in a grid like "
+"layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:7
+msgid ""
+"GridContainer will arrange its Control-derived 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.\n"
+"[b]Note:[/b] GridContainer only works with child nodes inheriting from "
+"Control. It won't rearrange child nodes inheriting from Node2D."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:18
+msgid ""
+"The number of columns in the [GridContainer]. If modified, [GridContainer] "
+"reorders its Control-derived children to accommodate the new layout."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:26
+msgid "The horizontal separation of children nodes."
+msgstr ""
+
+#: doc/classes/GridContainer.xml:29
+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.\n"
+"[b]Note:[/b] GridMap doesn't extend [VisualInstance] and therefore can't be "
+"hidden or cull masked based on [member VisualInstance.layers]. If you make a "
+"light not affect the first layer, the whole GridMap won't be lit by the "
+"light in question."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:14
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html"
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:22
+msgid "Clear all cells."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:39
+msgid ""
+"Returns an array of [ArrayMesh]es and [Transform] references of all bake "
+"meshes that exist within the current GridMap."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:48
+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."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:57
+msgid ""
+"The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is "
+"returned if the cell is empty."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:64
+msgid "Returns an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:71
+msgid "Returns an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:77
+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:83
+msgid ""
+"Returns an array of [Vector3] with the non-empty cell coordinates in the "
+"grid map."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:99
+msgid ""
+"Returns the position of a grid cell in the GridMap's local coordinate space."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:116
+msgid ""
+"Sets the mesh index for the cell referenced by its grid-based X, Y and Z "
+"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:135
+msgid "Sets an individual bit on the [member collision_layer]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:143
+msgid "Sets an individual bit on the [member collision_mask]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:150
+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:157
+msgid "If [code]true[/code], grid items are centered on the X axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:160
+msgid "If [code]true[/code], grid items are centered on the Y axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:163
+msgid "If [code]true[/code], grid items are centered on the Z axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:166
+msgid ""
+"The size of each octant measured in number of cells. This applies to all "
+"three axis."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:169
+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:173
+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:177
+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:181
+msgid ""
+"The physics layers this GridMap detects collisions in. See [url=https://docs."
+"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-"
+"layers-and-masks]Collision layers and masks[/url] in the documentation for "
+"more information."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:184
+msgid "The assigned [MeshLibrary]."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:187
+msgid ""
+"Controls whether this GridMap will be baked in a [BakedLightmap] or not."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:194
+msgid "Emitted when [member cell_size] changes."
+msgstr ""
+
+#: modules/gridmap/doc_classes/GridMap.xml:200
+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:38
+msgid "Closes the current context, and return the computed hash."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:45
+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:52
+msgid "Updates the computation with the given [code]chunk[/code] of data."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:58
+msgid "Hashing algorithm: MD5."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:61
+msgid "Hashing algorithm: SHA-1."
+msgstr ""
+
+#: doc/classes/HashingContext.xml:64
+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/HeightMapShape.xml:4
+msgid "Height map shape for 3D physics."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:7
+msgid ""
+"Height map shape resource, which can be added to a [PhysicsBody] or [Area]."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:15
+msgid ""
+"Height map data, pool array must be of [member map_width] * [member "
+"map_depth] size."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:18
+msgid ""
+"Depth of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HeightMapShape.xml:21
+msgid ""
+"Width of the height map data. Changing this will resize the [member "
+"map_data]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:4
+msgid "A hinge between two 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:7
+msgid ""
+"A HingeJoint normally uses the Z axis of body A as the hinge axis, another "
+"axis can be specified when adding it manually though. See also "
+"[Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:16 doc/classes/SpriteBase3D.xml:21
+msgid "Returns the value of the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:23 doc/classes/ParticlesMaterial.xml:25
+#: doc/classes/PinJoint.xml:16
+msgid "Returns the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:31
+msgid "If [code]true[/code], enables the specified flag."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:39 doc/classes/PinJoint.xml:24
+msgid "Sets the value of the specified parameter."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:45 doc/classes/HingeJoint.xml:85
+#: doc/classes/PhysicsServer.xml:977
+msgid ""
+"The speed with which the rotation across the axis perpendicular to the hinge "
+"gets corrected."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:48 doc/classes/HingeJoint.xml:102
+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/HingeJoint.xml:51 doc/classes/HingeJoint.xml:82
+msgid ""
+"The minimum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:54 doc/classes/HingeJoint.xml:90
+#: doc/classes/PhysicsServer.xml:982
+msgid "The lower this value, the more the rotation gets slowed down."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:59 doc/classes/HingeJoint.xml:79
+msgid ""
+"The maximum rotation. Only active if [member angular_limit/enable] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:62 doc/classes/HingeJoint.xml:105
+msgid "When activated, a motor turns the hinge."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:65 doc/classes/HingeJoint.xml:96
+#: doc/classes/PhysicsServer.xml:988
+msgid "Maximum acceleration for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:68 doc/classes/HingeJoint.xml:93
+#: doc/classes/PhysicsServer.xml:985
+msgid "Target speed for the motor."
+msgstr ""
+
+#: doc/classes/HingeJoint.xml:71 doc/classes/HingeJoint.xml:76
+#: doc/classes/PhysicsServer.xml:968
+msgid ""
+"The speed with which the two bodies get pulled together when they move in "
+"different directions."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:4
+msgid "Used to create an HMAC for a message using a key."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:7
+msgid ""
+"The HMACContext class is useful for advanced HMAC use cases, such as "
+"streaming the message as it supports creating the message over time rather "
+"than providing it all at once.\n"
+"[codeblock]\n"
+"extends Node\n"
+"var ctx = HMACContext.new()\n"
+"\n"
+"func _ready():\n"
+" var key = \"supersecret\".to_utf8()\n"
+" var err = ctx.start(HashingContext.HASH_SHA256, key)\n"
+" assert(err == OK)\n"
+" var msg1 = \"this is \".to_utf8()\n"
+" var msg2 = \"vewy vewy secret\".to_utf8()\n"
+" err = ctx.update(msg1)\n"
+" assert(err == OK)\n"
+" err = ctx.update(msg2)\n"
+" assert(err == OK)\n"
+" var hmac = ctx.finish()\n"
+" print(hmac.hex_encode())\n"
+"[/codeblock]\n"
+"And in C# we can use the following.\n"
+"[codeblock]\n"
+"using Godot;\n"
+"using System;\n"
+"using System.Diagnostics;\n"
+"\n"
+"public class CryptoNode : Node\n"
+"{\n"
+" private HMACContext ctx = new HMACContext();\n"
+" public override void _Ready()\n"
+" {\n"
+" PoolByteArray key = String(\"supersecret\").to_utf8();\n"
+" Error err = ctx.Start(HashingContext.HASH_SHA256, key);\n"
+" GD.Assert(err == OK);\n"
+" PoolByteArray msg1 = String(\"this is \").to_utf8();\n"
+" PoolByteArray msg2 = String(\"vewy vew secret\").to_utf8();\n"
+" err = ctx.Update(msg1);\n"
+" GD.Assert(err == OK);\n"
+" err = ctx.Update(msg2);\n"
+" GD.Assert(err == OK);\n"
+" PoolByteArray hmac = ctx.Finish();\n"
+" GD.Print(hmac.HexEncode());\n"
+" }\n"
+"}\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Not available in HTML5 exports."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:58
+msgid ""
+"Returns the resulting HMAC. If the HMAC failed, an empty [PoolByteArray] is "
+"returned."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:66
+msgid ""
+"Initializes the HMACContext. This method cannot be called again on the same "
+"HMACContext until [method finish] has been called."
+msgstr ""
+
+#: doc/classes/HMACContext.xml:73
+msgid ""
+"Updates the message to be HMACed. This can be called multiple times before "
+"[method finish] is called to append [code]data[/code] to the message, but "
+"cannot be called until [method start] has been called."
+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 "Displayed when the decrement button is being pressed."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30
+msgid ""
+"Used as texture for the grabber, the draggable element representing current "
+"scroll."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:29 doc/classes/VScrollBar.xml:33
+msgid "Used when the mouse hovers over the grabber."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:32 doc/classes/VScrollBar.xml:36
+msgid "Used when the grabber is being dragged."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:35
+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:38 doc/classes/VScrollBar.xml:42
+msgid "Displayed when the mouse cursor hovers over the increment button."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45
+msgid "Displayed when the increment button is being pressed."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:44 doc/classes/VScrollBar.xml:48
+msgid "Used as background of this [ScrollBar]."
+msgstr ""
+
+#: doc/classes/HScrollBar.xml:47 doc/classes/VScrollBar.xml:51
+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).\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/HSlider.xml:18 doc/classes/VSlider.xml:22
+msgid "The texture for the grabber (the draggable element)."
+msgstr ""
+
+#: doc/classes/HSlider.xml:21
+msgid "The background of the area to the left of the grabber."
+msgstr ""
+
+#: doc/classes/HSlider.xml:26 doc/classes/VSlider.xml:30
+msgid "The texture for the grabber when it's disabled."
+msgstr ""
+
+#: doc/classes/HSlider.xml:29 doc/classes/VSlider.xml:33
+msgid "The texture for the grabber when it's focused."
+msgstr ""
+
+#: doc/classes/HSlider.xml:32
+msgid ""
+"The background for the whole slider. Determines the height of the "
+"[code]grabber_area[/code]."
+msgstr ""
+
+#: doc/classes/HSlider.xml:35 doc/classes/VSlider.xml:39
+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 "Low-level 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. [b]See the "
+"[HTTPRequest] node for a higher-level alternative.[/b]\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.\n"
+"[b]Note:[/b] SSL/TLS support is currently limited to TLS 1.0, TLS 1.1, and "
+"TLS 1.2. Attempting to connect to a TLS 1.3-only server will return an "
+"error.\n"
+"[b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are "
+"currently not supported. Revoked certificates are accepted as long as they "
+"are otherwise valid. If this is a concern, you may want to use automatically "
+"managed certificates with a short validity period."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:16
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:17 doc/classes/HTTPRequest.xml:71
+#: doc/classes/StreamPeerSSL.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:23
+msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:33
+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:42
+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:49
+msgid "Returns the response's HTTP status code."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:55
+msgid "Returns the response headers."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:61
+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:74
+msgid ""
+"Returns a [enum Status] constant. Need to call [method poll] in order to get "
+"status updates."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:80
+msgid "If [code]true[/code], this [HTTPClient] has a response available."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:86
+msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:92
+msgid ""
+"This needs to be called in order to have any request processed. Check "
+"results with [method get_status]."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:99
+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:116
+msgid "Reads one chunk from the response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:126
+msgid ""
+"Sends a request to the connected host.\n"
+"The URL parameter is usually just the part after the host, so for "
+"[code]http://somehost.com/index.php[/code], it is [code]/index.php[/code]. "
+"When sending requests to an HTTP proxy server, it should be an absolute URL. "
+"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
+"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
+"authority component ([code]host:port[/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]\n"
+"[b]Note:[/b] The [code]request_data[/code] parameter is ignored if "
+"[code]method[/code] is [constant HTTPClient.METHOD_GET]. This is because GET "
+"methods can't contain request data. As a workaround, you can pass request "
+"data as a query string in the URL. See [method String.http_escape] for an "
+"example."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:146
+msgid ""
+"Sends a raw request to the connected host.\n"
+"The URL parameter is usually just the part after the host, so for "
+"[code]http://somehost.com/index.php[/code], it is [code]/index.php[/code]. "
+"When sending requests to an HTTP proxy server, it should be an absolute URL. "
+"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
+"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
+"authority component ([code]host:port[/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:155
+msgid ""
+"If [code]true[/code], execution will block until all data is read from the "
+"response."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:158
+msgid "The connection to use for this client."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:161
+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:166
+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:169
+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:172
+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:175
+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:178
+msgid ""
+"HTTP DELETE method. The DELETE method requests to delete the specified "
+"resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:181
+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:184
+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:187
+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:190
+msgid ""
+"HTTP PATCH method. The PATCH method is used to apply partial modifications "
+"to a resource."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:193
+msgid "Represents the size of the [enum Method] enum."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:196
+msgid "Status: Disconnected from the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:199
+msgid "Status: Currently resolving the hostname for the given URL into an IP."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:202
+msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:205
+msgid "Status: Currently connecting to server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:208
+msgid "Status: Can't connect to the server."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:211
+msgid "Status: Connection established."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:214
+msgid "Status: Currently sending request."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:217
+msgid "Status: HTTP body received."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:220
+msgid "Status: Error in HTTP connection."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:223
+msgid "Status: Error in SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:226
+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:229
+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:232
+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:235
+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:238
+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:241
+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:244
+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:247
+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:250
+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:253
+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:256
+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:259
+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:262
+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:265
+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:268
+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:271
+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:274
+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:277
+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:280
+msgid ""
+"HTTP status code [code]305 Use Proxy[/code]. [i]Deprecated. Do not use.[/i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:283
+msgid ""
+"HTTP status code [code]306 Switch Proxy[/code]. [i]Deprecated. Do not use.[/"
+"i]"
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:286
+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:289
+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:292
+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:295
+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:298
+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:301
+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:304
+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:307
+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:310
+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:313
+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:316
+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:319
+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:322
+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:325
+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:328
+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:331
+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:334
+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:337
+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:340
+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:343
+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:346
+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:349
+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:352
+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:355
+msgid ""
+"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
+"resource of a method is locked."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:358
+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:361
+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:364
+msgid ""
+"HTTP status code [code]428 Precondition Required[/code]. The origin server "
+"requires the request to be conditional."
+msgstr ""
+
+#: doc/classes/HTTPClient.xml:367
+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:370
+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:373
+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:376
+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:379
+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:382
+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:385
+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:388
+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:391
+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:394
+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:397
+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:400
+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:403
+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:406
+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]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, "
+"especially regarding SSL security.\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"
+" 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]"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:70
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class."
+"html"
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:77
+msgid "Cancels the current request."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:83
+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:90
+msgid "Returns the amount of bytes this HTTPRequest downloaded."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:96
+msgid ""
+"Returns the current status of the underlying [HTTPClient]. See [enum "
+"HTTPClient.Status]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:107
+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.\n"
+"[b]Note:[/b] When [code]method[/code] is [constant HTTPClient.METHOD_GET], "
+"the payload sent via [code]request_data[/code] might be ignored by the "
+"server or even cause the server to reject the request (check [url=https://"
+"datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 section 4.3.1[/"
+"url] for more details). As a workaround, you can send data as a query string "
+"in the URL. See [method String.http_escape] for an example."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:120
+msgid ""
+"Creates request on the underlying [HTTPClient] using a raw array of bytes "
+"for the request body. 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:127
+msgid "Maximum allowed size for response bodies."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:130
+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 lower value (e.g. 4096 for 4 KiB) when downloading small files "
+"to decrease memory usage at the cost of download speeds."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:134
+msgid "The file to download into. Will output any received file into it."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:137
+msgid "Maximum number of allowed redirects."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:142
+msgid "If [code]true[/code], multithreading is used to improve performance."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:152
+msgid "Emitted when a request is completed."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:158
+msgid "Request successful."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:163
+msgid "Request failed while connecting."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:166
+msgid "Request failed while resolving."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:169
+msgid "Request failed due to connection (read/write) error."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:172
+msgid "Request failed on SSL handshake."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:175
+msgid "Request does not have a response (yet)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:178
+msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:181
+msgid "Request failed (currently unused)."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:184
+msgid "HTTPRequest couldn't open the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:187
+msgid "HTTPRequest couldn't write to the download file."
+msgstr ""
+
+#: doc/classes/HTTPRequest.xml:190
+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 an "
+"[ImageTexture] and provides commonly used [i]image processing[/i] methods. "
+"The maximum width and height for an [Image] are [constant MAX_WIDTH] and "
+"[constant MAX_HEIGHT].\n"
+"An [Image] cannot be assigned to a [code]texture[/code] property of an "
+"object directly (such as [Sprite]), and has to be converted manually to an "
+"[ImageTexture] first.\n"
+"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger images may fail to import."
+msgstr ""
+
+#: doc/classes/Image.xml:12 doc/classes/ImageTexture.xml:31
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/"
+"importing_images.html"
+msgstr ""
+
+#: doc/classes/Image.xml:21
+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:31
+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:40
+msgid ""
+"Copies [code]src_rect[/code] from [code]src[/code] image to this image at "
+"coordinates [code]dst[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:50
+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:57
+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:63
+msgid "Removes the image's mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:72
+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:79
+msgid "Converts the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:86
+msgid "Copies [code]src[/code] image to this image."
+msgstr ""
+
+#: doc/classes/Image.xml:96
+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:107
+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:115
+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:121
+msgid ""
+"Decompresses the image if it is compressed. Returns an error if decompress "
+"function is not available."
+msgstr ""
+
+#: doc/classes/Image.xml:127
+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:133
+msgid ""
+"Stretches the image and enlarges it by a factor of 2. No interpolation is "
+"done."
+msgstr ""
+
+#: doc/classes/Image.xml:140
+msgid "Fills the image with a given [Color]."
+msgstr ""
+
+#: doc/classes/Image.xml:146
+msgid "Blends low-alpha pixels with nearby pixels."
+msgstr ""
+
+#: doc/classes/Image.xml:152
+msgid "Flips the image horizontally."
+msgstr ""
+
+#: doc/classes/Image.xml:158
+msgid "Flips the image vertically."
+msgstr ""
+
+#: doc/classes/Image.xml:165
+msgid ""
+"Generates mipmaps for the image. Mipmaps are precalculated lower-resolution "
+"copies of the image that are automatically used if the image needs to be "
+"scaled down when rendered. They help improve image quality and performance "
+"when rendering. This method returns an error if the image is compressed, in "
+"a custom format, or if the image's width/height is [code]0[/code].\n"
+"[b]Note:[/b] Mipmap generation is done on the CPU, is single-threaded and is "
+"[i]always[/i] done on the main thread. This means generating mipmaps will "
+"result in noticeable stuttering during gameplay, even if [method "
+"generate_mipmaps] is called from a [Thread]."
+msgstr ""
+
+#: doc/classes/Image.xml:172
+msgid "Returns a copy of the image's raw data."
+msgstr ""
+
+#: doc/classes/Image.xml:178
+msgid "Returns the image's format. See [enum Format] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:184
+msgid "Returns the image's height."
+msgstr ""
+
+#: doc/classes/Image.xml:191
+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:199
+msgid ""
+"Returns the color of the pixel at [code](x, y)[/code] if the image is "
+"locked. If the image is unlocked, it always returns a [Color] with the value "
+"[code](0, 0, 0, 1.0)[/code]. This is the same as [method get_pixelv], but "
+"two integer arguments instead of a Vector2 argument."
+msgstr ""
+
+#: doc/classes/Image.xml:206
+msgid ""
+"Returns the color of the pixel at [code]src[/code] if the image is locked. "
+"If the image is unlocked, it always returns a [Color] with the value [code]"
+"(0, 0, 0, 1.0)[/code]. This is the same as [method get_pixel], but with a "
+"Vector2 argument instead of two integer arguments."
+msgstr ""
+
+#: doc/classes/Image.xml:213
+msgid ""
+"Returns a new image that is a copy of the image's area specified with "
+"[code]rect[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:219
+msgid "Returns the image's size (width and height)."
+msgstr ""
+
+#: doc/classes/Image.xml:225
+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:231
+msgid "Returns the image's width."
+msgstr ""
+
+#: doc/classes/Image.xml:237
+msgid "Returns [code]true[/code] if the image has generated mipmaps."
+msgstr ""
+
+#: doc/classes/Image.xml:243
+msgid "Returns [code]true[/code] if the image is compressed."
+msgstr ""
+
+#: doc/classes/Image.xml:249
+msgid "Returns [code]true[/code] if the image has no data."
+msgstr ""
+
+#: doc/classes/Image.xml:255
+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:262
+msgid ""
+"Loads an image from file [code]path[/code]. See [url=https://docs."
+"godotengine.org/en/3.4/getting_started/workflow/assets/importing_images."
+"html#supported-image-formats]Supported image formats[/url] for a list of "
+"supported image formats and limitations.\n"
+"[b]Warning:[/b] This method should only be used in the editor or in cases "
+"when you need to load external images at run-time, such as images located at "
+"the [code]user://[/code] directory, and may not work in exported projects.\n"
+"See also [ImageTexture] description for usage examples."
+msgstr ""
+
+#: doc/classes/Image.xml:271
+msgid ""
+"Loads an image from the binary contents of a BMP file.\n"
+"[b]Note:[/b] Godot's BMP module doesn't support 16-bit per pixel images. "
+"Only 1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel images are supported."
+msgstr ""
+
+#: doc/classes/Image.xml:279
+msgid "Loads an image from the binary contents of a JPEG file."
+msgstr ""
+
+#: doc/classes/Image.xml:286
+msgid "Loads an image from the binary contents of a PNG file."
+msgstr ""
+
+#: doc/classes/Image.xml:293
+msgid "Loads an image from the binary contents of a TGA file."
+msgstr ""
+
+#: doc/classes/Image.xml:300
+msgid "Loads an image from the binary contents of a WebP file."
+msgstr ""
+
+#: doc/classes/Image.xml:306
+msgid ""
+"Locks the data for reading and writing access. Sends an error to the console "
+"if the image is not locked when reading or writing a pixel."
+msgstr ""
+
+#: doc/classes/Image.xml:312
+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:318
+msgid ""
+"Multiplies color values with alpha values. Resulting color values for a "
+"pixel are [code](color * alpha)/256[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:327
+msgid ""
+"Resizes the image to the given [code]width[/code] and [code]height[/code]. "
+"New pixels are calculated using the [code]interpolation[/code] mode defined "
+"via [enum Interpolation] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:335
+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. New pixels are calculated using the [code]interpolation[/code] mode "
+"defined via [enum Interpolation] constants."
+msgstr ""
+
+#: doc/classes/Image.xml:341
+msgid ""
+"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
+msgstr ""
+
+#: doc/classes/Image.xml:349
+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.\n"
+"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which "
+"means [method save_exr] will return [constant ERR_UNAVAILABLE] when it is "
+"called from an exported project."
+msgstr ""
+
+#: doc/classes/Image.xml:357
+msgid "Saves the image as a PNG file to [code]path[/code]."
+msgstr ""
+
+#: doc/classes/Image.xml:371
+msgid ""
+"Sets the [Color] of the pixel at [code](x, y)[/code] if the image is locked. "
+"Example:\n"
+"[codeblock]\n"
+"var img = Image.new()\n"
+"img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
+"img.lock()\n"
+"img.set_pixel(x, y, color) # Works\n"
+"img.unlock()\n"
+"img.set_pixel(x, y, color) # Does not have an effect\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:387
+msgid ""
+"Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code] if the image is "
+"locked. 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.lock()\n"
+"img.set_pixelv(Vector2(x, y), color) # Works\n"
+"img.unlock()\n"
+"img.set_pixelv(Vector2(x, y), color) # Does not have an effect\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Image.xml:401
+msgid "Shrinks the image by a factor of 2."
+msgstr ""
+
+#: doc/classes/Image.xml:407
+msgid "Converts the raw data from the sRGB colorspace to a linear scale."
+msgstr ""
+
+#: doc/classes/Image.xml:413
+msgid "Unlocks the data and prevents changes."
+msgstr ""
+
+#: doc/classes/Image.xml:419
+msgid ""
+"Holds all the image's color data in a given format. See [enum Format] "
+"constants."
+msgstr ""
+
+#: doc/classes/Image.xml:424
+msgid "The maximal width allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:427
+msgid "The maximal height allowed for [Image] resources."
+msgstr ""
+
+#: doc/classes/Image.xml:430
+msgid "Texture format with a single 8-bit depth representing luminance."
+msgstr ""
+
+#: doc/classes/Image.xml:433
+msgid ""
+"OpenGL texture format with two values, luminance and alpha each stored with "
+"8 bits."
+msgstr ""
+
+#: doc/classes/Image.xml:436
+msgid ""
+"OpenGL texture format [code]RED[/code] with a single component and a "
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
+msgstr ""
+
+#: doc/classes/Image.xml:440
+msgid ""
+"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
+"8 for each."
+msgstr ""
+
+#: doc/classes/Image.xml:443
+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:447
+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:451
+msgid ""
+"OpenGL texture format [code]RGBA[/code] with four components, each with a "
+"bitdepth of 4."
+msgstr ""
+
+#: doc/classes/Image.xml:454
+msgid ""
+"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
+"component of RGB and one bit for alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:457
+msgid ""
+"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
+"bit floating-point value."
+msgstr ""
+
+#: doc/classes/Image.xml:460
+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:463
+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:466
+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:469
+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:472
+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:475
+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:478
+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:481
+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:484
+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:488
+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:492
+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:496
+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:499
+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:502
+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:506
+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:509
+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:512
+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:516
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:519
+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:522
+msgid ""
+"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
+"alpha component."
+msgstr ""
+
+#: doc/classes/Image.xml:525
+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:528
+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:531
+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:534
+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:537
+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:540
+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:544
+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:548
+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:552
+msgid "Represents the size of the [enum Format] enum."
+msgstr ""
+
+#: doc/classes/Image.xml:555
+msgid ""
+"Performs nearest-neighbor interpolation. If the image is resized, it will be "
+"pixelated."
+msgstr ""
+
+#: doc/classes/Image.xml:558
+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:561
+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:564
+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 far fewer 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:571
+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:574
+msgid "Image does not have alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:577
+msgid "Image stores alpha in a single bit."
+msgstr ""
+
+#: doc/classes/Image.xml:580
+msgid "Image uses alpha."
+msgstr ""
+
+#: doc/classes/Image.xml:583
+msgid "Use S3TC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:586
+msgid "Use PVRTC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:589
+msgid "Use PVRTC4 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:592
+msgid "Use ETC compression."
+msgstr ""
+
+#: doc/classes/Image.xml:595
+msgid "Use ETC2 compression."
+msgstr ""
+
+#: doc/classes/Image.xml:598
+msgid ""
+"Source texture (before compression) is a regular texture. Default for all "
+"textures."
+msgstr ""
+
+#: doc/classes/Image.xml:601
+msgid "Source texture (before compression) is in sRGB space."
+msgstr ""
+
+#: doc/classes/Image.xml:604
+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 [Texture] based on an [Image]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:7
+msgid ""
+"A [Texture] based on an [Image]. For an image to be displayed, an "
+"[ImageTexture] has to be created from it using the [method "
+"create_from_image] method:\n"
+"[codeblock]\n"
+"var texture = ImageTexture.new()\n"
+"var image = Image.new()\n"
+"image.load(\"res://icon.png\")\n"
+"texture.create_from_image(image)\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"This way, textures can be created at run-time by loading images both from "
+"within the editor and externally.\n"
+"[b]Warning:[/b] Prefer to load imported textures with [method @GDScript."
+"load] over loading them from within the filesystem dynamically with [method "
+"Image.load], as it may not work in exported projects:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"This is because images have to be imported as [StreamTexture] first to be "
+"loaded with [method @GDScript.load]. If you'd still like to load an image "
+"file just like any other [Resource], import it as an [Image] resource "
+"instead, and then load it normally using the [method @GDScript.load] "
+"method.\n"
+"But do note that the image data can still be retrieved from an imported "
+"texture as well using the [method Texture.get_data] method, which returns a "
+"copy of the data:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"var image : Image = texture.get_data()\n"
+"[/codeblock]\n"
+"An [ImageTexture] is not meant to be operated from within the editor "
+"interface directly, and is mostly useful for rendering images on screen "
+"dynamically via code. If you need to generate images procedurally from "
+"within the editor, consider saving and importing images as custom texture "
+"resources implementing a new [EditorImportPlugin].\n"
+"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
+"hardware limitations."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:41
+msgid ""
+"Create a new [ImageTexture] with [code]width[/code] and [code]height[/"
+"code].\n"
+"[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] "
+"is any combination of [enum Texture.Flags]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:50
+msgid ""
+"Initializes the texture by allocating and setting the data from an [Image] "
+"with [code]flags[/code] from [enum Texture.Flags]. An sRGB to linear color "
+"space conversion can take place, according to [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:56
+msgid "Returns the format of the texture, one of [enum Image.Format]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:63
+msgid ""
+"Loads an image from a file path and creates a texture from it.\n"
+"[b]Note:[/b] This method is deprecated and will be removed in Godot 4.0, use "
+"[method Image.load] and [method create_from_image] instead."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:71
+msgid ""
+"Replaces the texture's data with a new [Image].\n"
+"[b]Note:[/b] The texture has to be initialized first with the [method "
+"create_from_image] method before it can be updated. The new image "
+"dimensions, format, and mipmaps configuration should match the existing "
+"texture's image configuration, otherwise it has to be re-created with the "
+"[method create_from_image] method.\n"
+"Use this method over [method create_from_image] if you need to update the "
+"texture frequently, which is faster than allocating additional memory for a "
+"new texture each time."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:80 doc/classes/VisualServer.xml:2837
+msgid "Resizes the texture to the specified dimensions."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:87
+msgid "The storage quality for [constant STORAGE_COMPRESS_LOSSY]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:90
+msgid "The storage type (raw, lossy, or compressed)."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:95
+msgid "[Image] data is stored raw and unaltered."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:98
+msgid ""
+"[Image] data is compressed with a lossy algorithm. You can set the storage "
+"quality with [member lossy_quality]."
+msgstr ""
+
+#: doc/classes/ImageTexture.xml:101
+msgid "[Image] data is compressed with a lossless algorithm."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:4
+msgid "Draws simple geometry from code."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.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.\n"
+"[b]Note:[/b] In case of missing points when handling large amounts of mesh "
+"data, try increasing its buffer size limit under [member ProjectSettings."
+"rendering/limits/buffers/immediate_buffer_size_kb]."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:23
+msgid ""
+"Simple helper to draw an UV sphere with given latitude, longitude and radius."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:30
+msgid ""
+"Adds a vertex in local coordinate space with the currently set color/uv/etc."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:38
+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/ImmediateGeometry.xml:45
+msgid "Clears everything that was drawn using begin/end."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:51
+msgid "Ends a drawing context and displays the results."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:58
+msgid "The current drawing color."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:65
+msgid "The next vertex's normal."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:72
+msgid "The next vertex's tangent (and binormal facing)."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:79
+msgid "The next vertex's UV."
+msgstr ""
+
+#: doc/classes/ImmediateGeometry.xml:86
+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/3.4/tutorials/inputs/index.html"
+msgstr ""
+
+#: doc/classes/Input.xml:20
+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:29
+msgid "If the specified action is already pressed, this will release it."
+msgstr ""
+
+#: doc/classes/Input.xml:37
+msgid ""
+"Adds a new mapping entry (in SDL2 format) to the mapping database. "
+"Optionally update already connected devices."
+msgstr ""
+
+#: doc/classes/Input.xml:43
+msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
+"Returns the acceleration of the device's accelerometer sensor, if the device "
+"has one. Otherwise, the method returns [constant Vector3.ZERO].\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.\n"
+"[b]Note:[/b] This method only works on iOS, Android, and UWP. On other "
+"platforms, it always returns [constant Vector3.ZERO]. On Android the unit of "
+"measurement for each axis is m/s² while on iOS and UWP it's a multiple of "
+"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
+msgstr ""
+
+#: doc/classes/Input.xml:60
+msgid ""
+"Returns a value between 0 and 1 representing the raw intensity of the given "
+"action, ignoring the action's deadzone. In most cases, you should use "
+"[method get_action_strength] instead.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:69
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:78
+msgid ""
+"Get axis input by specifying two actions, one negative and one positive.\n"
+"This is a shorthand for writing [code]Input."
+"get_action_strength(\"positive_action\") - Input."
+"get_action_strength(\"negative_action\")[/code]."
+msgstr ""
+
+#: doc/classes/Input.xml:85
+msgid ""
+"Returns an [Array] containing the device IDs of all currently connected "
+"joypads."
+msgstr ""
+
+#: doc/classes/Input.xml:91
+msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
+msgstr ""
+
+#: doc/classes/Input.xml:97
+msgid ""
+"Returns the gravity of the device's accelerometer sensor, if the device has "
+"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
+"it always returns [constant Vector3.ZERO]. On Android the unit of "
+"measurement for each axis is m/s² while on iOS it's a multiple of the "
+"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
+msgstr ""
+
+#: doc/classes/Input.xml:104
+msgid ""
+"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
+"gyroscope sensor, if the device has one. Otherwise, the method returns "
+"[constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
+"it always returns [constant Vector3.ZERO]."
+msgstr ""
+
+#: doc/classes/Input.xml:113
+msgid ""
+"Returns the current value of the joypad axis at given index (see [enum "
+"JoystickList])."
+msgstr ""
+
+#: doc/classes/Input.xml:120
+msgid "Returns the index of the provided axis name."
+msgstr ""
+
+#: doc/classes/Input.xml:127
+msgid ""
+"Receives a [enum JoystickList] axis and returns its equivalent name as a "
+"string."
+msgstr ""
+
+#: doc/classes/Input.xml:134
+msgid "Returns the index of the provided button name."
+msgstr ""
+
+#: doc/classes/Input.xml:141
+msgid ""
+"Receives a gamepad button from [enum JoystickList] and returns its "
+"equivalent name as a string."
+msgstr ""
+
+#: doc/classes/Input.xml:148
+msgid ""
+"Returns a SDL2-compatible device GUID on platforms that use gamepad "
+"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
+msgstr ""
+
+#: doc/classes/Input.xml:155
+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:169
+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:175
+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:181
+msgid ""
+"Returns the magnetic field strength in micro-Tesla for all axes of the "
+"device's magnetometer sensor, if the device has one. Otherwise, the method "
+"returns [constant Vector3.ZERO].\n"
+"[b]Note:[/b] This method only works on Android, iOS and UWP. On other "
+"platforms, it always returns [constant Vector3.ZERO]."
+msgstr ""
+
+#: doc/classes/Input.xml:188
+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:194
+msgid "Returns the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:205
+msgid ""
+"Gets an input vector by specifying four actions for the positive and "
+"negative X and Y axes.\n"
+"This method is useful when getting vector input, such as from a joystick, "
+"directional pad, arrows, or WASD. The vector has its length limited to 1 and "
+"has a circular deadzone, which is useful for using vector input as "
+"movement.\n"
+"By default, the deadzone is automatically calculated from the average of the "
+"action deadzones. However, you can override the deadzone to be whatever you "
+"want (on the range of 0 to 1)."
+msgstr ""
+
+#: doc/classes/Input.xml:215
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:225
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:234
+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.\n"
+"If [code]exact[/code] is [code]false[/code], it ignores the input modifiers "
+"for [InputEventKey] and [InputEventMouseButton] events, and the direction "
+"for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/Input.xml:243
+msgid ""
+"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
+"JoystickList])."
+msgstr ""
+
+#: doc/classes/Input.xml:250
+msgid ""
+"Returns [code]true[/code] if the system knows the specified device. This "
+"means that it sets all button and axis indices exactly as defined in [enum "
+"JoystickList]. Unknown joypads are not expected to match these constants, "
+"but you can still retrieve events from them."
+msgstr ""
+
+#: doc/classes/Input.xml:257
+msgid ""
+"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
+"KeyList] constant."
+msgstr ""
+
+#: doc/classes/Input.xml:264
+msgid ""
+"Returns [code]true[/code] if you are pressing the mouse button specified "
+"with [enum ButtonList]."
+msgstr ""
+
+#: doc/classes/Input.xml:274
+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:282
+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:296
+msgid ""
+"Removes all mappings from the internal database that match the given GUID."
+msgstr ""
+
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
+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:324
+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:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
+msgid "Sets the mouse mode. See the constants for more information."
+msgstr ""
+
+#: doc/classes/Input.xml:364
+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:375
+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:383
+msgid "Stops the vibration of the joypad."
+msgstr ""
+
+#: doc/classes/Input.xml:390
+msgid ""
+"Vibrate Android and iOS devices.\n"
+"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
+"settings. iOS does not support duration."
+msgstr ""
+
+#: doc/classes/Input.xml:398
+msgid "Sets the mouse position to the specified vector."
+msgstr ""
+
+#: doc/classes/Input.xml:407
+msgid "Emitted when a joypad device has been connected or disconnected."
+msgstr ""
+
+#: doc/classes/Input.xml:413
+msgid "Makes the mouse cursor visible if it is hidden."
+msgstr ""
+
+#: doc/classes/Input.xml:416
+msgid "Makes the mouse cursor hidden if it is visible."
+msgstr ""
+
+#: doc/classes/Input.xml:419
+msgid ""
+"Captures the mouse. The mouse will be hidden and its position locked at the "
+"center of the screen.\n"
+"[b]Note:[/b] If you want to process the mouse's movement in this mode, you "
+"need to use [member InputEventMouseMotion.relative]."
+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/3.4/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:27
+msgid "Returns a [String] representation of the event."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:35
+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].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:44
+msgid ""
+"Returns [code]true[/code] if this input event matches a pre-defined action "
+"of any type.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:54
+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].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:63
+msgid ""
+"Returns [code]true[/code] if the given action is released (i.e. not "
+"pressed). Not relevant for events of type [InputEventMouseMotion] or "
+"[InputEventScreenDrag].\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:70
+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:76
+msgid ""
+"Returns [code]true[/code] if this input event is an echo event (only for "
+"events of type [InputEventKey])."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:82
+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:90
+msgid ""
+"Returns [code]true[/code] if the specified [code]event[/code] matches this "
+"event. Only valid for action events i.e key ([InputEventKey]), button "
+"([InputEventMouseButton] or [InputEventJoypadButton]), axis "
+"[InputEventJoypadMotion] or action ([InputEventAction]) events.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputEvent.xml:99
+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:105
+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/3.4/tutorials/inputs/inputevent.html#actions"
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:18
+msgid "The action's name. Actions are accessed via this [String]."
+msgstr ""
+
+#: doc/classes/InputEventAction.xml:21
+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:24
+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 specifying how strongly the joypad axis is 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 JoystickList] 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 JoystickList] 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:16
+msgid ""
+"Returns the physical scancode combined with modifier keys such as "
+"[code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_scancode_string(event."
+"get_physical_scancode_with_modifiers())[/code] where [code]event[/code] is "
+"the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:23
+msgid ""
+"Returns the scancode combined with modifier keys such as [code]Shift[/code] "
+"or [code]Alt[/code]. See also [InputEventWithModifiers].\n"
+"To get a human-readable representation of the [InputEventKey] with "
+"modifiers, use [code]OS.get_scancode_string(event."
+"get_scancode_with_modifiers())[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:30
+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:33
+msgid ""
+"Key physical scancode, 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_scancode_string(event.physical_scancode)[/code] where [code]event[/code] "
+"is the [InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:37
+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:40
+msgid ""
+"The key scancode, 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_scancode_string(event.scancode)[/code] where [code]event[/code] is the "
+"[InputEventKey]."
+msgstr ""
+
+#: doc/classes/InputEventKey.xml:44
+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 OS.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/3.4/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:18
+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:21
+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:25
+msgid "The mouse speed in pixels per second."
+msgstr ""
+
+#: doc/classes/InputEventMouseMotion.xml:28
+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 [code]Shift[/"
+"code] or [code]Alt[/code]. See [method Node._input]."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:16
+msgid "State of the [code]Alt[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:19
+msgid "State of the [code]Command[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:22
+msgid "State of the [code]Ctrl[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:25
+msgid "State of the [code]Meta[/code] modifier."
+msgstr ""
+
+#: doc/classes/InputEventWithModifiers.xml:28
+msgid "State of the [code]Shift[/code] 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/3.4/tutorials/inputs/inputevent.html#inputmap"
+msgstr ""
+
+#: doc/classes/InputMap.xml:18
+msgid ""
+"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:26
+msgid "Removes an [InputEvent] from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:33
+msgid "Removes all events from an action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:40
+msgid "Returns a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:48
+msgid ""
+"Returns [code]true[/code] if the action has the given [InputEvent] "
+"associated with it."
+msgstr ""
+
+#: doc/classes/InputMap.xml:56
+msgid "Sets a deadzone value for the action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:64
+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:72
+msgid "Removes an action from the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:81
+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.\n"
+"If [code]exact_match[/code] is [code]false[/code], it ignores the input "
+"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
+"direction for [InputEventJoypadMotion] events."
+msgstr ""
+
+#: doc/classes/InputMap.xml:89
+msgid "Returns an array of [InputEvent]s associated with a given action."
+msgstr ""
+
+#: doc/classes/InputMap.xml:95
+msgid "Returns an array of all actions in the [InputMap]."
+msgstr ""
+
+#: doc/classes/InputMap.xml:102
+msgid ""
+"Returns [code]true[/code] if the [InputMap] has a registered action with the "
+"given name."
+msgstr ""
+
+#: doc/classes/InputMap.xml:108
+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 replace_by_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:18
+msgid ""
+"Not thread-safe. Use [method Object.call_deferred] if calling from a thread."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:24
+msgid ""
+"Gets the path to the [PackedScene] resource file that is loaded by default "
+"when calling [method replace_by_instance]. Not thread-safe. Use [method "
+"Object.call_deferred] if calling from a thread."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml:37
+msgid ""
+"Replaces this placeholder by the scene handed as an argument, or the "
+"original scene if no argument is given. As for all resources, the scene is "
+"loaded only if it's not loaded already. By manually loading the scene "
+"beforehand, delays caused by this function can be avoided."
+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:30
+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:37
+msgid ""
+"Cast a float value to an integer value, this method simply removes the "
+"number fractions (i.e. rounds [code]from[/code] towards zero), so for "
+"example [code]int(2.7)[/code] will be equals to 2, [code]int(0.1)[/code] "
+"will be equals to 0 and [code]int(-2.7)[/code] will be equals to -2. This "
+"operation is also called truncation."
+msgstr ""
+
+#: doc/classes/int.xml:44
+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/InterpolatedCamera.xml:4
+msgid "[i]Deprecated.[/i] Camera which moves toward another node."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:7
+msgid ""
+"[i]Deprecated (will be removed in Godot 4.0).[/i] InterpolatedCamera is a "
+"[Camera] which smoothly moves to match a target node's position and "
+"rotation.\n"
+"If it is not [member enabled] or does not have a valid target set, "
+"InterpolatedCamera acts like a normal Camera."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:17
+msgid "Sets the node to move toward and orient with."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:23
+msgid ""
+"If [code]true[/code], and a target is set, the camera will move "
+"automatically."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:26
+msgid ""
+"How quickly the camera moves toward its target. Higher values will result in "
+"tighter camera motion."
+msgstr ""
+
+#: doc/classes/InterpolatedCamera.xml:29
+msgid "The target's [NodePath]."
+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:16
+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:23
+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:29
+msgid "Returns all the user's current IPv4 and IPv6 addresses as an array."
+msgstr ""
+
+#: doc/classes/IP.xml:35
+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:51
+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:58
+msgid ""
+"Return resolved addresses, or an empty array if an error happened or "
+"resolution didn't happen yet (see [method get_resolve_item_status])."
+msgstr ""
+
+#: doc/classes/IP.xml:65
+msgid ""
+"Returns a queued hostname's status as a [enum ResolverStatus] constant, "
+"given its queue [code]id[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:73
+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:81
+msgid ""
+"Resolves a given hostname in a blocking way. Addresses are returned as an "
+"[Array] of IPv4 or IPv6 depending on [code]ip_type[/code]."
+msgstr ""
+
+#: doc/classes/IP.xml:89
+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:95
+msgid "DNS hostname resolver status: No status."
+msgstr ""
+
+#: doc/classes/IP.xml:98
+msgid "DNS hostname resolver status: Waiting."
+msgstr ""
+
+#: doc/classes/IP.xml:101
+msgid "DNS hostname resolver status: Done."
+msgstr ""
+
+#: doc/classes/IP.xml:104
+msgid "DNS hostname resolver status: Error."
+msgstr ""
+
+#: doc/classes/IP.xml:107
+msgid ""
+"Maximum number of concurrent DNS resolver queries allowed, [constant "
+"RESOLVER_INVALID_ID] is returned if exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:110
+msgid ""
+"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
+msgstr ""
+
+#: doc/classes/IP.xml:113
+msgid "Address type: None."
+msgstr ""
+
+#: doc/classes/IP.xml:116
+msgid "Address type: Internet protocol version 4 (IPv4)."
+msgstr ""
+
+#: doc/classes/IP.xml:119
+msgid "Address type: Internet protocol version 6 (IPv6)."
+msgstr ""
+
+#: doc/classes/IP.xml:122
+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 Enter.\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:19
+msgid "Adds an item to the item list with no text, only an icon."
+msgstr ""
+
+#: doc/classes/ItemList.xml:28
+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:35
+msgid "Removes all items from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:41
+msgid ""
+"Ensure current selection is visible, adjusting the scroll position as "
+"necessary."
+msgstr ""
+
+#: doc/classes/ItemList.xml:49
+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:56
+msgid "Returns the number of items currently in the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:63
+msgid ""
+"Returns the custom background color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:70
+msgid ""
+"Returns the custom foreground color of the item specified by [code]idx[/"
+"code] index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:77
+msgid "Returns the icon associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:84
+msgid "Returns a [Color] modulating item's icon at the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:91
+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:98
+msgid "Returns the metadata value of the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:105
+msgid "Returns the text associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:112
+msgid "Returns the tooltip hint associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:118
+msgid "Returns an array with the indexes of the selected items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:124
+msgid ""
+"Returns the [Object] ID associated with the list.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ItemList.xml:131
+msgid "Returns [code]true[/code] if one or more items are selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:138
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is disabled."
+msgstr ""
+
+#: doc/classes/ItemList.xml:145
+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:152
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is selectable."
+msgstr ""
+
+#: doc/classes/ItemList.xml:159
+msgid ""
+"Returns [code]true[/code] if the tooltip is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:166
+msgid ""
+"Returns [code]true[/code] if the item at the specified index is currently "
+"selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:174
+msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:181
+msgid "Removes the item specified by [code]idx[/code] index from the list."
+msgstr ""
+
+#: doc/classes/ItemList.xml:189
+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:198
+msgid ""
+"Sets the background color of the item specified by [code]idx[/code] index to "
+"the specified [Color]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:206
+msgid ""
+"Sets the foreground color of the item specified by [code]idx[/code] index to "
+"the specified [Color]."
+msgstr ""
+
+#: doc/classes/ItemList.xml:214
+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 Enter)."
+msgstr ""
+
+#: doc/classes/ItemList.xml:223
+msgid ""
+"Sets (or replaces) the icon's [Texture] associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:231
+msgid ""
+"Sets a modulating [Color] of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:239
+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:247
+msgid "Sets whether the item icon will be drawn transposed."
+msgstr ""
+
+#: doc/classes/ItemList.xml:255
+msgid ""
+"Sets a value (of any type) to be stored with the item associated with the "
+"specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:263
+msgid ""
+"Allows or disallows selection of the item associated with the specified "
+"index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:271
+msgid "Sets text of the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:279
+msgid "Sets the tooltip hint for the item associated with the specified index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:287
+msgid "Sets whether the tooltip hint is enabled for specified item index."
+msgstr ""
+
+#: doc/classes/ItemList.xml:293
+msgid "Sorts items in the list by their text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:300
+msgid "Ensures the item associated with the specified index is not selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:306
+msgid "Ensures there are no items selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:312
+msgid ""
+"If [code]true[/code], the currently selected item can be selected again."
+msgstr ""
+
+#: doc/classes/ItemList.xml:315
+msgid "If [code]true[/code], right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:318
+msgid ""
+"If [code]true[/code], the control will automatically resize the height to "
+"fit its content."
+msgstr ""
+
+#: doc/classes/ItemList.xml:321
+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:325
+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:330
+msgid ""
+"The icon position, whether above or to the left of the text. See the [enum "
+"IconMode] constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:333
+msgid ""
+"The scale of icon applied after [member fixed_icon_size] and transposing "
+"takes effect."
+msgstr ""
+
+#: doc/classes/ItemList.xml:336
+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:341
+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:346
+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:350
+msgid ""
+"Allows single or multiple item selection. See the [enum SelectMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/ItemList.xml:357
+msgid ""
+"Triggered when specified list item is activated via double-clicking or by "
+"pressing Enter."
+msgstr ""
+
+#: doc/classes/ItemList.xml:364
+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:372
+msgid ""
+"Triggered when specified item has been selected.\n"
+"[member allow_reselect] must be enabled to reselect an item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:380
+msgid ""
+"Triggered when a multiple selection is altered on a list allowing multiple "
+"selection."
+msgstr ""
+
+#: doc/classes/ItemList.xml:385
+msgid ""
+"Triggered when a left mouse click is issued within the rect of the list but "
+"on empty space."
+msgstr ""
+
+#: doc/classes/ItemList.xml:391
+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:398
+msgid "Icon is drawn above the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:401
+msgid "Icon is drawn to the left of the text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:404
+msgid "Only allow selecting a single item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:407
+msgid "Allows selecting multiple items by holding Ctrl or Shift."
+msgstr ""
+
+#: doc/classes/ItemList.xml:412
+msgid ""
+"Default [StyleBox] for the [ItemList], i.e. used when the control is not "
+"being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:415
+msgid "[StyleBox] used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:418
+msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:421
+msgid ""
+"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:424 doc/classes/Tree.xml:407
+msgid "[Font] of the item's text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:427 doc/classes/Tree.xml:410
+msgid "Default text [Color] of the item."
+msgstr ""
+
+#: doc/classes/ItemList.xml:430 doc/classes/Tree.xml:413
+msgid "Text [Color] used when the item is selected."
+msgstr ""
+
+#: doc/classes/ItemList.xml:433
+msgid ""
+"[Color] of the guideline. The guideline is a line drawn between each row of "
+"items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:436
+msgid "The horizontal spacing between items."
+msgstr ""
+
+#: doc/classes/ItemList.xml:439
+msgid "The spacing between item's icon and text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:442
+msgid "The vertical spacing between each line of text."
+msgstr ""
+
+#: doc/classes/ItemList.xml:445
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:448
+msgid ""
+"[StyleBox] for the selected items, used when the [ItemList] is being focused."
+msgstr ""
+
+#: doc/classes/ItemList.xml:451
+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.\n"
+"[b]Note:[/b] This singleton can be disabled at build-time to improve "
+"security. By default, the JavaScript singleton is enabled. Official export "
+"templates also have the JavaScript singleton enabled. See [url=https://docs."
+"godotengine.org/en/3.4/development/compiling/compiling_for_web."
+"html]Compiling for the Web[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/export/"
+"exporting_for_web.html#calling-javascript-from-script"
+msgstr ""
+
+#: doc/classes/JavaScript.xml:19
+msgid ""
+"Creates a reference to a script function that can be used as a callback by "
+"JavaScript. The reference must be kept until the callback happens, or it "
+"won't be called at all. See [JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:26
+msgid ""
+"Creates a new JavaScript object using the [code]new[/code] constructor. The "
+"[code]object[/code] must a valid property of the JavaScript [code]window[/"
+"code]. See [JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:35
+msgid ""
+"Prompts the user to download a file containing the specified [code]buffer[/"
+"code]. The file will have the given [code]name[/code] and [code]mime[/code] "
+"type.\n"
+"[b]Note:[/b] The browser may override the [url=https://en.wikipedia.org/wiki/"
+"Media_type]MIME type[/url] provided based on the file [code]name[/code]'s "
+"extension.\n"
+"[b]Note:[/b] Browsers might block the download if [method download_buffer] "
+"is not being called from a user interaction (e.g. button click).\n"
+"[b]Note:[/b] Browsers might ask the user for permission or block the "
+"download if multiple download requests are made in a quick succession."
+msgstr ""
+
+#: doc/classes/JavaScript.xml:46
+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/JavaScript.xml:54
+msgid ""
+"Returns an interface to a JavaScript object that can be used by scripts. The "
+"[code]interface[/code] must be a valid property of the JavaScript "
+"[code]window[/code]. The callback must accept a single [Array] argument, "
+"which will contain the JavaScript [code]arguments[/code]. See "
+"[JavaScriptObject] for usage."
+msgstr ""
+
+#: doc/classes/JavaScriptObject.xml:4
+msgid "A wrapper class for native JavaScript objects."
+msgstr ""
+
+#: doc/classes/JavaScriptObject.xml:7
+msgid ""
+"JavaScriptObject is used to interact with JavaScript objects retrieved or "
+"created via [method JavaScript.get_interface], [method JavaScript."
+"create_object], or [method JavaScript.create_callback].\n"
+"Example:\n"
+"[codeblock]\n"
+"extends Node\n"
+"\n"
+"var _my_js_callback = JavaScript.create_callback(self, \"myCallback\") # "
+"This reference must be kept\n"
+"var console = JavaScript.get_interface(\"console\")\n"
+"\n"
+"func _init():\n"
+" var buf = JavaScript.create_object(\"ArrayBuffer\", 10) # new "
+"ArrayBuffer(10)\n"
+" print(buf) # prints [JavaScriptObject:OBJECT_ID]\n"
+" var uint8arr = JavaScript.create_object(\"Uint8Array\", buf) # new "
+"Uint8Array(buf)\n"
+" uint8arr[1] = 255\n"
+" prints(uint8arr[1], uint8arr.byteLength) # prints 255 10\n"
+" console.log(uint8arr) # prints in browser console \"Uint8Array(10) [ 0, "
+"255, 0, 0, 0, 0, 0, 0, 0, 0 ]\"\n"
+"\n"
+" # Equivalent of JavaScript: Array.from(uint8arr).forEach(myCallback)\n"
+" JavaScript.get_interface(\"Array\").from(uint8arr)."
+"forEach(_my_js_callback)\n"
+"\n"
+"func myCallback(args):\n"
+" # Will be called with the parameters passed to the \"forEach\" callback\n"
+" # [0, 0, [JavaScriptObject:1173]]\n"
+" # [255, 1, [JavaScriptObject:1173]]\n"
+" # ...\n"
+" # [0, 9, [JavaScriptObject:1180]]\n"
+" print(args)\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Only available in the HTML5 platform."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:4
+msgid ""
+"Singleton that connects the engine with Android plugins to interface with "
+"native Android code."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:7
+msgid ""
+"The JNISingleton is implemented only in the Android export. It's used to "
+"call methods and connect signals from an Android plugin written in Java or "
+"Kotlin. Methods and signals can be called and connected to the JNISingleton "
+"as if it is a Node. See [url=https://en.wikipedia.org/wiki/"
+"Java_Native_Interface]Java Native Interface - Wikipedia[/url] for more "
+"information."
+msgstr ""
+
+#: doc/classes/JNISingleton.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin."
+"html"
+msgstr ""
+
+#: doc/classes/Joint.xml:4
+msgid "Base class for all 3D joints."
+msgstr ""
+
+#: doc/classes/Joint.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/Joint.xml:10 doc/classes/RigidBody.xml:15
+#: doc/classes/VehicleBody.xml:12 doc/classes/VehicleWheel.xml:11
+msgid "https://godotengine.org/asset-library/asset/524"
+msgstr ""
+
+#: doc/classes/Joint.xml:16
+msgid ""
+"If [code]true[/code], the two bodies of the nodes are not able to collide "
+"with each other."
+msgstr ""
+
+#: doc/classes/Joint.xml:19
+msgid "The node attached to the first side (A) of the joint."
+msgstr ""
+
+#: doc/classes/Joint.xml:22
+msgid "The node attached to the second side (B) of the joint."
+msgstr ""
+
+#: doc/classes/Joint.xml:25
+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/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/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:16
+msgid ""
+"Parses a JSON-encoded string and returns a [JSONParseResult] containing the "
+"result."
+msgstr ""
+
+#: doc/classes/JSON.xml:25
+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.\n"
+"Use [code]indent[/code] parameter to pretty print the output.\n"
+"[b]Example output:[/b]\n"
+"[codeblock]\n"
+"## JSON.print(my_dictionary)\n"
+"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
+"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":"
+"\"value_1\"}]}\n"
+"\n"
+"## JSON.print(my_dictionary, \"\\t\")\n"
+"{\n"
+" \"name\": \"my_dictionary\",\n"
+" \"version\": \"1.0.0\",\n"
+" \"entities\": [\n"
+" {\n"
+" \"name\": \"entity_0\",\n"
+" \"value\": \"value_0\"\n"
+" },\n"
+" {\n"
+" \"name\": \"entity_1\",\n"
+" \"value\": \"value_1\"\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+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/JSONRPC.xml:4
+msgid "A helper to handle dictionaries which look like JSONRPC documents."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:7
+msgid ""
+"[url=https://www.jsonrpc.org/]JSON-RPC[/url] is a standard which wraps a "
+"method call in a [JSON] object. The object has a particular structure and "
+"identifies which method is called, the parameters to that function, and "
+"carries an ID to keep track of responses. This class implements that "
+"standard on top of [Dictionary]; you will have to convert between a "
+"[Dictionary] and [JSON] with other functions."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:17
+msgid ""
+"Returns a dictionary in the form of a JSON-RPC notification. Notifications "
+"are one-shot messages which do not expect a response.\n"
+"- [code]method[/code]: Name of the method being called.\n"
+"- [code]params[/code]: An array or dictionary of parameters being passed to "
+"the method."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:28
+msgid ""
+"Returns a dictionary in the form of a JSON-RPC request. Requests are sent to "
+"a server with the expectation of a response. The ID field is used for the "
+"server to specify which exact request it is responding to.\n"
+"- [code]method[/code]: Name of the method being called.\n"
+"- [code]params[/code]: An array or dictionary of parameters being passed to "
+"the method.\n"
+"- [code]id[/code]: Uniquely identifies this request. The server is expected "
+"to send a response with the same ID."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:39
+msgid ""
+"When a server has received and processed a request, it is expected to send a "
+"response. If you did not want a response then you need to have sent a "
+"Notification instead.\n"
+"- [code]result[/code]: The return value of the function which was called.\n"
+"- [code]id[/code]: The ID of the request this response is targeted to."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:50
+msgid ""
+"Creates a response which indicates a previous reply has failed in some way.\n"
+"- [code]code[/code]: The error code corresponding to what kind of error this "
+"is. See the [enum ErrorCode] constants.\n"
+"- [code]message[/code]: A custom message about this error.\n"
+"- [code]id[/code]: The request this error is a response to."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:61
+msgid ""
+"Given a Dictionary which takes the form of a JSON-RPC request: unpack the "
+"request and run it. Methods are resolved by looking at the field called "
+"\"method\" and looking for an equivalently named function in the JSONRPC "
+"object. If one is found that method is called.\n"
+"To add new supported methods extend the JSONRPC class and call [method "
+"process_action] on your subclass.\n"
+"[code]action[/code]: The action to be run, as a Dictionary in the form of a "
+"JSON-RPC request or notification."
+msgstr ""
+
+#: doc/classes/JSONRPC.xml:86
+msgid ""
+"A method call was requested but no function of that name existed in the "
+"JSONRPC subclass."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:4
+msgid "Kinematic body 3D node."
+msgstr ""
+
+#: doc/classes/KinematicBody.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] KinematicBody 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 don't require advanced physics."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:12 doc/classes/KinematicBody2D.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d."
+"html"
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:23
+msgid ""
+"Returns [code]true[/code] if the specified [code]axis[/code] is locked. See "
+"also [member move_lock_x], [member move_lock_y] and [member move_lock_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:30
+msgid ""
+"Returns the floor's collision angle at the last collision point according to "
+"[code]up_direction[/code], which is [code]Vector3.UP[/code] by default. This "
+"value is always positive and only valid after calling [method "
+"move_and_slide] and when [method is_on_floor] returns [code]true[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:36 doc/classes/KinematicBody2D.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/KinematicBody.xml:42 doc/classes/KinematicBody2D.xml:34
+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/KinematicBody.xml:48
+msgid ""
+"Returns a [KinematicCollision], which contains information about the latest "
+"collision that occurred during the last call to [method move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:55
+msgid ""
+"Returns a [KinematicCollision], which contains information about a collision "
+"that occurred during the last call to [method move_and_slide] or [method "
+"move_and_slide_with_snap]. 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/KinematicBody.xml:61 doc/classes/KinematicBody2D.xml:59
+msgid ""
+"Returns the number of times the body collided and changed direction during "
+"the last call to [method move_and_slide] or [method "
+"move_and_slide_with_snap]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:67 doc/classes/KinematicBody2D.xml:65
+msgid ""
+"Returns [code]true[/code] if the body collided with the ceiling on the last "
+"call of [method move_and_slide] or [method move_and_slide_with_snap]. "
+"Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:73 doc/classes/KinematicBody2D.xml:71
+msgid ""
+"Returns [code]true[/code] if the body collided with the floor on the last "
+"call of [method move_and_slide] or [method move_and_slide_with_snap]. "
+"Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:79 doc/classes/KinematicBody2D.xml:77
+msgid ""
+"Returns [code]true[/code] if the body collided with a wall on the last call "
+"of [method move_and_slide] or [method move_and_slide_with_snap]. Otherwise, "
+"returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:89
+msgid ""
+"Moves the body along the vector [code]rel_vec[/code]. The body will stop if "
+"it collides. Returns a [KinematicCollision], 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/KinematicBody.xml:102
+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 [KinematicBody] or [RigidBody], it will also be affected by the motion "
+"of the other body. You can use this to make moving and 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 [RigidBody] nodes, but it won't also detect any collisions with them. "
+"If [code]false[/code], it will interact with [RigidBody] nodes like with "
+"[StaticBody].\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].\n"
+"When the body touches a moving platform, the platform's velocity is "
+"automatically added to the body motion. If a collision occurs due to the "
+"platform's motion, it will always be first in the slide collisions."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:124
+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/KinematicBody.xml:133
+msgid ""
+"Locks or unlocks the specified [code]axis[/code] depending on the value of "
+"[code]lock[/code]. See also [member move_lock_x], [member move_lock_y] and "
+"[member move_lock_z]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:142
+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/KinematicBody.xml:148
+msgid "Lock the body's X axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:151
+msgid "Lock the body's Y axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:154
+msgid "Lock the body's Z axis movement."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:157 doc/classes/KinematicBody2D.xml:138
+msgid ""
+"Extra margin used for collision recovery in motion functions (see [method "
+"move_and_collide], [method move_and_slide], [method "
+"move_and_slide_with_snap]).\n"
+"If the body is at least this close to another body, it will consider them to "
+"be colliding and will be pushed away before performing the actual motion.\n"
+"A higher value means it's more flexible for detecting collision, which helps "
+"with consistently detecting walls and floors.\n"
+"A lower value forces the collision algorithm to use more exact detection, so "
+"it can be used in cases that specifically require precision, e.g at very low "
+"scale to avoid visible jittering, or for stability with a stack of kinematic "
+"bodies."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:163 doc/classes/KinematicBody2D.xml:144
+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/KinematicBody.xml:166
+msgid ""
+"Lock the body's X axis movement. Deprecated alias for [member "
+"axis_lock_motion_x]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:169
+msgid ""
+"Lock the body's Y axis movement. Deprecated alias for [member "
+"axis_lock_motion_y]."
+msgstr ""
+
+#: doc/classes/KinematicBody.xml:172
+msgid ""
+"Lock the body's Z axis movement. Deprecated alias for [member "
+"axis_lock_motion_z]."
+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 don't require advanced physics."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"using_kinematic_body_2d.html"
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:22
+msgid ""
+"Returns the floor's collision angle at the last collision point according to "
+"[code]up_direction[/code], which is [code]Vector2.UP[/code] by default. This "
+"value is always positive and only valid after calling [method "
+"move_and_slide] and when [method is_on_floor] returns [code]true[/code]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:40
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about the "
+"latest collision that occurred during the last call to [method "
+"move_and_slide]."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:47
+msgid ""
+"Returns a [KinematicCollision2D], which contains information about a "
+"collision that occurred during the last call to [method move_and_slide] or "
+"[method move_and_slide_with_snap]. 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:87
+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:100
+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 and 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].\n"
+"When the body touches a moving platform, the platform's velocity is "
+"automatically added to the body motion. If a collision occurs due to the "
+"platform's motion, it will always be first in the slide collisions."
+msgstr ""
+
+#: doc/classes/KinematicBody2D.xml:122
+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:132
+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/KinematicCollision.xml:4
+msgid "Collision data for [KinematicBody] collisions."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:7
+msgid ""
+"Contains collision data for [KinematicBody] collisions. When a "
+"[KinematicBody] is moved using [method KinematicBody.move_and_collide], it "
+"stops if it detects a collision with another body. If a collision is "
+"detected, a KinematicCollision 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/KinematicCollision.xml:17
+msgid ""
+"The collision angle according to [code]up_direction[/code], which is "
+"[code]Vector3.UP[/code] by default. This value is always positive."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:23
+#: doc/classes/KinematicCollision2D.xml:23
+msgid "The colliding body."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:26
+#: doc/classes/KinematicCollision2D.xml:26
+msgid ""
+"The colliding body's unique instance ID. See [method Object.get_instance_id]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:29
+#: doc/classes/KinematicCollision2D.xml:29
+msgid "The colliding body's metadata. See [Object]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:32
+msgid "The colliding body's [RID] used by the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:35
+#: doc/classes/KinematicCollision2D.xml:35
+msgid "The colliding body's shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:38
+msgid "The colliding shape's index. See [CollisionObject]."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:41
+#: doc/classes/KinematicCollision2D.xml:41
+msgid "The colliding object's velocity."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:44
+#: doc/classes/KinematicCollision2D.xml:44
+msgid "The moving object's colliding shape."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:47
+#: doc/classes/KinematicCollision2D.xml:47
+msgid "The colliding body's shape's normal at the point of collision."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:50
+#: doc/classes/KinematicCollision2D.xml:50
+msgid "The point of collision, in global coordinates."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:53
+#: doc/classes/KinematicCollision2D.xml:53
+msgid "The moving object's remaining movement vector."
+msgstr ""
+
+#: doc/classes/KinematicCollision.xml:56
+#: doc/classes/KinematicCollision2D.xml:56
+msgid "The distance the moving object traveled before collision."
+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:17
+msgid ""
+"The collision angle according to [code]up_direction[/code], which is "
+"[code]Vector2.UP[/code] by default. This value is always positive."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:32
+msgid "The colliding body's [RID] used by the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/KinematicCollision2D.xml:38
+msgid "The colliding shape's index. See [CollisionObject2D]."
+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.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Label.xml:18
+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:30
+msgid ""
+"Returns the total number of printable characters in the text (excluding "
+"spaces and newlines)."
+msgstr ""
+
+#: doc/classes/Label.xml:36
+msgid ""
+"Returns the number of lines shown. Useful if the [Label]'s height cannot "
+"currently display all lines."
+msgstr ""
+
+#: doc/classes/Label.xml:42
+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:45
+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:48
+msgid ""
+"If [code]true[/code], the Label only shows the text that fits inside its "
+"bounding rectangle and will clip text horizontally."
+msgstr ""
+
+#: doc/classes/Label.xml:51
+msgid ""
+"The node ignores the first [code]lines_skipped[/code] lines before it starts "
+"to display text."
+msgstr ""
+
+#: doc/classes/Label.xml:54
+msgid "Limits the lines of text the node shows on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:58
+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:62
+msgid "The text to display on screen."
+msgstr ""
+
+#: doc/classes/Label.xml:65
+msgid "If [code]true[/code], all the text displays as UPPERCASE."
+msgstr ""
+
+#: doc/classes/Label.xml:68
+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:71
+msgid "Restricts the number of characters to display. Set to -1 to disable."
+msgstr ""
+
+#: doc/classes/Label.xml:76
+msgid "Align rows to the left (default)."
+msgstr ""
+
+#: doc/classes/Label.xml:79
+msgid "Align rows centered."
+msgstr ""
+
+#: doc/classes/Label.xml:82
+msgid "Align rows to the right."
+msgstr ""
+
+#: doc/classes/Label.xml:85
+msgid "Expand row whitespaces to fit the width."
+msgstr ""
+
+#: doc/classes/Label.xml:88
+msgid "Align the whole text to the top."
+msgstr ""
+
+#: doc/classes/Label.xml:91
+msgid "Align the whole text to the center."
+msgstr ""
+
+#: doc/classes/Label.xml:94
+msgid "Align the whole text to the bottom."
+msgstr ""
+
+#: doc/classes/Label.xml:97
+msgid "Align the whole text by spreading the rows."
+msgstr ""
+
+#: doc/classes/Label.xml:102
+msgid "[Font] used for the [Label]'s text."
+msgstr ""
+
+#: doc/classes/Label.xml:105
+msgid "Default text [Color] of the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:108
+msgid "[Color] of the text's shadow effect."
+msgstr ""
+
+#: doc/classes/Label.xml:111
+msgid "The tint of [Font]'s outline. See [member DynamicFont.outline_color]."
+msgstr ""
+
+#: doc/classes/Label.xml:114
+msgid "Vertical space between lines in multiline [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:117
+msgid "Background [StyleBox] for the [Label]."
+msgstr ""
+
+#: doc/classes/Label.xml:120
+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:123
+msgid "The horizontal offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/Label.xml:126
+msgid "The vertical offset of the text's shadow."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:4
+msgid ""
+"[i]Deprecated.[/i] A [Texture] capable of storing many smaller textures with "
+"offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:7
+msgid ""
+"[i]Deprecated (will be removed in Godot 4.0).[/i] A [Texture] capable of "
+"storing many smaller textures with offsets.\n"
+"You can dynamically add pieces ([Texture]s) to this [LargeTexture] using "
+"different offsets."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:18
+msgid ""
+"Adds [code]texture[/code] to this [LargeTexture], starting on offset "
+"[code]ofs[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:24
+msgid "Clears the [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:30
+msgid "Returns the number of pieces currently in this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:37
+msgid "Returns the offset of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:44
+msgid "Returns the [Texture] of the piece with the index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:52
+msgid ""
+"Sets the offset of the piece with the index [code]idx[/code] to [code]ofs[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:60
+msgid ""
+"Sets the [Texture] of the piece with index [code]idx[/code] to "
+"[code]texture[/code]."
+msgstr ""
+
+#: doc/classes/LargeTexture.xml:67
+msgid "Sets the size of this [LargeTexture]."
+msgstr ""
+
+#: doc/classes/Light.xml:4
+msgid "Provides a base class for different kinds of light nodes."
+msgstr ""
+
+#: doc/classes/Light.xml:7
+msgid ""
+"Light 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. Light contains the common variables and parameters used for "
+"lighting."
+msgstr ""
+
+#: doc/classes/Light.xml:18
+msgid "Returns the value of the specified [enum Light.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light.xml:26
+msgid "Sets the value of the specified [enum Light.Param] parameter."
+msgstr ""
+
+#: doc/classes/Light.xml:32
+msgid ""
+"If [code]true[/code], the light only appears in the editor and will not be "
+"visible at runtime."
+msgstr ""
+
+#: doc/classes/Light.xml:35
+msgid "The light's bake mode. See [enum BakeMode]."
+msgstr ""
+
+#: doc/classes/Light.xml:38
+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/Light.xml:41
+msgid "The light will affect objects in the selected layers."
+msgstr ""
+
+#: doc/classes/Light.xml:44
+msgid ""
+"The light's strength multiplier (this is not a physical unit). For "
+"[OmniLight] and [SpotLight], changing this value will only change the light "
+"color's intensity, not the light's radius."
+msgstr ""
+
+#: doc/classes/Light.xml:47
+msgid ""
+"Secondary multiplier used with indirect light (light bounces). This works on "
+"both [BakedLightmap] and [GIProbe]."
+msgstr ""
+
+#: doc/classes/Light.xml:50
+msgid ""
+"If [code]true[/code], the light's effect is reversed, darkening areas and "
+"casting bright shadows."
+msgstr ""
+
+#: doc/classes/Light.xml:53
+msgid ""
+"The size of the light in Godot units. Only considered in baked lightmaps and "
+"only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing "
+"this value will make the shadows appear blurrier. This can be used to "
+"simulate area lights to an extent."
+msgstr ""
+
+#: doc/classes/Light.xml:56
+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/Light.xml:59
+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/Light.xml:62
+msgid "The color of shadows cast by this light."
+msgstr ""
+
+#: doc/classes/Light.xml:65
+msgid "Attempts to reduce [member shadow_bias] gap."
+msgstr ""
+
+#: doc/classes/Light.xml:68
+msgid "If [code]true[/code], the light will cast shadows."
+msgstr ""
+
+#: doc/classes/Light.xml:71
+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 GeometryInstance.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
+msgstr ""
+
+#: doc/classes/Light.xml:76
+msgid "Constant for accessing [member light_energy]."
+msgstr ""
+
+#: doc/classes/Light.xml:79
+msgid "Constant for accessing [member light_indirect_energy]."
+msgstr ""
+
+#: doc/classes/Light.xml:82
+msgid "Constant for accessing [member light_size]."
+msgstr ""
+
+#: doc/classes/Light.xml:85
+msgid "Constant for accessing [member light_specular]."
+msgstr ""
+
+#: doc/classes/Light.xml:88
+msgid ""
+"Constant for accessing [member OmniLight.omni_range] or [member SpotLight."
+"spot_range]."
+msgstr ""
+
+#: doc/classes/Light.xml:91
+msgid ""
+"Constant for accessing [member OmniLight.omni_attenuation] or [member "
+"SpotLight.spot_attenuation]."
+msgstr ""
+
+#: doc/classes/Light.xml:94
+msgid "Constant for accessing [member SpotLight.spot_angle]."
+msgstr ""
+
+#: doc/classes/Light.xml:97
+msgid "Constant for accessing [member SpotLight.spot_angle_attenuation]."
+msgstr ""
+
+#: doc/classes/Light.xml:100
+msgid "Constant for accessing [member shadow_contact]."
+msgstr ""
+
+#: doc/classes/Light.xml:103
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_max_distance]."
+msgstr ""
+
+#: doc/classes/Light.xml:106
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_1]."
+msgstr ""
+
+#: doc/classes/Light.xml:109
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_2]."
+msgstr ""
+
+#: doc/classes/Light.xml:112
+msgid ""
+"Constant for accessing [member DirectionalLight.directional_shadow_split_3]."
+msgstr ""
+
+#: doc/classes/Light.xml:115
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_normal_bias]."
+msgstr ""
+
+#: doc/classes/Light.xml:118
+msgid "Constant for accessing [member shadow_bias]."
+msgstr ""
+
+#: doc/classes/Light.xml:121
+msgid ""
+"Constant for accessing [member DirectionalLight."
+"directional_shadow_bias_split_scale]."
+msgstr ""
+
+#: doc/classes/Light.xml:127
+msgid ""
+"Light is ignored when baking.\n"
+"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking."
+msgstr ""
+
+#: doc/classes/Light.xml:131
+msgid "Only indirect lighting will be baked (default)."
+msgstr ""
+
+#: doc/classes/Light.xml:134
+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/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/3.4/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 "Smooth shadow gradient length."
+msgstr ""
+
+#: doc/classes/Light2D.xml:71
+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:74
+msgid "[Texture] used for the Light2D's appearance."
+msgstr ""
+
+#: doc/classes/Light2D.xml:77
+msgid "The [code]texture[/code]'s scale factor."
+msgstr ""
+
+#: doc/classes/Light2D.xml:82
+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:85
+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:88
+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:91
+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:94
+msgid "No filter applies to the shadow map. See [member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:97
+msgid ""
+"Percentage closer filtering (3 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:100
+msgid ""
+"Percentage closer filtering (5 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:103
+msgid ""
+"Percentage closer filtering (7 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:106
+msgid ""
+"Percentage closer filtering (9 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+msgstr ""
+
+#: doc/classes/Light2D.xml:109
+msgid ""
+"Percentage closer filtering (13 samples) applies to the shadow map. See "
+"[member shadow_filter]."
+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.\n"
+"[b]Note:[/b] By default, Godot can only draw up to 4,096 polygon points at a "
+"time. To increase this limit, open the Project Settings and increase [member "
+"ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb] and "
+"[member ProjectSettings.rendering/limits/buffers/"
+"canvas_polygon_index_buffer_size_kb]."
+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:27
+msgid "Removes all points from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:33
+msgid "Returns the Line2D's amount of points."
+msgstr ""
+
+#: doc/classes/Line2D.xml:40
+msgid "Returns point [code]i[/code]'s position."
+msgstr ""
+
+#: doc/classes/Line2D.xml:47
+msgid "Removes the point at index [code]i[/code] from the line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:55
+msgid ""
+"Overwrites the position in point [code]i[/code] with the supplied "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/Line2D.xml:61
+msgid ""
+"If [code]true[/code], the line's border will be anti-aliased.\n"
+"[b]Note:[/b] Line2D is not accelerated by batching when being anti-aliased."
+msgstr ""
+
+#: doc/classes/Line2D.xml:65
+msgid ""
+"Controls the style of the line's first point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:68
+msgid "The line's color. Will not be used if a gradient is set."
+msgstr ""
+
+#: doc/classes/Line2D.xml:71
+msgid ""
+"Controls the style of the line's last point. Use [enum LineCapMode] "
+"constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:74
+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:77
+msgid "The style for the points between the start and the end."
+msgstr ""
+
+#: doc/classes/Line2D.xml:80
+msgid ""
+"The points that form the lines. The line is drawn between every point set in "
+"this array. Points are interpreted as local vectors."
+msgstr ""
+
+#: doc/classes/Line2D.xml:83
+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:86
+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:89
+msgid ""
+"The texture used for the line's texture. Uses [code]texture_mode[/code] for "
+"drawing style."
+msgstr ""
+
+#: doc/classes/Line2D.xml:92
+msgid ""
+"The style to render the [code]texture[/code] on the line. Use [enum "
+"LineTextureMode] constants."
+msgstr ""
+
+#: doc/classes/Line2D.xml:95
+msgid "The line's width."
+msgstr ""
+
+#: doc/classes/Line2D.xml:98
+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:103
+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:106
+msgid "The line's joints will be bevelled/chamfered."
+msgstr ""
+
+#: doc/classes/Line2D.xml:109
+msgid "The line's joints will be rounded."
+msgstr ""
+
+#: doc/classes/Line2D.xml:112
+msgid "Don't draw a line cap."
+msgstr ""
+
+#: doc/classes/Line2D.xml:115
+msgid "Draws the line cap as a box."
+msgstr ""
+
+#: doc/classes/Line2D.xml:118
+msgid "Draws the line cap as a circle."
+msgstr ""
+
+#: doc/classes/Line2D.xml:121
+msgid ""
+"Takes the left pixels of the texture and renders it over the whole line."
+msgstr ""
+
+#: doc/classes/Line2D.xml:124
+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:127
+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 "
+"([code]Ctrl[/code] here maps to [code]Command[/code] on macOS):\n"
+"- Ctrl + C: Copy\n"
+"- Ctrl + X: Cut\n"
+"- Ctrl + V or Ctrl + Y: Paste/\"yank\"\n"
+"- Ctrl + Z: Undo\n"
+"- Ctrl + Shift + Z: Redo\n"
+"- Ctrl + U: Delete text from the cursor position to the beginning of the "
+"line\n"
+"- Ctrl + K: Delete text from the cursor position to the end of the line\n"
+"- Ctrl + A: Select all text\n"
+"- Up/Down arrow: Move the cursor to the beginning/end of the line\n"
+"On macOS, some extra keyboard shortcuts are available:\n"
+"- Ctrl + F: Like the right arrow key, move the cursor one character right\n"
+"- Ctrl + B: Like the left arrow key, move the cursor one character left\n"
+"- Ctrl + P: Like the up arrow key, move the cursor to the previous line\n"
+"- Ctrl + N: Like the down arrow key, move the cursor to the next line\n"
+"- Ctrl + D: Like the Delete key, delete the character on the right side of "
+"cursor\n"
+"- Ctrl + H: Like the Backspace key, delete the character on the left side of "
+"the cursor\n"
+"- Command + Left arrow: Like the Home key, move the cursor to the beginning "
+"of the line\n"
+"- Command + Right arrow: Like the End key, move the cursor to the end of the "
+"line"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:35
+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:41
+msgid "Erases the [LineEdit]'s [member text]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:47
+msgid ""
+"Deletes one character at the cursor's current position (equivalent to "
+"pressing the [code]Delete[/code] key)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:55
+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:61
+msgid "Clears the current selection."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:67
+msgid ""
+"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
+"displayed when right-clicking on the [LineEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:74
+msgid ""
+"Returns the scroll offset due to [member caret_position], as a number of "
+"characters."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:81
+msgid "Executes a given action as defined in the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:89
+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:101
+msgid "Selects the whole [String]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:107
+msgid "Text alignment as defined in the [enum Align] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:110 doc/classes/TextEdit.xml:391
+msgid "If [code]true[/code], the caret (visual cursor) blinks."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:113 doc/classes/TextEdit.xml:394
+msgid "Duration (in seconds) of a caret's blinking cycle."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:116
+msgid ""
+"The cursor's position inside the [LineEdit]. When set, the text may scroll "
+"to accommodate it."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:119
+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:122
+msgid "If [code]true[/code], the context menu will appear when right-clicked."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:125
+msgid ""
+"If [code]false[/code], existing text cannot be modified and new text cannot "
+"be added."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:128
+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:132
+msgid ""
+"Maximum amount of characters that can be entered inside the [LineEdit]. If "
+"[code]0[/code], there is no limit.\n"
+"When a limit is defined, characters that would exceed [member max_length] "
+"are truncated. This happens both for existing [member text] contents when "
+"setting the max length, or for new text inserted in the [LineEdit], "
+"including pasting. If any input text is truncated, the [signal "
+"text_change_rejected] signal is emitted with the truncated substring as "
+"parameter.\n"
+"[b]Example:[/b]\n"
+"[codeblock]\n"
+"text = \"Hello world\"\n"
+"max_length = 5\n"
+"# `text` becomes \"Hello\".\n"
+"max_length = 10\n"
+"text += \" goodbye\"\n"
+"# `text` becomes \"Hello good\".\n"
+"# `text_change_rejected` is emitted with \"bye\" as parameter.\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/LineEdit.xml:147
+msgid ""
+"Opacity of the [member placeholder_text]. From [code]0[/code] to [code]1[/"
+"code]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:150
+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:153
+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:156
+msgid ""
+"If [code]true[/code], every character is replaced with the secret character "
+"(see [member secret_character])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:159
+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:162
+msgid ""
+"If [code]false[/code], it's impossible to select the text using mouse nor "
+"keyboard."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:165
+msgid "If [code]false[/code], using shortcuts will be disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:168
+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:172 doc/classes/TextEdit.xml:468
+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 appending text that overflows the [member max_length]. The "
+"appended text is truncated to fit [member max_length], and the part that "
+"couldn't fit is passed as the [code]rejected_substring[/code] argument."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:185 doc/classes/TextEdit.xml:506
+msgid "Emitted when the text changes."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:191
+msgid "Emitted when the user presses [constant KEY_ENTER] on the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:197
+msgid "Aligns the text on the left-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:200
+msgid "Centers the text in the middle of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:203
+msgid "Aligns the text on the right-hand side of the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:206
+msgid "Stretches whitespaces to fit the [LineEdit]'s width."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:209 doc/classes/TextEdit.xml:527
+msgid "Cuts (copies and clears) the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:212 doc/classes/TextEdit.xml:530
+msgid "Copies the selected text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:215
+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:219
+msgid "Erases the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:222
+msgid "Selects the whole [LineEdit] text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:225 doc/classes/TextEdit.xml:542
+msgid "Undoes the previous action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:228
+msgid "Reverse the last undo action."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:231 doc/classes/TextEdit.xml:548
+msgid "Represents the size of the [enum MenuItems] enum."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:236
+msgid "Texture for the clear button. See [member clear_button_enabled]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:239
+msgid "Color used as default tint for the clear button."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:242
+msgid "Color used for the clear button when it's pressed."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:245
+msgid "Color of the [LineEdit]'s visual cursor (caret)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:248
+msgid "Background used when [LineEdit] has GUI focus."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:251
+msgid "Font used for the text."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:254
+msgid "Default font color."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:257
+msgid "Font color for selected text (inside the selection rectangle)."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:260
+msgid "Font color when editing is disabled."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:263
+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:266
+msgid "Default background for the [LineEdit]."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:269
+msgid ""
+"Background used when [LineEdit] is in read-only mode ([member editable] is "
+"set to [code]false[/code])."
+msgstr ""
+
+#: doc/classes/LineEdit.xml:272
+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).\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+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 focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
+msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
+msgid "The vertical space between the baseline of text and the underline."
+msgstr ""
+
+#: doc/classes/Listener.xml:4 doc/classes/Listener2D.xml:4
+msgid "Overrides the location sounds are heard from."
+msgstr ""
+
+#: doc/classes/Listener.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 [Camera]."
+msgstr ""
+
+#: doc/classes/Listener.xml:15
+msgid "Disables the listener to use the current camera's listener instead."
+msgstr ""
+
+#: doc/classes/Listener.xml:21
+msgid "Returns the listener's global orthonormalized [Transform]."
+msgstr ""
+
+#: doc/classes/Listener.xml:27
+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 Listener marked as \"current\" in "
+"the scene tree, but only the one that was made current last will be used."
+msgstr ""
+
+#: doc/classes/Listener.xml:34
+msgid "Enables the listener. This will override the current camera's listener."
+msgstr ""
+
+#: doc/classes/Listener2D.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. Only one [Listener2D] "
+"can be current. Using [method make_current] will disable the previous "
+"[Listener2D].\n"
+"If there is no active [Listener2D] in the current [Viewport], center of the "
+"screen will be used as a hearing point for the audio. [Listener2D] needs to "
+"be inside [SceneTree] to function."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:16
+msgid ""
+"Disables the [Listener2D]. If it's not set as current, this method will have "
+"no effect."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:22
+msgid "Returns [code]true[/code] if this [Listener2D] is currently active."
+msgstr ""
+
+#: doc/classes/Listener2D.xml:28
+msgid ""
+"Makes the [Listener2D] active, setting it as the hearing point for the "
+"sounds. If there is already another active [Listener2D], it will be "
+"disabled.\n"
+"This method will have no effect if the [Listener2D] is not added to "
+"[SceneTree]."
+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"
+"[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_scancode_string(event.scancode))\n"
+" # Quit on Escape press.\n"
+" if event.scancode == 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 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/MainLoop.xml:57
+msgid "Called before the program exits."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:65
+msgid ""
+"Called when the user performs an action in the system global menu (e.g. the "
+"Mac OS menu bar)."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:72
+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:79
+msgid "Called once during initialization."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:86
+msgid "Called whenever an [InputEvent] is received by the main loop."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:93
+msgid ""
+"Deprecated callback, does not do anything. Use [method _input_event] to "
+"parse text input. Will be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:100
+msgid ""
+"Called each physics frame with the time since the last physics frame as "
+"argument ([code]delta[/code], 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:107
+msgid ""
+"Should not be called manually, override [method _finalize] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:114
+msgid ""
+"Should not be called manually, override [method _idle] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:120
+msgid ""
+"Should not be called manually, override [method _initialize] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:127
+msgid ""
+"Should not be called manually, override [method _input_event] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:134
+msgid ""
+"Should not be called manually, override [method _input_text] instead. Will "
+"be removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:141
+msgid ""
+"Should not be called manually, override [method _iteration] instead. Will be "
+"removed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:150
+msgid "Emitted when a user responds to a permission request."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:156 doc/classes/Node.xml:791
+msgid ""
+"Notification received from the OS when the mouse enters the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:160 doc/classes/Node.xml:795
+msgid ""
+"Notification received from the OS when the mouse leaves the game window.\n"
+"Implemented on desktop and web platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:164 doc/classes/Node.xml:799
+msgid ""
+"Notification received from the OS when the game window is focused.\n"
+"Implemented on all platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:168 doc/classes/Node.xml:803
+msgid ""
+"Notification received from the OS when the game window is unfocused.\n"
+"Implemented on all platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:172 doc/classes/Node.xml:807
+msgid ""
+"Notification received from the OS when a quit request is sent (e.g. closing "
+"the window with a \"Close\" button or Alt+F4).\n"
+"Implemented on desktop platforms."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:176 doc/classes/Node.xml:811
+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/MainLoop.xml:180 doc/classes/Node.xml:815
+msgid ""
+"Notification received from the OS when an unfocus request is sent (e.g. "
+"another OS window wants to take the focus).\n"
+"No supported platforms currently send this notification."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:184 doc/classes/Node.xml:819
+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:188 doc/classes/Node.xml:823
+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:191 doc/classes/Node.xml:826
+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:195 doc/classes/Node.xml:830
+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:199 doc/classes/Node.xml:834
+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:203 doc/classes/Node.xml:838
+msgid ""
+"Notification received from the OS when the app is resumed.\n"
+"Specific to the Android platform."
+msgstr ""
+
+#: doc/classes/MainLoop.xml:207 doc/classes/Node.xml:842
+msgid ""
+"Notification received from the OS when the app is paused.\n"
+"Specific to the Android platform."
+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"
+"# This code sample assumes the current script is extending MarginContainer.\n"
+"var margin_value = 100\n"
+"add_constant_override(\"margin_top\", margin_value)\n"
+"add_constant_override(\"margin_left\", margin_value)\n"
+"add_constant_override(\"margin_bottom\", margin_value)\n"
+"add_constant_override(\"margin_right\", margin_value)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:26
+msgid ""
+"All direct children of [MarginContainer] will have a bottom margin of "
+"[code]margin_bottom[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:29
+msgid ""
+"All direct children of [MarginContainer] will have a left margin of "
+"[code]margin_left[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:32
+msgid ""
+"All direct children of [MarginContainer] will have a right margin of "
+"[code]margin_right[/code] pixels."
+msgstr ""
+
+#: doc/classes/MarginContainer.xml:35
+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:16
+msgid ""
+"Returns a decoded [PoolByteArray] corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:23
+msgid ""
+"Returns a decoded string corresponding to the Base64-encoded string "
+"[code]base64_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:31
+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:39
+msgid "Returns a Base64-encoded string of a given [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:46
+msgid ""
+"Returns a Base64-encoded string of the UTF-8 string [code]utf8_str[/code]."
+msgstr ""
+
+#: doc/classes/Marshalls.xml:54
+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 [VisualInstance] 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:17
+msgid ""
+"Sets the [Material] to be used for the next pass. This renders the object "
+"again using a different material.\n"
+"[b]Note:[/b] This only applies to [SpatialMaterial]s and [ShaderMaterial]s "
+"with type \"Spatial\"."
+msgstr ""
+
+#: doc/classes/Material.xml:21
+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:27
+msgid "Maximum value for the [member render_priority] parameter."
+msgstr ""
+
+#: doc/classes/Material.xml:30
+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 item new properties.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:86
+msgid ""
+"Returns the [PopupMenu] contained in this button.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:25
+msgid ""
+"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
+"the button."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:34
+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:41
+msgid "Emitted when [PopupMenu] of this MenuButton is about to show."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:49
+msgid "[StyleBox] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:52
+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:55
+msgid "[Font] of the [MenuButton]'s text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:58
+msgid "Default text [Color] of the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:61
+msgid "Text [Color] used when the [MenuButton] is disabled."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:64
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:67
+msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:70
+msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:73
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:76
+msgid "The horizontal space between [MenuButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
+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:21
+msgid ""
+"Calculate a [ConvexPolygonShape] from the mesh.\n"
+"If [code]clean[/code] is [code]true[/code] (default), duplicate and interior "
+"vertices are removed automatically. You can set it to [code]false[/code] to "
+"make the process faster if not needed.\n"
+"If [code]simplify[/code] is [code]true[/code], the geometry can be further "
+"simplified to reduce the amount of vertices. Disabled by default."
+msgstr ""
+
+#: doc/classes/Mesh.xml:30
+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:37
+msgid "Calculate a [ConcavePolygonShape] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:43
+msgid "Generate a [TriangleMesh] from the mesh."
+msgstr ""
+
+#: doc/classes/Mesh.xml:49
+msgid ""
+"Returns the smallest [AABB] enclosing this mesh in local space. Not affected "
+"by [code]custom_aabb[/code]. See also [method VisualInstance."
+"get_transformed_aabb].\n"
+"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:56
+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:69
+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:76
+msgid "Returns the blend shape arrays for the requested surface."
+msgstr ""
+
+#: doc/classes/Mesh.xml:83
+msgid ""
+"Returns a [Material] in a given surface. Surface is rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:91
+msgid ""
+"Sets a [Material] for a given surface. Surface will be rendered using this "
+"material."
+msgstr ""
+
+#: doc/classes/Mesh.xml:97
+msgid ""
+"Sets a hint to be used for lightmap resolution in [BakedLightmap]. Overrides "
+"[member BakedLightmap.default_texels_per_unit]."
+msgstr ""
+
+#: doc/classes/Mesh.xml:102
+msgid "Render array as points (one vertex equals one point)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:105
+msgid "Render array as lines (every two vertices a line is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:108
+msgid "Render array as line strip."
+msgstr ""
+
+#: doc/classes/Mesh.xml:111
+msgid "Render array as line loop (like line strip, but closed)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:114
+msgid "Render array as triangles (every three vertices a triangle is created)."
+msgstr ""
+
+#: doc/classes/Mesh.xml:117
+msgid "Render array as triangle strips."
+msgstr ""
+
+#: doc/classes/Mesh.xml:120
+msgid "Render array as triangle fans."
+msgstr ""
+
+#: doc/classes/Mesh.xml:123 doc/classes/VisualServer.xml:3363
+msgid "Blend shapes are normalized."
+msgstr ""
+
+#: doc/classes/Mesh.xml:126 doc/classes/VisualServer.xml:3366
+msgid "Blend shapes are relative to base weight."
+msgstr ""
+
+#: doc/classes/Mesh.xml:129
+msgid ""
+"Mesh array contains vertices. All meshes require a vertex array so this "
+"should always be present."
+msgstr ""
+
+#: doc/classes/Mesh.xml:132
+msgid "Mesh array contains normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:135
+msgid "Mesh array contains tangents."
+msgstr ""
+
+#: doc/classes/Mesh.xml:138
+msgid "Mesh array contains colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:141
+msgid "Mesh array contains UVs."
+msgstr ""
+
+#: doc/classes/Mesh.xml:144
+msgid "Mesh array contains second UV."
+msgstr ""
+
+#: doc/classes/Mesh.xml:147
+msgid "Mesh array contains bones."
+msgstr ""
+
+#: doc/classes/Mesh.xml:150
+msgid "Mesh array contains bone weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:153
+msgid "Mesh array uses indices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:156
+msgid ""
+"Used internally to calculate other [code]ARRAY_COMPRESS_*[/code] enum "
+"values. Do not use."
+msgstr ""
+
+#: doc/classes/Mesh.xml:159 doc/classes/VisualServer.xml:3300
+msgid "Flag used to mark a compressed (half float) vertex array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:162 doc/classes/VisualServer.xml:3303
+msgid "Flag used to mark a compressed (half float) normal array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:165 doc/classes/VisualServer.xml:3306
+msgid "Flag used to mark a compressed (half float) tangent array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:168 doc/classes/VisualServer.xml:3309
+msgid "Flag used to mark a compressed (half float) color array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:171 doc/classes/VisualServer.xml:3312
+msgid "Flag used to mark a compressed (half float) UV coordinates array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:174 doc/classes/VisualServer.xml:3315
+msgid ""
+"Flag used to mark a compressed (half float) UV coordinates array for the "
+"second UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:177 doc/classes/VisualServer.xml:3318
+msgid "Flag used to mark a compressed bone array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:180 doc/classes/VisualServer.xml:3321
+msgid "Flag used to mark a compressed (half float) weight array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:183 doc/classes/VisualServer.xml:3324
+msgid "Flag used to mark a compressed index array."
+msgstr ""
+
+#: doc/classes/Mesh.xml:186 doc/classes/VisualServer.xml:3327
+msgid "Flag used to mark that the array contains 2D vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:189 doc/classes/VisualServer.xml:3330
+msgid "Flag used to mark that the array uses 16-bit bones instead of 8-bit."
+msgstr ""
+
+#: doc/classes/Mesh.xml:192 doc/classes/VisualServer.xml:3333
+msgid ""
+"Flag used to mark that the array uses an octahedral representation of normal "
+"and tangent vectors rather than cartesian."
+msgstr ""
+
+#: doc/classes/Mesh.xml:195
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_VERTEX], [constant "
+"ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant "
+"ARRAY_COMPRESS_COLOR], [constant ARRAY_COMPRESS_TEX_UV], [constant "
+"ARRAY_COMPRESS_TEX_UV2], [constant ARRAY_COMPRESS_WEIGHTS], and [constant "
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+msgstr ""
+
+#: doc/classes/Mesh.xml:198
+msgid "Array of vertices."
+msgstr ""
+
+#: doc/classes/Mesh.xml:201
+msgid "Array of normals."
+msgstr ""
+
+#: doc/classes/Mesh.xml:204
+msgid "Array of tangents as an array of floats, 4 floats per tangent."
+msgstr ""
+
+#: doc/classes/Mesh.xml:207
+msgid "Array of colors."
+msgstr ""
+
+#: doc/classes/Mesh.xml:210
+msgid "Array of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:213
+msgid "Array of second set of UV coordinates."
+msgstr ""
+
+#: doc/classes/Mesh.xml:216
+msgid "Array of bone data."
+msgstr ""
+
+#: doc/classes/Mesh.xml:219
+msgid "Array of weights."
+msgstr ""
+
+#: doc/classes/Mesh.xml:222
+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 mesh = ArrayMesh.new()\n"
+"mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, CubeMesh.new()."
+"get_mesh_arrays())\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"
+" # In this example we extend the mesh by one unit, which results in "
+"separated faces as it is flat shaded.\n"
+" vertex += mdt.get_vertex_normal(i)\n"
+" # Save your change.\n"
+" mdt.set_vertex(i, vertex)\n"
+"mesh.surface_remove(0)\n"
+"mdt.commit_to_surface(mesh)\n"
+"var mi = MeshInstance.new()\n"
+"mi.mesh = mesh\n"
+"add_child(mi)\n"
+"[/codeblock]\n"
+"See also [ArrayMesh], [ImmediateGeometry] 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:36
+msgid "Clears all data currently in MeshDataTool."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:43
+msgid "Adds a new surface to specified [Mesh] with edited data."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:51
+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:65
+msgid "Returns array of faces that touch given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:72
+msgid "Returns meta information assigned to given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:80
+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:87
+msgid "Returns the number of faces in this [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:95
+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:103
+msgid "Returns the metadata associated with the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:110
+msgid "Calculates and returns the face normal of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:118
+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:125
+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:132
+msgid "Returns the material assigned to the [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:139
+msgid "Returns the vertex at given index."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:146
+msgid "Returns the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:153
+msgid "Returns the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:159
+msgid "Returns the total number of vertices in [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:166
+msgid "Returns an array of edges that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:173
+msgid "Returns an array of faces that share the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:180
+msgid "Returns the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:187
+msgid "Returns the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:194
+msgid "Returns the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:201
+msgid "Returns the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:208
+msgid "Returns the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:215
+msgid "Returns bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:223
+msgid "Sets the metadata of the given edge."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:231
+msgid "Sets the metadata of the given face."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:238
+msgid "Sets the material to be used by newly-constructed [Mesh]."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:246
+msgid "Sets the position of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:254
+msgid "Sets the bones of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:262
+msgid "Sets the color of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:270
+msgid "Sets the metadata associated with the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:278
+msgid "Sets the normal of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:286
+msgid "Sets the tangent of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:294
+msgid "Sets the UV of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:302
+msgid "Sets the UV2 of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshDataTool.xml:310
+msgid "Sets the bone weights of the given vertex."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:4
+msgid "Node that instances meshes into a scenario."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:7
+msgid ""
+"MeshInstance 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 to get 3D geometry rendered and can be used to instance a single [Mesh] "
+"in many places. This allows to reuse geometry and save on resources. When a "
+"[Mesh] has to be instanced more than thousands of times at close proximity, "
+"consider using a [MultiMesh] in a [MultiMeshInstance] instead."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:21
+msgid ""
+"This helper creates a [StaticBody] child node with a [ConvexPolygonShape] "
+"collision shape calculated from the mesh geometry. It's mainly used for "
+"testing.\n"
+"If [code]clean[/code] is [code]true[/code] (default), duplicate and interior "
+"vertices are removed automatically. You can set it to [code]false[/code] to "
+"make the process faster if not needed.\n"
+"If [code]simplify[/code] is [code]true[/code], the geometry can be further "
+"simplified to reduce the amount of vertices. Disabled by default."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:29
+msgid ""
+"This helper creates a [MeshInstance] child node with gizmos at every vertex "
+"calculated from the mesh geometry. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:35
+msgid ""
+"This helper creates a [StaticBody] child node with multiple "
+"[ConvexPolygonShape] collision shapes calculated from the mesh geometry via "
+"convex decomposition. It's mainly used for testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:41
+msgid ""
+"This helper creates a [StaticBody] child node with a [ConcavePolygonShape] "
+"collision shape calculated from the mesh geometry. It's mainly used for "
+"testing."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:48
+msgid ""
+"Returns the [Material] that will be used by the [Mesh] when drawing. This "
+"can return the [member GeometryInstance.material_override], the surface "
+"override [Material] defined in this [MeshInstance], or the surface "
+"[Material] defined in the [Mesh]. For example, if [member GeometryInstance."
+"material_override] is used, all surfaces will return the override material."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:55
+msgid "Returns the [Material] for a surface of the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:61
+msgid "Returns the number of surface materials."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:69
+msgid "Sets the [Material] for a surface of the [Mesh] resource."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:75
+msgid "The [Mesh] resource for the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:78
+msgid "[NodePath] to the [Skeleton] associated with the instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:81
+msgid "Sets the skin to be used by this instance."
+msgstr ""
+
+#: doc/classes/MeshInstance.xml:84
+msgid ""
+"If [code]true[/code], normals are transformed when software skinning is "
+"used. Set to [code]false[/code] when normals are not needed for better "
+"performance.\n"
+"See [member ProjectSettings.rendering/quality/skinning/"
+"software_skinning_fallback] for details about how software skinning is "
+"enabled."
+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 "
+"[Sprite] via a tool in the editor toolbar. Select \"Sprite\" then \"Convert "
+"to Mesh2D\", select settings in popup and press \"Create Mesh2D\"."
+msgstr ""
+
+#: doc/classes/MeshInstance2D.xml:10
+msgid "https://docs.godotengine.org/en/3.4/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 [Texture] 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/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:17
+msgid "Clears the library."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:24
+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:32
+msgid "Returns the first item with the given name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:38
+msgid "Returns the list of item IDs in use."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:45
+msgid "Returns the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:52
+msgid "Returns the transform applied to the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:59
+msgid "Returns the item's name."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:66
+msgid "Returns the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:73
+msgid "Returns the transform applied to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:80
+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 [Texture] if no preview was manually set "
+"in a running project."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:87
+msgid ""
+"Returns an item's collision shapes.\n"
+"The array consists of each [Shape] followed by its [Transform]."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:94
+msgid "Gets an unused ID for a new item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:101
+msgid "Removes the item."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:109
+msgid "Sets the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:117
+msgid "Sets the transform to apply to the item's mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:125
+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:134
+msgid "Sets the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:142
+msgid "Sets the transform to apply to the item's navigation mesh."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:150
+msgid "Sets a texture to use as the item's preview icon in the editor."
+msgstr ""
+
+#: doc/classes/MeshLibrary.xml:158
+msgid ""
+"Sets an item's collision shapes.\n"
+"The array should consist of [Shape] 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:19
+msgid "Sets the size of the image, needed for reference."
+msgstr ""
+
+#: doc/classes/MeshTexture.xml:22
+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 = ARVRServer.find_interface(\"Native mobile\")\n"
+"if interface and interface.initialize():\n"
+" get_viewport().arvr = 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. "
+"[ARVROrigin] 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 "
+"[MeshInstance] 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 from each other, "
+"performance may be reduced as every single instance will always render (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/MultiMeshInstance.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
+"animating_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh."
+"html"
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:20
+msgid ""
+"Returns the visibility axis-aligned bounding box in local space. See also "
+"[method VisualInstance.get_transformed_aabb]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:27
+msgid "Gets a specific instance's color."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:34
+msgid "Returns the custom data that has been set for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:41
+msgid "Returns the [Transform] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:48
+msgid "Returns the [Transform2D] of a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:55
+msgid ""
+"Sets all data related to the instances in one go. This is especially useful "
+"when loading the data from disk or preparing the data from GDNative.\n"
+"All data is packed in one large float array. An array may look like this: "
+"Transform for instance 1, color data for instance 1, custom data for "
+"instance 1, transform for instance 2, color data for instance 2, etc...\n"
+"[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, "
+"[code]COLOR_8BIT[/code] / [code]CUSTOM_DATA_8BIT[/code] is stored as 1 float "
+"(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/"
+"code] is stored as 4 floats."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:65
+msgid ""
+"Sets the color of a specific instance by [i]multiplying[/i] the mesh's "
+"existing vertex colors.\n"
+"For the color to take effect, ensure that [member color_format] is non-"
+"[code]null[/code] on the [MultiMesh] and [member SpatialMaterial."
+"vertex_color_use_as_albedo] is [code]true[/code] on the material."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:74
+msgid ""
+"Sets custom data for a specific instance. Although [Color] is used, it is "
+"just a container for 4 floating point numbers. The format of the number can "
+"change depending on the [enum CustomDataFormat] used."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:82
+msgid "Sets the [Transform] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:90
+msgid "Sets the [Transform2D] for a specific instance."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:96
+msgid "Format of colors in color array that gets passed to shader."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:99
+msgid "Format of custom data in custom data array that gets passed to shader."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:102
+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:105
+msgid "Mesh to be drawn."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:108
+msgid "Format of transform used to transform mesh, either 2D or 3D."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:111
+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:116
+msgid "Use this when using 2D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:119
+msgid "Use this when using 3D transforms."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:122
+msgid "Use when you are not using per-instance [Color]s."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:125
+msgid ""
+"Compress [Color] data into 8 bits when passing to shader. This uses less "
+"memory and can be faster, but the [Color] loses precision."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:128
+msgid ""
+"The [Color] passed into [method set_instance_color] will use 4 floats. Use "
+"this for highest precision [Color]."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:131
+msgid "Use when you are not using per-instance custom data."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:134
+msgid ""
+"Compress custom_data into 8 bits when passing to shader. This uses less "
+"memory and can be faster, but loses precision and range. Floats packed into "
+"8 bits can only represent values between 0 and 1, numbers outside that range "
+"will be clamped."
+msgstr ""
+
+#: doc/classes/MultiMesh.xml:137
+msgid ""
+"The [Color] passed into [method set_instance_custom_data] will use 4 floats. "
+"Use this for highest precision."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:4
+msgid "Node that instances a [MultiMesh]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:7
+msgid ""
+"[MultiMeshInstance] is a specialized node to instance [GeometryInstance]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/MultiMeshInstance.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance."
+"html"
+msgstr ""
+
+#: doc/classes/MultiMeshInstance.xml:19
+msgid ""
+"The [MultiMesh] resource that will be used and shared among all instances of "
+"the [MultiMeshInstance]."
+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 [MultiMeshInstance]."
+msgstr ""
+
+#: doc/classes/MultiMeshInstance2D.xml:16
+msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
+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. See also [NetworkedMultiplayerPeer].\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.\n"
+"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
+"detail and isn't meant to be used by non-Godot servers. It may change "
+"without notice."
+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:24
+msgid ""
+"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:30
+msgid ""
+"Returns the unique peer ID of this MultiplayerAPI's [member network_peer]."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:36
+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:43 doc/classes/SceneTree.xml:123
+msgid "Returns [code]true[/code] if there is a [member network_peer] set."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:49
+msgid ""
+"Returns [code]true[/code] if this MultiplayerAPI's [member network_peer] is "
+"in server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:55
+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:65
+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:71
+msgid ""
+"If [code]true[/code] (or if the [member network_peer] has [member PacketPeer."
+"allow_object_decoding] set to [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:75
+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:78
+msgid ""
+"If [code]true[/code], the MultiplayerAPI's [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:81
+msgid ""
+"The 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:88
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:93
+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:99
+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:105
+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:112
+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:117
+msgid ""
+"Emitted when this MultiplayerAPI's [member network_peer] disconnects from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:123
+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:126
+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:129
+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:132
+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:135
+msgid ""
+"[i]Deprecated.[/i] Use [constant RPC_MODE_PUPPET] instead. Analogous to the "
+"[code]slave[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:138
+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:141
+msgid ""
+"[i]Deprecated.[/i] Use [constant RPC_MODE_REMOTESYNC] instead. Analogous to "
+"the [code]sync[/code] keyword."
+msgstr ""
+
+#: doc/classes/MultiplayerAPI.xml:144
+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:147
+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:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads."
+"html"
+msgstr ""
+
+#: doc/classes/Mutex.xml:16
+msgid ""
+"Locks this [Mutex], blocks until it is unlocked by the current owner.\n"
+"[b]Note:[/b] This function returns without blocking if the thread already "
+"has ownership of the mutex."
+msgstr ""
+
+#: doc/classes/Mutex.xml:23
+msgid ""
+"Tries locking this [Mutex], but does not block. Returns [constant OK] on "
+"success, [constant ERR_BUSY] otherwise.\n"
+"[b]Note:[/b] This function returns [constant OK] if the thread already has "
+"ownership of the mutex."
+msgstr ""
+
+#: doc/classes/Mutex.xml:30
+msgid ""
+"Unlocks this [Mutex], leaving it to other threads.\n"
+"[b]Note:[/b] If a thread called [method lock] or [method try_lock] multiple "
+"times while already having ownership of the mutex, it must also call [method "
+"unlock] the same number of times in order to unlock it correctly."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:13
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_class_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:20
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_method_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:27
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_property_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:34
+msgid ""
+"Returns the documentation string that was previously set with "
+"[code]godot_nativescript_set_signal_documentation[/code]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/NativeScript.xml:40
+msgid ""
+"Constructs a new object of the base type with a script of this type already "
+"attached.\n"
+"[b]Note:[/b] 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/Navigation.xml:4
+msgid "Mesh-based navigation and pathfinding node."
+msgstr ""
+
+#: doc/classes/Navigation.xml:7
+msgid ""
+"Provides navigation and pathfinding within a collection of "
+"[NavigationMesh]es. By default, these will be automatically collected from "
+"child [NavigationMeshInstance] nodes, but they can also be added on the fly "
+"with [method navmesh_add]. In addition to basic pathfinding, this class also "
+"assists with aligning navigation agents with the meshes they are navigating "
+"on.\n"
+"[b]Note:[/b] The current navigation system has many known issues and will "
+"not always return optimal paths as expected. These issues will be fixed in "
+"Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation.xml:11 doc/classes/NavigationMesh.xml:10
+msgid "https://godotengine.org/asset-library/asset/124"
+msgstr ""
+
+#: doc/classes/Navigation.xml:18 doc/classes/Navigation2D.xml:18
+msgid ""
+"Returns the navigation point closest to the point given. Points are in local "
+"coordinate space."
+msgstr ""
+
+#: doc/classes/Navigation.xml:25
+msgid ""
+"Returns the surface normal at the navigation point closest to the point "
+"given. Useful for rotating a navigation agent according to the navigation "
+"mesh it moves on."
+msgstr ""
+
+#: doc/classes/Navigation.xml:32
+msgid ""
+"Returns the owner of the [NavigationMesh] which contains the navigation "
+"point closest to the point given. This is usually a "
+"[NavigationMeshInstance]. For meshes added via [method navmesh_add], returns "
+"the owner that was given (or [code]null[/code] if the [code]owner[/code] "
+"parameter was omitted)."
+msgstr ""
+
+#: doc/classes/Navigation.xml:41
+msgid ""
+"Returns the navigation point closest to the given line segment. When "
+"enabling [code]use_collision[/code], only considers intersection points "
+"between segment and navigation meshes. If multiple intersection points are "
+"found, the one closest to the segment start point is returned."
+msgstr ""
+
+#: doc/classes/Navigation.xml:50
+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.\n"
+"[b]Note:[/b] This method has known issues and will often return non-optimal "
+"paths. These issues will be fixed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation.xml:60
+msgid ""
+"Adds a [NavigationMesh]. Returns an ID for use with [method navmesh_remove] "
+"or [method navmesh_set_transform]. If given, a [Transform2D] is applied to "
+"the polygon. The optional [code]owner[/code] is used as return value for "
+"[method get_closest_point_owner]."
+msgstr ""
+
+#: doc/classes/Navigation.xml:67
+msgid "Removes the [NavigationMesh] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation.xml:75
+msgid "Sets the transform applied to the [NavigationMesh] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation.xml:81
+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/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. By default, these are "
+"automatically collected from child [NavigationPolygonInstance] nodes, but "
+"they can also be added on the fly with [method navpoly_add].\n"
+"[b]Note:[/b] The current navigation system has many known issues and will "
+"not always return optimal paths as expected. These issues will be fixed in "
+"Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:11 doc/classes/NavigationPolygon.xml:27
+msgid "https://godotengine.org/asset-library/asset/117"
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:25
+msgid ""
+"Returns the owner of the [NavigationPolygon] which contains the navigation "
+"point closest to the point given. This is usually a "
+"[NavigationPolygonInstance]. For polygons added via [method navpoly_add], "
+"returns the owner that was given (or [code]null[/code] if the [code]owner[/"
+"code] parameter was omitted)."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:34
+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.\n"
+"[b]Note:[/b] This method has known issues and will often return non-optimal "
+"paths. These issues will be fixed in Godot 4.0."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:44
+msgid ""
+"Adds a [NavigationPolygon]. Returns an ID for use with [method "
+"navpoly_remove] or [method navpoly_set_transform]. If given, a [Transform2D] "
+"is applied to the polygon. The optional [code]owner[/code] is used as return "
+"value for [method get_closest_point_owner]."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:51
+msgid "Removes the [NavigationPolygon] with the given ID."
+msgstr ""
+
+#: doc/classes/Navigation2D.xml:59
+msgid ""
+"Sets the transform applied to the [NavigationPolygon] with the given ID."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:4
+msgid "A mesh to approximate the walkable areas and obstacles."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:7
+msgid ""
+"A navigation mesh is a collection of polygons that define which areas of an "
+"environment are traversable to aid agents in pathfinding through complicated "
+"spaces."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:17 doc/classes/NavigationPolygon.xml:49
+msgid ""
+"Adds a polygon using the indices of the vertices you get when calling "
+"[method get_vertices]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:23
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of vertices."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:30
+msgid ""
+"Initializes the navigation mesh by setting the vertices and indices "
+"according to a [Mesh]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:37
+msgid ""
+"Returns whether the specified [code]bit[/code] of the [member geometry/"
+"collision_mask] is set."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:44 doc/classes/NavigationPolygon.xml:81
+msgid ""
+"Returns a [PoolIntArray] containing the indices of the vertices of a created "
+"polygon."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:50
+msgid "Returns the number of polygons in the navigation mesh."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:56
+msgid ""
+"Returns a [PoolVector3Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:64
+msgid ""
+"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
+"code] in the [member geometry/collision_mask].\n"
+"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
+"code] in the [member geometry/collision_mask]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:72 doc/classes/NavigationPolygon.xml:121
+msgid ""
+"Sets the vertices that can be then indexed to create polygons with the "
+"[method add_polygon] method."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:78
+msgid ""
+"The minimum floor to ceiling height that will still allow the floor area to "
+"be considered walkable.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:82
+msgid ""
+"The minimum ledge height that is considered to still be traversable.\n"
+"[b]Note:[/b] While baking, this value will be rounded down to the nearest "
+"multiple of [member cell/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:86
+msgid "The maximum slope that is considered walkable, in degrees."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:89
+msgid ""
+"The distance to erode/shrink the walkable area of the heightfield away from "
+"obstructions.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/size]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:93
+msgid "The Y axis cell size to use for fields."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:96
+msgid "The XZ plane cell size to use for fields."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:99
+msgid ""
+"The sampling distance to use when generating the detail mesh, in cell unit."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:102
+msgid ""
+"The maximum distance the detail mesh surface should deviate from "
+"heightfield, in cell unit."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:105
+msgid ""
+"The maximum distance a simplfied contour's border edges should deviate the "
+"original raw contour."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:108
+msgid ""
+"The maximum allowed length for contour edges along the border of the mesh.\n"
+"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
+"multiple of [member cell/size]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:112
+msgid ""
+"If [code]true[/code], marks walkable spans as not walkable if the clearance "
+"above the span is less than [member agent/height]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:115
+msgid "If [code]true[/code], marks spans that are ledges as non-walkable."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:118
+msgid ""
+"If [code]true[/code], marks non-walkable spans as walkable if their maximum "
+"is within [member agent/max_climb] of a walkable neighbor."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:121
+msgid ""
+"The physics layers to scan for static colliders.\n"
+"Only used when [member geometry/parsed_geometry_type] is [constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:125
+msgid ""
+"Determines which type of nodes will be parsed as geometry. See [enum "
+"ParsedGeometryType] for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:128
+msgid ""
+"The source of the geometry used when baking. See [enum SourceGeometryMode] "
+"for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:131
+msgid ""
+"The name of the group to scan for geometry.\n"
+"Only used when [member geometry/source_geometry_mode] is [constant "
+"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
+"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:135
+msgid ""
+"The maximum number of vertices allowed for polygons generated during the "
+"contour to polygon conversion process."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:138
+msgid ""
+"Any regions with a size smaller than this will be merged with larger regions "
+"if possible.\n"
+"[b]Note:[/b] This value will be squared to calculate the number of cells. "
+"For example, a value of 20 will set the number of cells to 400."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:142
+msgid ""
+"The minimum size of a region for it to be created.\n"
+"[b]Note:[/b] This value will be squared to calculate the minimum number of "
+"cells allowed to form isolated island areas. For example, a value of 8 will "
+"set the number of cells to 64."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:146
+msgid ""
+"Partitioning algorithm for creating the navigation mesh polys. See [enum "
+"SamplePartitionType] for possible values."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:151
+msgid ""
+"Watershed partitioning. Generally the best choice if you precompute the "
+"navigation mesh, use this if you have large open areas."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:154
+msgid ""
+"Monotone partitioning. Use this if you want fast navigation mesh generation."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:157
+msgid ""
+"Layer partitioning. Good choice to use for tiled navigation mesh with medium "
+"and small sized tiles."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:160
+msgid "Represents the size of the [enum SamplePartitionType] enum."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:163
+msgid ""
+"Parses mesh instances as geometry. This includes [MeshInstance], [CSGShape], "
+"and [GridMap] nodes."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:166
+msgid ""
+"Parses [StaticBody] colliders as geometry. The collider should be in any of "
+"the layers specified by [member geometry/collision_mask]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:169
+msgid ""
+"Both [constant PARSED_GEOMETRY_MESH_INSTANCES] and [constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:172
+msgid "Represents the size of the [enum ParsedGeometryType] enum."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:175
+msgid ""
+"Scans the child nodes of [NavigationMeshInstance] recursively for geometry."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:178
+msgid ""
+"Scans nodes in a group and their child nodes recursively for geometry. The "
+"group is specified by [member geometry/source_group_name]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:181
+msgid ""
+"Uses nodes in a group for geometry. The group is specified by [member "
+"geometry/source_group_name]."
+msgstr ""
+
+#: doc/classes/NavigationMesh.xml:184
+msgid "Represents the size of the [enum SourceGeometryMode] enum."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:4
+msgid "Node that instances navigation meshes into a scenario."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:7
+msgid ""
+"NavigationMeshInstance is a node that takes a [NavigationMesh] resource and "
+"adds it to the current scenario by creating an instance of it."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:15
+msgid "If [code]true[/code], the navigation mesh will be used by [Navigation]."
+msgstr ""
+
+#: doc/classes/NavigationMeshInstance.xml:18
+msgid "The [NavigationMesh] resource for the instance."
+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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.add_outline(outline)\n"
+"polygon.make_polygons_from_outlines()\n"
+"$NavigationPolygonInstance.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 = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, "
+"50), Vector2(50, 0)])\n"
+"polygon.set_vertices(vertices)\n"
+"var indices = PoolIntArray(0, 3, 1)\n"
+"polygon.add_polygon(indices)\n"
+"$NavigationPolygonInstance.navpoly = polygon\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:34
+msgid ""
+"Appends a [PoolVector2Array] 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:42
+msgid ""
+"Adds a [PoolVector2Array] 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 ""
+"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:61
+msgid ""
+"Clears the array of polygons, but it doesn't clear the array of outlines and "
+"vertices."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:68
+msgid ""
+"Returns a [PoolVector2Array] containing the vertices of an outline that was "
+"created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:74
+msgid ""
+"Returns the number of outlines that were created in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:87
+msgid "Returns the count of all polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:93
+msgid ""
+"Returns a [PoolVector2Array] containing all the vertices being used to "
+"create the polygons."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:99
+msgid "Creates polygons from the outlines added in the editor or by script."
+msgstr ""
+
+#: doc/classes/NavigationPolygon.xml:106
+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:114
+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 ""
+
+#: 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.\n"
+"ENet's purpose is to provide a relatively thin, simple and robust network "
+"communication layer on top of UDP (User Datagram Protocol).\n"
+"[b]Note:[/b] ENet only uses UDP, not TCP. When forwarding the server port to "
+"make your server accessible on the public Internet, you only need to forward "
+"the server port in UDP. You can use the [UPNP] class to try to forward the "
+"server port automatically when starting the server."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:12
+#: doc/classes/NetworkedMultiplayerPeer.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/networking/"
+"high_level_multiplayer.html"
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:13
+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:31
+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:41
+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:49
+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:55
+msgid ""
+"Returns the channel of the last packet fetched via [method PacketPeer."
+"get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:61
+msgid ""
+"Returns the channel of the next packet that will be retrieved via [method "
+"PacketPeer.get_packet]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:68
+#: modules/websocket/doc_classes/WebSocketServer.xml:27
+msgid "Returns the IP address of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:75
+#: modules/websocket/doc_classes/WebSocketServer.xml:34
+msgid "Returns the remote port of the given peer."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:82
+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:89
+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:96
+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:106
+msgid ""
+"Sets the timeout parameters for a peer.The timeout parameters control how "
+"and when a peer will timeout from a failure to acknowledge reliable traffic. "
+"Timeout values are expressed in milliseconds.\n"
+"The [code]timeout_limit[/code] is a factor that, multiplied by a value based "
+"on the average round trip time, will determine the timeout limit for a "
+"reliable packet. When that limit is reached, the timeout will be doubled, "
+"and the peer will be disconnected if that limit has reached "
+"[code]timeout_min[/code]. The [code]timeout_max[/code] parameter, on the "
+"other hand, defines a fixed timeout for which any packet must be "
+"acknowledged or the peer will be dropped."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
+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:116
+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:119
+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.\n"
+"[b]Note:[/b] Most games' network design involve sending many small packets "
+"frequently (smaller than 4 KB each). If in doubt, it is recommended to keep "
+"the default compression algorithm as it works best on these small packets.\n"
+"[b]Note:[/b] [member compression_mode] must be set to the same value on both "
+"the server and all its clients. Clients will fail to connect if the [member "
+"compression_mode] set on the client differs from the one set on the server. "
+"Prior to Godot 3.4, the default [member compression_mode] was [constant "
+"COMPRESS_NONE]. Nonetheless, mixing engine versions between clients and "
+"server is not recommended and not officially supported."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:124
+msgid ""
+"The hostname used for DTLS verification, to be compared against the \"CN\" "
+"value in the certificate provided by the server.\n"
+"When set to an empty string, the [code]address[/code] parameter passed to "
+"[method create_client] is used instead."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
+msgid ""
+"Enable or disable certificate verification when [member use_dtls] "
+"[code]true[/code]."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:132
+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:135
+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:139
+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"
+"[b]Note:[/b] 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:145
+msgid ""
+"No compression. This uses the most bandwidth, but has the upside of "
+"requiring the fewest CPU resources. This option may also be used to make "
+"network debugging using tools like Wireshark easier."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148
+msgid ""
+"ENet's built-in range encoding. Works well on small packets, but is not the "
+"most efficient algorithm on packets larger than 4 KB."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:151
+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:154
+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. Note that this algorithm is not very efficient on "
+"packets smaller than 4 KB. Therefore, it's recommended to use other "
+"compression algorithms in most cases."
+msgstr ""
+
+#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157
+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. See also [MultiplayerAPI].\n"
+"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
+"detail and isn't meant to be used by non-Godot servers. It may change "
+"without notice."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:12
+msgid "https://godotengine.org/asset-library/asset/537"
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:18
+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:30
+msgid "Returns the ID of this [NetworkedMultiplayerPeer]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:36
+msgid "Waits up to 1 second to receive a new network event."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:43
+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:50
+msgid ""
+"If [code]true[/code], this [NetworkedMultiplayerPeer] refuses new "
+"connections."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:53
+msgid ""
+"The manner in which to send packets to the [code]target_peer[/code]. See "
+"[enum TransferMode]."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:59
+msgid "Emitted when a connection attempt fails."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:64
+msgid "Emitted when a connection attempt succeeds."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:70
+msgid "Emitted by the server when a client connects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:76
+msgid "Emitted by the server when a client disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:81
+msgid "Emitted by clients when the server disconnects."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:87
+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:90
+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:93
+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:96
+msgid "The ongoing connection disconnected."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:99
+msgid "A connection attempt is ongoing."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:102
+msgid "The connection attempt succeeded."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:105
+msgid "Packets are sent to the server and then redistributed to other peers."
+msgstr ""
+
+#: doc/classes/NetworkedMultiplayerPeer.xml:108
+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:16
+msgid ""
+"Returns the size of the margin identified by the given [enum Margin] "
+"constant."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:24
+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:30
+msgid ""
+"The stretch mode to use for horizontal stretching/tiling. See [enum "
+"NinePatchRect.AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:33
+msgid ""
+"The stretch mode to use for vertical stretching/tiling. See [enum "
+"NinePatchRect.AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:36
+msgid ""
+"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
+"borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:40
+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:43
+msgid ""
+"The width of the 9-slice's left column. A margin of 16 means the 9-slice's "
+"left corners and side will have a width of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:46
+msgid ""
+"The width of the 9-slice's right column. A margin of 16 means the 9-slice's "
+"right corners and side will have a width of 16 pixels. You can set all 4 "
+"margin values individually to create panels with non-uniform borders."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:49
+msgid ""
+"The height of the 9-slice's top row. A margin of 16 means the 9-slice's top "
+"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:52
+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:55
+msgid "The node's texture resource."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:61
+msgid "Emitted when the node's texture changes."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:67
+msgid ""
+"Stretches the center texture across the NinePatchRect. This may cause the "
+"texture to be distorted."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:70
+msgid ""
+"Repeats the center texture across the NinePatchRect. This won't cause any "
+"visible distortion. The texture must be seamless for this to work without "
+"displaying artifacts between edges.\n"
+"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
+"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
+msgstr ""
+
+#: doc/classes/NinePatchRect.xml:74
+msgid ""
+"Repeats the center texture across the NinePatchRect, but will also stretch "
+"the texture to make sure each tile is visible in full. This may cause the "
+"texture to be distorted, but less than [constant AXIS_STRETCH_MODE_STRETCH]. "
+"The texture must be seamless for this to work without displaying artifacts "
+"between edges.\n"
+"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
+"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
+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] (in seconds) 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/3.4/getting_started/step_by_step/"
+"scenes_and_nodes.html"
+msgstr ""
+
+#: doc/classes/Node.xml:21
+msgid "https://github.com/godotengine/godot-demo-projects/"
+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:34
+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:41
+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:50
+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 SceneTree.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:61
+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. [code]delta[/code] is in "
+"seconds.\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:71
+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. [code]delta[/code] is in seconds.\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:80
+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:90
+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 SceneTree.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:101
+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 SceneTree.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:113
+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 a 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"
+"[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/3.2/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:130
+msgid ""
+"Adds [code]child_node[/code] as a child. The child is placed below the given "
+"[code]node[/code] in the list of children.\n"
+"If [code]legible_unique_name[/code] is [code]true[/code], the child node "
+"will have a human-readable name based on the name of the node being "
+"instanced instead of its type."
+msgstr ""
+
+#: doc/classes/Node.xml:139
+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.\n"
+"[b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] "
+"guaranteed. The order of node groups should not be relied upon as it can "
+"vary across project runs."
+msgstr ""
+
+#: doc/classes/Node.xml:147
+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:154
+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:165
+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.\n"
+"[b]Note:[/b] As this method walks through all the descendants of the node, "
+"it is the slowest way to get a reference to another node. Whenever possible, "
+"consider using [method get_node] instead. To avoid using [method find_node] "
+"too often, consider caching the node reference into a variable."
+msgstr ""
+
+#: doc/classes/Node.xml:175
+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.\n"
+"[b]Note:[/b] As this method walks upwards in the scene tree, it can be slow "
+"in large, deeply nested scene trees. Whenever possible, consider using "
+"[method get_node] instead. To avoid using [method find_parent] too often, "
+"consider caching the node reference into a variable."
+msgstr ""
+
+#: doc/classes/Node.xml:184
+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:191
+msgid "Returns the number of child nodes."
+msgstr ""
+
+#: doc/classes/Node.xml:197
+msgid "Returns an array of references to node's children."
+msgstr ""
+
+#: doc/classes/Node.xml:203
+msgid ""
+"Returns an array listing the groups that the node is a member of.\n"
+"[b]Note:[/b] For performance reasons, the order of node groups is [i]not[/i] "
+"guaranteed. The order of node groups should not be relied upon as it can "
+"vary across project runs."
+msgstr ""
+
+#: doc/classes/Node.xml:210
+msgid ""
+"Returns the node's index, i.e. its position among the siblings of its parent."
+msgstr ""
+
+#: doc/classes/Node.xml:216
+msgid ""
+"Returns the peer ID of the network master for this node. See [method "
+"set_network_master]."
+msgstr ""
+
+#: doc/classes/Node.xml:223
+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:249
+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:263
+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:269
+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:275
+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:282
+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:288
+msgid ""
+"Returns the time elapsed (in seconds) 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:294
+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:300
+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:306
+msgid ""
+"Returns [code]true[/code] if this is an instance load placeholder. See "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:312
+msgid "Returns the [SceneTree] that contains this node."
+msgstr ""
+
+#: doc/classes/Node.xml:318
+msgid "Returns the node's [Viewport]."
+msgstr ""
+
+#: doc/classes/Node.xml:325
+msgid ""
+"Returns [code]true[/code] if the node that the [NodePath] points to exists."
+msgstr ""
+
+#: doc/classes/Node.xml:332
+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:339
+msgid ""
+"Returns [code]true[/code] if the given node is a direct or indirect child of "
+"the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:345
+msgid ""
+"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
+"dock."
+msgstr ""
+
+#: doc/classes/Node.xml:352
+msgid ""
+"Returns [code]true[/code] if the given node occurs later in the scene "
+"hierarchy than the current node."
+msgstr ""
+
+#: doc/classes/Node.xml:359
+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:365
+msgid ""
+"Returns [code]true[/code] if this node is currently inside a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:371
+msgid ""
+"Returns [code]true[/code] if the local system is the master of this node."
+msgstr ""
+
+#: doc/classes/Node.xml:377
+msgid ""
+"Returns [code]true[/code] if physics processing is enabled (see [method "
+"set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:383
+msgid ""
+"Returns [code]true[/code] if internal physics processing is enabled (see "
+"[method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:389
+msgid ""
+"Returns [code]true[/code] if processing is enabled (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:395
+msgid ""
+"Returns [code]true[/code] if the node is processing input (see [method "
+"set_process_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:401
+msgid ""
+"Returns [code]true[/code] if internal processing is enabled (see [method "
+"set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:407
+msgid ""
+"Returns [code]true[/code] if the node is processing unhandled input (see "
+"[method set_process_unhandled_input])."
+msgstr ""
+
+#: doc/classes/Node.xml:413
+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:421
+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:427
+msgid ""
+"Prints all stray nodes (nodes outside the [SceneTree]). Used for debugging. "
+"Works only in debug builds."
+msgstr ""
+
+#: doc/classes/Node.xml:433
+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:448
+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:466
+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:473
+msgid ""
+"Notifies the current node and all its children recursively by calling "
+"[method Object.notification] on all of them."
+msgstr ""
+
+#: doc/classes/Node.xml:479
+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.\n"
+"[b]Important:[/b] If you have a variable pointing to a node, it will [i]not[/"
+"i] be assigned to [code]null[/code] once the node is freed. Instead, it will "
+"point to a [i]previously freed instance[/i] and you should validate it with "
+"[method @GDScript.is_instance_valid] before attempting to call its methods "
+"or access its properties."
+msgstr ""
+
+#: doc/classes/Node.xml:486
+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. The top Node is drawn first, then any "
+"siblings below the top Node in the hierarchy are successively drawn on top "
+"of it. After using [code]raise[/code], a Control will be drawn on top of its "
+"siblings."
+msgstr ""
+
+#: doc/classes/Node.xml:492
+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:499
+msgid ""
+"Removes a child node. The node is NOT deleted and must be deleted manually.\n"
+"[b]Note:[/b] This function may set the [member owner] of the removed Node "
+"(or its descendants) to be [code]null[/code], if that [member owner] is no "
+"longer a parent or ancestor."
+msgstr ""
+
+#: doc/classes/Node.xml:507
+msgid ""
+"Removes a node from a group. See notes in the description, and the group "
+"methods in [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:515
+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:521
+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:528
+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:537
+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:545
+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:552
+msgid ""
+"Sends a [method rpc] using an unreliable protocol. Returns an empty "
+"[Variant]."
+msgstr ""
+
+#: doc/classes/Node.xml:560
+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:568
+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:576
+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:585
+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:593
+msgid ""
+"Remotely changes the property's value on other peers (and locally) using an "
+"unreliable protocol."
+msgstr ""
+
+#: doc/classes/Node.xml:602
+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:609
+msgid "Sets the folded state of the node in the Scene dock."
+msgstr ""
+
+#: doc/classes/Node.xml:617
+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:624
+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:631
+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' behavior.\n"
+"[b]Warning:[/b] Built-in Nodes rely on the internal processing for their own "
+"logic, so changing this value from your code may lead to unexpected "
+"behavior. Script access to this internal logic is provided for specific "
+"advanced uses, but is unsafe and not supported."
+msgstr ""
+
+#: doc/classes/Node.xml:639
+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:646
+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:653
+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' behavior.\n"
+"[b]Warning:[/b] Built-in Nodes rely on the internal processing for their own "
+"logic, so changing this value from your code may lead to unexpected "
+"behavior. Script access to this internal logic is provided for specific "
+"advanced uses, but is unsafe and not supported."
+msgstr ""
+
+#: doc/classes/Node.xml:661
+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:668
+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:675
+msgid ""
+"Sets whether this is an instance load placeholder. See [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/Node.xml:681
+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:688
+msgid ""
+"The override to the default [MultiplayerAPI]. Set to [code]null[/code] to "
+"use the default [SceneTree] one."
+msgstr ""
+
+#: doc/classes/Node.xml:691
+msgid ""
+"If a scene is instantiated from a file, its topmost node contains the "
+"absolute file path from which it was loaded in [member filename] (e.g. "
+"[code]res://levels/1.tscn[/code]). Otherwise, [member filename] is set to an "
+"empty string."
+msgstr ""
+
+#: doc/classes/Node.xml:694
+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:697
+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.\n"
+"[b]Note:[/b] Auto-generated names might include the [code]@[/code] "
+"character, which is reserved for unique names when using [method add_child]. "
+"When setting the name manually, any [code]@[/code] will be removed."
+msgstr ""
+
+#: doc/classes/Node.xml:701
+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:704
+msgid "Pause mode. How the node will behave if the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:707
+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:713
+msgid "Emitted when the node is ready."
+msgstr ""
+
+#: doc/classes/Node.xml:718
+msgid "Emitted when the node is renamed."
+msgstr ""
+
+#: doc/classes/Node.xml:723
+msgid "Emitted when the node enters the tree."
+msgstr ""
+
+#: doc/classes/Node.xml:728
+msgid "Emitted after the node exits the tree and is no longer active."
+msgstr ""
+
+#: doc/classes/Node.xml:733
+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:739
+msgid "Notification received when the node enters a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:742
+msgid "Notification received when the node is about to exit a [SceneTree]."
+msgstr ""
+
+#: doc/classes/Node.xml:745
+msgid "Notification received when the node is moved in the parent."
+msgstr ""
+
+#: doc/classes/Node.xml:748
+msgid "Notification received when the node is ready. See [method _ready]."
+msgstr ""
+
+#: doc/classes/Node.xml:751
+msgid "Notification received when the node is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:754
+msgid "Notification received when the node is unpaused."
+msgstr ""
+
+#: doc/classes/Node.xml:757
+msgid ""
+"Notification received every frame when the physics process flag is set (see "
+"[method set_physics_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:760
+msgid ""
+"Notification received every frame when the process flag is set (see [method "
+"set_process])."
+msgstr ""
+
+#: doc/classes/Node.xml:763
+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:767
+msgid ""
+"Notification received when a node is unparented (parent removed it from the "
+"list of children)."
+msgstr ""
+
+#: doc/classes/Node.xml:770
+msgid "Notification received when the node is instanced."
+msgstr ""
+
+#: doc/classes/Node.xml:773
+msgid "Notification received when a drag begins."
+msgstr ""
+
+#: doc/classes/Node.xml:776
+msgid "Notification received when a drag ends."
+msgstr ""
+
+#: doc/classes/Node.xml:779
+msgid "Notification received when the node's [NodePath] changed."
+msgstr ""
+
+#: doc/classes/Node.xml:782
+msgid ""
+"Notification received every frame when the internal process flag is set (see "
+"[method set_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:785
+msgid ""
+"Notification received every frame when the internal physics process flag is "
+"set (see [method set_physics_process_internal])."
+msgstr ""
+
+#: doc/classes/Node.xml:788
+msgid ""
+"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."
+msgstr ""
+
+#: doc/classes/Node.xml:846
+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:849
+msgid "Stops processing when the [SceneTree] is paused."
+msgstr ""
+
+#: doc/classes/Node.xml:852
+msgid "Continue to process regardless of the [SceneTree] pause state."
+msgstr ""
+
+#: doc/classes/Node.xml:855
+msgid "Duplicate the node's signals."
+msgstr ""
+
+#: doc/classes/Node.xml:858
+msgid "Duplicate the node's groups."
+msgstr ""
+
+#: doc/classes/Node.xml:861
+msgid "Duplicate the node's scripts."
+msgstr ""
+
+#: doc/classes/Node.xml:864
+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:11 doc/classes/Vector2.xml:16
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/2d"
+msgstr ""
+
+#: doc/classes/Node2D.xml:18
+msgid "Multiplies the current scale by the [code]ratio[/code] vector."
+msgstr ""
+
+#: doc/classes/Node2D.xml:25
+msgid ""
+"Returns the angle between the node and the [code]point[/code] in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"node2d_get_angle_to.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Node2D.xml:33
+msgid "Returns the [Transform2D] relative to this node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:40
+msgid "Adds the [code]offset[/code] vector to the node's global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:47
+msgid ""
+"Rotates the node so it points towards the [code]point[/code], which is "
+"expected to use global coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:55
+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:63
+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:70
+msgid ""
+"Applies a rotation to the node, in radians, starting from its current "
+"rotation."
+msgstr ""
+
+#: doc/classes/Node2D.xml:77
+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:84
+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:91
+msgid ""
+"Translates the node by the given [code]offset[/code] in local coordinates."
+msgstr ""
+
+#: doc/classes/Node2D.xml:97
+msgid "Global position."
+msgstr ""
+
+#: doc/classes/Node2D.xml:100
+msgid "Global rotation in radians."
+msgstr ""
+
+#: doc/classes/Node2D.xml:103
+msgid "Global rotation in degrees."
+msgstr ""
+
+#: doc/classes/Node2D.xml:106
+msgid "Global scale."
+msgstr ""
+
+#: doc/classes/Node2D.xml:109
+msgid "Global [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:112
+msgid "Position, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:115
+msgid "Rotation in radians, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:118
+msgid "Rotation in degrees, relative to the node's parent."
+msgstr ""
+
+#: doc/classes/Node2D.xml:121
+msgid "The node's scale. Unscaled value: [code](1, 1)[/code]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:124
+msgid "Local [Transform2D]."
+msgstr ""
+
+#: doc/classes/Node2D.xml:127
+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:130
+msgid ""
+"Z index. Controls the order in which the nodes render. A node with a higher "
+"Z index will display in front of others. Must be between [constant "
+"VisualServer.CANVAS_ITEM_Z_MIN] and [constant VisualServer."
+"CANVAS_ITEM_Z_MAX] (inclusive)."
+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/Sprite:texture:size\"[/code] would refer to the "
+"[code]size[/code] property of the [code]texture[/code] resource on the node "
+"named [code]\"Sprite\"[/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]\n"
+"[b]Note:[/b] In the editor, [NodePath] properties are automatically updated "
+"when moving, renaming or deleting a node in the scene tree, but they are "
+"never updated at runtime."
+msgstr ""
+
+#: doc/classes/NodePath.xml:26 doc/classes/PackedScene.xml:41
+#: doc/classes/Panel.xml:10 doc/classes/PanelContainer.xml:10
+#: doc/classes/TileMap.xml:16 doc/classes/TileSet.xml:16
+msgid "https://godotengine.org/asset-library/asset/520"
+msgstr ""
+
+#: doc/classes/NodePath.xml:33
+msgid ""
+"Creates a NodePath from a string, e.g. [code]\"Path2D/PathFollow2D/Sprite:"
+"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 Sprite node\n"
+"\"Path2D/PathFollow2D/Sprite\"\n"
+"# Points to the Sprite node and its \"texture\" resource.\n"
+"# get_node() would retrieve \"Sprite\", while get_node_and_resource()\n"
+"# would retrieve both the Sprite node and the \"texture\" resource.\n"
+"\"Path2D/PathFollow2D/Sprite:texture\"\n"
+"# Points to the Sprite node and its \"position\" property.\n"
+"\"Path2D/PathFollow2D/Sprite:position\"\n"
+"# Points to the Sprite node and the \"x\" component of its \"position\" "
+"property.\n"
+"\"Path2D/PathFollow2D/Sprite:position:x\"\n"
+"# Absolute path (from \"root\")\n"
+"\"/root/Level/Path2D\"\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:55
+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:68
+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/Sprite:texture:load_path\")\n"
+"print(nodepath.get_concatenated_subnames()) # texture:load_path\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/NodePath.xml:79
+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/Sprite\")\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:91
+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/Sprite\"[/code] has 3 names."
+msgstr ""
+
+#: doc/classes/NodePath.xml:99
+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/Sprite: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:110
+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/Sprite:texture:load_path\"[/code] "
+"has 2 subnames."
+msgstr ""
+
+#: doc/classes/NodePath.xml:117
+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:123
+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 "
+"Texture.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:29
+msgid "Height of the generated texture."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:32
+msgid "The [OpenSimplexNoise] instance used to generate the noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:35
+msgid ""
+"An offset used to specify the noise space coordinate of the top left corner "
+"of the generated noise. This value is ignored if [member seamless] is "
+"enabled."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:38
+msgid ""
+"Whether the texture can be tiled without visible seams or not. Seamless "
+"textures take longer to generate.\n"
+"[b]Note:[/b] Seamless noise has a lower contrast compared to non-seamless "
+"noise. This is due to the way noise uses higher dimensions for generating "
+"seamless noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/NoiseTexture.xml:42
+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].\n"
+"[b]Note:[/b] Due to a bug, you can't create a \"plain\" Object using "
+"[code]Object.new()[/code]. Instead, use [code]ClassDB.instance(\"Object\")[/"
+"code]. This bug only applies to Object itself, not any of its descendents "
+"like [Reference]."
+msgstr ""
+
+#: doc/classes/Object.xml:24 doc/classes/Reference.xml:13
+#: doc/classes/Resource.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/"
+"node_alternatives.html"
+msgstr ""
+
+#: doc/classes/Object.xml:25
+msgid ""
+"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/"
+"gdscript_exports.html#advanced-exports"
+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:39
+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:47
+msgid "Called when the object is initialized."
+msgstr ""
+
+#: doc/classes/Object.xml:54
+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:62
+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:69
+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:78
+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:85
+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:96
+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:108
+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:117
+msgid ""
+"Returns [code]true[/code] if the object can translate strings. See [method "
+"set_message_translation] and [method tr]."
+msgstr ""
+
+#: doc/classes/Object.xml:128
+msgid ""
+"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:152
+msgid ""
+"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:160
+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:170
+msgid ""
+"Deletes the object from memory immediately. For [Node]s, you may want to use "
+"[method Node.queue_free] to queue the node for safe deletion at the end of "
+"the current frame.\n"
+"[b]Important:[/b] If you have a variable pointing to an object, it will "
+"[i]not[/i] be assigned to [code]null[/code] once the object is freed. "
+"Instead, it will point to a [i]previously freed instance[/i] and you should "
+"validate it with [method @GDScript.is_instance_valid] before attempting to "
+"call its methods or access its properties."
+msgstr ""
+
+#: doc/classes/Object.xml:178
+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:185
+msgid ""
+"Returns the object's class as a [String]. See also [method is_class].\n"
+"[b]Note:[/b] [method get_class] does not take [code]class_name[/code] "
+"declarations into account. If the object has a [code]class_name[/code] "
+"defined, the base class name will be returned instead."
+msgstr ""
+
+#: doc/classes/Object.xml:192
+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:203
+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:209
+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:217
+msgid "Returns the object's metadata entry for the given [code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:223
+msgid "Returns the object's metadata as a [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/Object.xml:229
+msgid "Returns the object's methods and their signatures as an [Array]."
+msgstr ""
+
+#: doc/classes/Object.xml:235
+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:242
+msgid ""
+"Returns the object's [Script] instance, or [code]null[/code] if none is "
+"assigned."
+msgstr ""
+
+#: doc/classes/Object.xml:249
+msgid "Returns an [Array] of connections for the given [code]signal[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:255
+msgid "Returns the list of signals as an [Array] of dictionaries."
+msgstr ""
+
+#: doc/classes/Object.xml:262
+msgid ""
+"Returns [code]true[/code] if a metadata entry is found with the given "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:269
+msgid ""
+"Returns [code]true[/code] if the object contains the given [code]method[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Object.xml:276
+msgid "Returns [code]true[/code] if the given [code]signal[/code] exists."
+msgstr ""
+
+#: doc/classes/Object.xml:283
+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:289
+msgid "Returns [code]true[/code] if signal emission blocking is enabled."
+msgstr ""
+
+#: doc/classes/Object.xml:296
+msgid ""
+"Returns [code]true[/code] if the object inherits from the given [code]class[/"
+"code]. See also [method get_class].\n"
+"[b]Note:[/b] [method is_class] does not take [code]class_name[/code] "
+"declarations into account. If the object has a [code]class_name[/code] "
+"defined, [method is_class] will return [code]false[/code] for that name."
+msgstr ""
+
+#: doc/classes/Object.xml:306
+msgid ""
+"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:312
+msgid ""
+"Returns [code]true[/code] if the [method Node.queue_free] method was called "
+"for the object."
+msgstr ""
+
+#: doc/classes/Object.xml:320
+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:327
+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:334
+msgid ""
+"Removes a given entry from the object's metadata. See also [method set_meta]."
+msgstr ""
+
+#: doc/classes/Object.xml:342
+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:350
+msgid "If set to [code]true[/code], signal emission is blocked."
+msgstr ""
+
+#: doc/classes/Object.xml:358
+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:367
+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:379
+msgid ""
+"Defines whether the object can translate strings (with calls to [method "
+"tr]). Enabled by default."
+msgstr ""
+
+#: doc/classes/Object.xml:387
+msgid ""
+"Adds, changes or removes a given entry in the object's metadata. Metadata "
+"are serialized and can take any [Variant] value.\n"
+"To remove a given entry from the object's metadata, use [method "
+"remove_meta]. Metadata is also removed if its value is set to [code]null[/"
+"code]. This means you can also use [code]set_meta(\"name\", null)[/code] to "
+"remove metadata for [code]\"name\"[/code]."
+msgstr ""
+
+#: doc/classes/Object.xml:395
+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:402
+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:410
+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:418
+msgid "Emitted whenever the object's script is changed."
+msgstr ""
+
+#: doc/classes/Object.xml:424
+msgid "Called right when the object is initialized. Not available in script."
+msgstr ""
+
+#: doc/classes/Object.xml:427
+msgid "Called before the object is about to be deleted."
+msgstr ""
+
+#: doc/classes/Object.xml:430
+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:433
+msgid "Persisting connections are saved when the object is serialized to file."
+msgstr ""
+
+#: doc/classes/Object.xml:436
+msgid "One-shot connections disconnect themselves after emission."
+msgstr ""
+
+#: doc/classes/Object.xml:439
+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/Occluder.xml:4
+msgid "Allows [OccluderShape]s to be used for occlusion culling."
+msgstr ""
+
+#: doc/classes/Occluder.xml:7
+msgid ""
+"[Occluder]s that are placed within your scene will automatically cull "
+"objects that are hidden from view by the occluder. This can increase "
+"performance by decreasing the amount of objects drawn.\n"
+"[Occluder]s are totally dynamic, you can move them as you wish. This means "
+"you can for example, place occluders on a moving spaceship, and have it "
+"occlude objects as it flies past.\n"
+"You can place a large number of [Occluder]s within a scene. As it would be "
+"counterproductive to cull against hundreds of occluders, the system will "
+"automatically choose a selection of these for active use during any given "
+"frame, based a screen space metric. Larger occluders are favored, as well as "
+"those close to the camera. Note that a small occluder close to the camera "
+"may be a better occluder in terms of screen space than a large occluder far "
+"in the distance.\n"
+"The type of occlusion primitive is determined by the [OccluderShape] that "
+"you add to the [Occluder]. Some [OccluderShape]s may allow more than one "
+"primitive in a single, node, for greater efficiency.\n"
+"Although [Occluder]s work in general use, they also become even more "
+"powerful when used in conjunction with the portal system. Occluders are "
+"placed in rooms (based on their origin), and can block portals (and thus "
+"entire rooms) as well as objects from rendering."
+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/OccluderShape.xml:4
+msgid ""
+"Base class for shapes used for occlusion culling by the [Occluder] node."
+msgstr ""
+
+#: doc/classes/OccluderShape.xml:7
+msgid "[Occluder]s can use any primitive shape derived from [OccluderShape]."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:4
+msgid "Spherical occlusion primitive for use with the [Occluder] node."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:7
+msgid ""
+"[OccluderShape]s are resources used by [Occluder] nodes, allowing geometric "
+"occlusion culling.\n"
+"This shape can include multiple spheres. These can be created and deleted "
+"either in the Editor inspector or by calling [code]set_spheres[/code]. The "
+"sphere positions can be set by dragging the handle in the Editor viewport. "
+"The radius can be set with the smaller handle."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:18
+msgid "Sets an individual sphere's position."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:26
+msgid "Sets an individual sphere's radius."
+msgstr ""
+
+#: doc/classes/OccluderShapeSphere.xml:32
+msgid ""
+"The sphere data can be accessed as an array of [Plane]s. The position of "
+"each sphere is stored in the [code]normal[/code], and the radius is stored "
+"in the [code]d[/code] value of the plane."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:4
+msgid "Omnidirectional light, such as a light bulb or a candle."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:7
+msgid ""
+"An Omnidirectional light is a type of [Light] 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.\n"
+"[b]Note:[/b] By default, only 32 OmniLights may affect a single mesh "
+"[i]resource[/i] at once. Consider splitting your level into several meshes "
+"to decrease the likelihood that more than 32 lights will affect the same "
+"mesh resource. Splitting the level mesh will also improve frustum culling "
+"effectiveness, leading to greater performance. If you need to use more "
+"lights per mesh, you can increase [member ProjectSettings.rendering/limits/"
+"rendering/max_lights_per_object] at the cost of shader compilation times."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:17
+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/OmniLight.xml:20
+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/OmniLight.xml:23
+msgid "See [enum ShadowDetail]."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:26
+msgid "See [enum ShadowMode]."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:31
+msgid ""
+"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
+"SHADOW_CUBE], but lower-quality."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:34
+msgid ""
+"Shadows are rendered to a cubemap. Slower than [constant "
+"SHADOW_DUAL_PARABOLOID], but higher-quality."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:37
+msgid "Use more detail vertically when computing the shadow."
+msgstr ""
+
+#: doc/classes/OmniLight.xml:40
+msgid "Use more detail horizontally when computing the shadow."
+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:33
+msgid ""
+"Generate a noise image in [constant Image.FORMAT_L8] format with the "
+"requested [code]width[/code] and [code]height[/code], based on the current "
+"noise parameters. If [code]noise_offset[/code] is specified, then the offset "
+"value is used as the coordinates of the top-left corner of the generated "
+"noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:40
+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:49
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:56
+msgid "Returns the 2D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:65
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:72
+msgid "Returns the 3D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:82
+msgid "Returns the 4D noise value [code][-1,1][/code] at the given position."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:89
+msgid ""
+"Generate a tileable noise image in [constant Image.FORMAT_L8] format, based "
+"on the current noise parameters. Generated seamless images are always square "
+"([code]size[/code] × [code]size[/code]).\n"
+"[b]Note:[/b] Seamless noise has a lower contrast compared to non-seamless "
+"noise. This is due to the way noise uses higher dimensions for generating "
+"seamless noise."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:96
+msgid "Difference in period between [member octaves]."
+msgstr ""
+
+#: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:99
+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:103
+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:106
+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:109
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:19
+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:27
+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:33
+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:39
+msgid "Clears all the items in the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:45
+msgid "Returns the amount of items in the OptionButton, including separators."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:52 doc/classes/PopupMenu.xml:203
+msgid "Returns the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:59
+msgid "Returns the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:66
+msgid "Returns the index of the item with the given [code]id[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:73
+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:80 doc/classes/PopupMenu.xml:245
+msgid "Returns the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:93
+msgid ""
+"Returns the ID of the selected item, or [code]0[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:99
+msgid ""
+"Gets the metadata of the selected item. Metadata for items can be set using "
+"[method set_item_metadata]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:106
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:113
+msgid "Removes the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:120
+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:128
+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:137
+msgid "Sets the icon of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:145
+msgid "Sets the ID of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:153
+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:161 doc/classes/PopupMenu.xml:432
+msgid "Sets the text of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:169
+msgid ""
+"The index of the currently selected item, or [code]-1[/code] if no item is "
+"selected."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:177
+msgid ""
+"Emitted when the 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:183
+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:191
+msgid "The arrow icon to be drawn on the right end of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:194
+msgid ""
+"The horizontal space between the arrow icon and the right edge of the button."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:197
+msgid "[StyleBox] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:200
+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:203
+msgid "[Font] of the [OptionButton]'s text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:206
+msgid "Default text [Color] of the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:209
+msgid "Text [Color] used when the [OptionButton] is disabled."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:212
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:215
+msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:218
+msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:221
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:224
+msgid "The horizontal space between [OptionButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
+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:18
+msgid ""
+"Displays a modal dialog box using the host OS' facilities. Execution is "
+"blocked until the dialog is closed."
+msgstr ""
+
+#: doc/classes/OS.xml:24
+msgid "Returns [code]true[/code] if the host OS allows drawing."
+msgstr ""
+
+#: doc/classes/OS.xml:30
+msgid ""
+"Returns [code]true[/code] if the current host platform is using multiple "
+"threads."
+msgstr ""
+
+#: doc/classes/OS.xml:36
+msgid "Centers the window on the screen if in windowed mode."
+msgstr ""
+
+#: doc/classes/OS.xml:42
+msgid ""
+"Shuts down system MIDI driver.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:50
+msgid ""
+"Delays execution of the current thread by [code]msec[/code] milliseconds. "
+"[code]msec[/code] must be greater than or equal to [code]0[/code]. "
+"Otherwise, [method delay_msec] will do nothing and will print an error "
+"message.\n"
+"[b]Note:[/b] [method delay_msec] is a [i]blocking[/i] way to delay code "
+"execution. To delay code execution in a non-blocking way, see [method "
+"SceneTree.create_timer]. Yielding with [method SceneTree.create_timer] will "
+"delay the execution of code placed below the [code]yield[/code] without "
+"affecting the rest of the project (or editor, for [EditorPlugin]s and "
+"[EditorScript]s).\n"
+"[b]Note:[/b] When [method delay_msec] is called on the main thread, it will "
+"freeze the project and will prevent it from redrawing and registering input "
+"until the delay has passed. When using [method delay_msec] as part of an "
+"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
+"the project if it is currently running (since the project is an independent "
+"child process)."
+msgstr ""
+
+#: doc/classes/OS.xml:59
+msgid ""
+"Delays execution of the current thread by [code]usec[/code] microseconds. "
+"[code]usec[/code] must be greater than or equal to [code]0[/code]. "
+"Otherwise, [method delay_usec] will do nothing and will print an error "
+"message.\n"
+"[b]Note:[/b] [method delay_usec] is a [i]blocking[/i] way to delay code "
+"execution. To delay code execution in a non-blocking way, see [method "
+"SceneTree.create_timer]. Yielding with [method SceneTree.create_timer] will "
+"delay the execution of code placed below the [code]yield[/code] without "
+"affecting the rest of the project (or editor, for [EditorPlugin]s and "
+"[EditorScript]s).\n"
+"[b]Note:[/b] When [method delay_usec] is called on the main thread, it will "
+"freeze the project and will prevent it from redrawing and registering input "
+"until the delay has passed. When using [method delay_usec] as part of an "
+"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
+"the project if it is currently running (since the project is an independent "
+"child process)."
+msgstr ""
+
+#: doc/classes/OS.xml:68
+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:76
+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:89
+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:115
+msgid "Returns the scancode of the given string (e.g. \"Escape\")."
+msgstr ""
+
+#: doc/classes/OS.xml:121
+msgid "Returns the total number of available audio drivers."
+msgstr ""
+
+#: doc/classes/OS.xml:128
+msgid "Returns the audio driver name for the given index."
+msgstr ""
+
+#: doc/classes/OS.xml:134
+msgid ""
+"Returns the [i]global[/i] cache data directory according to the operating "
+"system's standards. On desktop platforms, this path can be overridden by "
+"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting "
+"the project. See [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] in the documentation for "
+"more information. See also [method get_config_dir] and [method "
+"get_data_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:141
+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 [member ProjectSettings.editor/main_run_args] 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:158
+msgid ""
+"Returns the [i]global[/i] user configuration directory according to the "
+"operating system's standards. On desktop platforms, this path can be "
+"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable "
+"before starting the project. See [url=https://docs.godotengine.org/en/latest/"
+"tutorials/io/data_paths.html]File paths in Godot projects[/url] in the "
+"documentation for more information. See also [method get_cache_dir] and "
+"[method get_data_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:165
+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:173
+msgid ""
+"Returns the currently used video driver, using one of the values from [enum "
+"VideoDriver]."
+msgstr ""
+
+#: doc/classes/OS.xml:179
+msgid ""
+"Returns the [i]global[/i] user data directory according to the operating "
+"system's standards. On desktop platforms, this path can be overridden by "
+"setting the [code]XDG_DATA_HOME[/code] environment variable before starting "
+"the project. See [url=https://docs.godotengine.org/en/latest/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] in the documentation for "
+"more information. See also [method get_cache_dir] and [method "
+"get_config_dir].\n"
+"Not to be confused with [method get_user_data_dir], which returns the "
+"[i]project-specific[/i] user data path."
+msgstr ""
+
+#: doc/classes/OS.xml:187
+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:194
+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:201
+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:208
+msgid "Returns the total amount of dynamic memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:215
+msgid ""
+"Returns the value of an environment variable. Returns an empty string if the "
+"environment variable doesn't exist.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:222
+msgid "Returns the path to the current engine executable."
+msgstr ""
+
+#: doc/classes/OS.xml:228
+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:235
+msgid ""
+"Returns the IME cursor position (the currently-edited portion of the string) "
+"relative to the characters in the composition string.\n"
+"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to "
+"notify it of changes to the IME cursor position.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:243
+msgid ""
+"Returns the IME intermediate composition string.\n"
+"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] is sent to the application to "
+"notify it of changes to the IME composition string.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:251
+msgid ""
+"Returns the current latin keyboard variant as a String.\n"
+"Possible return values are: [code]\"QWERTY\"[/code], [code]\"AZERTY\"[/"
+"code], [code]\"QZERTY\"[/code], [code]\"DVORAK\"[/code], [code]\"NEO\"[/"
+"code], [code]\"COLEMAK\"[/code] or [code]\"ERROR\"[/code].\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows. Returns "
+"[code]\"QWERTY\"[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:259
+msgid ""
+"Returns the host OS locale as a string of the form "
+"[code]language_Script_COUNTRY_VARIANT@extra[/code]. If you want only the "
+"language code and not the fully specified locale from the OS, you can use "
+"[method get_locale_language].\n"
+"[code]language[/code] - 2 or 3-letter [url=https://en.wikipedia.org/wiki/"
+"List_of_ISO_639-1_codes]language code[/url], in lower case.\n"
+"[code]Script[/code] - optional, 4-letter [url=https://en.wikipedia.org/wiki/"
+"ISO_15924]script code[/url], in title case.\n"
+"[code]COUNTRY[/code] - optional, 2 or 3-letter [url=https://en.wikipedia.org/"
+"wiki/ISO_3166-1]country code[/url], in upper case.\n"
+"[code]VARIANT[/code] - optional, language variant, region and sort order. "
+"Variant can have any number of underscored keywords.\n"
+"[code]extra[/code] - optional, semicolon separated list of additional key "
+"words. Currency, calendar, sort order and numbering system information."
+msgstr ""
+
+#: doc/classes/OS.xml:270
+msgid ""
+"Returns the host OS locale's 2 or 3-letter [url=https://en.wikipedia.org/"
+"wiki/List_of_ISO_639-1_codes]language code[/url] as a string which should be "
+"consistent on all platforms. This is equivalent to extracting the "
+"[code]language[/code] part of the [method get_locale] string.\n"
+"This can be used to narrow down fully specified locale strings to only the "
+"\"common\" language code, when you don't need the additional information "
+"about country code or variants. For example, for a French Canadian user with "
+"[code]fr_CA[/code] locale, this would return [code]fr[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:277
+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:284
+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:291
+msgid ""
+"Returns internal structure pointers for use in GDNative plugins.\n"
+"[b]Note:[/b] This method is implemented on Linux and Windows (other OSs will "
+"soon be supported)."
+msgstr ""
+
+#: doc/classes/OS.xml:298
+msgid ""
+"Returns the amount of battery left in the device as a percentage. Returns "
+"[code]-1[/code] if power state is unknown.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:305
+msgid ""
+"Returns an estimate of the time left in seconds before the device runs out "
+"of battery. Returns [code]-1[/code] if power state is unknown.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:312
+msgid ""
+"Returns the current state of the device regarding battery and power. See "
+"[enum PowerState] constants.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:319
+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:326
+msgid "Returns the number of threads available on the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:332
+msgid "Returns the window size including decorations like window borders."
+msgstr ""
+
+#: doc/classes/OS.xml:339
+msgid ""
+"Returns the given scancode as a string (e.g. Return values: [code]\"Escape"
+"\"[/code], [code]\"Shift+Escape\"[/code]).\n"
+"See also [member InputEventKey.scancode] and [method InputEventKey."
+"get_scancode_with_modifiers]."
+msgstr ""
+
+#: doc/classes/OS.xml:346
+msgid "Returns the number of displays attached to the host machine."
+msgstr ""
+
+#: doc/classes/OS.xml:353
+msgid ""
+"Returns the dots per inch density of the specified screen. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used.\n"
+"[b]Note:[/b] On macOS, returned value is inaccurate if fractional display "
+"scaling mode is used.\n"
+"[b]Note:[/b] On Android devices, the actual screen densities are grouped "
+"into six generalized densities:\n"
+"[codeblock]\n"
+" ldpi - 120 dpi\n"
+" mdpi - 160 dpi\n"
+" hdpi - 240 dpi\n"
+" xhdpi - 320 dpi\n"
+" xxhdpi - 480 dpi\n"
+"xxxhdpi - 640 dpi\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is implemented on Android, Linux, macOS and "
+"Windows. Returns [code]72[/code] on unsupported platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:370
+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/OS.xml:379
+msgid ""
+"Returns the position of the specified screen by index. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used."
+msgstr ""
+
+#: doc/classes/OS.xml:386
+msgid ""
+"Return the scale factor of the specified screen by index. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used.\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/OS.xml:395
+msgid ""
+"Returns the dimensions in pixels of the specified screen. If [code]screen[/"
+"code] is [/code]-1[/code] (the default value), the current screen will be "
+"used."
+msgstr ""
+
+#: doc/classes/OS.xml:401
+msgid ""
+"Returns the amount of time in milliseconds it took for the boot logo to "
+"appear."
+msgstr ""
+
+#: doc/classes/OS.xml:407
+msgid "Returns the maximum amount of static memory used (only works in debug)."
+msgstr ""
+
+#: doc/classes/OS.xml:413
+msgid "Returns the amount of static memory being used by the program in bytes."
+msgstr ""
+
+#: doc/classes/OS.xml:421
+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.\n"
+"[b]Note:[/b] Shared storage is implemented on Android and allows to "
+"differentiate between app specific and shared directories. Shared "
+"directories have additional restrictions on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:429
+msgid "Returns the epoch time of the operating system in milliseconds."
+msgstr ""
+
+#: doc/classes/OS.xml:435
+msgid "Returns the epoch time of the operating system in seconds."
+msgstr ""
+
+#: doc/classes/OS.xml:441
+msgid ""
+"Returns the total number of available tablet drivers.\n"
+"[b]Note:[/b] This method is implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:449
+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:456
+msgid ""
+"Returns the ID of the current thread. This can be used in logs to ease "
+"debugging of multi-threaded applications.\n"
+"[b]Note:[/b] Thread IDs are not deterministic and may be reused across "
+"application restarts."
+msgstr ""
+
+#: doc/classes/OS.xml:463
+msgid ""
+"Returns the amount of time passed in milliseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:469
+msgid ""
+"Returns the amount of time passed in microseconds since the engine started."
+msgstr ""
+
+#: doc/classes/OS.xml:476
+msgid "Returns current time as a dictionary of keys: hour, minute, second."
+msgstr ""
+
+#: doc/classes/OS.xml:482
+msgid ""
+"Returns the current time zone as a dictionary with the keys: bias and name."
+msgstr ""
+
+#: doc/classes/OS.xml:488
+msgid ""
+"Returns a string that is unique to the device.\n"
+"[b]Note:[/b] This string may change without notice if the user reinstalls/"
+"upgrades their operating system or changes their hardware. This means it "
+"should generally not be used to encrypt persistent data as the data saved "
+"before an unexpected ID change would become inaccessible. The returned "
+"string may also be falsified using external programs, so do not rely on the "
+"string returned by [method get_unique_id] for security purposes.\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:496
+msgid ""
+"Returns the current UNIX epoch timestamp in seconds.\n"
+"[b]Important:[/b] This is the system clock that the user can manually set. "
+"[b]Never use[/b] this method for precise time calculation since its results "
+"are also subject to automatic adjustments by the operating system. [b]Always "
+"use[/b] [method get_ticks_usec] or [method get_ticks_msec] for precise time "
+"calculation instead, since they are guaranteed to be monotonic (i.e. never "
+"decrease)."
+msgstr ""
+
+#: doc/classes/OS.xml:504
+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"
+"If the dictionary is empty [code]0[/code] is returned. If some keys are "
+"omitted, they default to the equivalent values for the UNIX epoch timestamp "
+"0 (1970-01-01 at 00:00:00 UTC).\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:513
+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].\n"
+"Not to be confused with [method get_data_dir], which returns the [i]global[/"
+"i] (non-project-specific) user data directory."
+msgstr ""
+
+#: doc/classes/OS.xml:524
+msgid "Returns the number of video drivers supported on the current platform."
+msgstr ""
+
+#: doc/classes/OS.xml:531
+msgid ""
+"Returns the name of the video driver matching the given [code]driver[/code] "
+"index. This index is a value from [enum VideoDriver], and you can use "
+"[method get_current_video_driver] to get the current backend's index."
+msgstr ""
+
+#: doc/classes/OS.xml:537
+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/OS.xml:543
+msgid ""
+"Returns unobscured area of the window where interactive controls should be "
+"rendered."
+msgstr ""
+
+#: doc/classes/OS.xml:553
+msgid ""
+"Add a new item with text \"label\" to global menu. Use \"_dock\" menu to add "
+"item to the macOS dock icon menu.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:561
+msgid ""
+"Add a separator between items. Separators also occupy an index.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:569
+msgid ""
+"Clear the global menu, in effect removing all items.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:578
+msgid ""
+"Removes the item at index \"idx\" from the global menu. Note that the "
+"indexes of items after the removed item are going to be shifted by one.\n"
+"[b]Note:[/b] This method is implemented on macOS."
+msgstr ""
+
+#: doc/classes/OS.xml:586
+msgid ""
+"Returns [code]true[/code] if the environment variable with the name "
+"[code]variable[/code] exists.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:594
+msgid ""
+"Returns [code]true[/code] if the feature for the given feature tag is "
+"supported in the currently running instance, depending on the 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/3.4/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:601
+msgid ""
+"Returns [code]true[/code] if the device has a touchscreen or emulates one."
+msgstr ""
+
+#: doc/classes/OS.xml:607
+msgid ""
+"Returns [code]true[/code] if the platform has a virtual keyboard, "
+"[code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/OS.xml:613
+msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
+msgstr ""
+
+#: doc/classes/OS.xml:619
+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:627
+msgid ""
+"Returns [code]true[/code] if the [b]OK[/b] button should appear on the left "
+"and [b]Cancel[/b] on the right."
+msgstr ""
+
+#: doc/classes/OS.xml:634
+msgid ""
+"Returns [code]true[/code] if the input scancode corresponds to a Unicode "
+"character."
+msgstr ""
+
+#: doc/classes/OS.xml:640
+msgid ""
+"Returns [code]true[/code] if the engine was executed with [code]-v[/code] "
+"(verbose stdout)."
+msgstr ""
+
+#: doc/classes/OS.xml:646
+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:652
+msgid ""
+"Returns [code]true[/code] if the window should always be on top of other "
+"windows."
+msgstr ""
+
+#: doc/classes/OS.xml:658
+msgid ""
+"Returns [code]true[/code] if the window is currently focused.\n"
+"[b]Note:[/b] Only implemented on desktop platforms. On other platforms, it "
+"will always return [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:665
+msgid ""
+"Returns active keyboard layout index.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:672
+msgid ""
+"Returns the number of keyboard layouts.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:680
+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/OS.xml:688
+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/OS.xml:696
+msgid ""
+"Sets active keyboard layout.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:704
+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:712
+msgid ""
+"Moves the window to the front.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:719
+msgid ""
+"Returns [code]true[/code] if native video is playing.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:726
+msgid ""
+"Pauses native video playback.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:737
+msgid ""
+"Plays native video from the specified path, at the given volume and with "
+"audio and subtitle tracks.\n"
+"[b]Note:[/b] This method is only implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:744
+msgid ""
+"Stops native video playback.\n"
+"[b]Note:[/b] This method is implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:751
+msgid ""
+"Resumes native video playback.\n"
+"[b]Note:[/b] This method is implemented on iOS."
+msgstr ""
+
+#: doc/classes/OS.xml:758
+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:766
+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:772
+msgid "Shows the list of loaded textures sorted by size in memory."
+msgstr ""
+
+#: doc/classes/OS.xml:779
+msgid "Shows the number of resources loaded by the game of the given types."
+msgstr ""
+
+#: doc/classes/OS.xml:786
+msgid "Shows all resources currently used by the game."
+msgstr ""
+
+#: doc/classes/OS.xml:792
+msgid ""
+"Request the user attention to the window. It'll flash the taskbar button on "
+"Windows or bounce the dock icon on OSX.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:800
+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:806
+msgid ""
+"With this function, you can request dangerous permissions since normal "
+"permissions are automatically granted at install time in Android "
+"applications.\n"
+"[b]Note:[/b] This method is implemented on Android."
+msgstr ""
+
+#: doc/classes/OS.xml:815
+msgid ""
+"Sets the value of the environment variable [code]variable[/code] to "
+"[code]value[/code]. The environment variable will be set for the Godot "
+"process and any process executed with [method execute] after running [method "
+"set_environment]. The environment variable will [i]not[/i] persist to "
+"processes run after the Godot process was terminated.\n"
+"[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment "
+"variable names are case-sensitive on all platforms except Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:823
+msgid ""
+"Sets the game's icon using an [Image] resource.\n"
+"The same image is used for window caption, taskbar/dock and window selection "
+"dialog. Image is scaled as needed.\n"
+"[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:832
+msgid ""
+"Sets whether IME input mode should be enabled.\n"
+"If active IME handles key events before the application and creates an "
+"composition string and suggestion list.\n"
+"Application can retrieve the composition status by using [method "
+"get_ime_selection] and [method get_ime_text] functions.\n"
+"Completed composition string is committed when input is finished.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:843
+msgid ""
+"Sets position of IME suggestion list popup (in window coordinates).\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:851
+msgid ""
+"Sets the game's icon using a multi-size platform-specific icon file ([code]*."
+"ico[/code] on Windows and [code]*.icns[/code] on macOS).\n"
+"Appropriate size sub-icons are used for window caption, taskbar/dock and "
+"window selection dialog.\n"
+"[b]Note:[/b] This method is implemented on macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:860
+msgid "Sets the name of the current thread."
+msgstr ""
+
+#: doc/classes/OS.xml:867
+msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/OS.xml:874
+msgid ""
+"Sets whether the window should always be on top.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:882
+msgid ""
+"Sets a polygonal region of the window which accepts mouse events. Mouse "
+"events outside the region will be passed through.\n"
+"Passing an empty array will disable passthrough support (all mouse events "
+"will be intercepted by the window, which is the default behavior).\n"
+"[codeblock]\n"
+"# Set region, using Path2D node.\n"
+"OS.set_window_mouse_passthrough($Path2D.curve.get_baked_points())\n"
+"\n"
+"# Set region, using Polygon2D node.\n"
+"OS.set_window_mouse_passthrough($Polygon2D.polygon)\n"
+"\n"
+"# Reset region to default.\n"
+"OS.set_window_mouse_passthrough([])\n"
+"[/codeblock]\n"
+"[b]Note:[/b] On Windows, the portion of a window that lies outside the "
+"region is not drawn, while on Linux and macOS it is.\n"
+"[b]Note:[/b] This method is implemented on Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:902
+msgid ""
+"Sets the window title to the specified string.\n"
+"[b]Note:[/b] This should be used sporadically. Don't set this every frame, "
+"as that will negatively affect performance on some window managers.\n"
+"[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:911
+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:924
+msgid ""
+"Shows the virtual keyboard if the platform has one.\n"
+"The [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"
+"The [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"
+"[b]Note:[/b] This method is implemented on Android, iOS and UWP."
+msgstr ""
+
+#: doc/classes/OS.xml:933
+msgid "The clipboard from the host OS. Might be unavailable on some platforms."
+msgstr ""
+
+#: doc/classes/OS.xml:936
+msgid "The current screen index (starting from 0)."
+msgstr ""
+
+#: doc/classes/OS.xml:939
+msgid ""
+"If [code]true[/code], the engine filters the time delta measured between "
+"each frame, and attempts to compensate for random variation. This will only "
+"operate on systems where V-Sync is active."
+msgstr ""
+
+#: doc/classes/OS.xml:942
+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:946
+msgid ""
+"If [code]true[/code], the engine tries to keep the screen on while the game "
+"is running. Useful on mobile."
+msgstr ""
+
+#: doc/classes/OS.xml:949
+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:952
+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:955
+msgid ""
+"The maximum size of the window (without counting window manager "
+"decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to "
+"reset to the system default value."
+msgstr ""
+
+#: doc/classes/OS.xml:958
+msgid ""
+"The minimum size of the window in pixels (without counting window manager "
+"decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to "
+"reset to the system's default value.\n"
+"[b]Note:[/b] By default, the project window has a minimum size of "
+"[code]Vector2(64, 64)[/code]. This prevents issues that can arise when the "
+"window is resized to a near-zero size."
+msgstr ""
+
+#: doc/classes/OS.xml:962
+msgid "The current screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:965
+msgid "The current tablet driver in use."
+msgstr ""
+
+#: doc/classes/OS.xml:968
+msgid "If [code]true[/code], vertical synchronization (Vsync) is enabled."
+msgstr ""
+
+#: doc/classes/OS.xml:971
+msgid ""
+"If [code]true[/code] and [code]vsync_enabled[/code] is true, the operating "
+"system's window compositor will be used for vsync when the compositor is "
+"enabled and the game is in windowed mode.\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.\n"
+"[b]Note:[/b] This property is only implemented on Windows."
+msgstr ""
+
+#: doc/classes/OS.xml:976
+msgid ""
+"If [code]true[/code], removes the window frame.\n"
+"[b]Note:[/b] Setting [code]window_borderless[/code] to [code]false[/code] "
+"disables per-pixel transparency."
+msgstr ""
+
+#: doc/classes/OS.xml:980
+msgid "If [code]true[/code], the window is fullscreen."
+msgstr ""
+
+#: doc/classes/OS.xml:983
+msgid "If [code]true[/code], the window is maximized."
+msgstr ""
+
+#: doc/classes/OS.xml:986
+msgid "If [code]true[/code], the window is minimized."
+msgstr ""
+
+#: doc/classes/OS.xml:989
+msgid ""
+"If [code]true[/code], the window background is transparent and the window "
+"frame is removed.\n"
+"Use [code]get_tree().get_root().set_transparent_background(true)[/code] to "
+"disable main viewport background rendering.\n"
+"[b]Note:[/b] This property has no effect if [member ProjectSettings.display/"
+"window/per_pixel_transparency/allowed] setting is disabled.\n"
+"[b]Note:[/b] This property is implemented on HTML5, Linux, macOS, Windows, "
+"and Android. It can't be changed at runtime for Android. Use [member "
+"ProjectSettings.display/window/per_pixel_transparency/enabled] to set it at "
+"startup instead."
+msgstr ""
+
+#: doc/classes/OS.xml:995
+msgid ""
+"The window position relative to the screen, the origin is the top left "
+"corner, +Y axis goes to the bottom and +X axis goes to the right."
+msgstr ""
+
+#: doc/classes/OS.xml:998
+msgid "If [code]true[/code], the window is resizable by the user."
+msgstr ""
+
+#: doc/classes/OS.xml:1001
+msgid "The size of the window (without counting window manager decorations)."
+msgstr ""
+
+#: doc/classes/OS.xml:1006
+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:1009
+msgid ""
+"The GLES3 rendering backend. It uses OpenGL ES 3.0 on mobile devices, OpenGL "
+"3.3 on desktop platforms and WebGL 2.0 on the web."
+msgstr ""
+
+#: doc/classes/OS.xml:1012
+msgid "Sunday."
+msgstr ""
+
+#: doc/classes/OS.xml:1015
+msgid "Monday."
+msgstr ""
+
+#: doc/classes/OS.xml:1018
+msgid "Tuesday."
+msgstr ""
+
+#: doc/classes/OS.xml:1021
+msgid "Wednesday."
+msgstr ""
+
+#: doc/classes/OS.xml:1024
+msgid "Thursday."
+msgstr ""
+
+#: doc/classes/OS.xml:1027
+msgid "Friday."
+msgstr ""
+
+#: doc/classes/OS.xml:1030
+msgid "Saturday."
+msgstr ""
+
+#: doc/classes/OS.xml:1033
+msgid "January."
+msgstr ""
+
+#: doc/classes/OS.xml:1036
+msgid "February."
+msgstr ""
+
+#: doc/classes/OS.xml:1039
+msgid "March."
+msgstr ""
+
+#: doc/classes/OS.xml:1042
+msgid "April."
+msgstr ""
+
+#: doc/classes/OS.xml:1045
+msgid "May."
+msgstr ""
+
+#: doc/classes/OS.xml:1048
+msgid "June."
+msgstr ""
+
+#: doc/classes/OS.xml:1051
+msgid "July."
+msgstr ""
+
+#: doc/classes/OS.xml:1054
+msgid "August."
+msgstr ""
+
+#: doc/classes/OS.xml:1057
+msgid "September."
+msgstr ""
+
+#: doc/classes/OS.xml:1060
+msgid "October."
+msgstr ""
+
+#: doc/classes/OS.xml:1063
+msgid "November."
+msgstr ""
+
+#: doc/classes/OS.xml:1066
+msgid "December."
+msgstr ""
+
+#: doc/classes/OS.xml:1069
+msgid ""
+"Application handle:\n"
+"- Windows: [code]HINSTANCE[/code] of the application\n"
+"- MacOS: [code]NSApplication*[/code] of the application (not yet "
+"implemented)\n"
+"- Android: [code]JNIEnv*[/code] of the application (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1075
+msgid ""
+"Display handle:\n"
+"- Linux: [code]X11::Display*[/code] for the display"
+msgstr ""
+
+#: doc/classes/OS.xml:1079
+msgid ""
+"Window handle:\n"
+"- Windows: [code]HWND[/code] of the main window\n"
+"- Linux: [code]X11::Window*[/code] of the main window\n"
+"- MacOS: [code]NSWindow*[/code] of the main window (not yet implemented)\n"
+"- Android: [code]jObject[/code] the main android activity (not yet "
+"implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1086
+msgid ""
+"Window view:\n"
+"- Windows: [code]HDC[/code] of the main window drawing context\n"
+"- MacOS: [code]NSView*[/code] of the main windows view (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1091
+msgid ""
+"OpenGL Context:\n"
+"- Windows: [code]HGLRC[/code]\n"
+"- Linux: [code]X11::GLXContext[/code]\n"
+"- MacOS: [code]NSOpenGLContext*[/code] (not yet implemented)"
+msgstr ""
+
+#: doc/classes/OS.xml:1097
+msgid "Landscape screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1100
+msgid "Portrait screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1103
+msgid "Reverse landscape screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1106
+msgid "Reverse portrait screen orientation."
+msgstr ""
+
+#: doc/classes/OS.xml:1109
+msgid "Uses landscape or reverse landscape based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1112
+msgid "Uses portrait or reverse portrait based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1115
+msgid "Uses most suitable orientation based on the hardware sensor."
+msgstr ""
+
+#: doc/classes/OS.xml:1118
+msgid "Desktop directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1121
+msgid "DCIM (Digital Camera Images) directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1124
+msgid "Documents directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1127
+msgid "Downloads directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1130
+msgid "Movies directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1133
+msgid "Music directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1136
+msgid "Pictures directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1139
+msgid "Ringtones directory path."
+msgstr ""
+
+#: doc/classes/OS.xml:1142
+msgid "Unknown powerstate."
+msgstr ""
+
+#: doc/classes/OS.xml:1145
+msgid "Unplugged, running on battery."
+msgstr ""
+
+#: doc/classes/OS.xml:1148
+msgid "Plugged in, no battery available."
+msgstr ""
+
+#: doc/classes/OS.xml:1151
+msgid "Plugged in, battery charging."
+msgstr ""
+
+#: doc/classes/OS.xml:1154
+msgid "Plugged in, battery fully charged."
+msgstr ""
+
+#: doc/classes/PackedDataContainerRef.xml:4
+msgid "Reference version of [PackedDataContainer]."
+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 nodes 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:53
+msgid ""
+"Returns the [code]SceneState[/code] representing the scene file contents."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:60
+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:67
+msgid ""
+"Pack will ignore any sub-nodes not owned by given node. See [member Node."
+"owner]."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:73
+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:79
+msgid "If passed to [method instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/PackedScene.xml:82
+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:86
+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/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:15
+msgid "Returns the number of packets currently available in the ring-buffer."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:21
+msgid "Gets a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:27
+msgid ""
+"Returns the error state of the last packet received (via [method get_packet] "
+"and [method get_var])."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:34
+msgid ""
+"Gets a Variant. If [code]allow_objects[/code] (or [member "
+"allow_object_decoding]) 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:42
+msgid "Sends a raw packet."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:50
+msgid ""
+"Sends a [Variant] as a packet. If [code]full_objects[/code] (or [member "
+"allow_object_decoding]) is [code]true[/code], encoding objects is allowed "
+"(and can potentially include code)."
+msgstr ""
+
+#: doc/classes/PacketPeer.xml:56
+msgid ""
+"[i]Deprecated.[/i] Use [code]get_var[/code] and [code]put_var[/code] "
+"parameters instead.\n"
+"If [code]true[/code], the PacketPeer will allow encoding and decoding of "
+"object via [method get_var] and [method put_var].\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:61
+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].\n"
+"[b]Warning:[/b] SSL/TLS certificate revocation and certificate pinning are "
+"currently not supported. Revoked certificates are accepted as long as they "
+"are otherwise valid. If this is a concern, you may want to use automatically "
+"managed certificates with a short validity period."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:20
+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:26
+msgid "Disconnects this peer, terminating the DTLS session."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:32 doc/classes/StreamPeerSSL.xml:43
+msgid "Returns the status of the connection. See [enum Status] for values."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:38
+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:44
+msgid "A status representing a [PacketPeerDTLS] that is disconnected."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:47
+msgid ""
+"A status representing a [PacketPeerDTLS] that is currently performing the "
+"handshake with a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:50
+msgid ""
+"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:53
+msgid "A status representing a [PacketPeerDTLS] in a generic error state."
+msgstr ""
+
+#: doc/classes/PacketPeerDTLS.xml:56
+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:15
+msgid "Closes the UDP socket the [PacketPeerUDP] is currently listening on."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:23
+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"
+"[b]Note:[/b] 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:30
+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:36
+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:42
+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:48
+msgid "Returns whether this [PacketPeerUDP] is listening."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:56
+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"
+"[b]Note:[/b] Some Android devices might require the "
+"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
+msgstr ""
+
+#: doc/classes/PacketPeerUDP.xml:66
+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:75
+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:85
+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"
+"[b]Note:[/b] 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:94
+msgid ""
+"Sets the destination address and port for sending packets and variables. A "
+"hostname will be resolved using DNS if needed.\n"
+"[b]Note:[/b] [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:101
+msgid ""
+"Waits for a packet to arrive on the listening port. See [method listen].\n"
+"[b]Note:[/b] [method wait] can't be interrupted once it has been called. "
+"This can be worked around by allowing the other party to send a specific "
+"\"death pill\" packet like this:\n"
+"[codeblock]\n"
+"# Server\n"
+"socket.set_dest_address(\"127.0.0.1\", 789)\n"
+"socket.put_packet(\"Time to stop\".to_ascii())\n"
+"\n"
+"# Client\n"
+"while socket.wait() == OK:\n"
+" var data = socket.get_packet().get_string_from_ascii()\n"
+" if data == \"Time to stop\":\n"
+" return\n"
+"[/codeblock]"
+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:11
+msgid "https://godotengine.org/asset-library/asset/516"
+msgstr ""
+
+#: doc/classes/Panel.xml:12 doc/classes/Skeleton.xml:12
+#: doc/classes/SkeletonIK.xml:29
+msgid "https://godotengine.org/asset-library/asset/523"
+msgstr ""
+
+#: doc/classes/Panel.xml:20
+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:18
+msgid "The style of [PanelContainer]'s background."
+msgstr ""
+
+#: doc/classes/PanoramaSky.xml:4
+msgid "A type of [Sky] used to draw a background texture."
+msgstr ""
+
+#: doc/classes/PanoramaSky.xml:7
+msgid ""
+"A resource referenced in an [Environment] that is used to draw a background. "
+"The Panorama sky 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/PanoramaSky.xml:17
+msgid "[Texture] to be applied to the PanoramaSky."
+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 [Texture] mirroring. Useful for creating an infinite "
+"scrolling background. If an axis is set to [code]0[/code], the [Texture] "
+"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/Particles.xml:4
+msgid "GPU-based 3D particle emitter."
+msgstr ""
+
+#: doc/classes/Particles.xml:7
+msgid ""
+"3D particle node used to create a variety of particle systems and effects. "
+"[Particles] 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.\n"
+"[b]Note:[/b] [Particles] only work when using the GLES3 renderer. If using "
+"the GLES2 renderer, use [CPUParticles] instead. You can convert [Particles] "
+"to [CPUParticles] by selecting the node, clicking the [b]Particles[/b] menu "
+"at the top of the 3D editor viewport then choosing [b]Convert to "
+"CPUParticles[/b].\n"
+"[b]Note:[/b] After working on a Particles node, remember to update its "
+"[member visibility_aabb] by selecting it, clicking the [b]Particles[/b] menu "
+"at the top of the 3D editor viewport then choose [b]Generate Visibility "
+"AABB[/b]. Otherwise, particles may suddenly disappear depending on the "
+"camera position and angle."
+msgstr ""
+
+#: doc/classes/Particles.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/"
+"controlling_thousands_of_fish.html"
+msgstr ""
+
+#: doc/classes/Particles.xml:20
+msgid ""
+"Returns the axis-aligned bounding box that contains all the particles that "
+"are active in the current frame."
+msgstr ""
+
+#: doc/classes/Particles.xml:27
+msgid "Returns the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/Particles.xml:33
+msgid "Restarts the particle emission, clearing existing particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:41
+msgid "Sets the [Mesh] that is drawn at index [code]pass[/code]."
+msgstr ""
+
+#: doc/classes/Particles.xml:54
+msgid "[Mesh] that is drawn for the first draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:57
+msgid "[Mesh] that is drawn for the second draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:60
+msgid "[Mesh] that is drawn for the third draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:63
+msgid "[Mesh] that is drawn for the fourth draw pass."
+msgstr ""
+
+#: doc/classes/Particles.xml:66
+msgid "The number of draw passes when rendering particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:72
+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/Particles.xml:87
+msgid ""
+"If [code]true[/code], only [code]amount[/code] particles will be emitted."
+msgstr ""
+
+#: doc/classes/Particles.xml:90
+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/Particles.xml:93 doc/classes/Particles2D.xml:68
+msgid ""
+"[Material] for processing particles. Can be a [ParticlesMaterial] or a "
+"[ShaderMaterial]."
+msgstr ""
+
+#: doc/classes/Particles.xml:96
+msgid "Emission randomness ratio."
+msgstr ""
+
+#: doc/classes/Particles.xml:99
+msgid ""
+"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
+"particles."
+msgstr ""
+
+#: doc/classes/Particles.xml:102
+msgid ""
+"The [AABB] that determines the node's region which needs to be visible on "
+"screen for the particle system to be active.\n"
+"Grow the box if particles suddenly appear/disappear when the node enters/"
+"exits the screen. The [AABB] can be grown via code or with the [b]Particles "
+"→ Generate AABB[/b] editor tool.\n"
+"[b]Note:[/b] If the [ParticlesMaterial] in use is configured to cast "
+"shadows, you may want to enlarge this AABB to ensure the shadow is updated "
+"when particles are off-screen."
+msgstr ""
+
+#: doc/classes/Particles.xml:118
+msgid "Maximum number of draw passes supported."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:4
+msgid "GPU-based 2D particle emitter."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:7
+msgid ""
+"2D particle node used to create a variety of particle systems and effects. "
+"[Particles2D] 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.\n"
+"[b]Note:[/b] [Particles2D] only work when using the GLES3 renderer. If using "
+"the GLES2 renderer, use [CPUParticles2D] instead. You can convert "
+"[Particles2D] to [CPUParticles2D] by selecting the node, clicking the "
+"[b]Particles[/b] menu at the top of the 2D editor viewport then choosing "
+"[b]Convert to CPUParticles2D[/b].\n"
+"[b]Note:[/b] After working on a Particles node, remember to update its "
+"[member visibility_rect] by selecting it, clicking the [b]Particles[/b] menu "
+"at the top of the 2D editor viewport then choose [b]Generate Visibility "
+"Rect[/b]. Otherwise, particles may suddenly disappear depending on the "
+"camera position and angle.\n"
+"[b]Note:[/b] Unlike [CPUParticles2D], [Particles2D] currently ignore the "
+"texture region defined in [AtlasTexture]s."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:21
+msgid "Returns a rectangle containing the positions of all existing particles."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:27
+msgid "Restarts all the existing particles."
+msgstr ""
+
+#: doc/classes/Particles2D.xml:80
+msgid ""
+"The [Rect2] that determines the node's region which needs to be visible on "
+"screen for the particle system to be active.\n"
+"Grow the rect if particles suddenly appear/disappear when the node enters/"
+"exits the screen. The [Rect2] can be grown via code or with the [b]Particles "
+"→ Generate Visibility Rect[/b] editor tool."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:4
+msgid "Particle properties for [Particles] and [Particles2D] nodes."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:7
+msgid ""
+"ParticlesMaterial defines particle properties and behavior. It is used in "
+"the [code]process_material[/code] of [Particles] and [Particles2D] 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:18
+msgid "Returns [code]true[/code] if the specified flag is enabled."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:32
+msgid "Returns the randomness ratio associated with the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:39
+msgid "Returns the [Texture] used by the specified parameter."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:47
+msgid ""
+"If [code]true[/code], enables the specified flag. See [enum Flags] for "
+"options."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:55
+msgid "Sets the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:63
+msgid "Sets the randomness ratio for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:71
+msgid "Sets the [Texture] for the specified [enum Parameter]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:77
+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 [SpatialMaterial] being used to draw the particle "
+"is using [constant SpatialMaterial.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:81
+msgid "Each particle's rotation will be animated along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:87
+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 [SpatialMaterial] being used to draw the particle "
+"is using [constant SpatialMaterial.BILLBOARD_PARTICLES]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:91
+msgid "Each particle's angular velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:100
+msgid "Each particle's animation offset will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:109
+msgid "Each particle's animation speed will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:115
+msgid ""
+"Each particle's initial color. If the [Particles2D]'s [code]texture[/code] "
+"is defined, it will be multiplied by this color. To have particle display "
+"color in a [SpatialMaterial] make sure to set [member SpatialMaterial."
+"vertex_color_use_as_albedo] to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:124
+msgid "Damping will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:133
+msgid ""
+"The box's extents if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_BOX]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:136
+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:139
+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:142
+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:145
+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:148
+msgid ""
+"The axis of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:151
+msgid ""
+"The height of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:154
+msgid ""
+"The inner radius of the ring when using the emitter [constant "
+"EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:157
+msgid ""
+"The radius of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:160
+msgid ""
+"Particles will be emitted inside this region. Use [enum EmissionShape] "
+"constants for values."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:163
+msgid ""
+"The sphere's radius if [code]emission_shape[/code] is set to [constant "
+"EMISSION_SHAPE_SPHERE]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:175
+msgid "Amount of [member spread] along the Y axis."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:184
+msgid "Each particle's hue will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:202
+msgid ""
+"Each particle's linear acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:208
+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:212
+msgid "Each particle's orbital velocity will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:221
+msgid ""
+"Each particle's radial acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:230
+msgid "Each particle's scale will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:242
+msgid ""
+"Each particle's tangential acceleration will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:248
+msgid "Trail particles' color will vary along this [GradientTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:251
+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:254
+msgid "Trail particles' size will vary along this [CurveTexture]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:259
+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:262
+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:265
+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:268
+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:271
+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:274
+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:277
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set damping properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:280
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set angle properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:283
+msgid ""
+"Use with [method set_param], [method set_param_randomness], and [method "
+"set_param_texture] to set scale properties."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:286
+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:289
+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:292
+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:298
+msgid "Use with [method set_flag] to set [member flag_align_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:301
+msgid "Use with [method set_flag] to set [member flag_rotate_y]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:304
+msgid "Use with [method set_flag] to set [member flag_disable_z]."
+msgstr ""
+
+#: doc/classes/ParticlesMaterial.xml:319
+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:322
+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/Path.xml:4
+msgid "Contains a [Curve3D] path for [PathFollow] nodes to follow."
+msgstr ""
+
+#: doc/classes/Path.xml:7
+msgid ""
+"Can have [PathFollow] child nodes moving along the [Curve3D]. See "
+"[PathFollow] for more information on the usage.\n"
+"Note that the path is considered as relative to the moved nodes (children of "
+"[PathFollow]). As such, the curve should usually start with a zero vector "
+"[code](0, 0, 0)[/code]."
+msgstr ""
+
+#: doc/classes/Path.xml:16
+msgid "A [Curve3D] describing the path."
+msgstr ""
+
+#: doc/classes/Path.xml:22
+msgid "Emitted when the [member curve] changes."
+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/PathFollow.xml:4
+msgid "Point sampler for a [Path]."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:7
+msgid ""
+"This node takes its parent [Path], 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/PathFollow.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 [Path] 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/PathFollow.xml:21 doc/classes/PathFollow2D.xml:21
+msgid "The node's offset along the curve."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:24 doc/classes/PathFollow2D.xml:27
+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/PathFollow.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/PathFollow.xml:30
+msgid ""
+"Allows or forbids rotation on one or more axes, depending on the [enum "
+"RotationMode] constants being used."
+msgstr ""
+
+#: doc/classes/PathFollow.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/PathFollow.xml:36 doc/classes/PathFollow2D.xml:39
+msgid "The node's offset perpendicular to the curve."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:41
+msgid "Forbids the PathFollow to rotate."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:44
+msgid "Allows the PathFollow to rotate in the Y axis only."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:47
+msgid "Allows the PathFollow to rotate in both the X, and Y axes."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:50
+msgid "Allows the PathFollow to rotate in any axis."
+msgstr ""
+
+#: doc/classes/PathFollow.xml:53
+msgid ""
+"Uses the up vector information in a [Curve3D] to enforce orientation. This "
+"rotation mode requires the [Path]'s [member Curve3D.up_vector_enabled] "
+"property to be set to [code]true[/code]."
+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: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: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/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:24
+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:31
+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:39
+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"
+"[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."
+msgstr ""
+
+#: doc/classes/Performance.xml:18
+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:27
+msgid "Number of frames per second."
+msgstr ""
+
+#: doc/classes/Performance.xml:30
+msgid "Time it took to complete one frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:33
+msgid "Time it took to complete one physics frame, in seconds."
+msgstr ""
+
+#: doc/classes/Performance.xml:36
+msgid ""
+"Static memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:39
+msgid ""
+"Dynamic memory currently used, in bytes. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:42
+msgid "Available static memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:45
+msgid "Available dynamic memory. Not available in release builds."
+msgstr ""
+
+#: doc/classes/Performance.xml:48
+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:51
+msgid "Number of objects currently instanced (including nodes)."
+msgstr ""
+
+#: doc/classes/Performance.xml:54
+msgid "Number of resources currently used."
+msgstr ""
+
+#: doc/classes/Performance.xml:57
+msgid ""
+"Number of nodes currently instanced in the scene tree. This also includes "
+"the root node."
+msgstr ""
+
+#: doc/classes/Performance.xml:60
+msgid ""
+"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
+"scene tree."
+msgstr ""
+
+#: doc/classes/Performance.xml:63
+msgid "3D objects drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:66
+msgid "Vertices drawn per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:69
+msgid "Material changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:72
+msgid "Shader changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:75
+msgid "Render surface changes per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:78
+msgid "Draw calls per frame. 3D only."
+msgstr ""
+
+#: doc/classes/Performance.xml:81
+msgid "Items or joined items drawn per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:84
+msgid "Draw calls per frame."
+msgstr ""
+
+#: doc/classes/Performance.xml:87 doc/classes/VisualServer.xml:3696
+msgid ""
+"The amount of video memory used, i.e. texture and vertex memory combined."
+msgstr ""
+
+#: doc/classes/Performance.xml:90 doc/classes/VisualServer.xml:3699
+msgid "The amount of texture memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:93 doc/classes/VisualServer.xml:3702
+msgid "The amount of vertex memory used."
+msgstr ""
+
+#: doc/classes/Performance.xml:96 doc/classes/VisualServer.xml:3693
+msgid ""
+"Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0."
+msgstr ""
+
+#: doc/classes/Performance.xml:99
+msgid "Number of active [RigidBody2D] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:102
+msgid "Number of collision pairs in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:105
+msgid "Number of islands in the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:108
+msgid "Number of active [RigidBody] and [VehicleBody] nodes in the game."
+msgstr ""
+
+#: doc/classes/Performance.xml:111
+msgid "Number of collision pairs in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:114
+msgid "Number of islands in the 3D physics engine."
+msgstr ""
+
+#: doc/classes/Performance.xml:117
+msgid "Output latency of the [AudioServer]."
+msgstr ""
+
+#: doc/classes/Performance.xml:120
+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:16
+msgid ""
+"Generates and sets an optimized translation from the given [Translation] "
+"resource."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:4
+msgid "Direct access object to a physics body in the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:7
+msgid ""
+"Provides direct access to a physics body in the [Physics2DServer], 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/Physics2DDirectBodyState.xml:11
+#: doc/classes/Physics2DDirectSpaceState.xml:11
+#: doc/classes/PhysicsDirectBodyState.xml:11
+#: doc/classes/PhysicsDirectSpaceState.xml:11 doc/classes/RayCast.xml:14
+#: doc/classes/RayCast2D.xml:14 doc/classes/World.xml:10
+#: doc/classes/World2D.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html"
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:18 doc/classes/RigidBody2D.xml:30
+msgid "Adds a constant directional force without affecting rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:26
+#: doc/classes/PhysicsDirectBodyState.xml:27 doc/classes/RigidBody2D.xml:38
+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/Physics2DDirectBodyState.xml:33 doc/classes/RigidBody2D.xml:45
+msgid "Adds a constant rotational force."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:40 doc/classes/RigidBody2D.xml:52
+msgid "Applies a directional impulse without affecting rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:48
+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/Physics2DDirectBodyState.xml:55 doc/classes/RigidBody2D.xml:67
+msgid "Applies a rotational impulse to the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:62
+#: doc/classes/PhysicsDirectBodyState.xml:64
+msgid "Returns the collider's [RID]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:69
+#: doc/classes/PhysicsDirectBodyState.xml:71
+msgid "Returns the collider's object id."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:76
+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/Physics2DDirectBodyState.xml:83
+#: doc/classes/PhysicsDirectBodyState.xml:85
+msgid "Returns the contact position in the collider."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:90
+#: doc/classes/PhysicsDirectBodyState.xml:92
+msgid "Returns the collider's shape index."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:97
+msgid ""
+"Returns the collided shape's metadata. This metadata is different from "
+"[method Object.get_meta], and is set with [method Physics2DServer."
+"shape_set_data]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:104
+#: doc/classes/PhysicsDirectBodyState.xml:99
+msgid "Returns the linear velocity vector at the collider's contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:110
+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/Physics2DDirectBodyState.xml:118
+#: doc/classes/PhysicsDirectBodyState.xml:120
+msgid "Returns the local normal at the contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:125
+#: doc/classes/PhysicsDirectBodyState.xml:127
+msgid "Returns the local position of the contact point."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:132
+#: doc/classes/PhysicsDirectBodyState.xml:134
+msgid "Returns the local shape index of the collision."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:138
+#: doc/classes/PhysicsDirectBodyState.xml:140
+msgid "Returns the current state of the space, useful for queries."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:145
+#: doc/classes/PhysicsDirectBodyState.xml:147
+msgid ""
+"Returns the body's velocity at the given relative position, including both "
+"translation and rotation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:151
+#: doc/classes/PhysicsDirectBodyState.xml:153
+msgid "Calls the built-in force integration code."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:157
+#: doc/classes/PhysicsDirectBodyState.xml:159 doc/classes/RigidBody2D.xml:101
+msgid "The body's rotational velocity."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:160
+#: doc/classes/PhysicsDirectBodyState.xml:164
+msgid "The inverse of the inertia of the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:163
+#: doc/classes/PhysicsDirectBodyState.xml:167
+msgid "The inverse of the mass of the body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:166
+#: doc/classes/PhysicsDirectBodyState.xml:170 doc/classes/RigidBody2D.xml:146
+msgid "The body's linear velocity."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:169
+#: doc/classes/PhysicsDirectBodyState.xml:175
+msgid "If [code]true[/code], this body is currently sleeping (not active)."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:172
+#: doc/classes/PhysicsDirectBodyState.xml:178
+msgid "The timestep (delta) used for the simulation."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:175
+#: doc/classes/PhysicsDirectBodyState.xml:181
+msgid ""
+"The rate at which the body stops rotating, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:178
+#: doc/classes/PhysicsDirectBodyState.xml:184
+msgid "The total gravity vector being currently applied to this body."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:181
+#: doc/classes/PhysicsDirectBodyState.xml:187
+msgid ""
+"The rate at which the body stops moving, if there are not any other forces "
+"moving it."
+msgstr ""
+
+#: doc/classes/Physics2DDirectBodyState.xml:184
+#: doc/classes/PhysicsDirectBodyState.xml:190
+msgid "The body's transformation matrix."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:4
+msgid "Direct access object to a space in the [Physics2DServer]."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:7
+msgid ""
+"Direct access object to a space in the [Physics2DServer]. It's used mainly "
+"to do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:18
+msgid ""
+"Checks how far a [Shape2D] can move without colliding. All the parameters "
+"for the query, including the shape and the motion, are supplied through a "
+"[Physics2DShapeQueryParameters] object.\n"
+"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
+"the motion. The safe proportion is the maximum fraction of the motion that "
+"can be made without a collision. The unsafe proportion is the minimum "
+"fraction of the distance that must be moved for a collision. If no collision "
+"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
+"[b]Note:[/b] Any [Shape2D]s that the shape is already colliding with e.g. "
+"inside of, will be ignored. Use [method collide_shape] to determine the "
+"[Shape2D]s that the shape is already colliding with."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:28
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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/Physics2DDirectSpaceState.xml:35
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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 "
+"Physics2DServer.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/Physics2DDirectSpaceState.xml:55
+msgid ""
+"Checks whether a point is inside any solid 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 "
+"Physics2DServer.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 [PhysicsBody]s or [Area]s, "
+"respectively.\n"
+"[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in "
+"[code]Segments[/code] build mode are not solid shapes. Therefore, they will "
+"not be detected."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:86
+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 "
+"Physics2DServer.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 [PhysicsBody]s or [Area]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/Physics2DDirectSpaceState.xml:103
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[Physics2DShapeQueryParameters] 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 "
+"Physics2DServer.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/Physics2DServer.xml:4
+msgid "Server interface for low-level 2D physics access."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:7
+msgid ""
+"Physics2DServer 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/Physics2DServer.xml:19 doc/classes/PhysicsServer.xml:19
+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/Physics2DServer.xml:34 doc/classes/Physics2DServer.xml:304
+#: doc/classes/PhysicsServer.xml:27 doc/classes/PhysicsServer.xml:298
+msgid ""
+"Assigns the area to a descendant of [Object], so it can exist in the node "
+"tree."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:41 doc/classes/PhysicsServer.xml:34
+msgid ""
+"Removes all shapes from an area. It does not delete the shapes, so they can "
+"be reassigned later."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:47
+msgid ""
+"Creates an [Area2D]. After creating an [Area2D] with this method, assign it "
+"to a space using [method area_set_space] to use the created [Area2D] in the "
+"physics world."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:60 doc/classes/Physics2DServer.xml:372
+#: doc/classes/PhysicsServer.xml:47 doc/classes/PhysicsServer.xml:362
+msgid "Gets the instance ID of the object the area is assigned to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:68
+msgid ""
+"Returns an area parameter value. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:76 doc/classes/PhysicsServer.xml:63
+msgid "Returns the [RID] of the nth shape of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:83 doc/classes/PhysicsServer.xml:70
+msgid "Returns the number of shapes assigned to an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:91 doc/classes/PhysicsServer.xml:78
+msgid "Returns the transform matrix of a shape within an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:98 doc/classes/PhysicsServer.xml:85
+msgid "Returns the space assigned to the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:105 doc/classes/PhysicsServer.xml:92
+msgid "Returns the space override mode for the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:112 doc/classes/PhysicsServer.xml:99
+msgid "Returns the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:120 doc/classes/PhysicsServer.xml:114
+msgid ""
+"Removes a shape from an area. It does not delete the shape, so it can be "
+"reassigned later."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:136 doc/classes/PhysicsServer.xml:130
+msgid "Assigns the area to one or many physics layers."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:144 doc/classes/PhysicsServer.xml:138
+msgid "Sets which physics layers the area will monitor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:153 doc/classes/PhysicsServer.xml:147
+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/Physics2DServer.xml:174
+msgid ""
+"Sets the value for an area parameter. See [enum AreaParameter] for a list of "
+"available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:183 doc/classes/PhysicsServer.xml:185
+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/Physics2DServer.xml:192
+msgid "Disables a given shape in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:201 doc/classes/PhysicsServer.xml:202
+msgid "Sets the transform matrix for an area shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:209 doc/classes/PhysicsServer.xml:210
+msgid "Assigns a space to the area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:217
+msgid ""
+"Sets the space override mode for the area. See [enum AreaSpaceOverrideMode] "
+"for a list of available modes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:225 doc/classes/PhysicsServer.xml:226
+msgid "Sets the transform matrix for an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:240 doc/classes/PhysicsServer.xml:241
+msgid "Adds a body to the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:249
+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/Physics2DServer.xml:259 doc/classes/PhysicsServer.xml:259
+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/Physics2DServer.xml:282
+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/Physics2DServer.xml:311 doc/classes/PhysicsServer.xml:305
+msgid "Removes all shapes from a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:317
+msgid "Creates a physics body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:330 doc/classes/PhysicsServer.xml:320
+msgid "Returns the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:337
+msgid "Returns the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:344
+msgid "Returns the continuous collision detection mode."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:351
+msgid "Returns the [Physics2DDirectBodyState] of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:358 doc/classes/PhysicsServer.xml:348
+msgid ""
+"Returns the maximum contacts that can be reported. See [method "
+"body_set_max_contacts_reported]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:365 doc/classes/PhysicsServer.xml:355
+msgid "Returns the body mode."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:380
+msgid ""
+"Returns the value of a body parameter. See [enum BodyParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:388 doc/classes/PhysicsServer.xml:378
+msgid "Returns the [RID] of the nth shape of a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:395 doc/classes/PhysicsServer.xml:385
+msgid "Returns the number of shapes assigned to a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:403
+msgid "Returns the metadata of a shape of a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:411 doc/classes/PhysicsServer.xml:393
+msgid "Returns the transform matrix of a body shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:418 doc/classes/PhysicsServer.xml:400
+msgid "Returns the [RID] of the space assigned to a body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:426 doc/classes/PhysicsServer.xml:408
+msgid "Returns a body state."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:433 doc/classes/PhysicsServer.xml:429
+msgid ""
+"Returns whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:441
+msgid "Removes a body from the list of bodies exempt from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:449 doc/classes/PhysicsServer.xml:453
+msgid ""
+"Removes a shape from a body. The shape is not deleted, so it can be reused "
+"afterwards."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:457 doc/classes/PhysicsServer.xml:469
+#: doc/classes/RigidBody.xml:105
+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/Physics2DServer.xml:465 doc/classes/PhysicsServer.xml:477
+msgid "Sets the physics layer or layers a body belongs to."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:473 doc/classes/PhysicsServer.xml:485
+msgid "Sets the physics layer or layers a body can collide with."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:481
+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/Physics2DServer.xml:492 doc/classes/PhysicsServer.xml:504
+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/Physics2DServer.xml:500 doc/classes/PhysicsServer.xml:519
+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/Physics2DServer.xml:508
+msgid "Sets the body mode using one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:516 doc/classes/PhysicsServer.xml:535
+msgid ""
+"Sets whether a body uses a callback function to calculate its own physics "
+"(see [method body_set_force_integration_callback])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:525
+msgid ""
+"Sets a body parameter. See [enum BodyParameter] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:534 doc/classes/PhysicsServer.xml:561
+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/Physics2DServer.xml:544
+msgid ""
+"Enables one way collision on body if [code]enable[/code] is [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:553
+msgid "Disables shape in body if [code]disable[/code] is [code]true[/code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:562
+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/Physics2DServer.xml:571 doc/classes/PhysicsServer.xml:578
+msgid "Sets the transform matrix for a body shape."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:579 doc/classes/PhysicsServer.xml:586
+msgid "Assigns a space to the body (see [method space_create])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:588
+msgid ""
+"Sets a body state using one of the [enum BodyState] constants.\n"
+"Note that the method doesn't take effect immediately. The state will change "
+"on the next physics frame."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:603
+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. [Physics2DTestMotionResult] "
+"can be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:633
+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/Physics2DServer.xml:641
+msgid "Returns the value of a damped spring joint parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:650
+msgid ""
+"Sets a damped spring joint parameter. See [enum DampedStringParam] for a "
+"list of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:657
+msgid ""
+"Destroys any of the objects created by Physics2DServer. If the [RID] passed "
+"is not one of the objects that can be created by Physics2DServer, an error "
+"will be sent to the console."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:664
+msgid ""
+"Returns information about the current state of the 2D physics engine. See "
+"[enum ProcessInfo] for a list of available states."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:675
+msgid ""
+"Creates a groove joint between two bodies. If not specified, the bodies are "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:683
+msgid "Returns the value of a joint parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:690
+msgid "Returns a joint's type (see [enum JointType])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:699
+msgid ""
+"Sets a joint parameter. See [enum JointParam] for a list of available "
+"parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:713
+msgid ""
+"Creates a pin joint between two bodies. If not specified, the second body is "
+"assumed to be the joint itself."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:735
+msgid "Activates or deactivates the 2D physics engine."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:742
+msgid ""
+"Sets the amount of iterations for calculating velocities of colliding "
+"bodies. The greater the amount of iterations, the more accurate the "
+"collisions will be. However, a greater amount of iterations requires more "
+"CPU power, which can decrease performance. The default value is [code]8[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:749 doc/classes/PhysicsServer.xml:859
+msgid "Returns the shape data."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:756
+msgid "Returns a shape's type (see [enum ShapeType])."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:764 doc/classes/PhysicsServer.xml:874
+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/Physics2DServer.xml:770 doc/classes/PhysicsServer.xml:897
+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/Physics2DServer.xml:777
+msgid ""
+"Returns the state of a space, a [Physics2DDirectSpaceState]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:785 doc/classes/PhysicsServer.xml:912
+msgid "Returns the value of a space parameter."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:792 doc/classes/PhysicsServer.xml:919
+msgid "Returns whether the space is active."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:800 doc/classes/PhysicsServer.xml:927
+msgid ""
+"Marks a space as active. It will not have an effect, unless it is assigned "
+"to an area or body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:809
+msgid ""
+"Sets the value for a space parameter. See [enum SpaceParameter] for a list "
+"of available parameters."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:815 doc/classes/PhysicsServer.xml:1278
+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/Physics2DServer.xml:818 doc/classes/PhysicsServer.xml:1281
+msgid ""
+"Constant to set/get the maximum distance a shape can be from another before "
+"they are considered separated."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:821 doc/classes/PhysicsServer.xml:1284
+msgid ""
+"Constant to set/get the maximum distance a shape can penetrate another shape "
+"before it is considered a collision."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:824 doc/classes/PhysicsServer.xml:1287
+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/Physics2DServer.xml:827 doc/classes/PhysicsServer.xml:1290
+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/Physics2DServer.xml:830 doc/classes/PhysicsServer.xml:1293
+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/Physics2DServer.xml:833 doc/classes/PhysicsServer.xml:1298
+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/Physics2DServer.xml:836
+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/Physics2DServer.xml:841
+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/Physics2DServer.xml:844
+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/Physics2DServer.xml:847
+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/Physics2DServer.xml:850
+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/Physics2DServer.xml:853
+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/Physics2DServer.xml:856
+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/Physics2DServer.xml:859 doc/classes/PhysicsServer.xml:1173
+msgid ""
+"This constant is used internally by the engine. Any attempt to create this "
+"kind of shape results in an error."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:862 doc/classes/PhysicsServer.xml:1176
+msgid "Constant to set/get gravity strength in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:865 doc/classes/PhysicsServer.xml:1179
+msgid "Constant to set/get gravity vector/center in an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:868 doc/classes/PhysicsServer.xml:1182
+msgid ""
+"Constant to set/get whether the gravity vector of an area is a direction, or "
+"a center point."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:871 doc/classes/PhysicsServer.xml:1185
+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/Physics2DServer.xml:874 doc/classes/PhysicsServer.xml:1188
+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/Physics2DServer.xml:877 doc/classes/PhysicsServer.xml:1191
+msgid "Constant to set/get the linear dampening factor of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:880 doc/classes/PhysicsServer.xml:1194
+msgid "Constant to set/get the angular dampening factor of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:883 doc/classes/PhysicsServer.xml:1197
+msgid "Constant to set/get the priority (order of processing) of an area."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:886 doc/classes/PhysicsServer.xml:1200
+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/Physics2DServer.xml:889 doc/classes/PhysicsServer.xml:1203
+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/Physics2DServer.xml:892 doc/classes/PhysicsServer.xml:1206
+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/Physics2DServer.xml:895 doc/classes/PhysicsServer.xml:1209
+msgid ""
+"This area replaces any gravity/damp, even the default one, and stops taking "
+"into account the rest of the areas."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:898 doc/classes/PhysicsServer.xml:1212
+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/Physics2DServer.xml:901 doc/classes/PhysicsServer.xml:1215
+msgid "Constant for static bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:904 doc/classes/PhysicsServer.xml:1218
+msgid "Constant for kinematic bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:907 doc/classes/PhysicsServer.xml:1221
+msgid "Constant for rigid bodies."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:910 doc/classes/PhysicsServer.xml:1224
+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/Physics2DServer.xml:913 doc/classes/PhysicsServer.xml:1227
+msgid "Constant to set/get a body's bounce factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:916 doc/classes/PhysicsServer.xml:1230
+msgid "Constant to set/get a body's friction."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:919 doc/classes/PhysicsServer.xml:1233
+msgid "Constant to set/get a body's mass."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:922
+msgid "Constant to set/get a body's inertia."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:925 doc/classes/PhysicsServer.xml:1236
+msgid "Constant to set/get a body's gravity multiplier."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:928 doc/classes/PhysicsServer.xml:1239
+msgid "Constant to set/get a body's linear dampening factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:931 doc/classes/PhysicsServer.xml:1242
+msgid "Constant to set/get a body's angular dampening factor."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:934 doc/classes/PhysicsServer.xml:1245
+msgid "Represents the size of the [enum BodyParameter] enum."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:937 doc/classes/PhysicsServer.xml:1248
+msgid "Constant to set/get the current transform matrix of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:940 doc/classes/PhysicsServer.xml:1251
+msgid "Constant to set/get the current linear velocity of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:943 doc/classes/PhysicsServer.xml:1254
+msgid "Constant to set/get the current angular velocity of the body."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:946 doc/classes/PhysicsServer.xml:1257
+msgid "Constant to sleep/wake up a body, or to get whether it is sleeping."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:949 doc/classes/PhysicsServer.xml:1260
+msgid "Constant to set/get whether the body can sleep."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:952
+msgid "Constant to create pin joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:955
+msgid "Constant to create groove joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:958
+msgid "Constant to create damped spring joints."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:967
+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/Physics2DServer.xml:970
+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/Physics2DServer.xml:973
+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/Physics2DServer.xml:976
+msgid ""
+"Disables continuous collision detection. This is the fastest way to detect "
+"body collisions, but can miss small, fast-moving objects."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:979
+msgid ""
+"Enables continuous collision detection by raycasting. It is faster than "
+"shapecasting, but less precise."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:982
+msgid ""
+"Enables continuous collision detection by shapecasting. It is the slowest "
+"CCD method, and the most precise."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:985 doc/classes/PhysicsServer.xml:1263
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object enters one of its shapes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:988 doc/classes/PhysicsServer.xml:1266
+msgid ""
+"The value of the first parameter and area callback function receives, when "
+"an object exits one of its shapes."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:991 doc/classes/PhysicsServer.xml:1269
+msgid "Constant to get the number of objects that are not sleeping."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:994 doc/classes/PhysicsServer.xml:1272
+msgid "Constant to get the number of possible collisions."
+msgstr ""
+
+#: doc/classes/Physics2DServer.xml:997 doc/classes/PhysicsServer.xml:1275
+msgid ""
+"Constant to get the number of space regions where a collision could occur."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:4
+msgid "Parameters to be sent to a 2D shape physics query."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:7
+msgid ""
+"This class contains the shape and other parameters for 2D intersection/"
+"collision queries."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:16
+msgid ""
+"Sets the [Shape2D] that will be used for collision/intersection queries."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:22
+msgid "If [code]true[/code], the query will take [Area2D]s into account."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:25
+msgid ""
+"If [code]true[/code], the query will take [PhysicsBody2D]s into account."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:28
+#: doc/classes/PhysicsShapeQueryParameters.xml:28
+msgid ""
+"The physics layer(s) the query will take into account (as a bitmask). See "
+"[url=https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url] in the documentation for more information."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:31
+#: doc/classes/PhysicsShapeQueryParameters.xml:31
+msgid ""
+"The list of objects or object [RID]s that will be excluded from collisions."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:34
+#: doc/classes/PhysicsShapeQueryParameters.xml:34
+msgid "The collision margin for the shape."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:37
+msgid "The motion of the shape being queried for."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:40
+#: doc/classes/PhysicsShapeQueryParameters.xml:37
+msgid "The queried shape's [RID]. See also [method set_shape]."
+msgstr ""
+
+#: doc/classes/Physics2DShapeQueryParameters.xml:43
+#: doc/classes/PhysicsShapeQueryParameters.xml:40
+msgid "The queried shape's transform matrix."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:4
+msgid "Base class for all objects affected by physics in 3D space."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:7
+msgid ""
+"PhysicsBody is an abstract base class for implementing a physics body. All "
+"*Body types inherit from it."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:17 doc/classes/PhysicsBody2D.xml:17
+#: doc/classes/SoftBody.xml:17
+msgid "Adds a body to the list of bodies that this body can't collide with."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:23 doc/classes/PhysicsBody2D.xml:23
+#: doc/classes/SoftBody.xml:23
+msgid ""
+"Returns an array of nodes that were added as collision exceptions for this "
+"body."
+msgstr ""
+
+#: doc/classes/PhysicsBody.xml:30 doc/classes/PhysicsBody2D.xml:30
+#: doc/classes/SoftBody.xml:58
+msgid ""
+"Removes a body from the list of bodies that this body can't collide with."
+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:37
+msgid ""
+"Both collision_layer and collision_mask. Returns collision_layer when "
+"accessed. Updates collision_layer and collision_mask when modified."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:4
+msgid "Direct access object to a physics body in the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:7
+msgid ""
+"Provides direct access to a physics body in the [PhysicsServer], 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 RigidBody._integrate_forces]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.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/PhysicsDirectBodyState.xml:34
+msgid "Adds a constant rotational force without affecting position."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:41
+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/PhysicsDirectBodyState.xml:50
+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/PhysicsDirectBodyState.xml:57
+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/PhysicsDirectBodyState.xml:78
+msgid "Returns the collider object."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:105
+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 RigidBody.contact_monitor]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectBodyState.xml:113
+msgid "Impulse created by the contact. Only implemented for Bullet physics."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:4
+msgid "Direct access object to a space in the [PhysicsServer]."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:7
+msgid ""
+"Direct access object to a space in the [PhysicsServer]. It's used mainly to "
+"do queries against objects and areas residing in a given space."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:19
+msgid ""
+"Checks how far a [Shape] can move without colliding. All the parameters for "
+"the query, including the shape, are supplied through a "
+"[PhysicsShapeQueryParameters] object.\n"
+"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
+"the motion. The safe proportion is the maximum fraction of the motion that "
+"can be made without a collision. The unsafe proportion is the minimum "
+"fraction of the distance that must be moved for a collision. If no collision "
+"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
+"[b]Note:[/b] Any [Shape]s that the shape is already colliding with e.g. "
+"inside of, will be ignored. Use [method collide_shape] to determine the "
+"[Shape]s that the shape is already colliding with."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:29
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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/PhysicsDirectSpaceState.xml:36
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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 [Area], 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/PhysicsDirectSpaceState.xml:55
+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 [PhysicsBody]s or [Area]s, "
+"respectively."
+msgstr ""
+
+#: doc/classes/PhysicsDirectSpaceState.xml:71
+msgid ""
+"Checks the intersections of a shape, given through a "
+"[PhysicsShapeQueryParameters] 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 [PhysicsBody]."
+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:18
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness)."
+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/PhysicsServer.xml:4
+msgid "Server interface for low-level physics access."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:7
+msgid ""
+"PhysicsServer 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/PhysicsServer.xml:40
+msgid "Creates an [Area]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:55
+msgid ""
+"Returns an area parameter value. A list of available parameters is on the "
+"[enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:106
+msgid "If [code]true[/code], area collides with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:168
+msgid ""
+"Sets the value for an area parameter. A list of available parameters is on "
+"the [enum AreaParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:176
+msgid "Sets object pickable with rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:218
+msgid ""
+"Sets the space override mode for the area. The modes are described in the "
+"[enum AreaSpaceOverrideMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:282
+msgid ""
+"Gives the body a push at a [code]position[/code] in the direction of the "
+"[code]impulse[/code]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:290
+msgid "Gives the body a push to rotate it."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:313
+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/PhysicsServer.xml:327
+msgid ""
+"Returns the physics layer or layers a body can collide with.\n"
+"-"
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:335
+msgid "Returns the [PhysicsDirectBodyState] of the body."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:370
+msgid ""
+"Returns the value of a body parameter. A list of available parameters is on "
+"the [enum BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:422
+msgid ""
+"If [code]true[/code], the continuous collision detection mode is enabled."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:436
+msgid "If [code]true[/code], the body can be detected by rays."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:444
+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/PhysicsServer.xml:493
+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/PhysicsServer.xml:527
+msgid "Sets the body mode, from one of the [enum BodyMode] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:544
+msgid ""
+"Sets a body parameter. A list of available parameters is on the [enum "
+"BodyParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:552
+msgid "Sets the body pickable with rays if [code]enabled[/code] is set."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:595
+msgid "Sets a body state (see [enum BodyState] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:608
+msgid ""
+"Returns [code]true[/code] if a collision would result from moving in the "
+"given direction from a given point in space. [PhysicsTestMotionResult] can "
+"be passed to return additional information in."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:616
+msgid ""
+"Gets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:625
+msgid ""
+"Sets a cone_twist_joint parameter (see [enum ConeTwistJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:632
+msgid ""
+"Destroys any of the objects created by PhysicsServer. If the [RID] passed is "
+"not one of the objects that can be created by PhysicsServer, an error will "
+"be sent to the console."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:641
+msgid ""
+"Gets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:650
+msgid ""
+"Gets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:660
+msgid ""
+"Sets a generic_6_DOF_joint flag (see [enum G6DOFJointAxisFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:670
+msgid ""
+"Sets a generic_6_DOF_joint parameter (see [enum G6DOFJointAxisParam] "
+"constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:677
+msgid "Returns an Info defined by the [enum ProcessInfo] input given."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:685
+msgid "Gets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:693
+msgid "Gets a hinge_joint parameter (see [enum HingeJointParam])."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:702
+msgid "Sets a hinge_joint flag (see [enum HingeJointFlag] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:711
+msgid "Sets a hinge_joint parameter (see [enum HingeJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:721
+msgid "Creates a [ConeTwistJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:731
+msgid "Creates a [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:741
+msgid "Creates a [HingeJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:751
+msgid "Creates a [PinJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:761
+msgid "Creates a [SliderJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:768
+msgid "Gets the priority value of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:775
+msgid "Returns the type of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:783
+msgid "Sets the priority value of the Joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:790
+msgid ""
+"Returns position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:797
+msgid ""
+"Returns position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:805
+msgid "Gets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:813
+msgid "Sets position of the joint in the local space of body a of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:821
+msgid "Sets position of the joint in the local space of body b of the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:830
+msgid "Sets a pin_joint parameter (see [enum PinJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:837
+msgid "Activates or deactivates the 3D physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:844
+msgid ""
+"Sets the amount of iterations for calculating velocities of colliding "
+"bodies. The greater the amount of iterations, the more accurate the "
+"collisions will be. However, a greater amount of iterations requires more "
+"CPU power, which can decrease performance. The default value is [code]8[/"
+"code].\n"
+"[b]Note:[/b] Only has an effect when using the GodotPhysics engine, not the "
+"default Bullet physics engine."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:852
+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/PhysicsServer.xml:866
+msgid "Returns the type of shape (see [enum ShapeType] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:882 doc/classes/PhysicsServer.xml:891
+msgid "Gets a slider_joint parameter (see [enum SliderJointParam] constants)."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:904
+msgid ""
+"Returns the state of a space, a [PhysicsDirectSpaceState]. This object can "
+"be used to make collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:936
+msgid ""
+"Sets the value for a space parameter. A list of available parameters is on "
+"the [enum SpaceParameter] constants."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:942
+msgid "The [Joint] is a [PinJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:945
+msgid "The [Joint] is a [HingeJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:948
+msgid "The [Joint] is a [SliderJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:951
+msgid "The [Joint] is a [ConeTwistJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:954
+msgid "The [Joint] is a [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:957
+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/PhysicsServer.xml:961
+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/PhysicsServer.xml:965
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint "
+"puts on its ends."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:971
+msgid "The maximum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:974
+msgid "The minimum rotation across the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:991
+msgid "If [code]true[/code], the Hinge has a maximum and a minimum rotation."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:994
+msgid "If [code]true[/code], a motor turns the Hinge."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:997 doc/classes/SliderJoint.xml:76
+#: doc/classes/SliderJoint.xml:99
+msgid ""
+"The maximum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1000 doc/classes/SliderJoint.xml:67
+#: doc/classes/SliderJoint.xml:102
+msgid ""
+"The minimum difference between the pivot points on their X axis before "
+"damping happens."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1003 doc/classes/SliderJoint.xml:73
+#: doc/classes/SliderJoint.xml:105
+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/PhysicsServer.xml:1006 doc/classes/SliderJoint.xml:108
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocityenergy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1009 doc/classes/SliderJoint.xml:111
+msgid "The amount of damping once the slider limits are surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1012 doc/classes/SliderJoint.xml:85
+#: doc/classes/SliderJoint.xml:114
+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/PhysicsServer.xml:1015 doc/classes/SliderJoint.xml:82
+#: doc/classes/SliderJoint.xml:117
+msgid "The amount of restitution inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1018 doc/classes/SliderJoint.xml:79
+#: doc/classes/SliderJoint.xml:120
+msgid "The amount of damping inside the slider limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1021 doc/classes/SliderJoint.xml:94
+#: doc/classes/SliderJoint.xml:123
+msgid "A factor applied to the movement across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1024 doc/classes/SliderJoint.xml:91
+#: doc/classes/SliderJoint.xml:126
+msgid ""
+"The amount of restitution when movement is across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1027 doc/classes/SliderJoint.xml:88
+#: doc/classes/SliderJoint.xml:129
+msgid ""
+"The amount of damping when movement is across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1030 doc/classes/SliderJoint.xml:43
+#: doc/classes/SliderJoint.xml:132
+msgid "The upper limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1033 doc/classes/SliderJoint.xml:32
+#: doc/classes/SliderJoint.xml:135
+msgid "The lower limit of rotation in the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1036 doc/classes/SliderJoint.xml:138
+msgid "A factor applied to the all rotation once the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1039 doc/classes/SliderJoint.xml:141
+msgid "The amount of restitution of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1042 doc/classes/SliderJoint.xml:144
+msgid "The amount of damping of the rotation when the limit is surpassed."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1045
+msgid "A factor that gets applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1048 doc/classes/SliderJoint.xml:49
+#: doc/classes/SliderJoint.xml:150
+msgid "The amount of restitution of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1051 doc/classes/SliderJoint.xml:46
+#: doc/classes/SliderJoint.xml:153
+msgid "The amount of damping of the rotation in the limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1054
+msgid ""
+"A factor that gets applied to the all rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1057 doc/classes/SliderJoint.xml:58
+#: doc/classes/SliderJoint.xml:159
+msgid ""
+"The amount of restitution of the rotation across axes orthogonal to the "
+"slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1060 doc/classes/SliderJoint.xml:55
+#: doc/classes/SliderJoint.xml:162
+msgid ""
+"The amount of damping of the rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1063
+msgid "Represents the size of the [enum SliderJointParam] enum."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1080
+msgid ""
+"The ease with which the Joint twists, if it's too low, it takes more force "
+"to twist the joint."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1092
+msgid ""
+"A factor that gets applied to the movement across the axes. The lower, the "
+"slower the movement."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1095
+msgid ""
+"The amount of restitution on the axes movement. The lower, the more velocity-"
+"energy gets lost."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1101
+msgid "The velocity that the joint's linear motor will attempt to reach."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1104
+msgid ""
+"The maximum force that the linear motor can apply while trying to reach the "
+"target velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1113
+msgid "A factor that gets multiplied onto all rotations across the axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1125
+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/PhysicsServer.xml:1134
+msgid ""
+"If [code]set[/code] there is linear motion possible within the given limits."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1137
+msgid "If [code]set[/code] there is rotational motion possible."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1140
+msgid "If [code]set[/code] there is a rotational motor across these axes."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1143
+msgid ""
+"If [code]set[/code] there is a linear motor on this axis that targets a "
+"specific velocity."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1146
+msgid "The [Shape] is a [PlaneShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1149
+msgid "The [Shape] is a [RayShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1152
+msgid "The [Shape] is a [SphereShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1155
+msgid "The [Shape] is a [BoxShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1158
+msgid "The [Shape] is a [CapsuleShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1161
+msgid "The [Shape] is a [CylinderShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1164
+msgid "The [Shape] is a [ConvexPolygonShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1167
+msgid "The [Shape] is a [ConcavePolygonShape]."
+msgstr ""
+
+#: doc/classes/PhysicsServer.xml:1170
+msgid "The [Shape] is a [HeightMapShape]."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:4
+msgid "Parameters to be sent to a 3D shape physics query."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:7
+msgid ""
+"This class contains the shape and other parameters for 3D intersection/"
+"collision queries."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:16
+msgid "Sets the [Shape] that will be used for collision/intersection queries."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:22
+msgid "If [code]true[/code], the query will take [Area]s into account."
+msgstr ""
+
+#: doc/classes/PhysicsShapeQueryParameters.xml:25
+msgid "If [code]true[/code], the query will take [PhysicsBody]s into account."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:4
+msgid "Pin joint for 3D PhysicsBodies."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:7
+msgid ""
+"Pin joint for 3D rigid bodies. It pins 2 bodies (rigid or static) together. "
+"See also [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:30 doc/classes/PinJoint.xml:41
+msgid ""
+"The force with which the pinned objects stay in positional relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:33 doc/classes/PinJoint.xml:44
+msgid ""
+"The force with which the pinned objects stay in velocity relation to each "
+"other. The higher, the stronger."
+msgstr ""
+
+#: doc/classes/PinJoint.xml:36 doc/classes/PinJoint.xml:47
+msgid ""
+"If above 0, this value is the maximum value for an impulse that this Joint "
+"produces."
+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/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:20
+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:29
+msgid "Creates a plane from the three points, given in clockwise order."
+msgstr ""
+
+#: doc/classes/Plane.xml:37
+msgid "Creates a plane from the normal and the plane's distance to the origin."
+msgstr ""
+
+#: doc/classes/Plane.xml:43
+msgid "Returns the center of the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:50
+msgid ""
+"Returns the shortest distance from the plane to the position [code]point[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Plane.xml:56
+msgid ""
+"Returns the center of the plane.\n"
+"This method is deprecated, please use [method center] instead."
+msgstr ""
+
+#: doc/classes/Plane.xml:65
+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:73
+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:81
+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:89
+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:96
+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:103
+msgid ""
+"Returns [code]true[/code] if [code]point[/code] is located above the plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:109
+msgid "Returns a copy of the plane, normalized."
+msgstr ""
+
+#: doc/classes/Plane.xml:116
+msgid ""
+"Returns the orthogonal projection of [code]point[/code] into a point in the "
+"plane."
+msgstr ""
+
+#: doc/classes/Plane.xml:122
+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:126
+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:130
+msgid "The X component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:133
+msgid "The Y component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:136
+msgid "The Z component of the plane's [member normal] vector."
+msgstr ""
+
+#: doc/classes/Plane.xml:141
+msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
+msgstr ""
+
+#: doc/classes/Plane.xml:144
+msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
+msgstr ""
+
+#: doc/classes/Plane.xml:147
+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.\n"
+"[b]Note:[/b] When using a large textured [PlaneMesh] (e.g. as a floor), you "
+"may stumble upon UV jittering issues depending on the camera angle. To solve "
+"this, increase [member subdivide_depth] and [member subdivide_width] until "
+"you no longer notice UV jittering."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:16
+msgid "Offset from the origin of the generated plane. Useful for particles."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:19
+msgid "Size of the generated plane."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:22
+msgid "Number of subdivision along the Z axis."
+msgstr ""
+
+#: doc/classes/PlaneMesh.xml:25
+msgid "Number of subdivision along the X axis."
+msgstr ""
+
+#: doc/classes/PlaneShape.xml:4
+msgid "Infinite plane shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/PlaneShape.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 "
+"[PlaneShape] is used in a [PhysicsBody], it will cause colliding objects "
+"placed \"below\" it to teleport \"above\" the plane."
+msgstr ""
+
+#: doc/classes/PlaneShape.xml:15
+msgid "The [Plane] used by the [PlaneShape] for collision."
+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 "
+"[SpatialMaterial] by setting [member SpatialMaterial.flags_use_point_size] "
+"and the variable [member SpatialMaterial.params_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.\n"
+"[b]Note:[/b] By default, Godot can only draw up to 4,096 polygon points at a "
+"time. To increase this limit, open the Project Settings and increase [member "
+"ProjectSettings.rendering/limits/buffers/canvas_polygon_buffer_size_kb] and "
+"[member ProjectSettings.rendering/limits/buffers/"
+"canvas_polygon_index_buffer_size_kb]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:18
+msgid ""
+"Adds a bone with the specified [code]path[/code] and [code]weights[/code]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:24
+msgid "Removes all bones from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:31
+msgid "Removes the specified bone from this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:37
+msgid "Returns the number of bones in this [Polygon2D]."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:44
+msgid "Returns the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:51
+msgid "Returns the height values of the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:59
+msgid "Sets the path to the node associated with the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:67
+msgid "Sets the weight values for the specified bone."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:73
+msgid "If [code]true[/code], polygon edges will be anti-aliased."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:78
+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:83
+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:86
+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:89
+msgid "The offset applied to each vertex."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:92
+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 [PoolVector2Array] rather than a "
+"reference."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:100
+msgid ""
+"The polygon's fill texture. Use [code]uv[/code] to set texture coordinates."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:103
+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:106
+msgid "The texture's rotation in radians."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:109
+msgid "The texture's rotation in degrees."
+msgstr ""
+
+#: doc/classes/Polygon2D.xml:112
+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:115
+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:118
+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/PoolByteArray.xml:4
+msgid "A pooled [Array] of bytes."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold bytes. Optimized for memory usage, "
+"does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:17
+msgid ""
+"Constructs a new [PoolByteArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:29
+msgid "Appends a [PoolByteArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:36
+msgid ""
+"Returns a new [PoolByteArray] with the data compressed. Set the compression "
+"mode using one of [enum File.CompressionMode]'s constants."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:44
+msgid ""
+"Returns a new [PoolByteArray] 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/PoolByteArray.xml:52
+msgid ""
+"Returns a new [PoolByteArray] with the data decompressed. Set the "
+"compression mode using one of [enum File.CompressionMode]'s constants. "
+"[b]This method only accepts gzip and deflate compression modes.[/b]\n"
+"This method is potentially slower than [code]decompress[/code], as it may "
+"have to re-allocate it's output buffer multiple times while decompressing, "
+"where as [code]decompress[/code] knows it's output buffer size from the "
+"begining.\n"
+"\n"
+"GZIP has a maximal compression ratio of 1032:1, meaning it's very possible "
+"for a small compressed payload to decompress to a potentially very large "
+"output. To guard against this, you may provide a maximum size this function "
+"is allowed to allocate in bytes via [code]max_output_size[/code]. Passing -1 "
+"will allow for unbounded output. If any positive value is passed, and the "
+"decompression exceeds that ammount in bytes, then an error will be returned."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:67
+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/PoolByteArray.xml:73
+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/PoolByteArray.xml:79
+msgid ""
+"Returns a hexadecimal representation of this array as a [String].\n"
+"[codeblock]\n"
+"var array = PoolByteArray([11, 46, 255])\n"
+"print(array.hex_encode()) # Prints: 0b2eff\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:91 doc/classes/PoolColorArray.xml:43
+#: doc/classes/PoolRealArray.xml:44 doc/classes/PoolStringArray.xml:44
+#: doc/classes/PoolVector2Array.xml:44 doc/classes/PoolVector3Array.xml:43
+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/PoolByteArray.xml:102 doc/classes/PoolRealArray.xml:55
+msgid "Appends an element at the end of the array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:108 doc/classes/PoolColorArray.xml:60
+#: doc/classes/PoolIntArray.xml:61 doc/classes/PoolRealArray.xml:61
+#: doc/classes/PoolStringArray.xml:68 doc/classes/PoolVector2Array.xml:61
+#: doc/classes/PoolVector3Array.xml:60
+msgid "Removes an element from the array by index."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
+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.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:122
+msgid "Changes the byte at the given index."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
+msgid "Returns the size of the array."
+msgstr ""
+
+#: doc/classes/PoolByteArray.xml:136
+msgid ""
+"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
+"new [PoolByteArray]. Any negative index is considered to be from the end of "
+"the array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:4
+msgid "A pooled [Array] of [Color]."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Color]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:17
+msgid ""
+"Constructs a new [PoolColorArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:29
+msgid "Appends a [PoolColorArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:54 doc/classes/PoolIntArray.xml:55
+msgid "Appends a value to the array."
+msgstr ""
+
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
+msgid "Changes the [Color] at the given index."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:4
+msgid "A pooled [Array] of integers ([int])."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold integer values ([int]). Optimized "
+"for memory usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] This type is limited to signed 32-bit integers, which means it "
+"can only 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."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:18
+msgid ""
+"Constructs a new [PoolIntArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:30
+msgid "Appends a [PoolIntArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:44
+msgid ""
+"Inserts a new int 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/PoolIntArray.xml:75
+msgid "Changes the int at the given index."
+msgstr ""
+
+#: doc/classes/PoolIntArray.xml:81
+msgid "Returns the array size."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:4
+msgid "A pooled [Array] of reals ([float])."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold floating-point values. Optimized "
+"for memory usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference.\n"
+"[b]Note:[/b] Unlike primitive [float]s which are 64-bit, numbers stored in "
+"[PoolRealArray] are 32-bit floats. This means values stored in "
+"[PoolRealArray] have lower precision compared to primitive [float]s. If you "
+"need to store 64-bit floats in an array, use a generic [Array] with [float] "
+"elements as these will still be 64-bit. However, using a generic [Array] to "
+"store [float]s will use roughly 6 times more memory compared to a "
+"[PoolRealArray]."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:18
+msgid ""
+"Constructs a new [PoolRealArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:30
+msgid "Appends a [PoolRealArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolRealArray.xml:75
+msgid "Changes the float at the given index."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:4
+msgid "A pooled [Array] of [String]."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:7
+msgid ""
+"An [Array] specifically designed to hold [String]s. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:18
+msgid ""
+"Constructs a new [PoolStringArray]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:30
+msgid "Appends a [PoolStringArray] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:56
+msgid ""
+"Returns a [String] with each element of the array joined with the given "
+"[code]delimiter[/code]."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:62
+msgid "Appends a string element at end of the array."
+msgstr ""
+
+#: doc/classes/PoolStringArray.xml:81
+msgid "Changes the [String] at the given index."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:4
+msgid "A pooled [Array] of [Vector2]."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector2]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:11 doc/classes/TileMap.xml:15
+#: doc/classes/TileSet.xml:15
+msgid "https://godotengine.org/asset-library/asset/519"
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:18
+msgid ""
+"Constructs a new [PoolVector2Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:30
+msgid "Appends a [PoolVector2Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:55
+msgid "Inserts a [Vector2] at the end."
+msgstr ""
+
+#: doc/classes/PoolVector2Array.xml:74
+msgid "Changes the [Vector2] at the given index."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:4
+msgid "A pooled [Array] of [Vector3]."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:7
+msgid ""
+"An [Array] specifically designed to hold [Vector3]. Optimized for memory "
+"usage, does not fragment the memory.\n"
+"[b]Note:[/b] This type is passed by value and not by reference."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:17
+msgid ""
+"Constructs a new [PoolVector3Array]. Optionally, you can pass in a generic "
+"[Array] that will be converted."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:29
+msgid "Appends a [PoolVector3Array] at the end of this array."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:54
+msgid "Inserts a [Vector3] at the end."
+msgstr ""
+
+#: doc/classes/PoolVector3Array.xml:73
+msgid "Changes the [Vector3] at the given index."
+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. All popup methods ensure correct placement within the viewport."
+msgstr ""
+
+#: doc/classes/Popup.xml:16
+msgid "Popup (show the control in modal form)."
+msgstr ""
+
+#: doc/classes/Popup.xml:23
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to its current canvas transform, at the current size, or at a size "
+"determined by [code]size[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:31
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, clamping the size to [code]size[/code], "
+"then ensuring the popup is no larger than the viewport size multiplied by "
+"[code]fallback_ratio[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:38
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, ensuring the size is never smaller than "
+"[code]minsize[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:45
+msgid ""
+"Popup (show the control in modal form) in the center of the screen relative "
+"to the current canvas transform, scaled at a ratio of size of the screen."
+msgstr ""
+
+#: doc/classes/Popup.xml:51
+msgid "Shrink popup to keep to the minimum size of content."
+msgstr ""
+
+#: doc/classes/Popup.xml:57
+msgid ""
+"If [code]true[/code], the popup will not be hidden when a click event occurs "
+"outside of it, or when it receives the [code]ui_cancel[/code] action event.\n"
+"[b]Note:[/b] Enabling this property doesn't affect the Close or Cancel "
+"buttons' behavior in dialogs that inherit from this class. As a workaround, "
+"you can use [method WindowDialog.get_close_button] or [method "
+"ConfirmationDialog.get_cancel] and hide the buttons in question by setting "
+"their [member CanvasItem.visible] property to [code]false[/code]."
+msgstr ""
+
+#: doc/classes/Popup.xml:65
+msgid ""
+"Emitted when a popup is about to be shown. This is often used in [PopupMenu] "
+"to clear the list of options then create a new one according to the current "
+"context."
+msgstr ""
+
+#: doc/classes/Popup.xml:70
+msgid "Emitted when a popup is hidden."
+msgstr ""
+
+#: doc/classes/Popup.xml:76
+msgid "Notification sent right after the popup is shown."
+msgstr ""
+
+#: doc/classes/Popup.xml:79
+msgid "Notification sent right after the popup is hidden."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:4
+msgid "Base class for popup dialogs."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:7
+msgid ""
+"PopupDialog is a base class for popup dialogs, along with [WindowDialog]."
+msgstr ""
+
+#: doc/classes/PopupDialog.xml:17
+msgid "Sets a custom [StyleBox] for the panel of the [PopupDialog]."
+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:18
+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:29
+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:41
+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:53
+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:65
+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:76
+msgid "Same as [method add_icon_check_item], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:86
+msgid ""
+"Same as [method add_icon_check_shortcut], but uses a radio check button."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:96
+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:106
+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:118
+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:129
+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:140
+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:150
+msgid ""
+"Adds a separator between items. Separators also occupy an index, which you "
+"can set by using the [code]id[/code] parameter.\n"
+"A [code]label[/code] can optionally be provided, which will appear at the "
+"center of the separator."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:160
+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:170
+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:177
+msgid "Removes all items from the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:183
+msgid ""
+"Returns the index of the currently focused item. Returns [code]-1[/code] if "
+"no item is focused."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:190
+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:196
+msgid "Returns the number of items in the [PopupMenu]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:210
+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:217
+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:224
+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:231
+msgid ""
+"Returns the [ShortCut] associated with the specified [code]idx[/code] item."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:238
+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:252
+msgid ""
+"Returns the tooltip associated with the specified index index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:258
+msgid ""
+"Returns [code]true[/code] if the popup will be hidden when the window loses "
+"focus or not."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:265
+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:273
+msgid ""
+"Returns [code]true[/code] if the item at index [code]idx[/code] is checked."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:280
+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:288
+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:296
+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:303
+msgid "Returns [code]true[/code] if the specified item's shortcut is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:310
+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:318
+msgid "Hides the [PopupMenu] when the window loses focus."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:326
+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:334
+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:343
+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:351
+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:359
+msgid "Sets the checkstate status of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:367
+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:375
+msgid "Replaces the [Texture] icon of the specified [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:383
+msgid "Sets the [code]id[/code] of the item at index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:391
+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:399
+msgid ""
+"Sets the state of a multistate item. See [method add_multistate_item] for "
+"details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:408
+msgid "Sets a [ShortCut] for the specified item [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:416
+msgid "Disables the [ShortCut] of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:424
+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:440
+msgid ""
+"Sets the [String] tooltip of the item at the specified index [code]idx[/"
+"code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:447
+msgid ""
+"Toggles the check state of the item of the specified index [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:454
+msgid ""
+"Cycle to the next state of a multistate item. See [method "
+"add_multistate_item] for details."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:460
+msgid "If [code]true[/code], allows navigating [PopupMenu] with letter keys."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:464
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
+"is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:467
+msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:470
+msgid ""
+"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:473
+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:480
+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:486
+msgid ""
+"Emitted when an item of some [code]id[/code] is pressed or its accelerator "
+"is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:492
+msgid ""
+"Emitted when an item of some [code]index[/code] is pressed or its "
+"accelerator is activated."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:500
+msgid "[Texture] icon for the checked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:503
+msgid "[Font] used for the menu items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:506
+msgid "The default text [Color] for menu items' names."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:509
+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:512
+msgid "[Color] used for disabled menu items' text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:515
+msgid "[Color] used for the hovered text."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:518
+msgid "[Color] used for labeled separators' text. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:521
+msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:524
+msgid ""
+"The horizontal space between the item's name and the shortcut text/submenu "
+"arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:527
+msgid ""
+"[StyleBox] for the left side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:530
+msgid ""
+"[StyleBox] for the right side of labeled separator. See [method "
+"add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:533
+msgid "Default [StyleBox] of the [PopupMenu] items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:536
+msgid "[StyleBox] used when the [PopupMenu] item is disabled."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:539
+msgid "[Texture] icon for the checked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:542
+msgid "[Texture] icon for the unchecked radio button items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:545
+msgid "[StyleBox] used for the separators. See [method add_separator]."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:548
+msgid "[Texture] icon for the submenu arrow."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:551
+msgid "[Texture] icon for the unchecked checkbox items."
+msgstr ""
+
+#: doc/classes/PopupMenu.xml:554
+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 [WindowDialog]."
+msgstr ""
+
+#: doc/classes/PopupPanel.xml:17
+msgid "The background panel style of this [PopupPanel]."
+msgstr ""
+
+#: doc/classes/Portal.xml:4
+msgid "Portal nodes are used to enable visibility between [Room]s."
+msgstr ""
+
+#: doc/classes/Portal.xml:7
+msgid ""
+"[Portal]s are a special type of [MeshInstance] that allow the portal culling "
+"system to 'see' from one room to the next. They often correspond to doors "
+"and windows in level geometry. By only allowing [Camera]s to see through "
+"portals, this allows the system to cull out all the objects in rooms that "
+"cannot be seen through portals. This is a form of [b]occlusion culling[/b], "
+"and can greatly increase performance.\n"
+"There are some limitations to the form of portals:\n"
+"They must be single sided convex polygons, and usually you would orientate "
+"their front faces [b]outward[/b] from the [Room] they are placed in. The "
+"vertices should be positioned on a single plane (although their positioning "
+"does not have to be perfect).\n"
+"There is no need to place an opposite portal in an adjacent room, links are "
+"made two-way automatically."
+msgstr ""
+
+#: doc/classes/Portal.xml:20 doc/classes/Room.xml:21
+msgid "Sets individual points. Primarily for use by the editor."
+msgstr ""
+
+#: doc/classes/Portal.xml:26
+msgid ""
+"This is a shortcut for setting the linked [Room] in the name of the [Portal] "
+"(the name is used during conversion)."
+msgstr ""
+
+#: doc/classes/Portal.xml:29
+msgid ""
+"The points defining the shape of the [Portal] polygon (which should be "
+"convex).\n"
+"These are defined in 2D, with [code]0,0[/code] being the origin of the "
+"[Portal] node's [member Spatial.global_transform].\n"
+"[b]Note:[/b] These raw points are sanitized for winding order internally."
+msgstr ""
+
+#: doc/classes/Portal.xml:34
+msgid ""
+"Visibility through [Portal]s can be turned on and off at runtime - this is "
+"useful for having closable doors."
+msgstr ""
+
+#: doc/classes/Portal.xml:37
+msgid ""
+"Some objects are so big that they may be present in more than one [Room] "
+"('sprawling'). As we often don't want objects that *just* breach the edges "
+"to be assigned to neighbouring rooms, you can assign an extra margin through "
+"the [Portal] to allow objects to breach without sprawling."
+msgstr ""
+
+#: doc/classes/Portal.xml:40
+msgid ""
+"Portals default to being two way - see through in both directions, however "
+"you can make them one way, visible from the source room only."
+msgstr ""
+
+#: doc/classes/Portal.xml:43
+msgid ""
+"In most cases you will want to use the default [Portal] margin in your "
+"portals (this is set in the [RoomManager]).\n"
+"If you want to override this default, set this value to [code]false[/code], "
+"and the local [member portal_margin] will take effect."
+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 [Spatial], 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:15
+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:29
+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 SpatialMaterial.CULL_BACK] in "
+"[member SpatialMaterial.params_cull_mode]."
+msgstr ""
+
+#: doc/classes/PrimitiveMesh.xml:33
+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/ProceduralSky.xml:4
+msgid ""
+"Type of [Sky] that is generated procedurally based on user input parameters."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:7
+msgid ""
+"ProceduralSky 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 ProceduralSky is updated on the CPU after the parameters change. It is "
+"stored in a texture and then displayed as a background in the scene. This "
+"makes it relatively unsuitable for real-time updates during gameplay. "
+"However, with a small enough texture size, it can still be updated "
+"relatively frequently, as it is updated on a background thread when multi-"
+"threading is available."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:16
+msgid "Color of the ground at the bottom."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:19
+msgid ""
+"How quickly the [member ground_horizon_color] fades into the [member "
+"ground_bottom_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:22
+msgid "Amount of energy contribution from the ground."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:25
+msgid "Color of the ground at the horizon."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:28
+msgid ""
+"How quickly the [member sky_horizon_color] fades into the [member "
+"sky_top_color]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:31
+msgid "Amount of energy contribution from the sky."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:34
+msgid "Color of the sky at the horizon."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:37
+msgid "Color of the sky at the top."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:40
+msgid "Distance from center of sun where it fades out completely."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:43
+msgid "Distance from sun where it goes from solid to starting to fade."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:46
+msgid "The sun's color."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:49
+msgid ""
+"How quickly the sun fades away between [member sun_angle_min] and [member "
+"sun_angle_max]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:52
+msgid "Amount of energy contribution from the sun."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:55
+msgid "The sun's height using polar coordinates."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:58
+msgid "The direction of the sun using polar coordinates."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:61
+msgid ""
+"Size of [Texture] that the ProceduralSky will generate. The size is set "
+"using [enum TextureSize]."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:66
+msgid "Sky texture will be 256x128."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:69
+msgid "Sky texture will be 512x256."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:72
+msgid "Sky texture will be 1024x512. This is the default size."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:75
+msgid "Sky texture will be 2048x1024."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:78
+msgid "Sky texture will be 4096x2048."
+msgstr ""
+
+#: doc/classes/ProceduralSky.xml:81
+msgid "Represents the size of the [enum TextureSize] enum."
+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]Feature tags:[/b] Project settings can be overridden for specific "
+"platforms and configurations (debug, release, ...) using [url=https://docs."
+"godotengine.org/en/latest/tutorials/export/feature_tags.html]feature tags[/"
+"url].\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. Overriding will still take the base project "
+"settings' [url=https://docs.godotengine.org/en/latest/tutorials/export/"
+"feature_tags.html]feature tags[/url] in account. Therefore, make sure to "
+"[i]also[/i] override the setting with the desired feature tags if you want "
+"them to override base project settings on all platforms and configurations."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:22
+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:52
+msgid ""
+"Returns the order of a configuration value (influences when saved to the "
+"config file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:59
+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:70
+msgid ""
+"Returns the absolute, native OS path corresponding to the localized "
+"[code]path[/code] (starting with [code]res://[/code] or [code]user://[/"
+"code]). The returned path will vary depending on the operating system and "
+"user preferences. See [url=https://docs.godotengine.org/en/3.4/tutorials/io/"
+"data_paths.html]File paths in Godot projects[/url] to see what those paths "
+"convert to. See also [method localize_path].\n"
+"[b]Note:[/b] [method globalize_path] with [code]res://[/code] will not work "
+"in an exported project. Instead, prepend the executable's base directory to "
+"the path when running from an exported project:\n"
+"[codeblock]\n"
+"var path = \"\"\n"
+"if OS.has_feature(\"editor\"):\n"
+" # Running from an editor binary.\n"
+" # `path` will contain the absolute path to `hello.txt` located in the "
+"project root.\n"
+" path = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
+"else:\n"
+" # Running from an exported project.\n"
+" # `path` will contain the absolute path to `hello.txt` next to the "
+"executable.\n"
+" # This is *not* identical to using `ProjectSettings.globalize_path()` "
+"with a `res://` path,\n"
+" # but is close enough in spirit.\n"
+" path = OS.get_executable_path().get_base_dir().plus_file(\"hello.txt\")\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:91
+msgid "Returns [code]true[/code] if a configuration value is present."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:100
+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].\n"
+"[b]Note:[/b] The optional [code]offset[/code] parameter can be used to "
+"specify the offset in bytes to the start of the resource pack. This is only "
+"supported for .pck files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:109
+msgid ""
+"Returns the localized path (starting with [code]res://[/code]) corresponding "
+"to the absolute, native OS [code]path[/code]. See also [method "
+"globalize_path]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:116
+msgid ""
+"Returns [code]true[/code] if the specified property exists and its initial "
+"value differs from the current value."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:123
+msgid ""
+"Returns the specified property's initial value. Returns [code]null[/code] if "
+"the property does not exist."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:129
+msgid ""
+"Saves the configuration to the [code]project.godot[/code] file.\n"
+"[b]Note:[/b] This method is intended to be used by editor plugins, as "
+"modified [ProjectSettings] can't be loaded back in the running app. If you "
+"want to change project settings in exported projects, use [method "
+"save_custom] to save [code]override.cfg[/code] file."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:137
+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). You can also save [code]override.cfg[/"
+"code] file, which is also text, but can be used in exported projects unlike "
+"other formats."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:145
+msgid ""
+"Sets the specified property's initial value. This is the value the property "
+"reverts to."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:153
+msgid ""
+"Sets the order of a configuration value (influences when saved to the config "
+"file)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:161
+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:171
+msgid ""
+"Comma-separated list of custom Android modules (which must have been built "
+"in the Android export templates) using their Java package path, e.g. "
+"[code]\"org/godotengine/godot/MyCustomSingleton,com/example/foo/"
+"FrenchFriesFactory\"[/code].\n"
+"[b]Note:[/b] Since Godot 3.2.2, the [code]org/godotengine/godot/"
+"GodotPaymentV3[/code] module was deprecated and replaced by the "
+"[code]GodotPayment[/code] plugin which should be enabled in the Android "
+"export preset under [code]Plugins[/code] section. The singleton to access in "
+"code was also renamed to [code]GodotPayment[/code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:175
+msgid "Background color for the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:178
+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:181
+msgid "Path to an image used as the boot splash."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:184
+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:187
+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:191
+msgid ""
+"The project's description, displayed as a tooltip in the Project Manager "
+"when hovering the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:194
+msgid ""
+"Icon used for the project, set when project loads. Exporters will also use "
+"this icon when possible."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:197
+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 OS.set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:200
+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. The window title will be set to match the project name automatically "
+"on startup.\n"
+"[b]Note:[/b] Changing this value will also change the user data folder's "
+"path if [member application/config/use_custom_user_dir] is [code]false[/"
+"code]. After renaming the project, you will no longer be able to access "
+"existing data in [code]user://[/code] unless you rename the old folder to "
+"match the new project name. See [url=https://docs.godotengine.org/en/3.4/"
+"tutorials/io/data_paths.html]Data paths[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:204
+msgid ""
+"Specifies a file to override project settings. For example: [code]user://"
+"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
+"class description at the top for more information.\n"
+"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
+"code] will still be read to override the project settings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:208
+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:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
+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 OS.set_native_icon]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:220
+msgid ""
+"Time samples for frame deltas are subject to random variation introduced by "
+"the platform, even when frames are displayed at regular intervals thanks to "
+"V-Sync. This can lead to jitter. Delta smoothing can often give a better "
+"result by filtering the input deltas to correct for minor fluctuations from "
+"the refresh rate.\n"
+"[b]Note:[/b] Delta smoothing is only attempted when [member display/window/"
+"vsync/use_vsync] is switched on, as it does not work well without V-Sync.\n"
+"It may take several seconds at a stable frame rate before the smoothing is "
+"initially activated. It will only be active on machines where performance is "
+"adequate to render frames at the refresh rate."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:225
+msgid ""
+"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
+"just after the drawing has taken place. This may lead to more consistent "
+"deltas and a reduction in frame stutters."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:228
+msgid ""
+"If [code]true[/code], disables printing to standard error. If [code]true[/"
+"code], this also hides error and warning messages printed by [method "
+"@GDScript.push_error] and [method @GDScript.push_warning]. See also [member "
+"application/run/disable_stdout].\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:232
+msgid ""
+"If [code]true[/code], disables printing to standard output. This is "
+"equivalent to starting the editor or project with the [code]--quiet[/code] "
+"command line argument. See also [member application/run/disable_stderr].\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:236
+msgid ""
+"If [code]true[/code], flushes the standard output stream every time a line "
+"is printed. This affects both terminal logging and file logging.\n"
+"When running a project, this setting must be enabled if you want logs to be "
+"collected by service managers such as systemd/journalctl. This setting is "
+"disabled by default on release builds, since flushing on every printed line "
+"will negatively affect performance if lots of lines are printed in a rapid "
+"succession. Also, if this setting is enabled, logged files will still be "
+"written successfully if the application crashes or is otherwise killed by "
+"the user (without being closed \"normally\").\n"
+"[b]Note:[/b] Regardless of this setting, the standard error stream "
+"([code]stderr[/code]) is always flushed when a line is printed to it.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:242
+msgid ""
+"Debug build override for [member application/run/flush_stdout_on_print], as "
+"performance is less important during debugging.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:246
+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:249
+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:252
+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:255
+msgid "Path to the main scene file that will be loaded when the project runs."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
+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:264
+msgid ""
+"Default [AudioBusLayout] resource file to use in the project, unless "
+"overridden by the scene."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:267
+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:270
+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:273
+msgid ""
+"The mixing rate used for audio (in Hz). In general, it's better to not touch "
+"this and leave it to the host operating system."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:276
+msgid ""
+"Safer override for [member audio/mix_rate] in the Web platform. Here "
+"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
+"like forcing the mix rate)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:279
+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:282
+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:285
+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:288
+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:291
+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:294
+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:297
+msgid ""
+"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
+"distance matching[/url] in Zstandard."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:300
+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:303
+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:306
+msgid ""
+"If [code]true[/code], enables warnings when a constant is used as a function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:309
+msgid ""
+"If [code]true[/code], enables warnings when deprecated keywords such as "
+"[code]slave[/code] are used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:312
+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:315
+msgid ""
+"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
+"not generate warnings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:318
+msgid ""
+"If [code]true[/code], enables warnings when a function is declared with the "
+"same name as a constant."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:321
+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:324
+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:327
+msgid ""
+"If [code]true[/code], enables warnings when using a function as if it was a "
+"property."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:330
+msgid ""
+"If [code]true[/code], enables warnings when a ternary operator may emit "
+"values with incompatible types."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:333
+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:336
+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:339
+msgid ""
+"If [code]true[/code], enables warnings when using a property as if it was a "
+"function."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:342
+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:345
+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:348
+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:351
+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:354
+msgid ""
+"If [code]true[/code], all warnings will be reported as if they were errors."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:357
+msgid ""
+"If [code]true[/code], enables warnings when using a variable that wasn't "
+"previously assigned."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:360
+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:363
+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:366
+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:369
+msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:372
+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:375
+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:378
+msgid ""
+"If [code]true[/code], enables warnings when a function parameter is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:381
+msgid ""
+"If [code]true[/code], enables warnings when a member variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:384
+msgid "If [code]true[/code], enables warnings when a signal is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:387
+msgid "If [code]true[/code], enables warnings when a local variable is unused."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:390
+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:393
+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:396
+msgid "Message to be displayed before the backtrace when the engine crashes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:399
+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:404
+msgid "Maximum call stack allowed for debugging GDScript."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:407
+msgid "Maximum amount of functions per frame allowed when profiling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:410
+msgid "Print frames per second to standard output every second."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:413
+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:416
+msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:419
+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:422
+msgid ""
+"Sets whether 2D physics will display collision outlines in game when "
+"\"Visible Collision Shapes\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:425
+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:428
+msgid ""
+"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:431
+msgid ""
+"Color of the disabled navigation geometry, visible when \"Visible Navigation"
+"\" is enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:434
+msgid ""
+"Color of the navigation geometry, visible when \"Visible Navigation\" is "
+"enabled in the Debug menu."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:437
+msgid "Custom image for the mouse cursor (limited to 256×256)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:440
+msgid "Hotspot for the custom mouse cursor image."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:443
+msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:446
+msgid ""
+"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
+"platform. This setting has no effect on desktop Linux, as DPI-awareness "
+"fallbacks are not supported there."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:449
+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:452
+msgid ""
+"The default screen orientation to use on mobile devices.\n"
+"[b]Note:[/b] When set to a portrait orientation, this project setting does "
+"not flip the project resolution's width and height automatically. Instead, "
+"you have to set [member display/window/size/width] and [member display/"
+"window/size/height] accordingly."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:456
+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:459
+msgid ""
+"If [code]true[/code], allows per-pixel transparency for the window "
+"background. This affects performance, so leave it on [code]false[/code] "
+"unless you need it.\n"
+"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
+"[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, "
+"and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:464
+msgid ""
+"Sets the window background to transparent when it starts.\n"
+"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
+"[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, "
+"and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:469
+msgid ""
+"Forces the main window to be always on top.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:473
+msgid ""
+"Forces the main window to be borderless.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:477
+msgid ""
+"Sets the main window to full screen when the project starts. Note that this "
+"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
+"window is used to emulate fullscreen. On macOS, a new desktop is used to "
+"display the running project.\n"
+"Regardless of the platform, enabling fullscreen will change the window size "
+"to match the monitor's size. Therefore, make sure your project supports "
+"[url=https://docs.godotengine.org/en/3.4/tutorials/rendering/"
+"multiple_resolutions.html]multiple resolutions[/url] when enabling "
+"fullscreen mode.\n"
+"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:482
+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:485
+msgid ""
+"Allows the window to be resizable by default.\n"
+"[b]Note:[/b] This setting is ignored on iOS and Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:489
+msgid ""
+"If greater than zero, overrides the window height when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:492
+msgid ""
+"If greater than zero, overrides the window width when running the game. "
+"Useful for testing stretch modes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:495
+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:498
+msgid ""
+"Specifies the tablet driver to use. If left empty, the default driver will "
+"be used."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:501
+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:504
+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:508
+msgid ""
+"The command-line arguments to append to Godot's own command line when "
+"running the project. This doesn't affect the editor itself.\n"
+"It is possible to make another executable run Godot by using the "
+"[code]%command%[/code] placeholder. The placeholder will be replaced with "
+"Godot's own command line. Program-specific arguments should be placed "
+"[i]before[/i] the placeholder, whereas Godot-specific arguments should be "
+"placed [i]after[/i] the placeholder.\n"
+"For example, this can be used to force the project to run on the dedicated "
+"GPU in a NVIDIA Optimus system on Linux:\n"
+"[codeblock]\n"
+"prime-run %command%\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:516
+msgid ""
+"Search path for project-specific script templates. Godot will search for "
+"script templates both in the editor-specific path and in this project-"
+"specific path."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:519
+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:522
+msgid ""
+"Default value for [member ScrollContainer.scroll_deadzone], which will be "
+"used for all [ScrollContainer]s unless overridden."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:525
+msgid ""
+"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
+"UWP to follow interface conventions."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:530
+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:533
+msgid ""
+"Path to a custom [Font] resource to use as default for all GUI elements of "
+"the project."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:536
+msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:539
+msgid ""
+"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
+"(in milliseconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:542
+msgid "Timer for detecting idle in [TextEdit] (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:545
+msgid "Default delay for tooltips (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:548
+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:552
+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:556
+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:560
+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:564
+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:568
+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:572
+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:576
+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:580
+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:584
+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:588
+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:592
+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:596
+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:600
+msgid ""
+"If [code]true[/code], key/touch/joystick events will be flushed just before "
+"every idle and physics frame.\n"
+"If [code]false[/code], such events will be flushed only once per idle frame, "
+"between iterations of the engine.\n"
+"Enabling this can greatly improve the responsiveness to input, specially in "
+"devices that need to run multiple physics frames per visible (idle) frame, "
+"because they can't run at the target frame rate.\n"
+"[b]Note:[/b] Currently implemented only in Android."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:606
+msgid ""
+"If [code]true[/code], sends mouse input events when tapping or swiping on "
+"the touchscreen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:609
+msgid ""
+"If [code]true[/code], sends touch input events when clicking or dragging the "
+"mouse."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:612
+msgid "Default delay for touch events. This only affects iOS devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:615
+msgid "Optional name for the 2D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:618
+msgid "Optional name for the 2D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:621
+msgid "Optional name for the 2D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:624
+msgid "Optional name for the 2D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:627
+msgid "Optional name for the 2D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:630
+msgid "Optional name for the 2D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:633
+msgid "Optional name for the 2D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:636
+msgid "Optional name for the 2D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:639
+msgid "Optional name for the 2D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:642
+msgid "Optional name for the 2D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:645
+msgid "Optional name for the 2D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:648
+msgid "Optional name for the 2D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:651
+msgid "Optional name for the 2D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:654
+msgid "Optional name for the 2D physics layer 21."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:657
+msgid "Optional name for the 2D physics layer 22."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:660
+msgid "Optional name for the 2D physics layer 23."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:663
+msgid "Optional name for the 2D physics layer 24."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:666
+msgid "Optional name for the 2D physics layer 25."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:669
+msgid "Optional name for the 2D physics layer 26."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:672
+msgid "Optional name for the 2D physics layer 27."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:675
+msgid "Optional name for the 2D physics layer 28."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:678
+msgid "Optional name for the 2D physics layer 29."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:681
+msgid "Optional name for the 2D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:684
+msgid "Optional name for the 2D physics layer 30."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:687
+msgid "Optional name for the 2D physics layer 31."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:690
+msgid "Optional name for the 2D physics layer 32."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:693
+msgid "Optional name for the 2D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:696
+msgid "Optional name for the 2D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:699
+msgid "Optional name for the 2D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:702
+msgid "Optional name for the 2D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:705
+msgid "Optional name for the 2D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:708
+msgid "Optional name for the 2D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:711
+msgid "Optional name for the 2D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:714
+msgid "Optional name for the 2D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:717
+msgid "Optional name for the 2D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:720
+msgid "Optional name for the 2D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:723
+msgid "Optional name for the 2D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:726
+msgid "Optional name for the 2D render layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:729
+msgid "Optional name for the 2D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:732
+msgid "Optional name for the 2D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:735
+msgid "Optional name for the 2D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:738
+msgid "Optional name for the 2D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:741
+msgid "Optional name for the 2D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:744
+msgid "Optional name for the 2D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:747
+msgid "Optional name for the 2D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:750
+msgid "Optional name for the 2D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:753
+msgid "Optional name for the 2D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:756
+msgid "Optional name for the 2D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:759
+msgid "Optional name for the 2D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:762
+msgid "Optional name for the 2D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:765
+msgid "Optional name for the 2D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:768
+msgid "Optional name for the 2D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:771
+msgid "Optional name for the 3D physics layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:774
+msgid "Optional name for the 3D physics layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:777
+msgid "Optional name for the 3D physics layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:780
+msgid "Optional name for the 3D physics layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:783
+msgid "Optional name for the 3D physics layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:786
+msgid "Optional name for the 3D physics layer 14."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:789
+msgid "Optional name for the 3D physics layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:792
+msgid "Optional name for the 3D physics layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:795
+msgid "Optional name for the 3D physics layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:798
+msgid "Optional name for the 3D physics layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:801
+msgid "Optional name for the 3D physics layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:804
+msgid "Optional name for the 3D physics layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:807
+msgid "Optional name for the 3D physics layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:810
+msgid "Optional name for the 3D physics layer 21."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:813
+msgid "Optional name for the 3D physics layer 22."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:816
+msgid "Optional name for the 3D physics layer 23."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:819
+msgid "Optional name for the 3D physics layer 24."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:822
+msgid "Optional name for the 3D physics layer 25."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:825
+msgid "Optional name for the 3D physics layer 26."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:828
+msgid "Optional name for the 3D physics layer 27."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:831
+msgid "Optional name for the 3D physics layer 28."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:834
+msgid "Optional name for the 3D physics layer 29."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:837
+msgid "Optional name for the 3D physics layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:840
+msgid "Optional name for the 3D physics layer 30."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:843
+msgid "Optional name for the 3D physics layer 31."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:846
+msgid "Optional name for the 3D physics layer 32."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:849
+msgid "Optional name for the 3D physics layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:852
+msgid "Optional name for the 3D physics layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:855
+msgid "Optional name for the 3D physics layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:858
+msgid "Optional name for the 3D physics layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:861
+msgid "Optional name for the 3D physics layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:864
+msgid "Optional name for the 3D physics layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:867
+msgid "Optional name for the 3D render layer 1."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:870
+msgid "Optional name for the 3D render layer 10."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:873
+msgid "Optional name for the 3D render layer 11."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:876
+msgid "Optional name for the 3D render layer 12."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:879
+msgid "Optional name for the 3D render layer 13."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:882
+msgid "Optional name for the 3D render layer 14"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:885
+msgid "Optional name for the 3D render layer 15."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:888
+msgid "Optional name for the 3D render layer 16."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:891
+msgid "Optional name for the 3D render layer 17."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:894
+msgid "Optional name for the 3D render layer 18."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:897
+msgid "Optional name for the 3D render layer 19."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:900
+msgid "Optional name for the 3D render layer 2."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:903
+msgid "Optional name for the 3D render layer 20."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:906
+msgid "Optional name for the 3D render layer 3."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:909
+msgid "Optional name for the 3D render layer 4."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:912
+msgid "Optional name for the 3D render layer 5."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:915
+msgid "Optional name for the 3D render layer 6."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:918
+msgid "Optional name for the 3D render layer 7."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:921
+msgid "Optional name for the 3D render layer 8."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:924
+msgid "Optional name for the 3D render layer 9."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:927
+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:930
+msgid ""
+"If non-empty, this locale will be used when running the project from the "
+"editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:933
+msgid "If [code]true[/code], logs all output to files."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:936
+msgid ""
+"Desktop override for [member logging/file_logging/enable_file_logging], as "
+"log files are not readily accessible on mobile/Web platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:939
+msgid ""
+"Path to logs within the project. Using an [code]user://[/code] path is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:942
+msgid "Specifies the maximum amount of log files allowed (used for rotation)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:947
+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:950
+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:953
+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:956
+msgid ""
+"Maximum number of errors allowed to be sent as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:959
+msgid ""
+"Maximum amount of messages 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:962
+msgid ""
+"Maximum number of warnings allowed to be sent as output from the debugger. "
+"Over this value, content is dropped. This helps not to stall the debugger "
+"connection."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:965
+msgid ""
+"Default size of packet peer stream for deserializing Godot data (in bytes, "
+"specified as a power of two). The default value [code]16[/code] is equal to "
+"65,536 bytes. Over this size, data is dropped."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:968
+msgid "Timeout (in seconds) for connection attempts using TCP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:971
+msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:974
+msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:977
+msgid "Maximum number of concurrent input packets for [WebSocketClient]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:980
+msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:983
+msgid "Maximum number of concurrent output packets for [WebSocketClient]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:986
+msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:989
+msgid "Maximum number of concurrent input packets for [WebSocketServer]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:992
+msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:995
+msgid "Maximum number of concurrent output packets for [WebSocketServer]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:998
+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:1001
+msgid "Page size used by remote filesystem (in bytes)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1004
+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:1008
+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:1011
+msgid ""
+"What to use to separate node name from number. This is mostly an editor "
+"setting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1014
+msgid ""
+"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1018
+msgid ""
+"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1022
+msgid ""
+"The default angular damp in 2D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1026
+msgid ""
+"The default gravity strength in 2D (in pixels per second squared).\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"
+"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), "
+"Physics2DServer.AREA_PARAM_GRAVITY, 98)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1034
+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"
+"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), "
+"Physics2DServer.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1042
+msgid ""
+"The default linear damp in 2D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1046
+msgid ""
+"Threshold defining the surface size that constitutes a large object with "
+"regard to cells in the broad-phase 2D hash grid algorithm.\n"
+"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
+"enabled."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1050
+msgid ""
+"Sets which physics engine to use for 2D physics.\n"
+"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
+"alternative 2D physics server implemented."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1054
+msgid ""
+"Threshold angular velocity under which a 2D physics body will be considered "
+"inactive. See [constant Physics2DServer."
+"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1057
+msgid ""
+"Threshold linear velocity under which a 2D physics body will be considered "
+"inactive. See [constant Physics2DServer."
+"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1060
+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:1064
+msgid ""
+"Time (in seconds) of inactivity before which a 2D physics body will put to "
+"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1067
+msgid ""
+"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
+"physics spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1070
+msgid ""
+"Sets whether the 3D physics world will be created with support for "
+"[SoftBody] physics. Only applies to the Bullet physics engine."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1073
+msgid ""
+"The default angular damp in 3D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1077
+msgid ""
+"The default gravity strength in 3D (in meters per second squared).\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"
+"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer.AREA_PARAM_GRAVITY, 9.8)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1085
+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"
+"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), "
+"PhysicsServer.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1093
+msgid ""
+"The default linear damp in 3D.\n"
+"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
+"At value [code]0[/code] objects will keep moving with the same velocity. "
+"Values greater than [code]1[/code] will aim to reduce the velocity to "
+"[code]0[/code] in less than a second e.g. a value of [code]2[/code] will aim "
+"to reduce the velocity to [code]0[/code] in half a second. A value equal to "
+"or greater than the physics frame rate ([member ProjectSettings.physics/"
+"common/physics_fps], [code]60[/code] by default) will bring the object to a "
+"stop in one iteration."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1097
+msgid ""
+"Enables the use of bounding volume hierarchy instead of octree for 3D "
+"physics spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1100
+msgid ""
+"Sets which physics engine to use for 3D physics.\n"
+"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
+"physics engine. The \"GodotPhysics\" engine is still supported as an "
+"alternative."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1104
+msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1107
+msgid ""
+"If enabled, 2D and 3D physics picking behaves this way in relation to "
+"pause:\n"
+"- When pause is started, every collision object that is hovered or captured "
+"(3D only) is released from that condition, getting the relevant mouse-exit "
+"callback, unless its pause mode makes it immune to pause.\n"
+"- During pause, picking only considers collision objects immune to pause, "
+"sending input events and enter/exit callbacks to them as expected.\n"
+"If disabled, the legacy behavior is used, which consists in queuing the "
+"picking input events during pause (so nodes won't get them) and flushing "
+"that queue on resume, against the state of the 2D/3D world at that point."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1113
+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:1117
+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 smoothing 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.\n"
+"[b]Note:[/b] For best results, when using a custom physics interpolation "
+"solution, the physics jitter fix should be disabled by setting [member "
+"physics/common/physics_jitter_fix] to [code]0[/code].\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:1122
+msgid ""
+"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
+"uploading batching data. This may not be necessary but can be used for "
+"safety.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1126
+msgid ""
+"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
+"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
+"flag.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1130
+msgid ""
+"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
+"[code]glBufferData[/code] is called with NULL data and the full buffer size "
+"prior to uploading new data. This can be important to avoid stalling on some "
+"hardware.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1134
+msgid ""
+"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
+"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
+"flag.\n"
+"[b]Note:[/b] Use with care. You are advised to leave this as default for "
+"exports. A non-default setting that works better on your machine may "
+"adversely affect performance for end users."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1138
+msgid ""
+"Choose between fixed mode where corner scalings are preserved matching the "
+"artwork, and scaling mode.\n"
+"Not available in GLES3 when [member rendering/batching/options/use_batching] "
+"is off."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1142
+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 affects GLES2 and GLES3 "
+"rendering, but only on desktop platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1146
+msgid ""
+"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
+"This provides greater compatibility with a wide range of hardware, and also "
+"may be faster in some circumstances.\n"
+"Currently only available when [member rendering/batching/options/"
+"use_batching] is active.\n"
+"[b]Note:[/b] Antialiased software skinned polys are not supported, and will "
+"be rendered without antialiasing.\n"
+"[b]Note:[/b] Custom shaders that use the [code]VERTEX[/code] built-in "
+"operate with [code]VERTEX[/code] position [i]after[/i] skinning, whereas "
+"with hardware skinning, [code]VERTEX[/code] is the position [i]before[/i] "
+"skinning."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1152
+msgid ""
+"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
+"May help in some pixel art styles.\n"
+"This snapping is performed on the GPU in the vertex shader.\n"
+"Consider using the project setting [member rendering/batching/precision/"
+"uv_contract] to prevent artifacts."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1157
+msgid ""
+"When batching is on, this regularly prints a frame diagnosis log. Note that "
+"this will degrade performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1160
+msgid ""
+"[b]Experimental.[/b] For regression testing against the old renderer. If "
+"this is switched on, and [code]use_batching[/code] is set, the renderer will "
+"swap alternately between using the old renderer, and the batched renderer, "
+"on each frame. This makes it easy to identify visual differences. "
+"Performance will be degraded."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1163
+msgid ""
+"Lights have the potential to prevent joining items, and break many of the "
+"performance benefits of batching. This setting enables some complex logic to "
+"allow joining items if their lighting is similar, and overlap tests pass. "
+"This can significantly improve performance in some games. Set to 0 to switch "
+"off. With large values the cost of overlap tests may lead to diminishing "
+"returns."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1166
+msgid ""
+"Sets the proportion of the total screen area (in pixels) that must be saved "
+"by a scissor operation in order to activate light scissoring. This can "
+"prevent parts of items being rendered outside the light area. Lower values "
+"scissor more aggressively. A value of 1 scissors none of the items, a value "
+"of 0 scissors every item. The power of 4 of the value is used, in order to "
+"emphasize the lower range, and multiplied by the total screen area in pixels "
+"to give the threshold. This can reduce fill rate requirements in scenes with "
+"a lot of lighting."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1169
+msgid ""
+"Enabling this setting uses the legacy method to draw batches containing only "
+"one rect. The legacy method is faster (approx twice as fast), but can cause "
+"flicker on some systems. In order to directly compare performance with the "
+"non-batching renderer you can set this to true, but it is recommended to "
+"turn this off unless you can guarantee your target hardware will work with "
+"this method."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1172
+msgid ""
+"Turns 2D batching on and off. Batching increases performance by reducing the "
+"amount of graphics API drawcalls."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1175
+msgid "Switches on 2D batching within the editor."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1178
+msgid ""
+"Size of buffer reserved for batched vertices. Larger size enables larger "
+"batches, but there are diminishing returns for the memory used. This should "
+"only have a minor effect on performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1181
+msgid ""
+"Including color in the vertex format has a cost, however, not including "
+"color prevents batching across color changes. This threshold determines the "
+"ratio of [code]number of vertex color changes / total number of vertices[/"
+"code] above which vertices will be translated to colored format. A value of "
+"0 will always use colored vertices, 1 will never use colored vertices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1184
+msgid ""
+"In certain circumstances, the batcher can reorder items in order to better "
+"join them. This may result in better performance. An overlap test is needed "
+"however for each item lookahead, so there is a trade off, with diminishing "
+"returns. If you are getting no benefit, setting this to 0 will switch it off."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1187
+msgid ""
+"Sets the number of commands to lookahead to determine whether to batch "
+"render items. A value of 1 can join items consisting of single commands, 0 "
+"turns off joining. Higher values are in theory more likely to join, however "
+"this has diminishing returns and has a runtime cost so a small value is "
+"recommended."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1190
+msgid ""
+"On some platforms (especially mobile), precision issues in shaders can lead "
+"to reading 1 texel outside of bounds, particularly where rects are scaled. "
+"This can particularly lead to border artifacts around tiles in tilemaps.\n"
+"This adjustment corrects for this by making a small contraction to the UV "
+"coordinates used. Note that this can result in a slight squashing of border "
+"texels."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1194
+msgid ""
+"The amount of UV contraction. This figure is divided by 1000000, and is a "
+"proportion of the total texture dimensions, where the width and height are "
+"both ranged from 0.0 to 1.0.\n"
+"Use the default unless correcting for a problem on particular hardware."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1198
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_HIGH]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1201
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_LOW]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1204
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_MEDIUM]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1207
+msgid ""
+"Amount of light samples taken when using [constant BakedLightmap."
+"BAKE_QUALITY_ULTRA]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1210
+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 VisualServer.set_default_clear_color]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1213
+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:1216
+msgid ""
+"The use of half-float vertex compression may be producing rendering errors "
+"on some platforms (especially iOS). These have been seen particularly in "
+"particles. Disabling half-float may resolve these problems."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1219
+msgid ""
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
+"[b]Warning:[/b] High floating point precision can be extremely slow on older "
+"devices and is often not available at all. Use with caution."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1226
+msgid ""
+"Max buffer size for blend shapes. Any blend shape bigger than this will not "
+"work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1229
+msgid ""
+"Max buffer size for drawing polygons. Any polygon bigger than this will not "
+"work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1232
+msgid ""
+"Max index buffer size for drawing polygons. Any polygon bigger than this "
+"will not work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1235
+msgid ""
+"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
+"Nodes using more than this size will not work."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1238
+msgid ""
+"Max number of lights renderable per object. This is further limited by "
+"hardware support. Most devices only support 409 lights, while many devices "
+"(especially mobile) only support 102. Setting this low will slightly reduce "
+"memory usage and may decrease shader compile times."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1241
+msgid ""
+"Max amount of elements renderable in a frame. If more elements than this are "
+"visible per frame, they will not be drawn. Keep in mind elements refer to "
+"mesh surfaces and not meshes themselves. Setting this low will slightly "
+"reduce memory usage and may decrease shader compile times, particularly on "
+"web. For most uses, the default value is suitable, but consider lowering as "
+"much as possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1244
+msgid ""
+"Max number of lights renderable in a frame. If more lights than this number "
+"are used, they will be ignored. Setting this low will slightly reduce memory "
+"usage and may decrease shader compile times, particularly on web. For most "
+"uses, the default value is suitable, but consider lowering as much as "
+"possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1247
+msgid ""
+"Max number of reflection probes renderable in a frame. If more reflection "
+"probes than this number are used, they will be ignored. Setting this low "
+"will slightly reduce memory usage and may decrease shader compile times, "
+"particularly on web. For most uses, the default value is suitable, but "
+"consider lowering as much as possible on web export."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1250
+msgid ""
+"Shaders have a time variable that constantly increases. At some point, it "
+"needs to be rolled back to zero to avoid precision errors on shader "
+"animations. This setting specifies when (in seconds)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1253
+msgid ""
+"If [code]true[/code], the texture importer will import lossless textures "
+"using the PNG format. Otherwise, it will default to using WebP."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1256
+msgid ""
+"The default compression level for lossless WebP. Higher levels result in "
+"smaller files at the cost of compression speed. Decompression speed is "
+"mostly unaffected by the compression level. Supported values are 0 to 9. "
+"Note that compression levels above 6 are very slow and offer very little "
+"savings."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1259
+msgid ""
+"On import, mesh vertex data will be split into two streams within a single "
+"vertex buffer, one for position data and the other for interleaved "
+"attributes data. Recommended to be enabled if targeting mobile devices. "
+"Requires manual reimport of meshes after toggling."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1262
+msgid ""
+"Determines the maximum number of sphere occluders that will be used at any "
+"one time.\n"
+"Although you can have many occluders in a scene, each frame the system will "
+"choose from these the most relevant based on a screen space metric, in order "
+"to give the best overall performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1266
+msgid ""
+"The default convention is for portal normals to point outward (face outward) "
+"from the source room.\n"
+"If you accidentally build your level with portals facing the wrong way, this "
+"setting can fix the problem.\n"
+"It will flip named portal meshes (i.e. [code]-portal[/code]) on the initial "
+"convertion to [Portal] nodes."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1271
+msgid ""
+"Show conversion logs.\n"
+"[b]Note:[/b] This will automatically be disabled in exports."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1275
+msgid ""
+"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
+"code]. If [code]false[/code], they will be sent as [code]notifications[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1278
+msgid ""
+"If enabled, while merging meshes, the system will also attempt to remove "
+"[Spatial] nodes that no longer have any children.\n"
+"Reducing the number of [Node]s in the scene tree can make traversal more "
+"efficient, but can be switched off in case you wish to use empty [Spatial]s "
+"for markers or some other purpose."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1282
+msgid ""
+"Show logs during PVS generation.\n"
+"[b]Note:[/b] This will automatically be disabled in exports."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1286
+msgid ""
+"Uses a simplified method of generating PVS (potentially visible set) data. "
+"The results may not be accurate where more than one portal join adjacent "
+"rooms.\n"
+"[b]Note:[/b] Generally you should only use this option if you encounter bugs "
+"when it is set to [code]false[/code], i.e. there are problems with the "
+"default method."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1290
+msgid ""
+"If [code]true[/code], allocates the main framebuffer with high dynamic "
+"range. High dynamic range allows the use of [Color] values greater than 1.\n"
+"[b]Note:[/b] Only available on the GLES3 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1294
+msgid ""
+"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
+"devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1297
+msgid ""
+"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
+"architecture already does this."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1300
+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:1303
+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:1306
+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:1309
+msgid ""
+"The video driver to use (\"GLES2\" or \"GLES3\").\n"
+"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
+"video-driver[/code] command line argument, or by the [member rendering/"
+"quality/driver/fallback_to_gles2] option if the target system does not "
+"support GLES3 and falls back to GLES2. In such cases, this property is not "
+"updated, so use [method OS.get_current_video_driver] to query it at run-time."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1313
+msgid ""
+"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
+"driver is not supported.\n"
+"[b]Note:[/b] The two video drivers are not drop-in replacements for each "
+"other, so a game designed for GLES3 might not work properly when falling "
+"back to GLES2. In particular, some features of the GLES3 backend are not "
+"available in GLES2. Enabling this setting also means that both ETC and ETC2 "
+"VRAM-compressed textures will be exported on Android and iOS, increasing the "
+"data pack's size."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1317
+msgid ""
+"Maximum anisotropic filter level used for textures with anisotropy enabled. "
+"Higher values will result in sharper textures when viewed from oblique "
+"angles, at the cost of performance. Only power-of-two values are valid (2, "
+"4, 8, 16)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1320
+msgid ""
+"Sets the number of MSAA samples to use. 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:1324
+msgid ""
+"If set to a value greater than [code]0.0[/code], contrast-adaptive "
+"sharpening will be applied to the 3D viewport. This has a low performance "
+"cost and can be used to recover some of the sharpness lost from using FXAA. "
+"Values around [code]0.5[/code] generally give the best results. See also "
+"[member rendering/quality/filters/use_fxaa]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1327
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/"
+"depth/hdr] must also be [code]true[/code] for debanding to be effective.\n"
+"[b]Note:[/b] There are known issues with debanding breaking rendering on "
+"mobile platforms. Due to this, it is recommended to leave this option "
+"disabled when targeting mobile platforms."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1332
+msgid ""
+"Enables FXAA in the root Viewport. 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [member rendering/"
+"quality/filters/sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1335
+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:1338
+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:1341
+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:1344
+msgid ""
+"Enable usage of bicubic sampling in baked lightmaps. This results in "
+"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
+"changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1347
+msgid ""
+"Lower-end override for [member rendering/quality/lightmapping/"
+"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1350
+msgid ""
+"Size of the atlas used by reflection probes. A larger size can result in "
+"higher visual quality, while a smaller size will be faster and take up less "
+"memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1353
+msgid ""
+"Number of subdivisions to use for the reflection atlas. A higher number "
+"lowers the quality of each atlas, but allows you to use more."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1356
+msgid ""
+"If [code]true[/code], uses a high amount of samples to create blurred "
+"variants of reflection probes and panorama backgrounds (sky). Those blurred "
+"variants are used by rough materials."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1359
+msgid ""
+"Lower-end override for [member rendering/quality/reflections/"
+"high_quality_ggx] on mobile devices, due to performance concerns or driver "
+"support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1362
+msgid ""
+"Limits the size of the irradiance map which is normally determined by "
+"[member Sky.radiance_size]. A higher size results in a higher quality "
+"irradiance map similarly to [member rendering/quality/reflections/"
+"high_quality_ggx]. Use a higher value when using high-frequency HDRI maps, "
+"otherwise keep this as low as possible.\n"
+"[b]Note:[/b] Low and mid range hardware do not support complex irradiance "
+"maps well and may crash if this is set too high."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1366
+msgid ""
+"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
+"probes and panorama backgrounds (sky). This reduces jitter noise on "
+"reflections, but costs more performance and memory."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1369
+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:1372
+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:1375
+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:1378
+msgid ""
+"If [code]true[/code], uses faster but lower-quality Lambert material "
+"lighting model instead of Burley."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1381
+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:1384
+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:1387
+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:1390
+msgid ""
+"If [code]true[/code], enables new physical light attenuation for "
+"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
+"appearance with a very small performance cost. When physical light "
+"attenuation is enabled, lights will appear to be darker as a result of the "
+"new attenuation formula. This can be compensated by adjusting the lights' "
+"energy or attenuation values.\n"
+"Changes to this setting will only be applied upon restarting the application."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1394
+msgid ""
+"Size for cubemap into which the shadow is rendered before being copied into "
+"the shadow atlas. A higher number can result in higher resolution shadows "
+"when used with a higher [member rendering/quality/shadow_atlas/size]. "
+"Setting higher than a quarter of the [member rendering/quality/shadow_atlas/"
+"size] will not result in a perceptible increase in visual quality."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
+msgid ""
+"Subdivision quadrant size for shadow mapping. See shadow mapping "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1409
+msgid ""
+"Size for shadow atlas (used for OmniLights and SpotLights). See "
+"documentation."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1412
+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:1415
+msgid ""
+"Shadow filter mode. Higher-quality settings result in smoother shadows that "
+"flicker less when moving. \"Disabled\" is the fastest option, but also has "
+"the lowest quality. \"PCF5\" is smoother but is also slower. \"PCF13\" is "
+"the smoothest option, but is also the slowest.\n"
+"[b]Note:[/b] When using the GLES2 backend, the \"PCF13\" option actually "
+"uses 16 samples to emulate linear filtering in the shader. This results in a "
+"shadow appearance similar to the one produced by the GLES3 backend."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1419
+msgid ""
+"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
+"mobile devices, due to performance concerns or driver support."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1422
+msgid ""
+"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
+"GLES2 and GLES3).\n"
+"See also [member rendering/quality/skinning/software_skinning_fallback]."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1426
+msgid ""
+"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
+"doesn't support the default GPU skinning process with GLES2.\n"
+"If [code]false[/code], an alternative skinning process on the GPU is used in "
+"this case (slower in most cases).\n"
+"See also [member rendering/quality/skinning/force_software_skinning].\n"
+"[b]Note:[/b] When the software skinning fallback is triggered, custom vertex "
+"shaders will behave in a different way, because the bone transform will be "
+"already applied to the modelview matrix."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1432
+msgid ""
+"The rendering octree balance can be changed to favor smaller ([code]0[/"
+"code]), or larger ([code]1[/code]) branches.\n"
+"Larger branches can increase performance significantly in some projects."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1436
+msgid ""
+"Enables the use of bounding volume hierarchy instead of octree for rendering "
+"spatial partitioning. This may give better performance."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1439
+msgid ""
+"Improves quality of subsurface scattering, but cost significantly increases."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1442
+msgid "Quality setting for subsurface scattering (samples taken)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1445
+msgid "Max radius used for subsurface scattering samples."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1448
+msgid ""
+"Weight subsurface scattering samples. Helps to avoid reading samples from "
+"unrelated parts of the screen."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1451
+msgid ""
+"Use high-quality voxel cone tracing. This results in better-looking "
+"reflections, but is much more expensive on the GPU."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1454
+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:1457
+msgid ""
+"If [code]true[/code], a thread safe version of BVH (bounding volume "
+"hierarchy) will be used in rendering and Godot physics.\n"
+"Try enabling this option if you see any visual anomalies in 3D (such as "
+"incorrect object visibility)."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1461
+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 GLES3 "
+"renderer.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1465
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1469
+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 GLES3 renderer.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1473
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1477
+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.\n"
+"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
+"already imported before. To make this setting apply to textures that were "
+"already imported, exit the editor, remove the [code].import/[/code] folder "
+"located inside the project folder then restart the editor (see [member "
+"application/config/use_hidden_project_data_directory])."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1481
+msgid ""
+"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
+"pixels)."
+msgstr ""
+
+#: doc/classes/ProximityGroup.xml:4 doc/classes/ProximityGroup.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:11 doc/classes/Viewport.xml:19
+#: doc/classes/ViewportTexture.xml:13
+msgid "https://godotengine.org/asset-library/asset/129"
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:17
+msgid "Offset of the generated Quad. Useful for particles."
+msgstr ""
+
+#: doc/classes/QuadMesh.xml:20
+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/3.4/tutorials/3d/using_transforms."
+"html#interpolating-with-quaternions"
+msgstr ""
+
+#: doc/classes/Quat.xml:20
+msgid "Constructs a quaternion from the given [Basis]."
+msgstr ""
+
+#: doc/classes/Quat.xml:27
+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:35
+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:45
+msgid "Constructs a quaternion defined by the given values."
+msgstr ""
+
+#: doc/classes/Quat.xml:52
+msgid ""
+"Returns the angle between this quaternion and [code]to[/code]. This is the "
+"magnitude of the angle you would need to rotate by to get from one to the "
+"other.\n"
+"[b]Note:[/b] This method has an abnormally high amount of floating-point "
+"error, so methods such as [method @GDScript.is_zero_approx] will not work "
+"reliably."
+msgstr ""
+
+#: doc/classes/Quat.xml:63
+msgid ""
+"Performs a cubic spherical interpolation between quaternions [code]pre_a[/"
+"code], this vector, [code]b[/code], and [code]post_b[/code], by the given "
+"amount [code]weight[/code]."
+msgstr ""
+
+#: doc/classes/Quat.xml:70
+msgid "Returns the dot product of two quaternions."
+msgstr ""
+
+#: doc/classes/Quat.xml:76
+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:82
+msgid "Returns the inverse of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:89
+msgid ""
+"Returns [code]true[/code] if this quaternion and [code]quat[/code] are "
+"approximately equal, by running [method @GDScript.is_equal_approx] on each "
+"component."
+msgstr ""
+
+#: doc/classes/Quat.xml:95
+msgid "Returns whether the quaternion is normalized or not."
+msgstr ""
+
+#: doc/classes/Quat.xml:101
+msgid "Returns the length of the quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:107
+msgid "Returns the length of the quaternion, squared."
+msgstr ""
+
+#: doc/classes/Quat.xml:113
+msgid "Returns a copy of the quaternion, normalized to unit length."
+msgstr ""
+
+#: doc/classes/Quat.xml:120
+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:126
+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:134
+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:143
+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:150
+msgid "Returns a vector transformed (multiplied) by this quaternion."
+msgstr ""
+
+#: doc/classes/Quat.xml:156
+msgid ""
+"W component of the quaternion (real part).\n"
+"Quaternion components should usually not be manipulated directly."
+msgstr ""
+
+#: doc/classes/Quat.xml:160
+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:164
+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:168
+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:174
+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]\n"
+"[b]Note:[/b] The default values of [member seed] and [member state] "
+"properties are pseudo-random, and changes when calling [method randomize]. "
+"The [code]0[/code] value documented here is a placeholder, and not the "
+"actual default seed."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:19
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation."
+"html"
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:25
+msgid ""
+"Generates a pseudo-random float between [code]0.0[/code] and [code]1.0[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:33
+msgid ""
+"Generates a pseudo-random float between [code]from[/code] and [code]to[/"
+"code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:41
+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:47
+msgid ""
+"Generates a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
+"[code]4294967295[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:55
+msgid ""
+"Generates a pseudo-random 32-bit signed integer between [code]from[/code] "
+"and [code]to[/code] (inclusive)."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:61
+msgid "Setups a time-based seed to generator."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:67
+msgid ""
+"Initializes the random number generator state based on the given seed value. "
+"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.\n"
+"[b]Note:[/b] Setting this property produces a side effect of changing the "
+"internal [member state], so make sure to initialize the seed [i]before[/i] "
+"modifying the [member state]:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"rng.seed = hash(\"Godot\")\n"
+"rng.state = 100 # Restore to some previously saved state.\n"
+"[/codeblock]\n"
+"[b]Warning:[/b] the getter of this property returns the previous [member "
+"state], and not the initial seed value, which is going to be fixed in Godot "
+"4.0."
+msgstr ""
+
+#: doc/classes/RandomNumberGenerator.xml:78
+msgid ""
+"The current state of the random number generator. Save and restore this "
+"property to restore the generator to a previous state:\n"
+"[codeblock]\n"
+"var rng = RandomNumberGenerator.new()\n"
+"print(rng.randf())\n"
+"var saved_state = rng.state # Store current state.\n"
+"print(rng.randf()) # Advance internal state.\n"
+"rng.state = saved_state # Restore the state.\n"
+"print(rng.randf()) # Prints the same value as in previous.\n"
+"[/codeblock]\n"
+"[b]Note:[/b] Do not set state to arbitrary values, since the random number "
+"generator requires the state to have certain qualities to behave properly. "
+"It should only be set to values that came from the state property itself. To "
+"initialize the random number generator with arbitrary input, use [member "
+"seed] instead."
+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:16
+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:22
+msgid "Stops range from sharing its member variables with any other."
+msgstr ""
+
+#: doc/classes/Range.xml:28
+msgid ""
+"If [code]true[/code], [member value] may be greater than [member max_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:31
+msgid ""
+"If [code]true[/code], [member value] may be less than [member min_value]."
+msgstr ""
+
+#: doc/classes/Range.xml:34
+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:37
+msgid ""
+"Maximum value. Range is clamped if [code]value[/code] is greater than "
+"[code]max_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:40
+msgid ""
+"Minimum value. Range is clamped if [code]value[/code] is less than "
+"[code]min_value[/code]."
+msgstr ""
+
+#: doc/classes/Range.xml:43
+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:46
+msgid "The value mapped between 0 and 1."
+msgstr ""
+
+#: doc/classes/Range.xml:49
+msgid ""
+"If [code]true[/code], [code]value[/code] will always be rounded to the "
+"nearest integer."
+msgstr ""
+
+#: doc/classes/Range.xml:52
+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:55
+msgid "Range's current value."
+msgstr ""
+
+#: doc/classes/Range.xml:61
+msgid ""
+"Emitted when [member min_value], [member max_value], [member page], or "
+"[member step] change."
+msgstr ""
+
+#: doc/classes/Range.xml:67
+msgid "Emitted when [member value] changes."
+msgstr ""
+
+#: doc/classes/RayCast.xml:4 doc/classes/RayCast2D.xml:4
+msgid "Query the closest object intersecting a ray."
+msgstr ""
+
+#: doc/classes/RayCast.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"
+"RayCast 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"
+"RayCast can be configured to report collisions with [Area]s ([member "
+"collide_with_areas]) and/or [PhysicsBody]s ([member collide_with_bodies]).\n"
+"Only enabled raycasts will be able to query the space and report "
+"collisions.\n"
+"RayCast 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/RayCast.xml:22 doc/classes/RayCast2D.xml:21
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast.xml:29 doc/classes/RayCast2D.xml:28
+msgid ""
+"Adds a collision exception so the ray does not report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:35 doc/classes/RayCast2D.xml:34
+msgid "Removes all collision exceptions for this ray."
+msgstr ""
+
+#: doc/classes/RayCast.xml:41
+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] [code]enabled[/code] is not required for this to work."
+msgstr ""
+
+#: doc/classes/RayCast.xml:49 doc/classes/RayCast2D.xml:47
+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/RayCast.xml:55 doc/classes/RayCast2D.xml:53
+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/RayCast.xml:62
+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/RayCast.xml:69 doc/classes/RayCast2D.xml:66
+msgid ""
+"Returns the normal of the intersecting object's shape at the collision point."
+msgstr ""
+
+#: doc/classes/RayCast.xml:75 doc/classes/RayCast2D.xml:72
+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/RayCast.xml:82 doc/classes/RayCast2D.xml:79
+msgid ""
+"Returns whether any object is intersecting with the ray's vector "
+"(considering the vector length)."
+msgstr ""
+
+#: doc/classes/RayCast.xml:89 doc/classes/RayCast2D.xml:86
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified node."
+msgstr ""
+
+#: doc/classes/RayCast.xml:96 doc/classes/RayCast2D.xml:93
+msgid ""
+"Removes a collision exception so the ray does report collisions with the "
+"specified [RID]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:104
+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/RayCast.xml:111 doc/classes/RayCast2D.xml:107
+msgid ""
+"The ray's destination point, relative to the RayCast's [code]position[/code]."
+msgstr ""
+
+#: doc/classes/RayCast.xml:114
+msgid "If [code]true[/code], collision with [Area]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:117
+msgid "If [code]true[/code], collision with [PhysicsBody]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:120 doc/classes/RayCast2D.xml:116
+msgid ""
+"The ray's collision mask. Only objects in at least one collision layer "
+"enabled in the mask will be detected. See [url=https://docs.godotengine.org/"
+"en/3.4/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks]Collision layers and masks[/url] in the documentation for more "
+"information."
+msgstr ""
+
+#: doc/classes/RayCast.xml:123
+msgid ""
+"The custom color to use to draw the shape in the editor and at run-time if "
+"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
+"color will be highlighted at run-time if the [RayCast] is colliding with "
+"something.\n"
+"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
+"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
+msgstr ""
+
+#: doc/classes/RayCast.xml:127
+msgid ""
+"If set to [code]1[/code], a line is used as the debug shape. Otherwise, a "
+"truncated pyramid is drawn to represent the [RayCast]. Requires [b]Visible "
+"Collision Shapes[/b] to be enabled in the [b]Debug[/b] menu for the debug "
+"shape to be visible at run-time."
+msgstr ""
+
+#: doc/classes/RayCast.xml:130 doc/classes/RayCast2D.xml:119
+msgid "If [code]true[/code], collisions will be reported."
+msgstr ""
+
+#: doc/classes/RayCast.xml:133
+msgid ""
+"If [code]true[/code], collisions will be ignored for this RayCast's "
+"immediate parent."
+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:40
+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] [code]enabled[/code] is not required for this to work."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:101
+msgid ""
+"Sets or clears individual bits on the collision mask. This makes selecting "
+"the areas scanned easier."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:110
+msgid "If [code]true[/code], collision with [Area2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:113
+msgid "If [code]true[/code], collision with [PhysicsBody2D]s will be reported."
+msgstr ""
+
+#: doc/classes/RayCast2D.xml:122
+msgid ""
+"If [code]true[/code], the parent node will be excluded from collision "
+"detection."
+msgstr ""
+
+#: doc/classes/RayShape.xml:4
+msgid "Ray shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/RayShape.xml:7
+msgid ""
+"Ray shape for 3D collisions, which can be set into a [PhysicsBody] or "
+"[Area]. 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/RayShape.xml:15 doc/classes/RayShape2D.xml:15
+msgid "The ray's length."
+msgstr ""
+
+#: doc/classes/RayShape.xml:18 doc/classes/RayShape2D.xml:18
+msgid "If [code]true[/code], allow the shape to return the correct normal."
+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/Rect2.xml:4
+msgid "2D axis-aligned bounding box."
+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.\n"
+"The 3D counterpart to [Rect2] is [AABB]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:22
+msgid "Constructs a [Rect2] by position and size."
+msgstr ""
+
+#: doc/classes/Rect2.xml:32
+msgid "Constructs a [Rect2] by x, y, width, and height."
+msgstr ""
+
+#: doc/classes/Rect2.xml:38
+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:45
+msgid "Returns the intersection of this [Rect2] and b."
+msgstr ""
+
+#: doc/classes/Rect2.xml:52
+msgid ""
+"Returns [code]true[/code] if this [Rect2] completely encloses another one."
+msgstr ""
+
+#: doc/classes/Rect2.xml:59
+msgid "Returns this [Rect2] expanded to include a given point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:65
+msgid "Returns the area of the [Rect2]."
+msgstr ""
+
+#: doc/classes/Rect2.xml:72
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards all the "
+"sides."
+msgstr ""
+
+#: doc/classes/Rect2.xml:82
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards each "
+"direction individually."
+msgstr ""
+
+#: doc/classes/Rect2.xml:90
+msgid ""
+"Returns a copy of the [Rect2] grown a given amount of units towards the "
+"[enum Margin] direction."
+msgstr ""
+
+#: doc/classes/Rect2.xml:96
+msgid "Returns [code]true[/code] if the [Rect2] is flat or empty."
+msgstr ""
+
+#: doc/classes/Rect2.xml:103
+msgid "Returns [code]true[/code] if the [Rect2] contains a point."
+msgstr ""
+
+#: doc/classes/Rect2.xml:111
+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:119
+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:126
+msgid "Returns a larger [Rect2] that contains this [Rect2] 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:17
+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 other [Object] types, 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.\n"
+"[b]Note:[/b] In C#, references will not be freed instantly after they are no "
+"longer in use. Instead, garbage collection will run periodically and will "
+"free references that are no longer in use. This means that unused references "
+"will linger on for a while before being removed."
+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:26
+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:33
+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]. If you need to "
+"display a rectangle filled with a solid color, consider using [ColorRect] "
+"instead."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:15
+msgid "Sets the border [Color] of the [ReferenceRect]."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:18
+msgid ""
+"Sets the border width of the [ReferenceRect]. The border grows both inwards "
+"and outwards with respect to the rectangle box."
+msgstr ""
+
+#: doc/classes/ReferenceRect.xml:21
+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 ""
+"Capture its surroundings as a dual paraboloid image, 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.\n"
+"[b]Note:[/b] By default Godot will only render 16 reflection probes. If you "
+"need more, increase the number of atlas subdivisions. This setting can be "
+"found in [member ProjectSettings.rendering/quality/reflections/"
+"atlas_subdiv].\n"
+"[b]Note:[/b] The GLES2 backend will only display two reflection probes at "
+"the same time for a single mesh. If possible, split up large meshes that "
+"span over multiple reflection probes into smaller ones."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:13
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html"
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:19
+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:22
+msgid ""
+"Sets the cull mask which determines what objects are drawn by this probe. "
+"Every [VisualInstance] 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:25
+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:28
+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:31
+msgid ""
+"Defines the reflection intensity. Intensity modulates the strength of the "
+"reflection."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:34
+msgid ""
+"Sets the ambient light color to be used when this probe is set to [member "
+"interior_enable]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:37
+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:40
+msgid ""
+"Sets the energy multiplier for this reflection probe's ambient light "
+"contribution when set to [member interior_enable]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:43
+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:46
+msgid ""
+"Sets the max distance away from the probe an object can be before it is "
+"culled."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:49
+msgid ""
+"Sets the origin offset to be used when this reflection probe is in box "
+"project mode."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:52
+msgid ""
+"Sets how frequently the probe is updated. Can be [constant UPDATE_ONCE] or "
+"[constant UPDATE_ALWAYS]."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:57
+msgid "Update the probe once on the next frame."
+msgstr ""
+
+#: doc/classes/ReflectionProbe.xml:60
+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 result in regex.search_all(\"One Two \\n\\tThree\"):\n"
+" results.push_back(result.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:55
+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:62
+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:68
+msgid "Returns the number of capturing groups in compiled pattern."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:74
+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:80
+msgid "Returns the original search pattern that was compiled."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:86
+msgid "Returns whether this object has a valid search pattern assigned."
+msgstr ""
+
+#: modules/regex/doc_classes/RegEx.xml:95
+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:104
+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:115
+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:16
+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:23
+msgid "Returns the number of capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:30
+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:38
+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:45
+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:48
+msgid "An [Array] of the match and its capturing groups."
+msgstr ""
+
+#: modules/regex/doc_classes/RegExMatch.xml:51
+msgid ""
+"The source string used with the search pattern to find this matching result."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:4
+msgid ""
+"RemoteTransform pushes its own [Transform] to another [Spatial] derived Node "
+"in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:7
+msgid ""
+"RemoteTransform pushes its own [Transform] to another [Spatial] 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/RemoteTransform.xml:16
+msgid ""
+"[RemoteTransform] 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/RemoteTransform.xml:22
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform's "
+"position in the scene."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:25 doc/classes/RemoteTransform2D.xml:25
+msgid "If [code]true[/code], the remote node's position is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:28 doc/classes/RemoteTransform2D.xml:28
+msgid "If [code]true[/code], the remote node's rotation is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:31 doc/classes/RemoteTransform2D.xml:31
+msgid "If [code]true[/code], the remote node's scale is updated."
+msgstr ""
+
+#: doc/classes/RemoteTransform.xml:34 doc/classes/RemoteTransform2D.xml:34
+msgid ""
+"If [code]true[/code], global coordinates are used. If [code]false[/code], "
+"local coordinates are used."
+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:16
+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:22
+msgid ""
+"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
+"position in the scene."
+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. Since they inherit from [Reference], resources "
+"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.\n"
+"[b]Note:[/b] In C#, resources will not be freed instantly after they are no "
+"longer in use. Instead, garbage collection will run periodically and will "
+"free resources that are no longer in use. This means that unused resources "
+"will linger on for a while before being removed."
+msgstr ""
+
+#: doc/classes/Resource.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:25
+msgid ""
+"Duplicates the resource, returning a new resource with the exported members "
+"copied. [b]Note:[/b] To duplicate the resource the constructor is called "
+"without arguments. This method will error when the constructor doesn't have "
+"default values.\n"
+"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.\n"
+"[b]Note:[/b] When duplicating a resource, only [code]export[/code]ed "
+"properties are copied. Other properties will be set to their default value "
+"in the new resource."
+msgstr ""
+
+#: doc/classes/Resource.xml:34
+msgid ""
+"Emits the [signal changed] signal.\n"
+"If external objects which depend on this resource should be updated, this "
+"method must be called manually whenever the state of this resource has "
+"changed (such as modification of properties).\n"
+"The method is equivalent to:\n"
+"[codeblock]\n"
+"emit_signal(\"changed\")\n"
+"[/codeblock]\n"
+"[b]Note:[/b] This method is called automatically for built-in resources."
+msgstr ""
+
+#: doc/classes/Resource.xml:46
+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:52
+msgid ""
+"Returns the RID of the resource (or an empty RID). Many resources (such as "
+"[Texture], [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:58
+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:66
+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:72
+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:75
+msgid ""
+"The name of the resource. This is an optional identifier. If [member "
+"resource_name] is not empty, its value will be displayed to represent the "
+"current resource in the editor inspector. For built-in scripts, the [member "
+"resource_name] will be displayed as the tab name in the script editor."
+msgstr ""
+
+#: doc/classes/Resource.xml:78
+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:84
+msgid ""
+"Emitted whenever the resource changes.\n"
+"[b]Note:[/b] This signal is not emitted automatically for custom resources, "
+"which means that you need to create a setter and emit the signal yourself."
+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 on 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] ([StreamTexture]) first, so they can be loaded with "
+"better efficiency on the graphics card."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:19
+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:26
+msgid "Gets the list of extensions for files this loader is able to read."
+msgstr ""
+
+#: doc/classes/ResourceFormatLoader.xml:33
+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:41
+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:50
+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:58
+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:17
+msgid ""
+"Returns the list of extensions available for saving the resource object, "
+"provided it is recognized (see [method recognize])."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:24
+msgid "Returns whether the given resource object can be saved by this saver."
+msgstr ""
+
+#: doc/classes/ResourceFormatSaver.xml:33
+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/ResourceImporter.xml:4
+msgid "Base class for the implementation of core resource importers."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:7
+msgid ""
+"This is the base class for the resource importers implemented in core. To "
+"implement your own resource importers using editor plugins, see "
+"[EditorImportPlugin]."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:16
+msgid "The default import order."
+msgstr ""
+
+#: doc/classes/ResourceImporter.xml:19
+msgid ""
+"The import order for scenes, which ensures scenes are imported [i]after[/i] "
+"all other core resources such as textures. Custom importers should generally "
+"have an import order lower than [code]100[/code] to avoid issues when "
+"importing scenes that rely on custom resources."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:4
+msgid "Interactive [Resource] loader."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:7
+msgid ""
+"Interactive [Resource] loader. This object is returned by [ResourceLoader] "
+"when performing an interactive load. It allows loading resources with high "
+"granularity, which makes it mainly useful for displaying loading bars or "
+"percentages."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:15
+msgid ""
+"Returns the loaded resource if the load operation completed successfully, "
+"[code]null[/code] otherwise."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:21
+msgid ""
+"Returns the load stage. The total amount of stages can be queried with "
+"[method get_stage_count]."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:27
+msgid ""
+"Returns the total amount of stages (calls to [method poll]) needed to "
+"completely load this resource."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:33
+msgid ""
+"Polls the loading operation, i.e. loads a data chunk up to the next stage.\n"
+"Returns [constant OK] if the poll is successful but the load operation has "
+"not finished yet (intermediate stage). This means [method poll] will have to "
+"be called again until the last stage is completed.\n"
+"Returns [constant ERR_FILE_EOF] if the load operation has completed "
+"successfully. The loaded resource can be obtained by calling [method "
+"get_resource].\n"
+"Returns another [enum Error] code if the poll has failed."
+msgstr ""
+
+#: doc/classes/ResourceInteractiveLoader.xml:42
+msgid ""
+"Polls the loading operation successively until the resource is completely "
+"loaded or a [method poll] fails.\n"
+"Returns [constant ERR_FILE_EOF] if the load operation has completed "
+"successfully. The loaded resource can be obtained by calling [method "
+"get_resource].\n"
+"Returns another [enum Error] code if a poll has failed, aborting the "
+"operation."
+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."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:19
+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:27
+msgid ""
+"Returns the dependencies for the resource at the given [code]path[/code]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:34
+msgid "Returns the list of recognized extensions for a resource type."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:41
+msgid ""
+"[i]Deprecated method.[/i] Use [method has_cached] or [method exists] instead."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:48
+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] or [method "
+"load_interactive] methods 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:58
+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]. "
+"Anything that inherits from [Resource] can be used as a type hint, for "
+"example [Image].\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.\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:71
+msgid ""
+"Starts loading a resource interactively. The returned "
+"[ResourceInteractiveLoader] object allows to load with high granularity, "
+"calling its [method ResourceInteractiveLoader.poll] method successively to "
+"load chunks.\n"
+"An optional [code]type_hint[/code] can be used to further specify the "
+"[Resource] type that should be handled by the [ResourceFormatLoader]. "
+"Anything that inherits from [Resource] can be used as a type hint, for "
+"example [Image]."
+msgstr ""
+
+#: doc/classes/ResourceLoader.xml:79
+msgid ""
+"Changes the behavior on missing sub-resources. The default behavior is to "
+"abort loading."
+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:18
+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:25
+msgid "Returns the resource associated to [code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:31
+msgid "Returns the list of resources inside the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:38
+msgid ""
+"Returns [code]true[/code] if the preloader contains a resource associated to "
+"[code]name[/code]."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:45
+msgid ""
+"Removes the resource associated to [code]name[/code] from the preloader."
+msgstr ""
+
+#: doc/classes/ResourcePreloader.xml:53
+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:17
+msgid ""
+"Returns the list of extensions available for saving a resource of a given "
+"type."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:26
+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:34
+msgid "Save the resource with a path relative to the scene which uses it."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:37
+msgid "Bundles external resources."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:40
+msgid ""
+"Changes the [member Resource.resource_path] of the saved resource to match "
+"its new location."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:43
+msgid ""
+"Do not save editor-specific metadata (identified by their [code]__editor[/"
+"code] prefix)."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:46
+msgid "Save as big endian (see [member File.endian_swap])."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:49
+msgid ""
+"Compress the resource on save using [constant File.COMPRESSION_ZSTD]. Only "
+"available for binary resource types."
+msgstr ""
+
+#: doc/classes/ResourceSaver.xml:52
+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:24
+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.\n"
+"[b]Note:[/b] RichTextLabel doesn't support entangled BBCode tags. For "
+"example, instead of using [code][b]bold[i]bold italic[/b]italic[/i][/code], "
+"use [code][b]bold[i]bold italic[/i][/b][i]italic[/i][/code].\n"
+"[b]Note:[/b] [code]push_*/pop[/code] functions won't affect BBCode.\n"
+"[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.\n"
+"[b]Note:[/b] Unicode characters after [code]0xffff[/code] (such as most "
+"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
+"characters instead. This will be resolved in Godot 4.0."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:16
+msgid "https://godotengine.org/asset-library/asset/132"
+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.\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:34
+msgid "Adds raw non-BBCode-parsed text to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:41
+msgid ""
+"Parses [code]bbcode[/code] and adds tags to the tag stack as needed. Returns "
+"the result of the parsing, [constant OK] if successful.\n"
+"[b]Note:[/b] Using this method, you can't close a tag that was opened in a "
+"previous [method append_bbcode] call. This is done to improve performance, "
+"especially when updating large RichTextLabels since rebuilding the whole "
+"BBCode every time would be slower. If you absolutely need to close a tag in "
+"a future method call, append the [member bbcode_text] instead of using "
+"[method append_bbcode]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:48
+msgid "Clears the tag stack and sets [member bbcode_text] to an empty string."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:54
+msgid "Returns the height of the content."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:60
+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:66
+msgid ""
+"Returns the total number of characters from text tags. Does not include "
+"BBCodes."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:72
+msgid ""
+"Returns the vertical scrollbar.\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:79
+msgid "Returns the number of visible lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:86
+msgid ""
+"Installs a custom effect. [code]effect[/code] should be a valid "
+"[RichTextEffect]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:92
+msgid "Adds a newline tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:99
+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:106
+msgid "Parses BBCode parameter [code]expressions[/code] into a dictionary."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:112
+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:119
+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:125
+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:131
+msgid ""
+"Adds a [code][font][/code] tag with a bold italics font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:137
+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:144
+msgid "Adds a [code][color][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:151
+msgid ""
+"Adds a [code][font][/code] tag to the tag stack. Overrides default fonts for "
+"its duration."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:158
+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:164
+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:171
+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:178
+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:184
+msgid "Adds a [code][font][/code] tag with a monospace font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:190
+msgid "Adds a [code][font][/code] tag with a normal font to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:196
+msgid "Adds a [code][s][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:203
+msgid "Adds a [code][table=columns][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:209
+msgid "Adds a [code][u][/code] tag to the tag stack."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:216
+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:224
+msgid "Scrolls the window's top line to match [code]line[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:233
+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:241
+msgid ""
+"If [code]true[/code], the label uses BBCode formatting.\n"
+"[b]Note:[/b] Trying to alter the [RichTextLabel]'s text with [method "
+"add_text] will reset this to [code]false[/code]. Use instead [method "
+"append_bbcode] to preserve BBCode formatting."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:245
+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 the [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, unless you absolutely need to close "
+"a tag that was opened in an earlier method call."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:249
+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:253
+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:257
+msgid ""
+"If [code]true[/code], the label underlines meta tags such as [code][url]"
+"{text}[/url][/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:260
+msgid "If [code]true[/code], the label uses the custom font color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:263
+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:268
+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:271
+msgid ""
+"If [code]true[/code], the window scrolls down to display new content "
+"automatically."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:274
+msgid "If [code]true[/code], the label allows text selection."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:277
+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:280
+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:284
+msgid ""
+"The restricted number of characters to display in the label. If [code]-1[/"
+"code], all characters will be displayed.\n"
+"[b]Note:[/b] Setting this property updates [member percent_visible] based on "
+"current [method get_total_character_count]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:292
+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:298
+msgid "Triggers when the mouse exits a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:304
+msgid "Triggers when the mouse enters a meta tag."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:310
+msgid "Makes text left aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:313
+msgid "Makes text centered."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:316
+msgid "Makes text right aligned."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:319
+msgid "Makes text fill width."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:322
+msgid "Each list item has a number marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:325
+msgid "Each list item has a letter marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:328
+msgid "Each list item has a filled circle marker."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:371
+msgid "The font used for bold text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:374
+msgid "The font used for bold italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:377
+msgid "The default text color."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:380
+msgid "The background The background used when the [RichTextLabel] is focused."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:383
+msgid ""
+"The color of selected text, used when [member selection_enabled] is "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:386
+msgid "The color of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:389
+msgid "The font used for italics text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:392
+msgid "The vertical space between lines."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:395
+msgid "The font used for monospace text."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:398
+msgid "The normal background for the [RichTextLabel]."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:401
+msgid "The default text font."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:404
+msgid "The color of the selection box."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:407
+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:410
+msgid "The horizontal offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:413
+msgid "The vertical offset of the font's shadow."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:416
+msgid "The horizontal separation of elements in a table."
+msgstr ""
+
+#: doc/classes/RichTextLabel.xml:419
+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 "
+"[VisualServer]."
+msgstr ""
+
+#: doc/classes/RID.xml:16
+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:22
+msgid "Returns the ID of the referenced resource."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:4
+msgid ""
+"Physics Body whose position is determined through physics simulation in 3D "
+"space."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:7
+msgid ""
+"This is the node that implements full 3D physics. This means that you do not "
+"control a RigidBody 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 RigidBody has 4 behavior [member mode]s: Rigid, Static, Character, and "
+"Kinematic.\n"
+"[b]Note:[/b] Don't change a RigidBody'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].\n"
+"With Bullet physics (the default), the center of mass is the RigidBody3D "
+"center. With GodotPhysics, the center of mass is the average of the "
+"[CollisionShape] centers."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:23
+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/RigidBody.xml:30
+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/RigidBody.xml:39
+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/RigidBody.xml:47
+msgid ""
+"Adds a constant rotational force (i.e. a motor) without affecting position."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:54
+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/RigidBody.xml:63
+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/RigidBody.xml:70
+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/RigidBody.xml:77
+msgid ""
+"Returns [code]true[/code] if the specified linear or rotational axis is "
+"locked."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:83 doc/classes/RigidBody2D.xml:73
+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/RigidBody.xml:90
+msgid ""
+"Returns the inverse inertia tensor basis. This is used to calculate the "
+"angular acceleration resulting from a torque applied to the RigidBody."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:98
+msgid "Locks the specified linear or rotational axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:111
+msgid ""
+"Damps RigidBody's rotational forces.\n"
+"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:115
+msgid "RigidBody's rotational velocity."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:118
+msgid "Lock the body's rotation in the X axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:121
+msgid "Lock the body's rotation in the Y axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:124
+msgid "Lock the body's rotation in the Z axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:127
+msgid "Lock the body's movement in the X axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:130
+msgid "Lock the body's movement in the Y axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:133
+msgid "Lock the body's movement in the Z axis."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:136 doc/classes/RigidBody2D.xml:110
+#: doc/classes/StaticBody.xml:19 doc/classes/StaticBody2D.xml:16
+msgid ""
+"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
+"[code]1[/code] (full bounciness).\n"
+"Deprecated, use [member PhysicsMaterial.bounce] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:140
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping].\n"
+"[b]Note:[/b] A RigidBody3D will never enter sleep mode automatically if its "
+"[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep "
+"manually by setting its [member sleeping] property to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:144
+msgid ""
+"If [code]true[/code], the RigidBody will emit signals when it collides with "
+"another RigidBody. See also [member contacts_reported]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:147
+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/RigidBody.xml:151
+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/RigidBody.xml:155
+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/RigidBody.xml:158
+msgid ""
+"The body's friction, from 0 (frictionless) to 1 (max friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:162
+msgid ""
+"This is multiplied by the global 3D gravity setting found in [b]Project > "
+"Project Settings > Physics > 3d[/b] to produce RigidBody'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/RigidBody.xml:165
+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.\n"
+"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:169
+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/RigidBody.xml:172 doc/classes/RigidBody2D.xml:149
+msgid "The body's mass."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:175
+msgid "The body mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:178 doc/classes/RigidBody2D.xml:155
+#: doc/classes/StaticBody.xml:33 doc/classes/StaticBody2D.xml:30
+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/RigidBody.xml:182 doc/classes/RigidBody2D.xml:159
+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/RigidBody.xml:185
+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/RigidBody.xml:192
+msgid ""
+"Emitted when a collision with another [PhysicsBody] or [GridMap] occurs. "
+"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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:199
+msgid ""
+"Emitted when the collision with another [PhysicsBody] or [GridMap] ends. "
+"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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap]."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:209
+msgid ""
+"Emitted when one of this RigidBody's [Shape]s collides with another "
+"[PhysicsBody] or [GridMap]'s [Shape]s. 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. [GridMap]s are detected if the "
+"[MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody] or "
+"[MeshLibrary]'s [CollisionObject] used by the [PhysicsServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the other "
+"[PhysicsBody] or [GridMap] used by the [PhysicsServer]. Get the "
+"[CollisionShape] node with [code]body.shape_owner_get_owner(body_shape_index)"
+"[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this RigidBody "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code].\n"
+"[b]Note:[/b] Bullet physics cannot identify the shape index when using a "
+"[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a "
+"[ConcavePolygonShape] with Bullet physics if you need shape indices."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:223
+msgid ""
+"Emitted when the collision between one of this RigidBody's [Shape]s and "
+"another [PhysicsBody] or [GridMap]'s [Shape]s ends. 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. "
+"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody] or "
+"[MeshLibrary]'s [CollisionObject] used by the [PhysicsServer]. [GridMap]s "
+"are detected if the Meshes have [Shape]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody] or [GridMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape] of the other "
+"[PhysicsBody] or [GridMap] used by the [PhysicsServer]. Get the "
+"[CollisionShape] node with [code]body.shape_owner_get_owner(body_shape_index)"
+"[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape] of this RigidBody "
+"used by the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
+"shape_owner_get_owner(local_shape_index)[/code].\n"
+"[b]Note:[/b] Bullet physics cannot identify the shape index when using a "
+"[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a "
+"[ConcavePolygonShape] with Bullet physics if you need shape indices."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:233 doc/classes/RigidBody2D.xml:208
+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/RigidBody.xml:240
+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/RigidBody.xml:243
+msgid ""
+"Static mode. The body behaves like a [StaticBody], and can only move by user "
+"code."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:246
+msgid ""
+"Character body mode. This behaves like a rigid body, but can not rotate."
+msgstr ""
+
+#: doc/classes/RigidBody.xml:249
+msgid ""
+"Kinematic body mode. The body behaves like a [KinematicBody], and can only "
+"move by user code."
+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].\n"
+"The center of mass is always located at the node's origin without taking "
+"into account the [CollisionShape2D] centroid offsets."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:15
+msgid "https://godotengine.org/asset-library/asset/119"
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:16 doc/classes/Sprite.xml:10
+msgid "https://godotengine.org/asset-library/asset/148"
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:23
+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: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 (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:81
+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:91
+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 "
+"[Physics2DTestMotionResult], which contains additional information about the "
+"collision (should there be one)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:97
+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].\n"
+"See [member ProjectSettings.physics/2d/default_angular_damp] for more "
+"details about damping."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:104
+msgid "The body's total applied force."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:107
+msgid "The body's total applied torque."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:114
+msgid ""
+"If [code]true[/code], the body can enter sleep mode when there is no "
+"movement. See [member sleeping].\n"
+"[b]Note:[/b] A RigidBody2D will never enter sleep mode automatically if its "
+"[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep "
+"manually by setting its [member sleeping] property to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:118
+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:121
+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)."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:125
+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:129
+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:132
+msgid ""
+"The body's friction. Values range from [code]0[/code] (frictionless) to "
+"[code]1[/code] (maximum friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:136
+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:139
+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:142
+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].\n"
+"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
+"about damping."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:152
+msgid "The body's mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:162
+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:169
+msgid ""
+"Emitted when a collision with another [PhysicsBody2D] or [TileMap] occurs. "
+"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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:176
+msgid ""
+"Emitted when the collision with another [PhysicsBody2D] or [TileMap] ends. "
+"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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:186
+msgid ""
+"Emitted when one of this RigidBody2D's [Shape2D]s collides with another "
+"[PhysicsBody2D] or [TileMap]'s [Shape2D]s. 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. [TileMap]s are detected if the "
+"[TileSet] has Collision [Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the other "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this "
+"RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node "
+"with [code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:199
+msgid ""
+"Emitted when the collision between one of this RigidBody2D's [Shape2D]s and "
+"another [PhysicsBody2D] or [TileMap]'s [Shape2D]s ends. 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. "
+"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
+"[code]body_rid[/code] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
+"[CollisionObject2D] used by the [Physics2DServer].\n"
+"[code]body[/code] the [Node], if it exists in the tree, of the other "
+"[PhysicsBody2D] or [TileMap].\n"
+"[code]body_shape_index[/code] the index of the [Shape2D] of the other "
+"[PhysicsBody2D] or [TileMap] used by the [Physics2DServer]. Get the "
+"[CollisionShape2D] node with [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] the index of the [Shape2D] of this "
+"RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node "
+"with [code]self.shape_owner_get_owner(local_shape_index)[/code]."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:215
+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:218
+msgid "Static mode. The body behaves like a [StaticBody2D] and does not move."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:221
+msgid ""
+"Character mode. Similar to [constant MODE_RIGID], but the body can not "
+"rotate."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:224
+msgid ""
+"Kinematic mode. The body behaves like a [KinematicBody2D], and must be moved "
+"by code."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:227
+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:230
+msgid ""
+"Continuous collision detection enabled using raycasting. This is faster than "
+"shapecasting but less precise."
+msgstr ""
+
+#: doc/classes/RigidBody2D.xml:233
+msgid ""
+"Continuous collision detection enabled using shapecasting. This is the "
+"slowest CCD method and the most precise."
+msgstr ""
+
+#: doc/classes/Room.xml:4
+msgid "Room node, used to group objects together locally for [Portal] culling."
+msgstr ""
+
+#: doc/classes/Room.xml:7
+msgid ""
+"The [Portal] culling system requires levels to be built using objects "
+"grouped together by location in areas called [Room]s. In many cases these "
+"will correspond to actual rooms in buildings, but not necessarily (a canyon "
+"area may be treated as a room).\n"
+"Any [VisualInstance] that is a child or grandchild of a [Room] will be "
+"assigned to that room, if the [code]portal_mode[/code] of that "
+"[VisualInstance] is set to [code]STATIC[/code] (does not move) or "
+"[code]DYNAMIC[/code] (moves only within the room).\n"
+"Internally the room boundary must form a [b]convex hull[/b], and by default "
+"this is determined automatically by the geometry of the objects you place "
+"within the room.\n"
+"You can alternatively precisely specify a [b]manual bound[/b]. If you place "
+"a [MeshInstance] with a name prefixed by [code]Bound_[/code], it will turn "
+"off the bound generation from geometry, and instead use the vertices of this "
+"MeshInstance to directly calculate a convex hull during the conversion stage "
+"(see [RoomManager]).\n"
+"In order to see from one room into an adjacent room, [Portal]s must be "
+"placed over non-occluded openings between rooms. These will often be placed "
+"over doors and windows."
+msgstr ""
+
+#: doc/classes/Room.xml:27
+msgid ""
+"If [code]points[/code] are set, the [Room] bounding convex hull will be "
+"built from these points. If no points are set, the room bound will either be "
+"derived from a manual bound ([MeshInstance] with name prefix [code]Bound_[/"
+"code]), or from the geometry within the room.\n"
+"Note that you can use the [code]Generate Points[/code] editor button to get "
+"started. This will use either the geometry or manual bound to generate the "
+"room hull, and save the resulting points, allowing you to edit them to "
+"further refine the bound."
+msgstr ""
+
+#: doc/classes/Room.xml:31
+msgid ""
+"The [code]simplify[/code] value determines to what degree room hulls "
+"(bounds) are simplified, by removing similar planes. A value of 0 gives no "
+"simplification, 1 gives maximum simplification."
+msgstr ""
+
+#: doc/classes/Room.xml:34
+msgid ""
+"The room hull simplification can either use the default value set in the "
+"[RoomManager], or override this and use the per room setting."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:4
+msgid "Groups [Room]s together to allow common functionality."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:7
+msgid ""
+"Although [Room] behaviour can be specified individually, sometimes it is "
+"faster and more convenient to write functionality for a group of rooms.\n"
+"[RoomGroup]s should be placed as children of the [b]room list[/b] (the "
+"parent [Node] of your [Room]s), and [Room]s should be placed in turn as "
+"children of a [RoomGroup] in order to assign them to the RoomGroup.\n"
+"A [RoomGroup] can for example be used to specify [Room]s that are "
+"[b]outside[/b], and switch on or off a directional light, sky, or rain "
+"effect as the player enters / exits the area.\n"
+"[RoomGroup]s receive [b]gameplay callbacks[/b] when the "
+"[code]gameplay_monitor[/code] is switched on, as [code]signal[/code]s or "
+"[code]notification[/code]s as they enter and exit the [b]gameplay area[/b] "
+"(see [RoomManager] for details)."
+msgstr ""
+
+#: doc/classes/RoomGroup.xml:18
+msgid ""
+"This priority will be applied to [Room]s within the group. The [Room] "
+"priority allows the use of [b]internal rooms[/b], rooms [i]within[/i] "
+"another room or rooms.\n"
+"When the [Camera] is within more than one room (regular and internal), the "
+"higher priority room will take precedence. So with for example, a house "
+"inside a terrain 'room', you would make the house higher priority, so that "
+"when the camera is within the house, the house is used as the source room, "
+"but outside the house, the terrain room would be used instead."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:4
+msgid "The RoomManager node is used to control the portal culling system."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:7
+msgid ""
+"In order to utilize the portal occlusion culling system, you must build your "
+"level using [Room]s and [Portal]s. Before these can be used at runtime, they "
+"must undergo a short conversion process to build the [code]room graph[/"
+"code], runtime data needed for portal culling. The [code]room graph[/code] "
+"is controlled by the [RoomManager] node, and the [RoomManager] also contains "
+"settings that are common throughout the portal system."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:15
+msgid ""
+"This function clears all converted data from the [b]room graph[/b]. Use this "
+"before unloading a level, when transitioning from level to level, or "
+"returning to a main menu."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:21
+msgid ""
+"This is the most important function in the whole portal culling system. "
+"Without it, the system cannot function.\n"
+"First it goes through every [Room] that is a child of the [code]room list[/"
+"code] node (and [RoomGroup]s within) and converts and adds it to the "
+"[code]room graph[/code].\n"
+"This works for both [Room] nodes, and [Spatial] nodes that follow a special "
+"naming convention. They should begin with the prefix [i]'Room_'[/i], "
+"followed by the name you wish to give the room, e.g. [i]'Room_lounge'[/i]. "
+"This will automatically convert such [Spatial]s to [Room] nodes for you. "
+"This is useful if you want to build you entire room system in e.g. Blender, "
+"and reimport multiple times as you work on the level.\n"
+"The conversion will try to assign [VisualInstance]s that are children and "
+"grandchildren of the [Room] to the room. These should be given a suitable "
+"[code]portal mode[/code] (see the [CullInstance] documentation). The default "
+"[code]portal mode[/code] is [code]STATIC[/code] - objects which are not "
+"expected to move while the level is played, which will typically be most "
+"objects.\n"
+"The conversion will usually use the geometry of these [VisualInstance]s (and "
+"the [Portal]s) to calculate a convex hull bound for the room. These bounds "
+"will be shown in the editor with a wireframe. Alternatively you can specify "
+"a manual custom bound for any room, see the [Room] documentation.\n"
+"By definition, [Camera]s within a room can see everything else within the "
+"room (that is one advantage to using convex hulls). However, in order to see "
+"from one room into adjacent rooms, you must place [Portal]s, which represent "
+"openings that the camera can see through, like windows and doors.\n"
+"[Portal]s are really just specialized [MeshInstance]s. In fact you will "
+"usually first create a portal by creating a [MeshInstance], especially a "
+"[code]plane[/code] mesh instance. You would move the plane in the editor to "
+"cover a window or doorway, with the front face pointing outward from the "
+"room. To let the conversion process know you want this mesh to be a portal, "
+"again we use a special naming convention. [MeshInstance]s to be converted to "
+"a [Portal] should start with the prefix [i]'Portal_'[/i].\n"
+"You now have a choice - you can leave the name as [i]'Portal_'[/i] and allow "
+"the system to automatically detect the nearest [Room] to link. In most cases "
+"this will work fine.\n"
+"An alternative method is to specify the [Room] to link to manually, "
+"appending a suffix to the portal name, which should be the name of the room "
+"you intend to link to. For example [i]'Portal_lounge'[/i] will attempt to "
+"link to the room named [i]'Room_lounge'[/i].\n"
+"There is a special case here - Godot does not allow two nodes to share the "
+"same name. What if you want to manually have more than one portal leading "
+"into the same room? Surely they will need to both be called, e.g. "
+"[i]'Portal_lounge'[/i]?\n"
+"The solution is a wildcard character. After the room name, if you use the "
+"character [i]'*'[/i], this character and anything following it will be "
+"ignored. So you can use for example [i]'Portal_lounge*0'[/i], "
+"[i]'Portal_lounge*1'[/i] etc.\n"
+"Note that [Portal]s that have already been converted to [Portal] nodes "
+"(rather than [MeshInstance]s) still need to follow the same naming "
+"convention, as they will be relinked each time during conversion.\n"
+"It is recommended that you only place objects in rooms that are desired to "
+"stay within those rooms - i.e. [code]portal mode[/code]s [code]STATIC[/code] "
+"or [code]DYNAMIC[/code] (not crossing portals). [code]GLOBAL[/code] and "
+"[code]ROAMING[/code] objects are best placed in another part of the scene "
+"tree, to avoid confusion. See [CullInstance] for a full description of "
+"portal modes."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:39
+msgid ""
+"Switches the portal culling system on and off.\n"
+"It is important to note that when portal culling is active, it is "
+"responsible for [b]all[/b] the 3d culling. Some editor functionality may be "
+"more difficult to use, so switching the active flag is intended to be used "
+"to make sure your [Room] / [Portal] layout works within the editor.\n"
+"Switching to [code]active[/code] will have no effect when the [code]room "
+"graph[/code] is unloaded (the rooms have not yet been converted)."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:44
+msgid ""
+"Large objects can 'sprawl' over (be present in) more than one room. It can "
+"be useful to visualize which objects are sprawling outside the current "
+"room.\n"
+"Toggling this setting turns this debug view on and off."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:48
+msgid ""
+"Usually we don't want objects that only [b]just[/b] cross a boundary into an "
+"adjacent [Room] to sprawl into that room. To prevent this, each [Portal] has "
+"an extra margin, or tolerance zone where objects can enter without sprawling "
+"to a neighbouring room.\n"
+"In most cases you can set this here for all portals. It is possible to "
+"override the margin for each portal."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:52
+msgid ""
+"When using a partial or full PVS, the gameplay monitor allows you to receive "
+"callbacks when roaming objects or rooms enter or exit the [b]gameplay area[/"
+"b]. The gameplay area is defined as either the primary, or secondary PVS.\n"
+"These callbacks allow you to, for example, reduce processing for objects "
+"that are far from the player, or turn on and off AI.\n"
+"You can either choose to receive callbacks as notifications through the "
+"[code]_notification[/code] function, or as signals.\n"
+"[code]NOTIFICATION_ENTER_GAMEPLAY[/code]\n"
+"[code]NOTIFICATION_EXIT_GAMEPLAY[/code]\n"
+"Signals: [code]\"gameplay_entered\"[/code], [code]\"gameplay_exited\"[/code]"
+msgstr ""
+
+#: doc/classes/RoomManager.xml:60
+msgid ""
+"If enabled, the system will attempt to merge similar meshes (particularly in "
+"terms of materials) within [Room]s during conversion. This can significantly "
+"reduce the number of drawcalls and state changes required during rendering, "
+"albeit at a cost of reduced culling granularity.\n"
+"[b]Note:[/b] This operates at runtime during the conversion process, and "
+"will only operate on exported or running projects, in order to prevent "
+"accidental alteration to the scene and loss of data."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:64
+msgid ""
+"When converting rooms, the editor will warn you if overlap is detected "
+"between rooms. Overlap can interfere with determining the room that cameras "
+"and objects are within. A small amount can be acceptable, depending on your "
+"level. Here you can alter the threshold at which the editor warning appears. "
+"There are no other side effects."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:67
+msgid ""
+"Portal rendering is recursive - each time a portal is seen through an "
+"earlier portal there is some cost. For this reason, and to prevent the "
+"possibility of infinite loops, this setting provides a hard limit on the "
+"recursion depth.\n"
+"[b]Note:[/b] This value is unused when using [code]Full[/code] PVS mode."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:71
+msgid ""
+"Portal culling normally operates using the current [Camera] / [Camera]s, "
+"however for debugging purposes within the editor, you can use this setting "
+"to override this behaviour and force it to use a particular camera to get a "
+"better idea of what the occlusion culling is doing."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:75
+msgid ""
+"Optionally during conversion the potentially visible set (PVS) of rooms that "
+"are potentially visible from each room can be calculated. This can be used "
+"either to aid in dynamic portal culling, or to totally replace portal "
+"culling.\n"
+"In [code]Full[/code] PVS Mode, all objects within the potentially visible "
+"rooms will be frustum culled, and rendered if they are within the view "
+"frustum."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:79
+msgid ""
+"During the conversion process, the geometry of objects within [Room]s, or a "
+"custom specified manual bound, are used to generate a [b]convex hull bound[/"
+"b].\n"
+"This convex hull is [b]required[/b] in the visibility system, and is used "
+"for many purposes. Most importantly, it is used to decide whether the "
+"[Camera] (or an object) is within a [Room]. The convex hull generating "
+"algorithm is good, but occasionally it can create too many (or too few) "
+"planes to give a good representation of the room volume.\n"
+"The [code]room_simplify[/code] value can be used to gain fine control over "
+"this process. It determines how similar planes can be for them to be "
+"considered the same (and duplicates removed). The value can be set between 0 "
+"(no simplification) and 1 (maximum simplification).\n"
+"The value set here is the default for all rooms, but individual rooms can "
+"override this value if desired.\n"
+"The room convex hulls are shown as a wireframe in the editor."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:86
+msgid ""
+"For the [Room] conversion process to succeed, you must point the "
+"[RoomManager] to the parent [Node] of your [Room]s and [RoomGroup]s, which "
+"we refer to as the [code]roomlist[/code] (the roomlist is not a special node "
+"type, it is normally just a [Spatial])."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:89
+msgid "Shows the [Portal] margins when the portal gizmo is used in the editor."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:92
+msgid ""
+"When receiving gameplay callbacks when objects enter and exit gameplay, the "
+"[b]gameplay area[/b] can be defined by either the primary PVS (potentially "
+"visible set) of [Room]s, or the secondary PVS (the primary PVS and their "
+"neighbouring [Room]s).\n"
+"Sometimes using the larger gameplay area of the secondary PVS may be "
+"preferable."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:98
+msgid ""
+"Use only [Portal]s at runtime to determine visibility. PVS will not be "
+"generated at [Room]s conversion, and gameplay notifications cannot be used."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:101
+msgid ""
+"Use a combination of PVS and [Portal]s to determine visibility (this is "
+"usually fastest and most accurate)."
+msgstr ""
+
+#: doc/classes/RoomManager.xml:104
+msgid ""
+"Use only the PVS (potentially visible set) of [Room]s to determine "
+"visibility."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:4
+msgid "Editor-only helper for setting up root motion in [AnimationTree]."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:7
+msgid ""
+"[i]Root motion[/i] refers to an animation technique where a mesh's skeleton "
+"is used to give impulse to a character. When working with 3D animations, a "
+"popular technique is for animators to use the root skeleton bone to give "
+"motion to the rest of the skeleton. This allows animating characters in a "
+"way where steps actually match the floor below. It also allows precise "
+"interaction with objects during cinematics. See also [AnimationTree].\n"
+"[b]Note:[/b] [RootMotionView] is only visible in the editor. It will be "
+"hidden automatically in the running project, and will also be converted to a "
+"plain [Node] in the running project. This means a script attached to a "
+"[RootMotionView] node [i]must[/i] have [code]extends Node[/code] instead of "
+"[code]extends RootMotionView[/code]. Additionally, it must not be a "
+"[code]@tool[/code] script."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:11
+msgid ""
+"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree."
+"html#root-motion"
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:17
+msgid "Path to an [AnimationTree] node to use as a basis for root motion."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:20
+msgid "The grid's cell size in 3D units."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:23
+msgid "The grid's color."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:26
+msgid ""
+"The grid's radius in 3D units. The grid's opacity will fade gradually as the "
+"distance from the origin increases until this [member radius] is reached."
+msgstr ""
+
+#: doc/classes/RootMotionView.xml:29
+msgid ""
+"If [code]true[/code], the grid's points will all be on the same Y coordinate "
+"([i]local[/i] Y = 0). If [code]false[/code], the points' original Y "
+"coordinate is preserved."
+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:17
+msgid ""
+"Returns the list of bound parameters for the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:23
+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:31
+msgid ""
+"Returns the connection flags for the signal at [code]idx[/code]. See [enum "
+"Object.ConnectFlags] constants."
+msgstr ""
+
+#: doc/classes/SceneState.xml:38
+msgid "Returns the method connected to the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:45
+msgid "Returns the name of the signal at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:52
+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:59
+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:65
+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:73
+msgid ""
+"Returns the list of group names associated with the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:80
+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:87
+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:94
+msgid ""
+"Returns the path to the represented scene file if the node at [code]idx[/"
+"code] is an [InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:101
+msgid "Returns the name of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:108
+msgid ""
+"Returns the path to the owner of the node at [code]idx[/code], relative to "
+"the root node."
+msgstr ""
+
+#: doc/classes/SceneState.xml:116
+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:124
+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:133
+msgid ""
+"Returns the name of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:141
+msgid ""
+"Returns the value of the property at [code]prop_idx[/code] for the node at "
+"[code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:148
+msgid "Returns the type of the node at [code]idx[/code]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:155
+msgid ""
+"Returns [code]true[/code] if the node at [code]idx[/code] is an "
+"[InstancePlaceholder]."
+msgstr ""
+
+#: doc/classes/SceneState.xml:161
+msgid ""
+"If passed to [method PackedScene.instance], blocks edits to the scene state."
+msgstr ""
+
+#: doc/classes/SceneState.xml:164
+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:168
+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. an \"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/3.4/getting_started/step_by_step/scene_tree."
+"html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:13
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions."
+"html"
+msgstr ""
+
+#: doc/classes/SceneTree.xml:21
+msgid ""
+"Calls [code]method[/code] on each member of the given group. You can pass "
+"arguments to [code]method[/code] by specifying them at the end of the method "
+"call. This method is equivalent of calling [method call_group_flags] with "
+"[constant GROUP_CALL_DEFAULT] flag.\n"
+"[b]Note:[/b] [code]method[/code] may only have 5 arguments at most (7 "
+"arguments passed to this method in total).\n"
+"[b]Note:[/b] Due to design limitations, [method call_group] will fail "
+"silently if one of the arguments is [code]null[/code].\n"
+"[b]Note:[/b] [method call_group] will always call methods with an one-frame "
+"delay, in a way similar to [method Object.call_deferred]. To call methods "
+"immediately, use [method call_group_flags] with the [constant "
+"GROUP_CALL_REALTIME] flag."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:33
+msgid ""
+"Calls [code]method[/code] on each member of the given group, respecting the "
+"given [enum GroupCallFlags]. You can pass arguments to [code]method[/code] "
+"by specifying them at the end of the method call.\n"
+"[b]Note:[/b] [code]method[/code] may only have 5 arguments at most (8 "
+"arguments passed to this method in total).\n"
+"[b]Note:[/b] Due to design limitations, [method call_group_flags] will fail "
+"silently if one of the arguments is [code]null[/code].\n"
+"[codeblock]\n"
+"# Call the method immediately and in reverse order.\n"
+"get_tree().call_group_flags(SceneTree.GROUP_CALL_REALTIME | SceneTree."
+"GROUP_CALL_REVERSE, \"bases\", \"destroy\")\n"
+"[/codeblock]"
+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.\n"
+"[b]Note:[/b] The scene change is deferred, which means that the new scene "
+"node is added on the next idle frame. You won't be able to access it "
+"immediately after the [method change_scene] call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:55
+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.\n"
+"[b]Note:[/b] The scene change is deferred, which means that the new scene "
+"node is added on the next idle frame. You won't be able to access it "
+"immediately after the [method change_scene_to] call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:65
+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]\n"
+"The timer will be automatically freed after its time elapses."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:79
+msgid ""
+"Returns the current frame number, i.e. the total frame count since the "
+"application started."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:85
+msgid ""
+"Returns the peer IDs of all connected peers of this [SceneTree]'s [member "
+"network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:91
+msgid "Returns the unique peer ID of this [SceneTree]'s [member network_peer]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:97
+msgid "Returns the number of nodes in this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:104
+msgid "Returns a list of all nodes assigned to the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:110
+msgid "Returns the sender's peer ID for the most recently received RPC call."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:117
+msgid "Returns [code]true[/code] if the given group exists."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:129
+msgid ""
+"Returns [code]true[/code] if the most recent [InputEvent] was marked as "
+"handled with [method set_input_as_handled]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:135
+msgid ""
+"Returns [code]true[/code] if this [SceneTree]'s [member network_peer] is in "
+"server mode (listening for connections)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:143
+msgid "Sends the given notification to all members of the [code]group[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:152
+msgid ""
+"Sends the given notification to all members of the [code]group[/code], "
+"respecting the given [enum GroupCallFlags]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:159
+msgid ""
+"Queues the given object for deletion, delaying the call to [method Object."
+"free] to after the current frame."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:166
+msgid ""
+"Quits the application at the end of the current iteration. 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.\n"
+"[b]Note:[/b] On iOS this method doesn't work. Instead, as recommended by the "
+"iOS Human Interface Guidelines, the user is expected to close apps via the "
+"Home button."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:173
+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:181
+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:191
+msgid ""
+"Sets the given [code]property[/code] to [code]value[/code] on all members of "
+"the given group."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:201
+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:207
+msgid "Marks the most recent [InputEvent] as handled."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:214
+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 "
+"MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:225
+msgid ""
+"Configures screen stretching to the given [enum StretchMode], [enum "
+"StretchAspect], minimum size and [code]scale[/code]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:231
+msgid "The current scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:234
+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:237
+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:240
+msgid "The root of the edited scene."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:243
+msgid "The default [MultiplayerAPI] instance for this [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:246
+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:250
+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:253
+msgid ""
+"If [code]true[/code], the [SceneTree] is paused. Doing so will have the "
+"following behavior:\n"
+"- 2D and 3D physics will be stopped. This includes signals and collision "
+"detection.\n"
+"- [method Node._process], [method Node._physics_process] and [method Node."
+"_input] will not be called anymore in nodes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:258
+msgid ""
+"If [code]true[/code], the [SceneTree]'s [member network_peer] refuses new "
+"incoming connections."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:261
+msgid "The [SceneTree]'s root [Viewport]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:264
+msgid "If [code]true[/code], font oversampling is used."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:270
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] successfully "
+"connected to a server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:275
+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:282
+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:289
+msgid "Emitted whenever global menu item is clicked."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:294
+msgid ""
+"Emitted immediately before [method Node._process] is called on every node in "
+"the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:300
+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:306
+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:312
+msgid "Emitted whenever a node is added to the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:318
+msgid ""
+"Emitted when a node's configuration changed. Only emitted in [code]tool[/"
+"code] mode."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:324
+msgid "Emitted whenever a node is removed from the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:330
+msgid "Emitted whenever a node is renamed."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:335
+msgid ""
+"Emitted immediately before [method Node._physics_process] is called on every "
+"node in the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:340
+msgid ""
+"Emitted when the screen resolution (fullscreen) or window size (windowed) "
+"changes."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:345
+msgid ""
+"Emitted whenever this [SceneTree]'s [member network_peer] disconnected from "
+"server. Only emitted on clients."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:350
+msgid ""
+"Emitted whenever the [SceneTree] hierarchy changed (children being moved or "
+"renamed, etc.)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:356
+msgid "Call a group with no flags (default)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:359
+msgid "Call a group in reverse scene order."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:362
+msgid "Call a group immediately (calls are normally made on idle)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:365
+msgid "Call a group only once even if the call is executed many times."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:368
+msgid "No stretching."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:371
+msgid "Render stretching in higher resolution (interpolated)."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:374
+msgid ""
+"Keep the specified display resolution. No interpolation. Content may appear "
+"pixelated."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:377
+msgid ""
+"Fill the window with the content stretched to cover excessive space. Content "
+"may appear stretched."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:380
+msgid ""
+"Retain the same aspect ratio by padding with black bars on either axis. This "
+"prevents distortion."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:383
+msgid ""
+"Expand vertically. Left/right black bars may appear if the window is too "
+"wide."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:386
+msgid ""
+"Expand horizontally. Top/bottom black bars may appear if the window is too "
+"tall."
+msgstr ""
+
+#: doc/classes/SceneTree.xml:389
+msgid ""
+"Expand in both directions, retaining the same aspect ratio. This prevents "
+"distortion while avoiding black bars."
+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:61
+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/3.4/getting_started/step_by_step/scripting."
+"html"
+msgstr ""
+
+#: doc/classes/Script.xml:17
+msgid "Returns [code]true[/code] if the script can be instanced."
+msgstr ""
+
+#: doc/classes/Script.xml:23
+msgid "Returns the script directly inherited by this script."
+msgstr ""
+
+#: doc/classes/Script.xml:29
+msgid "Returns the script's base type."
+msgstr ""
+
+#: doc/classes/Script.xml:36
+msgid "Returns the default value of the specified property."
+msgstr ""
+
+#: doc/classes/Script.xml:42
+msgid "Returns a dictionary containing constant names and their values."
+msgstr ""
+
+#: doc/classes/Script.xml:48
+msgid "Returns the list of methods in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:54
+msgid "Returns the list of properties in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:60
+msgid "Returns the list of user signals defined in this [Script]."
+msgstr ""
+
+#: doc/classes/Script.xml:67
+msgid ""
+"Returns [code]true[/code] if the script, or a base class, defines a signal "
+"with the given name."
+msgstr ""
+
+#: doc/classes/Script.xml:73
+msgid "Returns [code]true[/code] if the script contains non-empty source code."
+msgstr ""
+
+#: doc/classes/Script.xml:80
+msgid ""
+"Returns [code]true[/code] if [code]base_object[/code] is an instance of this "
+"script."
+msgstr ""
+
+#: doc/classes/Script.xml:86
+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:93
+msgid "Reloads the script's class implementation. Returns an error code."
+msgstr ""
+
+#: doc/classes/Script.xml:99
+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 Popup.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:25
+msgid "Prefills required fields to configure the ScriptCreateDialog for use."
+msgstr ""
+
+#: doc/classes/ScriptCreateDialog.xml:40
+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:31
+msgid "Returns a [Script] that is currently active in editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:44
+msgid ""
+"Returns an array with all [Script] objects which are currently open in "
+"editor."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:51
+msgid "Goes to the specified line in the current script."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:59
+msgid ""
+"Opens the script create dialog. The script will extend [code]base_name[/"
+"code]. The file extension can be omitted from [code]base_path[/code]. It "
+"will be added based on the selected scripting language."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:67
+msgid ""
+"Emitted when user changed active script. Argument is a freshly activated "
+"[Script]."
+msgstr ""
+
+#: doc/classes/ScriptEditor.xml:73
+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. 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. 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:16
+msgid ""
+"Ensures the given [code]control[/code] is visible (must be a direct or "
+"indirect child of the ScrollContainer). Used by [member follow_focus]."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:22
+msgid ""
+"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to disable the horizontal scrollbar, use "
+"[member scroll_horizontal_enabled]. If you want to only hide it instead, use "
+"its [member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:29
+msgid ""
+"Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to disable the vertical scrollbar, use "
+"[member scroll_vertical_enabled]. If you want to only hide it instead, use "
+"its [member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:36
+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:42
+msgid "The current horizontal scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:45
+msgid "If [code]true[/code], enables horizontal scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:48
+msgid "The current vertical scroll value."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:51
+msgid "If [code]true[/code], enables vertical scrolling."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:57
+msgid "Emitted when scrolling stops."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:62
+msgid "Emitted when scrolling is started."
+msgstr ""
+
+#: doc/classes/ScrollContainer.xml:70
+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:16
+msgid ""
+"Lowers the [Semaphore], allowing one more thread in. Returns [constant OK] "
+"on success, [constant ERR_BUSY] otherwise."
+msgstr ""
+
+#: doc/classes/Semaphore.xml:22
+msgid ""
+"Tries to wait for the [Semaphore], if its value is zero, blocks until non-"
+"zero. Returns [constant OK] on success, [constant ERR_BUSY] otherwise."
+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:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:11
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/"
+"what_are_shaders.html"
+msgstr ""
+
+#: doc/classes/Shader.xml:18
+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:25
+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:32
+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:41
+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:48
+msgid ""
+"Returns the shader's code as the user has written it, not the full generated "
+"code used internally."
+msgstr ""
+
+#: doc/classes/Shader.xml:51
+msgid ""
+"Returns the shader's custom defines. Custom defines can be used in Godot to "
+"add GLSL preprocessor directives (e.g: extensions) required for the shader "
+"logic.\n"
+"[b]Note:[/b] Custom defines are not validated by the Godot shader parser, so "
+"care should be taken when using them."
+msgstr ""
+
+#: doc/classes/Shader.xml:57
+msgid "Mode used to draw all 3D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:60
+msgid "Mode used to draw all 2D objects."
+msgstr ""
+
+#: doc/classes/Shader.xml:63
+msgid ""
+"Mode used to calculate particle information on a per-particle basis. Not "
+"used for drawing."
+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.\n"
+"[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot "
+"emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can "
+"emit light in a [GIProbe]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:18
+msgid ""
+"Returns the current value set for this material of a uniform in the shader."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:25
+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:32
+msgid ""
+"Returns the default value of the material property with given [code]name[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:40
+msgid ""
+"Changes the value set for this material of a uniform in the shader.\n"
+"[b]Note:[/b] [code]param[/code] must match the name of the uniform in the "
+"code exactly."
+msgstr ""
+
+#: doc/classes/ShaderMaterial.xml:47
+msgid "The [Shader] program used to render this material."
+msgstr ""
+
+#: doc/classes/Shape.xml:4
+msgid "Base class for all 3D shape resources."
+msgstr ""
+
+#: doc/classes/Shape.xml:7
+msgid ""
+"Base class for all 3D shape resources. Nodes that inherit from this can be "
+"used as shapes for a [PhysicsBody] or [Area] objects."
+msgstr ""
+
+#: doc/classes/Shape.xml:16
+msgid ""
+"Returns the [ArrayMesh] used to draw the debug collision for this [Shape]."
+msgstr ""
+
+#: doc/classes/Shape.xml:22
+msgid ""
+"The collision margin for the shape. Used in Bullet Physics only.\n"
+"Collision margins allow collision detection to be more efficient by adding "
+"an extra shell around shapes. Collision algorithms are more expensive when "
+"objects overlap by more than their margin, so a higher value for margins is "
+"better for performance, at the cost of accuracy around edges as it makes "
+"them less sharp."
+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:19
+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:29
+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:41
+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:53
+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:62
+msgid ""
+"Draws a solid shape onto a [CanvasItem] with the [VisualServer] 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:68
+msgid "The shape's custom solver bias."
+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:16
+msgid "Returns the shortcut's [InputEvent] as a [String]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:23
+msgid ""
+"Returns [code]true[/code] if the shortcut's [InputEvent] equals [code]event[/"
+"code]."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:29
+msgid "If [code]true[/code], this shortcut is valid."
+msgstr ""
+
+#: doc/classes/ShortCut.xml:35
+msgid ""
+"The shortcut's [InputEvent].\n"
+"Generally the [InputEvent] is a keyboard key, though it can be any "
+"[InputEvent]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:4
+msgid "Skeleton for characters and animated objects."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:7
+msgid ""
+"Skeleton 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/Skeleton.xml:20
+msgid ""
+"Adds a bone, with name [code]name[/code]. [method get_bone_count] will "
+"become the bone index."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:28 doc/classes/Skeleton.xml:109
+#: doc/classes/Skeleton.xml:212
+msgid "[i]Deprecated soon.[/i]"
+msgstr ""
+
+#: doc/classes/Skeleton.xml:34
+msgid "Clear all the bones in this skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:46
+msgid "Returns the bone index that matches [code]name[/code] as its name."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:52
+msgid "Returns the amount of bones in the skeleton."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:59
+msgid ""
+"Returns the custom pose of the specified bone. Custom pose is applied on top "
+"of the rest pose."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:66
+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/Skeleton.xml:73
+msgid ""
+"Returns the overall transform of the specified bone, with respect to the "
+"skeleton, but without any global pose overrides. Being relative to the "
+"skeleton frame, this is not the actual \"global\" transform of the bone."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:80
+msgid "Returns the name of the bone at index [code]index[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:87
+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/Skeleton.xml:95
+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/Skeleton.xml:102
+msgid "Returns the rest transform for a bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:187
+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/Skeleton.xml:196
+msgid "Sets the pose transform for bone [code]bone_idx[/code]."
+msgstr ""
+
+#: doc/classes/Skeleton.xml:204
+msgid "Sets the rest transform for bone [code]bone_idx[/code]."
+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/3.4/tutorials/animation/2d_skeletons.html"
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:17
+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:23
+msgid ""
+"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
+"Skeleton2D."
+msgstr ""
+
+#: doc/classes/Skeleton2D.xml:29
+msgid "Returns the [RID] of a Skeleton2D instance."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:4
+msgid ""
+"SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a "
+"certain point in 3D by rotating all bones in the chain accordingly."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:7
+msgid ""
+"SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a "
+"certain point in 3D by rotating all bones in the chain accordingly. A "
+"typical scenario for IK in games is to place a characters feet on the ground "
+"or a characters hands on a currently hold object. SkeletonIK uses "
+"FabrikInverseKinematic internally to solve the bone chain and applies the "
+"results to the [Skeleton] [code]bones_global_pose_override[/code] property "
+"for all affected bones in the chain. If fully applied this overwrites any "
+"bone transform from [Animation]s or bone custom poses set by users. The "
+"applied amount can be controlled with the [code]interpolation[/code] "
+"property.\n"
+"[codeblock]\n"
+"# Apply IK effect automatically on every new frame (not the current)\n"
+"skeleton_ik_node.start()\n"
+"\n"
+"# Apply IK effect only on the current frame\n"
+"skeleton_ik_node.start(true)\n"
+"\n"
+"# Stop IK effect and reset bones_global_pose_override on Skeleton\n"
+"skeleton_ik_node.stop()\n"
+"\n"
+"# Apply full IK effect\n"
+"skeleton_ik_node.set_interpolation(1.0)\n"
+"\n"
+"# Apply half IK effect\n"
+"skeleton_ik_node.set_interpolation(0.5)\n"
+"\n"
+"# Apply zero IK effect (a value at or below 0.01 also removes "
+"bones_global_pose_override on Skeleton)\n"
+"skeleton_ik_node.set_interpolation(0.0)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:35
+msgid ""
+"Returns the parent [Skeleton] Node that was present when SkeletonIK entered "
+"the [SceneTree]. Returns null if the parent node was not a [Skeleton] Node "
+"when SkeletonIK entered the [SceneTree]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:41
+msgid ""
+"Returns [code]true[/code] if SkeletonIK is applying IK effects on continues "
+"frames to the [Skeleton] bones. Returns [code]false[/code] if SkeletonIK is "
+"stopped or [method start] was used with the [code]one_time[/code] parameter "
+"set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:48
+msgid ""
+"Starts applying IK effects on each frame to the [Skeleton] bones but will "
+"only take effect starting on the next frame. If [code]one_time[/code] is "
+"[code]true[/code], this will take effect immediately but also reset on the "
+"next frame."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:54
+msgid ""
+"Stops applying IK effects on each frame to the [Skeleton] bones and also "
+"calls [method Skeleton.clear_bones_global_pose_override] to remove existing "
+"overrides on all bones."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:60
+msgid ""
+"Interpolation value for how much the IK results are applied to the current "
+"skeleton bone chain. A value of [code]1.0[/code] will overwrite all skeleton "
+"bone transforms completely while a value of [code]0.0[/code] will visually "
+"disable the SkeletonIK. A value at or below [code]0.01[/code] also calls "
+"[method Skeleton.clear_bones_global_pose_override]."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:63
+msgid ""
+"Secondary target position (first is [member target] property or [member "
+"target_node]) for the IK chain. Use magnet position (pole target) to control "
+"the bending of the IK chain. Only works if the bone chain has more than 2 "
+"bones. The middle chain bone position will be linearly interpolated with the "
+"magnet position."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:66
+msgid ""
+"Number of iteration loops used by the IK solver to produce more accurate "
+"(and elegant) bone chain results."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:69
+msgid ""
+"The minimum distance between bone and goal target. If the distance is below "
+"this value, the IK solver stops further iterations."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:72
+msgid ""
+"If [code]true[/code] overwrites the rotation of the tip bone with the "
+"rotation of the [member target] (or [member target_node] if defined)."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:75
+msgid "The name of the current root bone, the first bone in the IK chain."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:78
+msgid ""
+"First target of the IK chain where the tip bone is placed and, if [member "
+"override_tip_basis] is [code]true[/code], how the tip bone is rotated. If a "
+"[member target_node] path is available the nodes transform is used instead "
+"and this property is ignored."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:81
+msgid ""
+"Target node [NodePath] for the IK chain. If available, the node's current "
+"[Transform] is used instead of the [member target] property."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:84
+msgid ""
+"The name of the current tip bone, the last bone in the IK chain placed at "
+"the [member target] transform (or [member target_node] if defined)."
+msgstr ""
+
+#: doc/classes/SkeletonIK.xml:87
+msgid ""
+"If [code]true[/code], instructs the IK solver to consider the secondary "
+"magnet target (pole target) when calculating the bone chain. Use the magnet "
+"position (pole target) to control the bending of the IK chain."
+msgstr ""
+
+#: doc/classes/Sky.xml:4 doc/classes/Sky.xml:7
+msgid "The base class for [PanoramaSky] and [ProceduralSky]."
+msgstr ""
+
+#: doc/classes/Sky.xml:15
+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] You will only benefit from high radiance sizes if you have "
+"perfectly sharp reflective surfaces in your project and are not using "
+"[ReflectionProbe]s or [GIProbe]s. For most projects, keeping [member "
+"radiance_size] to the default value is the best compromise between visuals "
+"and performance. Be careful when using high radiance size values as these "
+"can cause crashes on low-end GPUs."
+msgstr ""
+
+#: doc/classes/Sky.xml:22
+msgid "Radiance texture size is 32×32 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:25
+msgid "Radiance texture size is 64×64 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:28
+msgid "Radiance texture size is 128×128 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:31
+msgid "Radiance texture size is 256×256 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:34
+msgid "Radiance texture size is 512×512 pixels."
+msgstr ""
+
+#: doc/classes/Sky.xml:37
+msgid ""
+"Radiance texture size is 1024×1024 pixels.\n"
+"[b]Note:[/b] [constant RADIANCE_SIZE_1024] is not exposed in the inspector "
+"as it is known to cause GPU hangs on certain systems."
+msgstr ""
+
+#: doc/classes/Sky.xml:41
+msgid ""
+"Radiance texture size is 2048×2048 pixels.\n"
+"[b]Note:[/b] [constant RADIANCE_SIZE_2048] is not exposed in the inspector "
+"as it is known to cause GPU hangs on certain systems."
+msgstr ""
+
+#: doc/classes/Sky.xml:45
+msgid "Represents the size of the [enum RadianceSize] enum."
+msgstr ""
+
+#: doc/classes/Slider.xml:4
+msgid "Base class for GUI sliders."
+msgstr ""
+
+#: doc/classes/Slider.xml:7
+msgid ""
+"Base class for GUI sliders.\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/Slider.xml:16
+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:20
+msgid "If [code]true[/code], the value can be changed using the mouse wheel."
+msgstr ""
+
+#: doc/classes/Slider.xml:24
+msgid ""
+"Number of ticks displayed on the slider, including border ticks. Ticks are "
+"uniformly-distributed value markers."
+msgstr ""
+
+#: doc/classes/Slider.xml:27
+msgid ""
+"If [code]true[/code], the slider will display ticks for minimum and maximum "
+"values."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:4
+msgid "Slider between two PhysicsBodies in 3D."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:7
+msgid ""
+"Slides across the X axis of the pivot object. See also [Generic6DOFJoint]."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:28
+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/SliderJoint.xml:35
+msgid ""
+"The amount of restitution of the rotation when the limit is surpassed.\n"
+"Does not affect damping."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:39
+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/SliderJoint.xml:52 doc/classes/SliderJoint.xml:147
+msgid "A factor applied to the all rotation in the limits."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:61 doc/classes/SliderJoint.xml:156
+msgid ""
+"A factor applied to the all rotation across axes orthogonal to the slider."
+msgstr ""
+
+#: doc/classes/SliderJoint.xml:64
+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/SliderJoint.xml:70
+msgid ""
+"The amount of restitution once the limits are surpassed. The lower, the more "
+"velocity-energy gets lost."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:4
+msgid "A soft mesh physics body."
+msgstr ""
+
+#: doc/classes/SoftBody.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/SoftBody.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html"
+msgstr ""
+
+#: doc/classes/SoftBody.xml:44
+msgid "Returns local translation of a vertex in the surface array."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:51
+msgid "Returns [code]true[/code] if vertex is set to pinned."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:83
+msgid ""
+"Sets the pinned state of a surface vertex. When set to [code]true[/code], "
+"the optional [code]attachment_path[/code] can define a [Spatial] the pinned "
+"vertex will be attached to."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:91
+msgid ""
+"The physics layers this SoftBody 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. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:96
+msgid ""
+"The physics layers this SoftBody scans for collisions. See [url=https://docs."
+"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-"
+"layers-and-masks]Collision layers and masks[/url] in the documentation for "
+"more information."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:105
+msgid "[NodePath] to a [CollisionObject] this SoftBody should avoid clipping."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:108
+msgid ""
+"If [code]true[/code], the [SoftBody] is simulated in physics. Can be set to "
+"[code]false[/code] to pause the physics simulation."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:115
+msgid "If [code]true[/code], the [SoftBody] will respond to [RayCast]s."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:118
+msgid ""
+"Increasing this value will improve the resulting simulation, but can affect "
+"performance. Use with care."
+msgstr ""
+
+#: doc/classes/SoftBody.xml:121
+msgid "The SoftBody's mass."
+msgstr ""
+
+#: doc/classes/Spatial.xml:4
+msgid "Most basic 3D game object, parent of all 3D-related nodes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:7
+msgid ""
+"Most basic 3D game object, with a 3D [Transform] and visibility settings. "
+"All other 3D game objects inherit from Spatial. Use [Spatial] 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 [Spatial] object is set as top-level. Affine "
+"operations in this coordinate system correspond to direct affine operations "
+"on the [Spatial]'s transform. The word local below refers to this coordinate "
+"system. The coordinate system that is attached to the [Spatial] 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/Spatial.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html"
+msgstr ""
+
+#: doc/classes/Spatial.xml:13 doc/classes/Vector3.xml:16
+msgid "https://github.com/godotengine/godot-demo-projects/tree/master/3d"
+msgstr ""
+
+#: doc/classes/Spatial.xml:25
+msgid ""
+"Returns the parent [Spatial], or an empty [Object] if no parent exists or "
+"parent is not of type [Spatial]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:31
+msgid ""
+"Returns the current [World] resource this [Spatial] node is registered to."
+msgstr ""
+
+#: doc/classes/Spatial.xml:39
+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/Spatial.xml:46
+msgid ""
+"Scales the global (world) transformation by the given [Vector3] scale "
+"factors."
+msgstr ""
+
+#: doc/classes/Spatial.xml:53
+msgid ""
+"Moves the global (world) transformation by [Vector3] offset. The offset is "
+"in global coordinate system."
+msgstr ""
+
+#: doc/classes/Spatial.xml:59
+msgid ""
+"Disables rendering of this node. Changes [member visible] to [code]false[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:65
+msgid ""
+"Returns whether node notifies about its local transformation changes. "
+"[Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:71
+msgid ""
+"Returns whether this node uses a scale of [code](1, 1, 1)[/code] or its "
+"local transformation scale."
+msgstr ""
+
+#: doc/classes/Spatial.xml:77
+msgid ""
+"Returns whether this node is set as Toplevel, that is whether it ignores its "
+"parent nodes transformations."
+msgstr ""
+
+#: doc/classes/Spatial.xml:83
+msgid ""
+"Returns whether the node notifies about its global and local transformation "
+"changes. [Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:97
+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/Spatial.xml:108
+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/Spatial.xml:114
+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/Spatial.xml:122
+msgid ""
+"Rotates the local transformation around axis, a unit [Vector3], by specified "
+"angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:130
+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/Spatial.xml:137
+msgid "Rotates the local transformation around the X axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:144
+msgid "Rotates the local transformation around the Y axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:151
+msgid "Rotates the local transformation around the Z axis by angle in radians."
+msgstr ""
+
+#: doc/classes/Spatial.xml:158
+msgid ""
+"Scales the local transformation by given 3D scale factors in object-local "
+"coordinate system."
+msgstr ""
+
+#: doc/classes/Spatial.xml:165
+msgid ""
+"Makes the node ignore its parents transformations. Node transformations are "
+"only in global space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:172
+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/Spatial.xml:178
+msgid ""
+"Reset all transformations for this node (sets its [Transform] to the "
+"identity matrix)."
+msgstr ""
+
+#: doc/classes/Spatial.xml:185
+msgid ""
+"Sets whether the node ignores notification that its transformation (global "
+"or local) changed."
+msgstr ""
+
+#: doc/classes/Spatial.xml:192
+msgid ""
+"Sets whether the node notifies about its local transformation changes. "
+"[Spatial] will not propagate this by default."
+msgstr ""
+
+#: doc/classes/Spatial.xml:199
+msgid ""
+"Sets whether the node notifies about its global and local transformation "
+"changes. [Spatial] will not propagate this by default, unless it is in the "
+"editor context and it has a valid gizmo."
+msgstr ""
+
+#: doc/classes/Spatial.xml:205
+msgid ""
+"Enables rendering of this node. Changes [member visible] to [code]true[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Spatial.xml:212
+msgid ""
+"Transforms [code]local_point[/code] from this node's local space to world "
+"space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:219
+msgid ""
+"Transforms [code]global_point[/code] from world space to this node's local "
+"space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:226
+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/Spatial.xml:234
+msgid ""
+"Changes the node's position by the given offset [Vector3] in local space."
+msgstr ""
+
+#: doc/classes/Spatial.xml:240
+msgid "Updates the [SpatialGizmo] of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:246
+msgid ""
+"The [SpatialGizmo] for this node. Used for example in [EditorSpatialGizmo] "
+"as custom visualization and editing handles in Editor."
+msgstr ""
+
+#: doc/classes/Spatial.xml:249
+msgid "World space (global) [Transform] of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:252
+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/Spatial.xml:256
+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/Spatial.xml:259
+msgid "Scale part of the local transformation."
+msgstr ""
+
+#: doc/classes/Spatial.xml:262
+msgid "Local space [Transform] of this node, with respect to the parent node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:265
+msgid "Local translation of this node."
+msgstr ""
+
+#: doc/classes/Spatial.xml:268
+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/Spatial.xml:274
+msgid ""
+"Emitted by portal system gameplay monitor when a node enters the gameplay "
+"area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:279
+msgid ""
+"Emitted by portal system gameplay monitor when a node exits the gameplay "
+"area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:284
+msgid "Emitted when node visibility changes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:290
+msgid ""
+"Spatial 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]. The notification is "
+"also sent if the node is in the editor context and it has a valid gizmo."
+msgstr ""
+
+#: doc/classes/Spatial.xml:294
+msgid ""
+"Spatial nodes receives this notification when they are registered to new "
+"[World] resource."
+msgstr ""
+
+#: doc/classes/Spatial.xml:297
+msgid ""
+"Spatial nodes receives this notification when they are unregistered from "
+"current [World] resource."
+msgstr ""
+
+#: doc/classes/Spatial.xml:300
+msgid "Spatial nodes receives this notification when their visibility changes."
+msgstr ""
+
+#: doc/classes/Spatial.xml:303
+msgid ""
+"Spatial nodes receives this notification if the portal system gameplay "
+"monitor detects they have entered the gameplay area."
+msgstr ""
+
+#: doc/classes/Spatial.xml:306
+msgid ""
+"Spatial nodes receives this notification if the portal system gameplay "
+"monitor detects they have exited the gameplay area."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:4
+msgid "Default 3D rendering material."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.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/SpatialMaterial.xml:10
+msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html"
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:17
+msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:24
+msgid ""
+"Returns [code]true[/code], if the specified flag is enabled. See [enum "
+"Flags] enumerator for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:31
+msgid ""
+"Returns the [Texture] associated with the specified [enum TextureParam]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:39
+msgid ""
+"If [code]true[/code], enables the specified [enum Feature]. Many features "
+"that are available in [SpatialMaterial]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/SpatialMaterial.xml:47
+msgid ""
+"If [code]true[/code], enables the specified flag. Flags are optional "
+"behaviour 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/SpatialMaterial.xml:55
+msgid ""
+"Sets the [Texture] to be used by the specified [enum TextureParam]. This "
+"function is called when setting members ending in [code]*_texture[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:61
+msgid "The material's base color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:64
+msgid ""
+"Texture to multiply by [member albedo_color]. Used for basic texturing of "
+"objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:67
+msgid "The strength of the anisotropy effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:70
+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/SpatialMaterial.xml:73
+msgid "Texture that offsets the tangent map for anisotropy calculations."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:76
+msgid ""
+"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion "
+"darkens areas based on the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:79
+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/SpatialMaterial.xml:82
+msgid ""
+"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
+"[member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:85
+msgid ""
+"Texture that defines the amount of ambient occlusion for a given point on "
+"the object."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:88 doc/classes/SpatialMaterial.xml:325
+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/SpatialMaterial.xml:91
+msgid ""
+"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
+"the same as disabling the clearcoat effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:94
+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.\n"
+"[b]Note:[/b] Clearcoat rendering is not visible if the material has [member "
+"flags_unshaded] set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:98
+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/SpatialMaterial.xml:101
+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/SpatialMaterial.xml:104
+msgid ""
+"If [code]true[/code], the shader will read depth texture at multiple points "
+"along the view ray to determine occlusion and parrallax. This can be very "
+"performance demanding, but results in more realistic looking depth mapping."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:107
+msgid ""
+"If [code]true[/code], depth mapping is enabled (also called \"parallax "
+"mapping\" or \"height mapping\"). See also [member normal_enabled].\n"
+"[b]Note:[/b] Depth mapping is not supported if triplanar mapping is used on "
+"the same material. The value of [member depth_enabled] will be ignored if "
+"[member uv1_triplanar] is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:111
+msgid ""
+"If [code]true[/code], direction of the binormal is flipped before using in "
+"the depth effect. This may be necessary if you have encoded your binormals "
+"in a way that is conflicting with the depth effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:114
+msgid ""
+"If [code]true[/code], direction of the tangent is flipped before using in "
+"the depth effect. This may be necessary if you have encoded your tangents in "
+"a way that is conflicting with the depth effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:117
+msgid ""
+"Number of layers to use when using [member depth_deep_parallax] and the view "
+"direction is perpendicular to the surface of the object. A higher number "
+"will be more performance demanding while a lower number may not look as "
+"crisp."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:120
+msgid ""
+"Number of layers to use when using [member depth_deep_parallax] and the view "
+"direction is parallel to the surface of the object. A higher number will be "
+"more performance demanding while a lower number may not look as crisp."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:123
+msgid ""
+"Scales the depth offset effect. A higher number will create a larger depth."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:126
+msgid ""
+"Texture used to determine depth at a given pixel. Depth is always stored in "
+"the red channel."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:129
+msgid "Texture that specifies the color of the detail overlay."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:132
+msgid ""
+"Specifies how the [member detail_albedo] should blend with the current "
+"[code]ALBEDO[/code]. See [enum BlendMode] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:135
+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/SpatialMaterial.xml:138
+msgid ""
+"Texture used to specify how the detail textures get blended with the base "
+"textures."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:141
+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/SpatialMaterial.xml:145
+msgid ""
+"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
+"layer. See [enum DetailUV] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:148
+msgid ""
+"Distance at which the object appears fully opaque.\n"
+"[b]Note:[/b] If [code]distance_fade_max_distance[/code] is less than "
+"[code]distance_fade_min_distance[/code], the behavior will be reversed. The "
+"object will start to fade away at [code]distance_fade_max_distance[/code] "
+"and will fully disappear once it reaches [code]distance_fade_min_distance[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:152
+msgid ""
+"Distance at which the object starts to become visible. If the object is less "
+"than this distance away, it will be invisible.\n"
+"[b]Note:[/b] If [code]distance_fade_min_distance[/code] is greater than "
+"[code]distance_fade_max_distance[/code], the behavior will be reversed. The "
+"object will start to fade away at [code]distance_fade_max_distance[/code] "
+"and will fully disappear once it reaches [code]distance_fade_min_distance[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:156
+msgid ""
+"Specifies which type of fade to use. Can be any of the [enum "
+"DistanceFadeMode]s."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:159
+msgid "The emitted light's color. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:162
+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] or [BakedLightmap] is used and this object is used in baked "
+"lighting."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:165
+msgid "The emitted light's strength. See [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:168
+msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:171
+msgid ""
+"Sets how [member emission] interacts with [member emission_texture]. Can "
+"either add or multiply. See [enum EmissionOperator] for options."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:174
+msgid "Texture that specifies how much surface emits light at a given point."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:177
+msgid ""
+"Forces a conversion of the [member albedo_texture] from sRGB space to linear "
+"space."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:180
+msgid "If [code]true[/code], the object receives no ambient light."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:183
+msgid ""
+"If [code]true[/code], the object receives no shadow that would otherwise be "
+"cast onto it."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:186
+msgid ""
+"If [code]true[/code], the shader will compute extra operations to make sure "
+"the normal stays correct when using a non-uniform scale. Only enable if "
+"using non-uniform scaling."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:189
+msgid ""
+"If [code]true[/code], the object is rendered at the same size regardless of "
+"distance."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:192
+msgid ""
+"If [code]true[/code], depth testing is disabled and the object will be drawn "
+"in render order."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:195
+msgid ""
+"If [code]true[/code], transparency is enabled on the body. See also [member "
+"params_blend_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:198
+msgid "If [code]true[/code], the object is unaffected by lighting."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:201
+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 params_point_size]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:205
+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/SpatialMaterial.xml:208
+msgid ""
+"If [code]true[/code], lighting is calculated per vertex rather than per "
+"pixel. This may increase performance on low-end devices."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:211
+msgid ""
+"If [code]true[/code], triplanar mapping is calculated in world space rather "
+"than object local space. See also [member uv1_triplanar]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:214
+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/SpatialMaterial.xml:217
+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/SpatialMaterial.xml:221
+msgid ""
+"Texture used to specify metallic for an object. This is multiplied by "
+"[member metallic]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:224
+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/SpatialMaterial.xml:227
+msgid "If [code]true[/code], normal mapping is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:230
+msgid "The strength of the normal map's effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:233
+msgid ""
+"Texture used to specify the normal at a given pixel. The "
+"[code]normal_texture[/code] only uses the red and green channels; the blue "
+"and alpha channels are ignored. The normal read from [code]normal_texture[/"
+"code] is oriented around the surface normal provided by the [Mesh].\n"
+"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
+"vertex data. Otherwise, the normal map won't render correctly and will only "
+"appear to darken the whole surface. If creating geometry with [SurfaceTool], "
+"you can use [method SurfaceTool.generate_normals] and [method SurfaceTool."
+"generate_tangents] to automatically generate normals and tangents "
+"respectively.\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/SpatialMaterial.xml:238
+msgid "Threshold at which the alpha scissor will discard values."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:241
+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 "
+"params_billboard_mode] is [constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:244
+msgid ""
+"Controls how the object faces the camera. See [enum BillboardMode].\n"
+"[b]Note:[/b] Billboard mode is not suitable for VR because the left-right "
+"vector of the camera is not horizontal when the screen is attached to your "
+"head instead of on the table. See [url=https://github.com/godotengine/godot/"
+"issues/41567]GitHub issue #41567[/url] for details."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:248
+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/SpatialMaterial.xml:252
+msgid ""
+"Which side of the object is not drawn when backfaces are rendered. See [enum "
+"CullMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:255
+msgid ""
+"Determines when depth rendering takes place. See [enum DepthDrawMode]. See "
+"also [member flags_transparent]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:258
+msgid ""
+"The algorithm used for diffuse light scattering. See [enum DiffuseMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:261
+msgid ""
+"If [code]true[/code], enables the vertex grow setting. See [member "
+"params_grow_amount]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:264
+msgid "Grows object vertices in the direction of their normals."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:267
+msgid "Currently unimplemented in Godot."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:270
+msgid "The point size in pixels. See [member flags_use_point_size]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:273
+msgid "The method for rendering the specular blob. See [enum SpecularMode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:276
+msgid ""
+"If [code]true[/code], the shader will discard all pixels that have an alpha "
+"value less than [member params_alpha_scissor_threshold]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:279
+msgid ""
+"The number of horizontal frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member "
+"params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:282
+msgid ""
+"If [code]true[/code], particle animations are looped. Only enabled when "
+"using [constant BILLBOARD_PARTICLES]. See [member params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:285
+msgid ""
+"The number of vertical frames in the particle sprite sheet. Only enabled "
+"when using [constant BILLBOARD_PARTICLES]. See [member "
+"params_billboard_mode]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:288
+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/SpatialMaterial.xml:291
+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/SpatialMaterial.xml:294
+msgid ""
+"If [code]true[/code], the refraction effect is enabled. Refraction distorts "
+"transparency based on light from behind the object. When using the GLES3 "
+"backend, the material's roughness value will affect the blurriness of the "
+"refraction. Higher roughness values will make the refraction look blurrier."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:297
+msgid ""
+"The strength of the refraction effect. Higher values result in a more "
+"distorted appearance for the refraction."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:300
+msgid ""
+"Texture that controls the strength of the refraction per-pixel. Multiplied "
+"by [member refraction_scale]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:303
+msgid ""
+"Specifies the channel of the [member refraction_texture] in which the "
+"refraction 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/SpatialMaterial.xml:306
+msgid "Sets the strength of the rim lighting effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:309
+msgid ""
+"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
+"brightness at glancing angles on an object.\n"
+"[b]Note:[/b] Rim lighting is not visible if the material has [member "
+"flags_unshaded] set to [code]true[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:313
+msgid ""
+"Texture used to set the strength of the rim lighting effect per-pixel. "
+"Multiplied by [member rim]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:316
+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/SpatialMaterial.xml:319
+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/SpatialMaterial.xml:322
+msgid ""
+"Texture used to control the roughness per-pixel. Multiplied by [member "
+"roughness]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:328
+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/SpatialMaterial.xml:331
+msgid "The strength of the subsurface scattering effect."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:334
+msgid ""
+"Texture used to control the subsurface scattering strength. Stored in the "
+"red texture channel. Multiplied by [member subsurf_scatter_strength]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:337
+msgid ""
+"The color used by the transmission effect. Represents the light passing "
+"through an object."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:340
+msgid "If [code]true[/code], the transmission effect is enabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:343
+msgid ""
+"Texture used to control the transmission effect per-pixel. Added to [member "
+"transmission]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:346
+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/SpatialMaterial.xml:349
+msgid ""
+"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
+"[code]UV[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:352
+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/SpatialMaterial.xml:355 doc/classes/SpatialMaterial.xml:367
+msgid ""
+"A lower number blends the texture more softly while a higher number blends "
+"the texture more sharply."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:358
+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/SpatialMaterial.xml:361
+msgid ""
+"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
+"[code]UV2[/code] in the vertex function."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:364
+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/SpatialMaterial.xml:370
+msgid ""
+"If [code]true[/code], the model's vertex colors are processed as sRGB mode."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:373
+msgid "If [code]true[/code], the vertex color is used as albedo color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:378
+msgid "Texture specifying per-pixel color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:381
+msgid "Texture specifying per-pixel metallic value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:384
+msgid "Texture specifying per-pixel roughness value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:387
+msgid "Texture specifying per-pixel emission color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:390
+msgid "Texture specifying per-pixel normal vector."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:393
+msgid "Texture specifying per-pixel rim value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:396
+msgid "Texture specifying per-pixel clearcoat value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:399
+msgid ""
+"Texture specifying per-pixel flowmap direction for use with [member "
+"anisotropy]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:402
+msgid "Texture specifying per-pixel ambient occlusion value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:405
+msgid "Texture specifying per-pixel depth."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:408
+msgid "Texture specifying per-pixel subsurface scattering."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:411
+msgid "Texture specifying per-pixel transmission color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:414
+msgid "Texture specifying per-pixel refraction strength."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:417
+msgid "Texture specifying per-pixel detail mask blending value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:420
+msgid "Texture specifying per-pixel detail color."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:423
+msgid "Texture specifying per-pixel detail normal."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:426
+msgid "Represents the size of the [enum TextureParam] enum."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:429
+msgid "Use [code]UV[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:432
+msgid "Use [code]UV2[/code] with the detail texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:435
+msgid "Constant for setting [member flags_transparent]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:438
+msgid "Constant for setting [member emission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:441
+msgid "Constant for setting [member normal_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:444
+msgid "Constant for setting [member rim_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:447
+msgid "Constant for setting [member clearcoat_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:450
+msgid "Constant for setting [member anisotropy_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:453
+msgid "Constant for setting [member ao_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:456
+msgid "Constant for setting [member depth_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:459
+msgid "Constant for setting [member subsurf_scatter_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:462
+msgid "Constant for setting [member transmission_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:465
+msgid "Constant for setting [member refraction_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:468
+msgid "Constant for setting [member detail_enabled]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:474
+msgid ""
+"Default blend mode. The color of the object is blended over the background "
+"based on the object's alpha value."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:477
+msgid "The color of the object is added to the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:480
+msgid "The color of the object is subtracted from the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:483
+msgid "The color of the object is multiplied by the background."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:486
+msgid "Default depth draw mode. Depth is drawn only for opaque objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:489
+msgid "Depth draw is calculated for both opaque and transparent objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:492
+msgid "No depth draw."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:495
+msgid ""
+"For transparent objects, an opaque pass is made first with the opaque parts, "
+"then transparency is drawn."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:498
+msgid "Default cull mode. The back of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:501
+msgid "The front of the object is culled when not visible."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:504
+msgid "No culling is performed."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:507
+msgid ""
+"No lighting is used on the object. Color comes directly from [code]ALBEDO[/"
+"code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:510
+msgid ""
+"Lighting is calculated per-vertex rather than per-pixel. This can be used to "
+"increase the speed of the shader at the cost of quality."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:513
+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/SpatialMaterial.xml:516
+msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:519
+msgid ""
+"Vertex color is in sRGB space and needs to be converted to linear. Only "
+"applies in the GLES3 renderer."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:522
+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/SpatialMaterial.xml:525
+msgid ""
+"Object is scaled by depth so that it always appears the same size on screen."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:528
+msgid ""
+"Shader will keep the scale set for the mesh. Otherwise the scale is lost "
+"when billboarding. Only applies when [member params_billboard_mode] is "
+"[constant BILLBOARD_ENABLED]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:531
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:534
+msgid ""
+"Use triplanar texture lookup for all texture lookups that would normally use "
+"[code]UV2[/code]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:537
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:540
+msgid ""
+"Use [code]UV2[/code] coordinates to look up from the [member "
+"emission_texture]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:543
+msgid "Use alpha scissor. Set by [member params_use_alpha_scissor]."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:546
+msgid ""
+"Use world coordinates in the triplanar texture lookup instead of local "
+"coordinates."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:549
+msgid "Forces the shader to convert albedo from sRGB space to linear space."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:552
+msgid "Disables receiving shadows from other objects."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:555
+msgid "Disables receiving ambient light."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:558
+msgid "Ensures that normals appear correct, even with non-uniform scaling."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:561
+msgid "Enables the shadow to opacity feature."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:567
+msgid "Default diffuse scattering algorithm."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:570
+msgid "Diffuse scattering ignores roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:573
+msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:576
+msgid "Attempts to use roughness to emulate microsurfacing."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:579
+msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:582
+msgid "Default specular blob."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:585 doc/classes/SpatialMaterial.xml:588
+msgid "Older specular algorithm, included for compatibility."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:591
+msgid "Toon blob which changes size based on roughness."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:594
+msgid "No specular blob."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:597
+msgid "Billboard mode is disabled."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:600
+msgid "The object's Z axis will always face the camera."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:603
+msgid "The object's X axis will always face the camera."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:606
+msgid ""
+"Used for particle systems when assigned to [Particles] and [CPUParticles] "
+"nodes. Enables [code]particles_anim_*[/code] properties.\n"
+"The [member ParticlesMaterial.anim_speed] or [member CPUParticles."
+"anim_speed] should also be set to a positive value for the animation to play."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:610
+msgid "Used to read from the red channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:613
+msgid "Used to read from the green channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:616
+msgid "Used to read from the blue channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:619
+msgid "Used to read from the alpha channel of a texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:625
+msgid "Adds the emission color to the color from the emission texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:628
+msgid "Multiplies the emission color by the color from the emission texture."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:631
+msgid "Do not use distance fade."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:634
+msgid ""
+"Smoothly fades the object out based on each pixel's distance from the camera "
+"using the alpha channel."
+msgstr ""
+
+#: doc/classes/SpatialMaterial.xml:637
+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/SpatialMaterial.xml:640
+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/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/SphereShape.xml:4
+msgid "Sphere shape for 3D collisions."
+msgstr ""
+
+#: doc/classes/SphereShape.xml:7
+msgid ""
+"Sphere shape for 3D collisions, which can be set into a [PhysicsBody] or "
+"[Area]. This shape is useful for modeling sphere-like 3D objects."
+msgstr ""
+
+#: doc/classes/SphereShape.xml:16
+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].\n"
+"[b]Note:[/b] [SpinBox] relies on an underlying [LineEdit] node. To theme a "
+"[SpinBox]'s background, add theme items for [LineEdit] and customize them."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:26
+msgid "Applies the current value of this [SpinBox]."
+msgstr ""
+
+#: doc/classes/SpinBox.xml:32
+msgid ""
+"Returns the [LineEdit] instance from this [SpinBox]. You can use it to "
+"access properties and methods of [LineEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+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 [Texture] 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:15
+msgid ""
+"Clamps the [member split_offset] value to not go outside the currently "
+"possible minimal and maximum values."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:21
+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:24
+msgid ""
+"Determines the dragger's visibility. See [enum DraggerVisibility] for "
+"details."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:27
+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:34
+msgid "Emitted when the dragger is dragged by user."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:40
+msgid "The split dragger is visible when the cursor hovers it."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:43
+msgid "The split dragger is never visible."
+msgstr ""
+
+#: doc/classes/SplitContainer.xml:46
+msgid "The split dragger is never visible and its space collapsed."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:4
+msgid "A spotlight, such as a reflector spotlight or a lantern."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:7
+msgid ""
+"A Spotlight is a type of [Light] 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 [Light].\n"
+"[b]Note:[/b] By default, only 32 SpotLights may affect a single mesh "
+"[i]resource[/i] at once. Consider splitting your level into several meshes "
+"to decrease the likelihood that more than 32 lights will affect the same "
+"mesh resource. Splitting the level mesh will also improve frustum culling "
+"effectiveness, leading to greater performance. If you need to use more "
+"lights per mesh, you can increase [member ProjectSettings.rendering/limits/"
+"rendering/max_lights_per_object] at the cost of shader compilation times."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:18
+msgid "The spotlight's angle in degrees."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:21
+msgid "The spotlight's angular attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight.xml:24
+msgid "The spotlight's light energy attenuation curve."
+msgstr ""
+
+#: doc/classes/SpotLight.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/SpringArm.xml:4
+msgid "A helper node, mostly used in 3rd person cameras."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:7
+msgid ""
+"The SpringArm 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 SpringArm 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 SpringArm as a camera controller for your player, you might "
+"need to exclude the player's collider from the SpringArm's collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:19
+msgid ""
+"Adds the [PhysicsBody] object with the given [RID] to the list of "
+"[PhysicsBody] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:25
+msgid ""
+"Clears the list of [PhysicsBody] objects excluded from the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:31
+msgid "Returns the spring arm's current length."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:38
+msgid ""
+"Removes the given [RID] from the list of [PhysicsBody] objects excluded from "
+"the collision check."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:44
+msgid ""
+"The layers against which the collision check shall be done. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:47
+msgid ""
+"When the collision check is made, a candidate length for the SpringArm is "
+"given.\n"
+"The margin is then subtracted to this length and the translation is applied "
+"to the child objects of the SpringArm.\n"
+"This margin is useful for when the SpringArm has a [Camera] as a child node: "
+"without the margin, the [Camera] would be placed on the exact point of "
+"collision, while with the margin the [Camera] would be placed close to the "
+"point of collision."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:52
+msgid ""
+"The [Shape] to use for the SpringArm.\n"
+"When the shape is set, the SpringArm will cast the [Shape] on its z axis "
+"instead of performing a ray cast."
+msgstr ""
+
+#: doc/classes/SpringArm.xml:56
+msgid ""
+"The maximum extent of the SpringArm. This is used as a length for both the "
+"ray and the shape cast used internally to calculate the desired position of "
+"the SpringArm's child nodes.\n"
+"To know more about how to perform a shape cast or a ray cast, please consult "
+"the [PhysicsDirectSpaceState] documentation."
+msgstr ""
+
+#: doc/classes/Sprite.xml:4
+msgid "General-purpose sprite node."
+msgstr ""
+
+#: doc/classes/Sprite.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/Sprite.xml:16
+msgid ""
+"Returns a [Rect2] representing the Sprite's boundary in local coordinates. "
+"Can be used to detect if the Sprite 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/Sprite.xml:29
+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/Sprite.xml:36
+msgid "If [code]true[/code], texture is centered."
+msgstr ""
+
+#: doc/classes/Sprite.xml:45 doc/classes/Sprite3D.xml:15
+msgid ""
+"Current frame to display from sprite sheet. [member hframes] or [member "
+"vframes] must be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite.xml:48 doc/classes/Sprite3D.xml:18
+msgid ""
+"Coordinates of the frame to display from sprite sheet. This is as an alias "
+"for the [member frame] property. [member hframes] or [member vframes] must "
+"be greater than 1."
+msgstr ""
+
+#: doc/classes/Sprite.xml:51 doc/classes/Sprite3D.xml:21
+msgid "The number of columns in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite.xml:54
+msgid ""
+"The normal map gives depth to the Sprite.\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/Sprite.xml:61
+msgid ""
+"If [code]true[/code], texture is cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite.xml:64
+msgid "If [code]true[/code], the outermost pixels get blurred out."
+msgstr ""
+
+#: doc/classes/Sprite.xml:67 doc/classes/Sprite3D.xml:27
+msgid ""
+"The region of the atlas texture to display. [member region_enabled] must be "
+"[code]true[/code]."
+msgstr ""
+
+#: doc/classes/Sprite.xml:70
+msgid "[Texture] object to draw."
+msgstr ""
+
+#: doc/classes/Sprite.xml:73 doc/classes/Sprite3D.xml:33
+msgid "The number of rows in the sprite sheet."
+msgstr ""
+
+#: doc/classes/Sprite.xml:79 doc/classes/Sprite3D.xml:39
+msgid "Emitted when the [member frame] changes."
+msgstr ""
+
+#: doc/classes/Sprite.xml:84
+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."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:24
+msgid ""
+"If [code]true[/code], texture will be cut from a larger atlas texture. See "
+"[member region_rect]."
+msgstr ""
+
+#: doc/classes/Sprite3D.xml:30
+msgid ""
+"[Texture] object to draw. If [member GeometryInstance.material_override] is "
+"used, this will be overridden."
+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:27
+msgid "Returns the rectangle representing this sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:35
+msgid "If [code]true[/code], the specified flag will be enabled."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:43
+msgid "The direction in which the front of the texture faces."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:51
+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:60
+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:66
+msgid ""
+"The objects' visibility on a scale from [code]0[/code] fully invisible to "
+"[code]1[/code] fully visible."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:69
+msgid "The size of one pixel's width on the sprite to scale it in 3D."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:72
+msgid ""
+"If [code]true[/code], the [Light] in the [Environment] has effects on the "
+"sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:75
+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:80
+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:83
+msgid "If set, lights in the environment affect the sprite."
+msgstr ""
+
+#: doc/classes/SpriteBase3D.xml:86
+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:89
+msgid "Represents the size of the [enum DrawFlags] enum."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:4
+msgid "Sprite frame library for AnimatedSprite."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:7
+msgid ""
+"Sprite frame library for [AnimatedSprite]. Contains frames and animation "
+"data for playback.\n"
+"[b]Note:[/b] You can associate a set of normal maps by creating additional "
+"[SpriteFrames] resources with a [code]_normal[/code] suffix. For example, "
+"having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/"
+"code] will make it so the [code]run[/code] animation uses the normal map."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:17
+msgid "Adds a new animation to the library."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:26
+msgid "Adds a frame to the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:33
+msgid "Removes all frames from the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:39
+msgid "Removes all animations. A \"default\" animation will be created."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:46
+msgid ""
+"Returns [code]true[/code] if the given animation is configured to loop when "
+"it finishes playing. Otherwise, returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:52
+msgid ""
+"Returns an array containing the names associated to each animation. Values "
+"are placed in alphabetical order."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:59 doc/classes/SpriteFrames.xml:120
+msgid "The animation's speed in frames per second."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:67
+msgid "Returns the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:74
+msgid "Returns the number of frames in the animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:81
+msgid "If [code]true[/code], the named animation exists."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:88
+msgid "Removes the given animation."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:96
+msgid "Removes the animation's selected frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:104
+msgid "Changes the animation's name to [code]newname[/code]."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:112
+msgid "If [code]true[/code], the animation will loop."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:129
+msgid "Sets the texture of the given frame."
+msgstr ""
+
+#: doc/classes/SpriteFrames.xml:135
+msgid "Compatibility property, always equals to an empty array."
+msgstr ""
+
+#: doc/classes/StaticBody.xml:4
+msgid "Static body for 3D physics."
+msgstr ""
+
+#: doc/classes/StaticBody.xml:7
+msgid ""
+"Static body for 3D physics. A static body is a simple body that is not "
+"intended to move. In contrast to [RigidBody], 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/StaticBody.xml:23
+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/StaticBody.xml:26
+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/StaticBody.xml:29
+msgid ""
+"The body's friction, from 0 (frictionless) to 1 (full friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+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:20
+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:23
+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/StaticBody2D.xml:26
+msgid ""
+"The body's friction. Values range from [code]0[/code] (no friction) to "
+"[code]1[/code] (full friction).\n"
+"Deprecated, use [member PhysicsMaterial.friction] instead via [member "
+"physics_material_override]."
+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). It provides an API for sending and receiving data through streams "
+"as raw data or strings."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:15
+msgid "Gets a signed 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:21
+msgid "Gets a signed 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:27
+msgid "Gets a signed 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:33
+msgid "Gets a signed byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:39
+msgid "Returns the amount of bytes this [StreamPeer] has available."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:46
+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:52
+msgid "Gets a double-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:58
+msgid "Gets a single-precision float from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:65
+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:72
+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:78
+msgid "Gets an unsigned 16-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:84
+msgid "Gets an unsigned 32-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:90
+msgid "Gets an unsigned 64-bit value from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:96
+msgid "Gets an unsigned byte from the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:103
+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:110
+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:118
+msgid "Puts a signed 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:125
+msgid "Puts a signed 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:132
+msgid "Puts a signed 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:139
+msgid "Puts a signed byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:146
+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:153
+msgid "Puts a double-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:160
+msgid "Puts a single-precision float into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:167
+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:174
+msgid ""
+"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
+"unsigned integer representing its size.\n"
+"[b]Note:[/b] 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:185
+msgid "Puts an unsigned 16-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:192
+msgid "Puts an unsigned 32-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:199
+msgid "Puts an unsigned 64-bit value into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:206
+msgid "Puts an unsigned byte into the stream."
+msgstr ""
+
+#: doc/classes/StreamPeer.xml:213
+msgid ""
+"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
+"unsigned integer representing its size.\n"
+"[b]Note:[/b] 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:225
+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:231
+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:20
+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:30
+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:37 doc/classes/StreamPeerTCP.xml:23
+msgid "Disconnects from host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:49
+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:59
+msgid "A status representing a [StreamPeerSSL] that is disconnected."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:62
+msgid "A status representing a [StreamPeerSSL] during handshaking."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:65
+msgid "A status representing a [StreamPeerSSL] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:68
+msgid "A status representing a [StreamPeerSSL] in error state."
+msgstr ""
+
+#: doc/classes/StreamPeerSSL.xml:71
+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:17
+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:29
+msgid "Returns the IP of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:35
+msgid "Returns the port of this peer."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:41
+msgid "Returns the status of the connection, see [enum Status]."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:47
+msgid ""
+"Returns [code]true[/code] if this peer is currently connected or is "
+"connecting to a host, [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:54
+msgid ""
+"If [code]enabled[/code] is [code]true[/code], packets will be sent "
+"immediately. If [code]enabled[/code] is [code]false[/code] (the default), "
+"packet transfers will be delayed and combined using [url=https://en."
+"wikipedia.org/wiki/Nagle%27s_algorithm]Nagle's algorithm[/url].\n"
+"[b]Note:[/b] It's recommended to leave this disabled for applications that "
+"send large packets or need to transfer a lot of data, as enabling this can "
+"decrease the total available bandwidth."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:61
+msgid ""
+"The initial status of the [StreamPeerTCP]. This is also the status after "
+"disconnecting."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:64
+msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:67
+msgid "A status representing a [StreamPeerTCP] that is connected to a host."
+msgstr ""
+
+#: doc/classes/StreamPeerTCP.xml:70
+msgid "A status representing a [StreamPeerTCP] in error state."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:4
+msgid "A [code].stex[/code] texture."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:7
+msgid "A texture that is loaded from a [code].stex[/code] file."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:16
+msgid "Loads the texture from the given path."
+msgstr ""
+
+#: doc/classes/StreamTexture.xml:23
+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/3.4/getting_started/scripting/gdscript/"
+"gdscript_format_string.html"
+msgstr ""
+
+#: doc/classes/String.xml:17
+msgid "Constructs a new String from the given [bool]."
+msgstr ""
+
+#: doc/classes/String.xml:24
+msgid "Constructs a new String from the given [int]."
+msgstr ""
+
+#: doc/classes/String.xml:31
+msgid "Constructs a new String from the given [float]."
+msgstr ""
+
+#: doc/classes/String.xml:38
+msgid "Constructs a new String from the given [Vector2]."
+msgstr ""
+
+#: doc/classes/String.xml:45
+msgid "Constructs a new String from the given [Rect2]."
+msgstr ""
+
+#: doc/classes/String.xml:52
+msgid "Constructs a new String from the given [Vector3]."
+msgstr ""
+
+#: doc/classes/String.xml:59
+msgid "Constructs a new String from the given [Transform2D]."
+msgstr ""
+
+#: doc/classes/String.xml:66
+msgid "Constructs a new String from the given [Plane]."
+msgstr ""
+
+#: doc/classes/String.xml:73
+msgid "Constructs a new String from the given [Quat]."
+msgstr ""
+
+#: doc/classes/String.xml:80
+msgid "Constructs a new String from the given [AABB]."
+msgstr ""
+
+#: doc/classes/String.xml:87
+msgid "Constructs a new String from the given [Basis]."
+msgstr ""
+
+#: doc/classes/String.xml:94
+msgid "Constructs a new String from the given [Transform]."
+msgstr ""
+
+#: doc/classes/String.xml:101
+msgid "Constructs a new String from the given [Color]."
+msgstr ""
+
+#: doc/classes/String.xml:108
+msgid "Constructs a new String from the given [NodePath]."
+msgstr ""
+
+#: doc/classes/String.xml:115
+msgid "Constructs a new String from the given [RID]."
+msgstr ""
+
+#: doc/classes/String.xml:122
+msgid "Constructs a new String from the given [Dictionary]."
+msgstr ""
+
+#: doc/classes/String.xml:129
+msgid "Constructs a new String from the given [Array]."
+msgstr ""
+
+#: doc/classes/String.xml:136
+msgid "Constructs a new String from the given [PoolByteArray]."
+msgstr ""
+
+#: doc/classes/String.xml:143
+msgid "Constructs a new String from the given [PoolIntArray]."
+msgstr ""
+
+#: doc/classes/String.xml:150
+msgid "Constructs a new String from the given [PoolRealArray]."
+msgstr ""
+
+#: doc/classes/String.xml:157
+msgid "Constructs a new String from the given [PoolStringArray]."
+msgstr ""
+
+#: doc/classes/String.xml:164
+msgid "Constructs a new String from the given [PoolVector2Array]."
+msgstr ""
+
+#: doc/classes/String.xml:171
+msgid "Constructs a new String from the given [PoolVector3Array]."
+msgstr ""
+
+#: doc/classes/String.xml:178
+msgid "Constructs a new String from the given [PoolColorArray]."
+msgstr ""
+
+#: doc/classes/String.xml:185
+msgid "Returns [code]true[/code] if the string begins with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:191
+msgid "Returns the bigrams (pairs of consecutive letters) of this string."
+msgstr ""
+
+#: doc/classes/String.xml:197
+msgid ""
+"Returns a copy of the string with special characters escaped using the C "
+"language standard."
+msgstr ""
+
+#: doc/classes/String.xml:203
+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:210
+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:217
+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. \"less than\" or \"greater than\" are determined by the [url=https://"
+"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] "
+"of each string, which roughly matches the alphabetical order.\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method nocasecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:229
+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:238
+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:244
+msgid ""
+"Returns a copy of the string with indentation (leading tabs and spaces) "
+"removed."
+msgstr ""
+
+#: doc/classes/String.xml:250
+msgid ""
+"Returns [code]true[/code] if the length of the string equals [code]0[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:257
+msgid "Returns [code]true[/code] if the string ends with the given string."
+msgstr ""
+
+#: doc/classes/String.xml:264
+msgid ""
+"Erases [code]chars[/code] characters from the string starting from "
+"[code]position[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:272
+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"
+"[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:285
+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:293
+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:301
+msgid ""
+"Formats the string by replacing all occurrences of [code]placeholder[/code] "
+"with [code]values[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:307
+msgid "If the string is a valid file path, returns the base directory name."
+msgstr ""
+
+#: doc/classes/String.xml:313
+msgid ""
+"If the string is a valid file path, returns the full file path without the "
+"extension."
+msgstr ""
+
+#: doc/classes/String.xml:319
+msgid ""
+"Returns the extension without the leading period character ([code].[/code]) "
+"if the string is a valid file name or path. If the string does not contain "
+"an extension, returns an empty string instead.\n"
+"[codeblock]\n"
+"print(\"/path/to/file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.sample.txt\".get_extension()) # \"txt\"\n"
+"print(\".txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt.\".get_extension()) # \"\" (empty string)\n"
+"print(\"file.txt..\".get_extension()) # \"\" (empty string)\n"
+"print(\"txt\".get_extension()) # \"\" (empty string)\n"
+"print(\"\".get_extension()) # \"\" (empty string)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/String.xml:335
+msgid "If the string is a valid file path, returns the filename."
+msgstr ""
+
+#: doc/classes/String.xml:341
+msgid "Hashes the string and returns a 32-bit integer."
+msgstr ""
+
+#: doc/classes/String.xml:347
+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:356
+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:365
+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:375
+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:388
+msgid ""
+"Returns a copy of the string with the substring [code]what[/code] inserted "
+"at the given position."
+msgstr ""
+
+#: doc/classes/String.xml:394
+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:400
+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:407
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string."
+msgstr ""
+
+#: doc/classes/String.xml:414
+msgid ""
+"Returns [code]true[/code] if this string is a subsequence of the given "
+"string, without considering case."
+msgstr ""
+
+#: doc/classes/String.xml:420
+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:427
+msgid "Returns [code]true[/code] if this string contains a valid float."
+msgstr ""
+
+#: doc/classes/String.xml:434
+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:440
+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:446
+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:452
+msgid "Returns [code]true[/code] if this string contains a valid integer."
+msgstr ""
+
+#: doc/classes/String.xml:458
+msgid ""
+"Returns [code]true[/code] if this string contains only a well-formatted IPv4 "
+"or IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/"
+"Reserved_IP_addresses]reserved IP addresses[/url] such as [code]0.0.0.0[/"
+"code] as valid."
+msgstr ""
+
+#: doc/classes/String.xml:464
+msgid ""
+"Returns a copy of the string with special characters escaped using the JSON "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:471
+msgid "Returns a number of characters from the left of the string."
+msgstr ""
+
+#: doc/classes/String.xml:477
+msgid "Returns the string's amount of characters."
+msgstr ""
+
+#: doc/classes/String.xml:484
+msgid ""
+"Returns a copy of the string with characters removed from the left. The "
+"[code]chars[/code] argument is a string specifying the set of characters to "
+"be removed.\n"
+"[b]Note:[/b] The [code]chars[/code] is not a prefix. See [method "
+"trim_prefix] method that will remove a single prefix string rather than a "
+"set of characters."
+msgstr ""
+
+#: doc/classes/String.xml:492
+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:499
+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:505
+msgid "Returns the MD5 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:511
+msgid "Returns the MD5 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:518
+msgid ""
+"Performs a case-insensitive [i]natural order[/i] comparison to another "
+"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater "
+"than, or [code]0[/code] if equal. \"less than\" or \"greater than\" are "
+"determined by the [url=https://en.wikipedia.org/wiki/"
+"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
+"roughly matches the alphabetical order. Internally, lowercase characters "
+"will be converted to uppercase during the comparison.\n"
+"When used for sorting, natural order comparison will order suites of numbers "
+"as expected by most people. If you sort the numbers from 1 to 10 using "
+"natural order, you will get [code][1, 2, 3, ...][/code] instead of [code][1, "
+"10, 2, 3, ...][/code].\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method nocasecmp_to] and [method casecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:529
+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. \"less than\" or \"greater than\" are determined by the [url=https://"
+"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] "
+"of each string, which roughly matches the alphabetical order. Internally, "
+"lowercase characters will be converted to uppercase during the comparison.\n"
+"[b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "
+"\"base\" string is longer than the [code]to[/code] string or [code]-1[/code] "
+"if the \"base\" string is shorter than the [code]to[/code] string. Keep in "
+"mind this length is determined by the number of Unicode codepoints, [i]not[/"
+"i] the actual visible characters.\n"
+"[b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the \"base\" "
+"string is empty, [code]1[/code] if the [code]to[/code] string is empty or "
+"[code]0[/code] if both strings are empty.\n"
+"To get a boolean result from a string comparison, use the [code]==[/code] "
+"operator instead. See also [method casecmp_to]."
+msgstr ""
+
+#: doc/classes/String.xml:539
+msgid "Returns the character code at position [code]at[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:546
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] after the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:553
+msgid ""
+"Formats a number to have an exact number of [code]digits[/code] before the "
+"decimal point."
+msgstr ""
+
+#: doc/classes/String.xml:559
+msgid "Decode a percent-encoded string. See [method percent_encode]."
+msgstr ""
+
+#: doc/classes/String.xml:565
+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:572
+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:579
+msgid ""
+"Returns original string repeated a number of times. The number of "
+"repetitions is given by the argument."
+msgstr ""
+
+#: doc/classes/String.xml:587
+msgid ""
+"Replaces occurrences of a case-sensitive substring with the given one inside "
+"the string."
+msgstr ""
+
+#: doc/classes/String.xml:595
+msgid ""
+"Replaces occurrences of a case-insensitive substring with the given one "
+"inside the string."
+msgstr ""
+
+#: doc/classes/String.xml:603
+msgid ""
+"Performs a case-sensitive search for a substring, but starts from the end of "
+"the string instead of the beginning."
+msgstr ""
+
+#: doc/classes/String.xml:611
+msgid ""
+"Performs a case-insensitive search for a substring, but starts from the end "
+"of the string instead of the beginning."
+msgstr ""
+
+#: doc/classes/String.xml:618
+msgid "Returns the right side of the string from a given position."
+msgstr ""
+
+#: doc/classes/String.xml:627
+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:644
+msgid ""
+"Returns a copy of the string with characters removed from the right. The "
+"[code]chars[/code] argument is a string specifying the set of characters to "
+"be removed.\n"
+"[b]Note:[/b] The [code]chars[/code] is not a suffix. See [method "
+"trim_suffix] method that will remove a single suffix string rather than a "
+"set of characters."
+msgstr ""
+
+#: doc/classes/String.xml:651
+msgid "Returns the SHA-1 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:657
+msgid "Returns the SHA-1 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:663
+msgid "Returns the SHA-256 hash of the string as an array of bytes."
+msgstr ""
+
+#: doc/classes/String.xml:669
+msgid "Returns the SHA-256 hash of the string as a string."
+msgstr ""
+
+#: doc/classes/String.xml:676
+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:682
+msgid "Returns a simplified canonical path."
+msgstr ""
+
+#: doc/classes/String.xml:691
+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:709
+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:718
+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:724
+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:732
+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:738
+msgid ""
+"Converts the String (which is a character array) to [PoolByteArray] (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:744
+msgid ""
+"Converts a string containing a decimal number into a [code]float[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:750
+msgid ""
+"Converts a string containing an integer number into an [code]int[/code]."
+msgstr ""
+
+#: doc/classes/String.xml:756
+msgid "Returns the string converted to lowercase."
+msgstr ""
+
+#: doc/classes/String.xml:762
+msgid "Returns the string converted to uppercase."
+msgstr ""
+
+#: doc/classes/String.xml:768
+msgid ""
+"Converts the String (which is an array of characters) to [PoolByteArray] "
+"(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:774
+msgid ""
+"Converts the String (which is an array of characters) to [PoolByteArray] "
+"(which is an array of bytes)."
+msgstr ""
+
+#: doc/classes/String.xml:781
+msgid ""
+"Removes a given string from the start if it starts with it or leaves the "
+"string unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:788
+msgid ""
+"Removes a given string from the end if it ends with it or leaves the string "
+"unchanged."
+msgstr ""
+
+#: doc/classes/String.xml:794
+msgid ""
+"Removes any characters from the string that are prohibited in [Node] names "
+"([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]\"[/"
+"code])."
+msgstr ""
+
+#: doc/classes/String.xml:800
+msgid ""
+"Returns a copy of the string with special characters escaped using the XML "
+"standard."
+msgstr ""
+
+#: doc/classes/String.xml:806
+msgid ""
+"Returns a copy of the string with escaped characters replaced by their "
+"meanings according to the XML standard."
+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.\n"
+"[b]Note:[/b] For children of [Control] that have [i]Theme Properties[/i], "
+"the [code]focus[/code] [StyleBox] is displayed over the [code]normal[/code], "
+"[code]hover[/code] or [code]pressed[/code] [StyleBox]. This makes the "
+"[code]focus[/code] [StyleBox] more reusable across different nodes."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:18
+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:25
+msgid "Returns the size of this [StyleBox] without the margins."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:31
+msgid ""
+"Returns the [CanvasItem] that handles its [constant CanvasItem."
+"NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this moment."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:38
+msgid "Returns the default value of the specified [enum Margin]."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:45
+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:52
+msgid "Returns the minimum size that this stylebox can be shrunk to."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:58
+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:66
+msgid ""
+"Sets the default value of the specified [enum Margin] to given [code]offset[/"
+"code] in pixels."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:74
+msgid "Test a position in a rectangle, return whether it passes the mask test."
+msgstr ""
+
+#: doc/classes/StyleBox.xml:80
+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:86
+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:90
+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:94
+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. The following 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 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:31
+msgid ""
+"Returns the given [code]margin[/code]'s border width. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:37
+msgid "Returns the smallest border width out of all four borders."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:44
+msgid ""
+"Returns the given [code]corner[/code]'s radius. See [enum Corner] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:51 doc/classes/StyleBoxTexture.xml:16
+msgid ""
+"Returns the size of the given [code]margin[/code]'s expand margin. See [enum "
+"Margin] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:59
+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:66
+msgid "Sets the border width to [code]width[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:74
+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:81
+msgid "Sets the corner radius to [code]radius[/code] pixels for all corners."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:91
+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:99 doc/classes/StyleBoxTexture.xml:48
+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:106 doc/classes/StyleBoxTexture.xml:30
+msgid "Sets the expand margin to [code]size[/code] pixels for all margins."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:116 doc/classes/StyleBoxTexture.xml:40
+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:122
+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.\n"
+"[b]Note:[/b] When using beveled corners with 45-degree angles ([member "
+"corner_detail] = 1), it is recommended to set [member anti_aliasing] to "
+"[code]false[/code] to ensure crisp visuals and avoid possible visual "
+"glitches."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:126
+msgid ""
+"This changes the size of the faded ring. Higher values can be used to "
+"achieve a \"blurry\" effect."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:129
+msgid "The background color of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:132
+msgid "If [code]true[/code], the border will fade into the background color."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:135
+msgid "Sets the color of the border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:138
+msgid "Border width for the bottom border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:141
+msgid "Border width for the left border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:144
+msgid "Border width for the right border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:147
+msgid "Border width for the top border."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:150
+msgid ""
+"This sets the number 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 less than 10, [code]4[/code] or [code]5[/code] should be "
+"enough. For corner radii less 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:155
+msgid ""
+"The bottom-left corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:158
+msgid ""
+"The bottom-right corner's radius. If [code]0[/code], the corner is not "
+"rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:161
+msgid ""
+"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:164
+msgid ""
+"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:167
+msgid "Toggles drawing of the inner part of the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:170
+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:173
+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:176
+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:179
+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:182
+msgid ""
+"The color of the shadow. This has no effect if [member shadow_size] is lower "
+"than 1."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:185
+msgid ""
+"The shadow offset in pixels. Adjusts the position of the shadow relatively "
+"to the stylebox."
+msgstr ""
+
+#: doc/classes/StyleBoxFlat.xml:188
+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:23
+msgid ""
+"Returns the size of the given [code]margin[/code]. See [enum Margin] for "
+"possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:56
+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:62
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled horizontally. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:65
+msgid ""
+"Controls how the stylebox's texture will be stretched or tiled vertically. "
+"See [enum AxisStretchMode] for possible values."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:68
+msgid ""
+"If [code]true[/code], the nine-patch texture's center tile will be drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:71
+msgid ""
+"Expands the bottom margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:74
+msgid ""
+"Expands the left margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:77
+msgid ""
+"Expands the right margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:80
+msgid ""
+"Expands the top margin of this style box when drawing, causing it to be "
+"drawn larger than requested."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:83
+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:88
+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:93
+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:98
+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:103
+msgid "Modulates the color of the texture when this style box is drawn."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:106
+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:110
+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:114
+msgid "The texture to use when drawing this style box."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:120
+msgid "Emitted when the stylebox's texture is changed."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:126
+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:129
+msgid ""
+"Repeats the stylebox's texture to match the stylebox's size according to the "
+"nine-patch system."
+msgstr ""
+
+#: doc/classes/StyleBoxTexture.xml:132
+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/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], [ImmediateGeometry] 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:29
+msgid ""
+"Specifies an array of bones to use for the [i]next[/i] vertex. [code]bones[/"
+"code] must contain 4 integers."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:36
+msgid ""
+"Specifies a [Color] to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all.\n"
+"[b]Note:[/b] The material must have [member SpatialMaterial."
+"vertex_color_use_as_albedo] enabled for the vertex color to be visible."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:44
+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:51
+msgid ""
+"Specifies a normal to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:58
+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:65
+msgid ""
+"Specifies a tangent to use for the [i]next[/i] vertex. If every vertex needs "
+"to have this information set and you fail to submit it for the first vertex, "
+"this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:77
+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:85
+msgid ""
+"Specifies a set of UV coordinates to use for the [i]next[/i] vertex. If "
+"every vertex needs to have this information set and you fail to submit it "
+"for the first vertex, this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:92
+msgid ""
+"Specifies an optional second set of UV coordinates to use for the [i]next[/"
+"i] vertex. If every vertex needs to have this information set and you fail "
+"to submit it for the first vertex, this information may not be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:99
+msgid ""
+"Specifies the position of current vertex. Should be called after specifying "
+"other vertex properties (e.g. Color, UV)."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:106
+msgid ""
+"Specifies weight values to use for the [i]next[/i] vertex. [code]weights[/"
+"code] must contain 4 values. If every vertex needs to have this information "
+"set and you fail to submit it for the first vertex, this information may not "
+"be used at all."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:115
+msgid ""
+"Append vertices from a given [Mesh] surface onto the current vertex array "
+"with specified [Transform]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:122
+msgid ""
+"Called before adding any vertices. Takes the primitive type as an argument "
+"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:128
+msgid "Clear all information passed into the surface tool so far."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:136
+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] if compression is "
+"enabled. If compression is disabled the default flag is [constant Mesh."
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION]. See [code]ARRAY_COMPRESS_*[/code] "
+"constants in [enum Mesh.ArrayFormat] for other flags."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:143
+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:151
+msgid "Creates a vertex array from an existing [Mesh]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:160
+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:166
+msgid "Removes the index array by expanding the vertex array."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:173
+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. [method generate_normals] should be called [i]after[/i] generating "
+"geometry and [i]before[/i] committing the mesh using [method commit] or "
+"[method commit_to_arrays]. For correct display of normal-mapped surfaces, "
+"you will also have to generate tangents using [method generate_tangents].\n"
+"[b]Note:[/b] [method generate_normals] only works if the primitive type to "
+"be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:180
+msgid ""
+"Generates a tangent vector for each vertex. Requires that each vertex have "
+"UVs and normals set already (see [method generate_normals])."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:186
+msgid ""
+"Shrinks the vertex array by creating an index array. This can improve "
+"performance by avoiding vertex reuse."
+msgstr ""
+
+#: doc/classes/SurfaceTool.xml:193
+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."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:16
+msgid "Returns the child [Control] node located at the active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:22
+msgid ""
+"Returns the [Popup] node instance if one has been set already with [method "
+"set_popup].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:29 doc/classes/Tabs.xml:36
+msgid "Returns the previously active tab index."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:36
+msgid "Returns the [Control] node from the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:42 doc/classes/Tabs.xml:48
+msgid "Returns the number of tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:49 doc/classes/Tabs.xml:55
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is "
+"disabled."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:56
+msgid ""
+"Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:63 doc/classes/Tabs.xml:62
+msgid ""
+"Returns the [Texture] for the tab at index [code]tab_idx[/code] or "
+"[code]null[/code] if the tab has no [Texture]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:70
+msgid ""
+"Returns the index of the tab at local coordinates [code]point[/code]. "
+"Returns [code]-1[/code] if the point is outside the control boundaries or if "
+"there's no tab at the queried position."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:77
+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:90
+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:98 doc/classes/Tabs.xml:118
+msgid ""
+"If [code]disabled[/code] is [code]true[/code], disables the tab at index "
+"[code]tab_idx[/code], making it non-interactable."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:106
+msgid ""
+"If [code]hidden[/code] is [code]true[/code], hides the tab at index "
+"[code]tab_idx[/code], making it disappear from the tab area."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:114
+msgid "Sets an icon for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:122
+msgid ""
+"Sets a title for the tab at index [code]tab_idx[/code]. Tab titles default "
+"to the name of the indexed child node."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:129
+msgid ""
+"Defines rearrange group id, choose for each [TabContainer] the same value to "
+"enable tab drag between [TabContainer]. Enable drag with [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:135
+msgid ""
+"If [code]true[/code], all tabs are drawn in front of the panel. If "
+"[code]false[/code], inactive tabs are drawn behind the panel."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:138
+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:141 doc/classes/Tabs.xml:150
+msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:144
+msgid ""
+"The alignment of all tabs in the tab container. See the [enum TabAlign] "
+"constants for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:147
+msgid ""
+"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
+"and titles are hidden."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:150
+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:156
+msgid ""
+"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
+"set_popup] for details."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:162 doc/classes/Tabs.xml:178
+msgid "Emitted when switching to another tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:168
+msgid "Emitted when a tab is selected, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:174 doc/classes/Tabs.xml:202
+msgid "Align the tabs to the left."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:177 doc/classes/Tabs.xml:205
+msgid "Align the tabs to the center."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:180 doc/classes/Tabs.xml:208
+msgid "Align the tabs to the right."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:185 doc/classes/Tabs.xml:237
+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:188 doc/classes/Tabs.xml:240
+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:191 doc/classes/Tabs.xml:243
+msgid "The font used to draw tab names."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:194 doc/classes/Tabs.xml:246
+msgid "Font color of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:197 doc/classes/Tabs.xml:249
+msgid "Font color of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:200 doc/classes/Tabs.xml:252
+msgid "Font color of the currently selected tab."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:203
+msgid "Horizontal separation between tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:206 doc/classes/Tabs.xml:258
+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:209 doc/classes/Tabs.xml:261
+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:216
+msgid "The icon for the menu button (see [method set_popup])."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:219
+msgid ""
+"The icon for the menu button (see [method set_popup]) when it's being "
+"hovered with the cursor."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:222
+msgid "The style for the background fill."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:225
+msgid "The space at the left and right edges of the tab bar."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:228
+msgid "The style of inactive tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:231
+msgid "The style of disabled tabs."
+msgstr ""
+
+#: doc/classes/TabContainer.xml:234 doc/classes/Tabs.xml:274
+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 interacting with children."
+msgstr ""
+
+#: doc/classes/Tabs.xml:17
+msgid "Adds a new tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:24
+msgid "Moves the scroll view to make the tab visible."
+msgstr ""
+
+#: doc/classes/Tabs.xml:30
+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:42
+msgid "Returns [code]true[/code] if select with right mouse button is enabled."
+msgstr ""
+
+#: doc/classes/Tabs.xml:68
+msgid "Returns the number of hidden tabs offsetted to the left."
+msgstr ""
+
+#: doc/classes/Tabs.xml:75
+msgid "Returns tab [Rect2] with local position and size."
+msgstr ""
+
+#: doc/classes/Tabs.xml:82
+msgid "Returns the title of the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:88
+msgid "Returns the [Tabs]' rearrange group ID."
+msgstr ""
+
+#: doc/classes/Tabs.xml:96
+msgid "Moves a tab from [code]from[/code] to [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:103
+msgid "Removes the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:110
+msgid ""
+"If [code]true[/code], enables selecting a tab with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tabs.xml:126
+msgid "Sets an [code]icon[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:134
+msgid "Sets a [code]title[/code] for the tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:141
+msgid ""
+"Defines the rearrange group ID. Choose for each [Tabs] the same value to "
+"dragging tabs between [Tabs]. Enable drag with [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:147
+msgid "Select tab at index [code]tab_idx[/code]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:153
+msgid ""
+"if [code]true[/code], the mouse's scroll wheel can be used to navigate the "
+"scroll view."
+msgstr ""
+
+#: doc/classes/Tabs.xml:156
+msgid "The alignment of all tabs. See [enum TabAlign] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:159
+msgid ""
+"Sets when the close button will appear on the tabs. See [enum "
+"CloseButtonDisplayPolicy] for details."
+msgstr ""
+
+#: doc/classes/Tabs.xml:166
+msgid ""
+"Emitted when the active tab is rearranged via mouse drag. See [member "
+"drag_to_rearrange_enabled]."
+msgstr ""
+
+#: doc/classes/Tabs.xml:172
+msgid "Emitted when a tab is right-clicked."
+msgstr ""
+
+#: doc/classes/Tabs.xml:184
+msgid "Emitted when a tab is clicked, even if it is the current tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:190
+msgid "Emitted when a tab is closed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:196
+msgid "Emitted when a tab is hovered by the mouse."
+msgstr ""
+
+#: doc/classes/Tabs.xml:211
+msgid "Represents the size of the [enum TabAlign] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:214
+msgid "Never show the close buttons."
+msgstr ""
+
+#: doc/classes/Tabs.xml:217
+msgid "Only show the close button on the currently active tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:220
+msgid "Show the close button on all tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:223
+msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
+msgstr ""
+
+#: doc/classes/Tabs.xml:228
+msgid "Background of the close button when it's being hovered with the cursor."
+msgstr ""
+
+#: doc/classes/Tabs.xml:231
+msgid "Background of the close button when it's being pressed."
+msgstr ""
+
+#: doc/classes/Tabs.xml:234
+msgid "The icon for the close button (see [member tab_close_display_policy])."
+msgstr ""
+
+#: doc/classes/Tabs.xml:255
+msgid "The horizontal separation between the tabs."
+msgstr ""
+
+#: doc/classes/Tabs.xml:268
+msgid "The style of an inactive tab."
+msgstr ""
+
+#: doc/classes/Tabs.xml:271
+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:15
+msgid "Returns [code]true[/code] if a connection is available for taking."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:21
+msgid ""
+"Returns [code]true[/code] if the server is currently listening for "
+"connections."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:29
+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:38
+msgid "Stops listening."
+msgstr ""
+
+#: doc/classes/TCP_Server.xml:44
+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.\n"
+"[b]Note:[/b] When holding down [code]Alt[/code], the vertical scroll wheel "
+"will scroll 5 times as fast as it would normally do. This also works in the "
+"Godot script editor."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:20
+msgid "Adds color region (given the delimiters) and its colors."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:28
+msgid "Adds a [code]keyword[/code] and its [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:35
+msgid ""
+"Returns if the given line is foldable, that is, it has indented lines right "
+"below it."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:41
+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:47
+msgid ""
+"Clears all custom syntax coloring information previously added with [method "
+"add_color_region] or [method add_keyword_color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:53
+msgid "Clears the undo history."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:59
+msgid "Copy's the current text selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:65
+msgid "Returns the column the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:71
+msgid "Returns the line the editing cursor is at."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:79
+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:90
+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:98
+msgid "Cut's the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:104
+msgid "Deselects the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:110
+msgid "Folds all lines that are possible to be folded (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:117
+msgid "Folds the given line, if possible (see [method can_fold])."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:123
+msgid "Returns an array containing the line number of each breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:130
+msgid "Returns the [Color] of the specified [code]keyword[/code]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:137
+msgid "Returns the text of a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:143
+msgid "Returns the amount of total lines in the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:149
+msgid ""
+"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
+"displayed when right-clicking on the [TextEdit].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:156
+msgid "Returns the selection begin column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:162
+msgid "Returns the selection begin line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:168
+msgid "Returns the text inside the selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:174
+msgid "Returns the selection end column."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:180
+msgid "Returns the selection end line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:186
+msgid ""
+"Returns a [String] text with the word under the caret (text cursor) location."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:193
+msgid ""
+"Returns whether the specified [code]keyword[/code] has a color set to it or "
+"not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:199 doc/classes/UndoRedo.xml:121
+msgid "Returns [code]true[/code] if a \"redo\" action is available."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:205 doc/classes/UndoRedo.xml:127
+msgid "Returns [code]true[/code] if an \"undo\" action is available."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:212
+msgid "Insert the specified text at the cursor position."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:219
+msgid "Returns whether the line at the specified index is folded or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:226
+msgid "Returns whether the line at the specified index is hidden or not."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:233
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] is bookmarked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:240
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] has a "
+"breakpoint."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:247
+msgid ""
+"Returns [code]true[/code] when the specified [code]line[/code] is marked as "
+"safe."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:253
+msgid "Returns [code]true[/code] if the selection is active."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:260
+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:266
+msgid "Paste the current selection."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:272
+msgid "Perform redo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:278
+msgid ""
+"Removes all the breakpoints. This will not fire the [signal "
+"breakpoint_toggled] signal."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:288
+msgid ""
+"Perform a search inside the text. Search flags can be specified in the [enum "
+"SearchFlags] enum.\n"
+"Returns an empty [code]PoolIntArray[/code] if no result was found. "
+"Otherwise, the result line and column can be accessed at indices specified "
+"in the [enum SearchResult] enum, e.g:\n"
+"[codeblock]\n"
+"var result = search(key, flags, line, column)\n"
+"if result.size() > 0:\n"
+" # Result found.\n"
+" var res_line = result[TextEdit.SEARCH_RESULT_LINE]\n"
+" var res_column = result[TextEdit.SEARCH_RESULT_COLUMN]\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TextEdit.xml:306
+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:313
+msgid ""
+"Select all the text.\n"
+"If [member selecting_enabled] is [code]false[/code], no selection will occur."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:322
+msgid "Sets the text for a specific line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:330
+msgid ""
+"Bookmarks the [code]line[/code] if [code]bookmark[/code] is true. Deletes "
+"the bookmark if [code]bookmark[/code] is false.\n"
+"Bookmarks are shown in the [member breakpoint_gutter]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:339
+msgid ""
+"Adds or removes the breakpoint in [code]line[/code]. Breakpoints are shown "
+"in the [member breakpoint_gutter]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:347
+msgid "If [code]true[/code], hides the line of the specified index."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:355
+msgid ""
+"If [code]true[/code], marks the [code]line[/code] as safe.\n"
+"This will show the line number with the color provided in the "
+"[code]safe_line_number_color[/code] theme property."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:363
+msgid "Toggle the folding of the code block at the given line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:369
+msgid "Perform undo operation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:376
+msgid "Unfolds the given line, if folded."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:382
+msgid ""
+"Unhide all lines that were previously set to hidden by [method "
+"set_line_as_hidden]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:388
+msgid "If [code]true[/code], the breakpoint gutter is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:397
+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:401
+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:405
+msgid "If [code]true[/code], a right-click displays the context menu."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:408
+msgid ""
+"If [code]true[/code], the \"space\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:411
+msgid ""
+"If [code]true[/code], the \"tab\" character will have a visible "
+"representation."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:415
+msgid ""
+"If [code]true[/code], the fold gutter is visible. This enables folding "
+"groups of indented lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:418
+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:421
+msgid ""
+"If [code]true[/code], all occurrences of the selected text will be "
+"highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:424
+msgid "If [code]true[/code], the line containing the cursor is highlighted."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:427
+msgid ""
+"If [code]true[/code], a minimap is shown, providing an outline of your "
+"source code."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:430
+msgid "The width, in pixels, of the minimap."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:434
+msgid ""
+"If [code]true[/code], custom [code]font_color_selected[/code] will be used "
+"for selected text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:437
+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:440
+msgid ""
+"If there is a horizontal scrollbar, this determines the current horizontal "
+"scroll value in pixels."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:443
+msgid ""
+"If there is a vertical scrollbar, this determines the current vertical "
+"scroll value in line numbers, starting at 0 for the top line."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:446
+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:450
+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:453
+msgid ""
+"If [code]true[/code], line numbers are displayed to the left of the text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:456
+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:459
+msgid ""
+"If [code]true[/code], any custom color properties that have been set for "
+"this [TextEdit] will be visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:462
+msgid "String value of the [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:465
+msgid "Vertical scroll sensitivity."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:471
+msgid ""
+"If [code]true[/code], enables text wrapping when it goes beyond the edge of "
+"what is visible."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:478
+msgid "Emitted when a breakpoint is placed via the breakpoint gutter."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:483
+msgid "Emitted when the cursor changes."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:490
+msgid "Emitted when the info icon is clicked."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:512
+msgid "Match case when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:515
+msgid "Match whole words when searching."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:518
+msgid "Search from end to beginning."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:521
+msgid "Used to access the result column from [method search]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:524
+msgid "Used to access the result line from [method search]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:533
+msgid ""
+"Pastes the clipboard text over the selected text (or at the cursor's "
+"position)."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:536
+msgid "Erases the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:539
+msgid "Selects the whole [TextEdit] text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:545
+msgid "Redoes the previous action."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:553
+msgid ""
+"Sets the background [Color] of this [TextEdit]. [member syntax_highlighting] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:556
+msgid ""
+"Sets the [Color] of the bookmark marker. [member syntax_highlighting] has to "
+"be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:561 doc/classes/TextEdit.xml:588
+msgid ""
+"Sets the [Color] of the breakpoints. [member breakpoint_gutter] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:599
+msgid "Sets the default [Font]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:602
+msgid "Sets the font [Color]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:607
+msgid ""
+"Sets the [Color] of the selected text. [member override_selected_font_color] "
+"has to be enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:612
+msgid ""
+"Sets the [Color] of the line numbers. [member show_line_numbers] has to be "
+"enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:615
+msgid "Sets the spacing between the lines."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:618
+msgid "Sets the [Color] of marked text."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:623
+msgid "Sets the [StyleBox] of this [TextEdit]."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:628
+msgid ""
+"Sets the [StyleBox] of this [TextEdit] when [member readonly] is enabled."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:633
+msgid "Sets the highlight [Color] of text selections."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:640
+msgid "Sets a custom [Texture] for tab text characters."
+msgstr ""
+
+#: doc/classes/TextEdit.xml:643
+msgid ""
+"Sets the highlight [Color] of multiple occurrences. [member "
+"highlight_all_occurrences] has to be enabled."
+msgstr ""
+
+#: doc/classes/Texture.xml:4
+msgid "Texture for 2D and 3D."
+msgstr ""
+
+#: doc/classes/Texture.xml:7
+msgid ""
+"A texture works by registering an image in the video hardware, which then "
+"can be used in 3D models or 2D [Sprite] or GUI [Control].\n"
+"Textures are often created by loading them from a file. See [method "
+"@GDScript.load].\n"
+"[Texture] is a base for other resources. It cannot be used directly.\n"
+"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
+"hardware limitations. Larger textures may fail to import."
+msgstr ""
+
+#: doc/classes/Texture.xml:23
+msgid ""
+"Draws the texture using a [CanvasItem] with the [VisualServer] API at the "
+"specified [code]position[/code]. Equivalent to [method VisualServer."
+"canvas_item_add_texture_rect] with a rect at [code]position[/code] and the "
+"size of this [Texture]."
+msgstr ""
+
+#: doc/classes/Texture.xml:35
+msgid ""
+"Draws the texture using a [CanvasItem] with the [VisualServer] API. "
+"Equivalent to [method VisualServer.canvas_item_add_texture_rect]."
+msgstr ""
+
+#: doc/classes/Texture.xml:48
+msgid ""
+"Draws a part of the texture using a [CanvasItem] with the [VisualServer] "
+"API. Equivalent to [method VisualServer.canvas_item_add_texture_rect_region]."
+msgstr ""
+
+#: doc/classes/Texture.xml:54
+msgid ""
+"Returns an [Image] that is a copy of data from this [Texture]. [Image]s can "
+"be accessed and manipulated directly."
+msgstr ""
+
+#: doc/classes/Texture.xml:60
+msgid "Returns the texture height."
+msgstr ""
+
+#: doc/classes/Texture.xml:66
+msgid "Returns the texture size."
+msgstr ""
+
+#: doc/classes/Texture.xml:72
+msgid "Returns the texture width."
+msgstr ""
+
+#: doc/classes/Texture.xml:78
+msgid "Returns [code]true[/code] if this [Texture] has an alpha channel."
+msgstr ""
+
+#: doc/classes/Texture.xml:84
+msgid ""
+"The texture's [enum Flags]. [enum Flags] are used to set various properties "
+"of the [Texture]."
+msgstr ""
+
+#: doc/classes/Texture.xml:89
+msgid ""
+"Default flags. [constant FLAG_MIPMAPS], [constant FLAG_REPEAT] and [constant "
+"FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/Texture.xml:92 doc/classes/VisualServer.xml:3206
+msgid ""
+"Generates mipmaps, which are smaller versions of the same texture to use "
+"when zoomed out, keeping the aspect ratio."
+msgstr ""
+
+#: doc/classes/Texture.xml:95
+msgid ""
+"Repeats the texture (instead of clamp to edge).\n"
+"[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support "
+"repetition."
+msgstr ""
+
+#: doc/classes/Texture.xml:99 doc/classes/VisualServer.xml:3212
+msgid "Uses a magnifying filter, to enable smooth zooming in of the texture."
+msgstr ""
+
+#: doc/classes/Texture.xml:102 doc/classes/TextureLayered.xml:88
+#: doc/classes/VisualServer.xml:3215
+msgid ""
+"Uses anisotropic mipmap filtering. Generates smaller versions of the same "
+"texture with different aspect ratios.\n"
+"This results in better-looking textures when viewed from oblique angles."
+msgstr ""
+
+#: doc/classes/Texture.xml:106 doc/classes/VisualServer.xml:3219
+msgid "Converts the texture to the sRGB color space."
+msgstr ""
+
+#: doc/classes/Texture.xml:109
+msgid ""
+"Repeats the texture with alternate sections mirrored.\n"
+"[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support "
+"repetition."
+msgstr ""
+
+#: doc/classes/Texture.xml:113 doc/classes/VisualServer.xml:3225
+msgid "Texture is a video surface."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:4
+msgid "Texture with 3 dimensions."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:7
+msgid ""
+"Texture3D is a 3-dimensional texture that has a width, height, and depth."
+msgstr ""
+
+#: doc/classes/Texture3D.xml:20
+msgid ""
+"Creates the Texture3D with specified [code]width[/code], [code]height[/"
+"code], and [code]depth[/code]. See [enum Image.Format] for [code]format[/"
+"code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/"
+"code] options."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:4
+msgid "Array of textures stored in a single primitive."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:7
+msgid ""
+"[TextureArray]s store an array of [Image]s in a single [Texture] primitive. "
+"Each layer of the texture array has its own mipmap chain. This makes it is a "
+"good alternative to texture atlases.\n"
+"[TextureArray]s must be displayed using shaders. After importing your file "
+"as a [TextureArray] and setting the appropriate Horizontal and Vertical "
+"Slices, display it by setting it as a uniform to a shader, for example:\n"
+"[codeblock]\n"
+"shader_type canvas_item;\n"
+"\n"
+"uniform sampler2DArray tex;\n"
+"uniform int index;\n"
+"\n"
+"void fragment() {\n"
+" COLOR = texture(tex, vec3(UV.x, UV.y, float(index)));\n"
+"}\n"
+"[/codeblock]\n"
+"Set the integer uniform \"index\" to show a particular part of the texture "
+"as defined by the Horizontal and Vertical Slices in the importer."
+msgstr ""
+
+#: doc/classes/TextureArray.xml:32
+msgid ""
+"Creates the TextureArray with specified [code]width[/code], [code]height[/"
+"code], and [code]depth[/code]. See [enum Image.Format] for [code]format[/"
+"code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/"
+"code] options."
+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.\n"
+"See also [BaseButton] which contains common properties and methods "
+"associated with this node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:18
+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:27
+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:30
+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:33
+msgid ""
+"Texture to display when the node is disabled. See [member BaseButton."
+"disabled]."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:36
+msgid "Texture to display when the node has mouse or keyboard focus."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:39
+msgid "Texture to display when the mouse hovers the node."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:42
+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:45
+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:50 doc/classes/TextureRect.xml:38
+msgid "Scale to fit the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:53 doc/classes/TextureRect.xml:41
+msgid "Tile inside the node's bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:56 doc/classes/TextureRect.xml:44
+msgid ""
+"The texture keeps its original size and stays in the bounding rectangle's "
+"top-left corner."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:59 doc/classes/TextureRect.xml:47
+msgid ""
+"The texture keeps its original size and stays centered in the node's "
+"bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:62 doc/classes/TextureRect.xml:50
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, but maintain the "
+"texture's aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:65
+msgid ""
+"Scale the texture to fit the node's bounding rectangle, center it, and "
+"maintain its aspect ratio."
+msgstr ""
+
+#: doc/classes/TextureButton.xml:68 doc/classes/TextureRect.xml:56
+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 [Texture3D] and [TextureArray]. Cannot be used directly, but "
+"contains all the functions necessary for accessing and using [Texture3D] and "
+"[TextureArray]. Data is set on a per-layer basis. For [Texture3D]s, the "
+"layer specifies the depth or Z-index, they can be treated as a bunch of 2D "
+"slices. Similarly, for [TextureArray]s, the layer specifies the array layer."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:15
+msgid ""
+"Returns the depth of the texture. Depth is the 3rd dimension (typically Z-"
+"axis)."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:21
+msgid ""
+"Returns the current format being used by this texture. See [enum Image."
+"Format] for details."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:27
+msgid ""
+"Returns the height of the texture. Height is typically represented by the Y-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:34
+msgid ""
+"Returns an [Image] resource with the data from specified [code]layer[/code]."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:40
+msgid ""
+"Returns the width of the texture. Width is typically represented by the X-"
+"axis."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:51
+msgid ""
+"Partially sets the data for a specified [code]layer[/code] by overwriting "
+"using the data of the specified [code]image[/code]. [code]x_offset[/code] "
+"and [code]y_offset[/code] determine where the [Image] is \"stamped\" over "
+"the texture. The [code]image[/code] must fit within the texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:59
+msgid ""
+"Sets the data for the specified layer. Data takes the form of a 2-"
+"dimensional [Image] resource."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:65
+msgid "Returns a dictionary with all the data used by this texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:68
+msgid "Specifies which [enum Flags] apply to this texture."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:73
+msgid ""
+"Default flags for [TextureArray]. [constant FLAG_MIPMAPS], [constant "
+"FLAG_REPEAT] and [constant FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:76
+msgid "Default flags for [Texture3D]. [constant FLAG_FILTER] is enabled."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:79
+msgid "Texture will generate mipmaps on creation."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:82
+msgid "Texture will repeat when UV used is outside the 0-1 range."
+msgstr ""
+
+#: doc/classes/TextureLayered.xml:85
+msgid ""
+"Use filtering when reading from texture. Filtering smooths out pixels. "
+"Turning filtering off is slightly faster and more appropriate when you need "
+"access to individual pixels."
+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:28
+msgid "The fill direction. See [enum FillMode] for possible values."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:32
+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:35
+msgid ""
+"Offsets [member texture_progress] if [member fill_mode] is [constant "
+"FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:38
+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:42
+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:45
+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:48
+msgid "The width of the 9-patch's left column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:51
+msgid "The width of the 9-patch's right column."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:54
+msgid "The height of the 9-patch's top row."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:57
+msgid ""
+"[Texture] 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:60
+msgid ""
+"[Texture] 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:64
+msgid ""
+"The offset of [member texture_progress]. Useful for [member texture_over] "
+"and [member texture_under] with fancy borders, to avoid transparent margins "
+"in your progress texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:67
+msgid "[Texture] that draws under the progress bar. The bar's background."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:70
+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:73
+msgid ""
+"Multiplies the color of the bar's [code]texture_progress[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:76
+msgid "Multiplies the color of the bar's [code]texture_under[/code] texture."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:81
+msgid "The [member texture_progress] fills from left to right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:84
+msgid "The [member texture_progress] fills from right to left."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:87
+msgid "The [member texture_progress] fills from top to bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:90
+msgid "The [member texture_progress] fills from bottom to top."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:93
+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:96
+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:99
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the left and the right."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:102
+msgid ""
+"The [member texture_progress] fills from the center, expanding both towards "
+"the top and the bottom."
+msgstr ""
+
+#: doc/classes/TextureProgress.xml:105
+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.\n"
+"[b]Note:[/b] You should enable [member flip_v] when using a TextureRect to "
+"display a [ViewportTexture]. Alternatively, you can enable [member Viewport."
+"render_target_v_flip] on the Viewport. Otherwise, the image will appear "
+"upside down."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:17
+msgid "If [code]true[/code], the texture scales to fit its bounding rectangle."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:27
+msgid ""
+"Controls the texture's behavior when resizing the node's bounding rectangle. "
+"See [enum StretchMode]."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:30
+msgid "The node's [Texture] resource."
+msgstr ""
+
+#: doc/classes/TextureRect.xml:35
+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:53
+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/3.4/tutorials/gui/gui_skinning.html"
+msgstr ""
+
+#: doc/classes/Theme.xml:17
+msgid "Clears all values on the theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:25
+msgid ""
+"Clears the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:33
+msgid ""
+"Clears the constant at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:41
+msgid ""
+"Clears the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:49
+msgid ""
+"Clears the icon at [code]name[/code] if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:57
+msgid ""
+"Clears [StyleBox] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:66
+msgid ""
+"Clears the theme item of [code]data_type[/code] at [code]name[/code] if the "
+"theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:72
+msgid "Sets the theme's values to a copy of the default theme values."
+msgstr ""
+
+#: doc/classes/Theme.xml:79
+msgid "Sets the theme's values to a copy of a given theme."
+msgstr ""
+
+#: doc/classes/Theme.xml:87
+msgid ""
+"Returns the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:94
+msgid ""
+"Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s "
+"name, for use in [method get_color], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:100
+msgid ""
+"Returns all the [Color] types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_color] and/or [method get_color_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:108
+msgid ""
+"Returns the constant at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:115
+msgid ""
+"Returns all the constants as a [PoolStringArray] filled with each constant's "
+"name, for use in [method get_constant], if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:121
+msgid ""
+"Returns all the constant types as a [PoolStringArray] filled with unique "
+"type names, for use in [method get_constant] and/or [method "
+"get_constant_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:129
+msgid ""
+"Returns the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:136
+msgid ""
+"Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s "
+"name, for use in [method get_font], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:142
+msgid ""
+"Returns all the [Font] types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_font] and/or [method get_font_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:150
+msgid ""
+"Returns the icon [Texture] at [code]name[/code] if the theme has "
+"[code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:157
+msgid ""
+"Returns all the icons as a [PoolStringArray] filled with each [Texture]'s "
+"name, for use in [method get_icon], if the theme has [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:163
+msgid ""
+"Returns all the icon types as a [PoolStringArray] filled with unique type "
+"names, for use in [method get_icon] and/or [method get_icon_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:171
+msgid ""
+"Returns the [StyleBox] at [code]name[/code] if the theme has "
+"[code]node_type[/code].\n"
+"Valid [code]name[/code]s may be found using [method get_stylebox_list]. "
+"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+msgstr ""
+
+#: doc/classes/Theme.xml:179
+msgid ""
+"Returns all the [StyleBox]s as a [PoolStringArray] filled with each "
+"[StyleBox]'s name, for use in [method get_stylebox], if the theme has "
+"[code]node_type[/code].\n"
+"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+msgstr ""
+
+#: doc/classes/Theme.xml:186
+msgid ""
+"Returns all the [StyleBox] types as a [PoolStringArray] filled with unique "
+"type names, for use in [method get_stylebox] and/or [method "
+"get_stylebox_list]."
+msgstr ""
+
+#: doc/classes/Theme.xml:195
+msgid ""
+"Returns the theme item of [code]data_type[/code] at [code]name[/code] if the "
+"theme has [code]node_type[/code].\n"
+"Valid [code]name[/code]s may be found using [method get_theme_item_list] or "
+"a data type specific method. Valid [code]node_type[/code]s may be found "
+"using [method get_theme_item_types] or a data type specific method."
+msgstr ""
+
+#: doc/classes/Theme.xml:204
+msgid ""
+"Returns all the theme items of [code]data_type[/code] as a [PoolStringArray] "
+"filled with each theme items's name, for use in [method get_theme_item] or a "
+"data type specific method, if the theme has [code]node_type[/code].\n"
+"Valid [code]node_type[/code]s may be found using [method "
+"get_theme_item_types] or a data type specific method."
+msgstr ""
+
+#: doc/classes/Theme.xml:212
+msgid ""
+"Returns all the theme items of [code]data_type[/code] types as a "
+"[PoolStringArray] filled with unique type names, for use in [method "
+"get_theme_item], [method get_theme_item_list] or data type specific methods."
+msgstr ""
+
+#: doc/classes/Theme.xml:219
+msgid ""
+"Returns all the theme types as a [PoolStringArray] filled with unique type "
+"names, for use in other [code]get_*[/code] functions of this theme.\n"
+"[b]Note:[/b] [code]node_type[/code] has no effect and will be removed in "
+"future version."
+msgstr ""
+
+#: doc/classes/Theme.xml:228
+msgid ""
+"Returns [code]true[/code] if [Color] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:237
+msgid ""
+"Returns [code]true[/code] if constant with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:244
+msgid ""
+"Returns [code]true[/code] if this theme has a valid [member default_font] "
+"value."
+msgstr ""
+
+#: doc/classes/Theme.xml:252
+msgid ""
+"Returns [code]true[/code] if [Font] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:261
+msgid ""
+"Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:270
+msgid ""
+"Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in "
+"[code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:280
+msgid ""
+"Returns [code]true[/code] if a theme item of [code]data_type[/code] with "
+"[code]name[/code] is in [code]node_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+msgstr ""
+
+#: doc/classes/Theme.xml:288
+msgid ""
+"Adds missing and overrides existing definitions with values from the "
+"[code]other[/code] [Theme].\n"
+"[b]Note:[/b] This modifies the current theme. If you want to merge two "
+"themes together without modifying either one, create a new empty theme and "
+"merge the other two into it one after another."
+msgstr ""
+
+#: doc/classes/Theme.xml:298
+msgid ""
+"Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:307
+msgid ""
+"Renames the constant at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:316
+msgid ""
+"Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:325
+msgid ""
+"Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme "
+"has [code]node_type[/code]. If [code]name[/code] is already taken, this "
+"method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:334
+msgid ""
+"Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the "
+"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:344
+msgid ""
+"Renames the theme item of [code]data_type[/code] at [code]old_name[/code] to "
+"[code]name[/code] if the theme has [code]node_type[/code]. If [code]name[/"
+"code] is already taken, this method fails."
+msgstr ""
+
+#: doc/classes/Theme.xml:353
+msgid ""
+"Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:363
+msgid ""
+"Sets the theme's constant to [code]constant[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:373
+msgid ""
+"Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:383
+msgid ""
+"Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] "
+"in [code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:393
+msgid ""
+"Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in "
+"[code]node_type[/code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:404
+msgid ""
+"Sets the theme item of [code]data_type[/code] to [code]value[/code] at "
+"[code]name[/code] in [code]node_type[/code].\n"
+"Does nothing if the [code]value[/code] type does not match [code]data_type[/"
+"code].\n"
+"Creates [code]node_type[/code] if the theme does not have it."
+msgstr ""
+
+#: doc/classes/Theme.xml:412
+msgid ""
+"The default font of this [Theme] resource. Used as a fallback value for font "
+"items defined in this theme, but having invalid values. If this value is "
+"also invalid, the global default value is used.\n"
+"Use [method has_default_font] to check if this value is valid."
+msgstr ""
+
+#: doc/classes/Theme.xml:418
+msgid "Theme's [Color] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:421
+msgid "Theme's constant item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:424
+msgid "Theme's [Font] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:427
+msgid "Theme's icon [Texture] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:430
+msgid "Theme's [StyleBox] item type."
+msgstr ""
+
+#: doc/classes/Theme.xml:433
+msgid "Maximum value for the DataType enum."
+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.\n"
+"[b]Note:[/b] Breakpoints won't break on code if it's running in a thread. "
+"This is a current limitation of the GDScript debugger."
+msgstr ""
+
+#: doc/classes/Thread.xml:12
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html"
+msgstr ""
+
+#: doc/classes/Thread.xml:19
+msgid ""
+"Returns the current [Thread]'s ID, uniquely identifying it among all "
+"threads. If the [Thread] is not running this returns an empty string."
+msgstr ""
+
+#: doc/classes/Thread.xml:25
+msgid ""
+"Returns [code]true[/code] if this [Thread] has been started. Once started, "
+"this will return [code]true[/code] until it is joined using [method "
+"wait_to_finish]. For checking if a [Thread] is still executing its task, use "
+"[method is_alive]."
+msgstr ""
+
+#: doc/classes/Thread.xml:31
+msgid ""
+"Returns [code]true[/code] if this [Thread] is currently running. This is "
+"useful for determining if [method wait_to_finish] can be called without "
+"blocking the calling thread.\n"
+"To check if a [Thread] is joinable, use [method is_active]."
+msgstr ""
+
+#: doc/classes/Thread.xml:42
+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:49
+msgid ""
+"Joins the [Thread] and waits for it to finish. Returns the output of the "
+"method passed to [method start].\n"
+"Should either be used when you want to retrieve the value returned from the "
+"method called by the [Thread] or before freeing the instance that contains "
+"the [Thread].\n"
+"To determine if this can be called without blocking the calling thread, "
+"check if [method is_alive] is [code]false[/code].\n"
+"[b]Note:[/b] After the [Thread] finishes joining it will be disposed. If you "
+"want to use it again you will have to create a new instance of it."
+msgstr ""
+
+#: doc/classes/Thread.xml:58
+msgid "A thread running with lower priority than normally."
+msgstr ""
+
+#: doc/classes/Thread.xml:61
+msgid "A thread with a standard priority."
+msgstr ""
+
+#: doc/classes/Thread.xml:64
+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.\n"
+"When doing physics queries against the tilemap, the cell coordinates are "
+"encoded as [code]metadata[/code] for each detected collision shape returned "
+"by methods such as [method Physics2DDirectSpaceState.intersect_shape], "
+"[method Physics2DDirectBodyState.get_contact_collider_shape_metadata], etc."
+msgstr ""
+
+#: doc/classes/TileMap.xml:11 doc/classes/TileSet.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html"
+msgstr ""
+
+#: doc/classes/TileMap.xml:14 doc/classes/TileSet.xml:14
+msgid "https://godotengine.org/asset-library/asset/111"
+msgstr ""
+
+#: doc/classes/TileMap.xml:23
+msgid "Clears all cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:29
+msgid "Clears cells that do not exist in the tileset."
+msgstr ""
+
+#: doc/classes/TileMap.xml:37
+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:45
+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:52
+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:59
+msgid "Returns [code]true[/code] if the given collision layer bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:66
+msgid "Returns [code]true[/code] if the given collision mask bit is set."
+msgstr ""
+
+#: doc/classes/TileMap.xml:72
+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:79
+msgid ""
+"Returns an array of all cells with the given tile index specified in "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:85
+msgid "Returns a rectangle enclosing the used (non-empty) tiles of the map."
+msgstr ""
+
+#: doc/classes/TileMap.xml:93
+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:101
+msgid "Returns [code]true[/code] if the given cell is flipped in the X axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:109
+msgid "Returns [code]true[/code] if the given cell is flipped in the Y axis."
+msgstr ""
+
+#: doc/classes/TileMap.xml:117
+msgid ""
+"Returns the local position of the top left corner of the cell corresponding "
+"to the given tilemap (grid-based) coordinates.\n"
+"To get the global position, use [method Node2D.to_global]:\n"
+"[codeblock]\n"
+"var local_position = my_tilemap.map_to_world(map_position)\n"
+"var global_position = my_tilemap.to_global(local_position)\n"
+"[/codeblock]\n"
+"Optionally, the tilemap's half offset can be ignored."
+msgstr ""
+
+#: doc/classes/TileMap.xml:136
+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=false, flip_y=false, transpose=false, "
+"autotile_coord=Vector2()):\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:158
+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:170
+msgid "Sets the given collision layer bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:178
+msgid "Sets the given collision mask bit."
+msgstr ""
+
+#: doc/classes/TileMap.xml:185
+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:193
+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:200
+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:207
+msgid ""
+"Returns the tilemap (grid-based) coordinates corresponding to the given "
+"local position.\n"
+"To use this with a global position, first determine the local position with "
+"[method Node2D.to_local]:\n"
+"[codeblock]\n"
+"var local_position = my_tilemap.to_local(global_position)\n"
+"var map_position = my_tilemap.world_to_map(local_position)\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/TileMap.xml:218
+msgid "If [code]true[/code], the cell's UVs will be clipped."
+msgstr ""
+
+#: doc/classes/TileMap.xml:221
+msgid "The custom [Transform2D] to be applied to the TileMap's cells."
+msgstr ""
+
+#: doc/classes/TileMap.xml:224
+msgid ""
+"Amount to offset alternating tiles. See [enum HalfOffset] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:227
+msgid ""
+"The TileMap's quadrant size. Optimizes drawing by batching, using chunks of "
+"this size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:230
+msgid "The TileMap's cell size."
+msgstr ""
+
+#: doc/classes/TileMap.xml:233
+msgid "Position for tile origin. See [enum TileOrigin] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:236
+msgid ""
+"If [code]true[/code], the TileMap's direct children will be drawn in order "
+"of their Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:239
+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:243
+msgid ""
+"Bounce value for static body collisions (see [code]collision_use_kinematic[/"
+"code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:246
+msgid ""
+"Friction value for static body collisions (see "
+"[code]collision_use_kinematic[/code])."
+msgstr ""
+
+#: doc/classes/TileMap.xml:249
+msgid ""
+"The collision layer(s) for all colliders in the TileMap. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/TileMap.xml:252
+msgid ""
+"The collision mask(s) for all colliders in the TileMap. See [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
+"documentation for more information."
+msgstr ""
+
+#: doc/classes/TileMap.xml:255
+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:258
+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:261
+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:266
+msgid "The TileMap orientation mode. See [enum Mode] for possible values."
+msgstr ""
+
+#: doc/classes/TileMap.xml:269
+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:272
+msgid ""
+"If [code]true[/code], collision shapes are visible in the editor. Doesn't "
+"affect collision shapes visibility at runtime. To show collision shapes at "
+"runtime, enable [b]Visible Collision Shapes[/b] in the [b]Debug[/b] menu "
+"instead."
+msgstr ""
+
+#: doc/classes/TileMap.xml:275
+msgid "The assigned [TileSet]."
+msgstr ""
+
+#: doc/classes/TileMap.xml:281
+msgid "Emitted when a tilemap setting has changed."
+msgstr ""
+
+#: doc/classes/TileMap.xml:287
+msgid "Returned when a cell doesn't exist."
+msgstr ""
+
+#: doc/classes/TileMap.xml:290
+msgid "Orthogonal orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:293
+msgid "Isometric orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:296
+msgid "Custom orientation mode."
+msgstr ""
+
+#: doc/classes/TileMap.xml:299
+msgid "Half offset on the X coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:302
+msgid "Half offset on the Y coordinate."
+msgstr ""
+
+#: doc/classes/TileMap.xml:305
+msgid "Half offset disabled."
+msgstr ""
+
+#: doc/classes/TileMap.xml:308
+msgid "Half offset on the X coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:311
+msgid "Half offset on the Y coordinate (negative)."
+msgstr ""
+
+#: doc/classes/TileMap.xml:314
+msgid "Tile origin at its top-left corner."
+msgstr ""
+
+#: doc/classes/TileMap.xml:317
+msgid "Tile origin at its center."
+msgstr ""
+
+#: doc/classes/TileMap.xml:320
+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:42
+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:50
+msgid "Clears all bitmask information of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:58
+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:66
+msgid "Returns the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:73
+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:82
+msgid ""
+"Returns the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:90
+msgid ""
+"Returns the navigation polygon of the subtile from an atlas/autotile given "
+"its coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:97
+msgid "Returns the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:104
+msgid "Returns the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:112
+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:121
+msgid ""
+"Returns the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:130
+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:139
+msgid "Sets the [enum BitmaskMode] of the autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:147
+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:157
+msgid ""
+"Sets the light occluder of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:166
+msgid ""
+"Sets the navigation polygon of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:174
+msgid "Sets the size of the subtiles in an atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:182
+msgid "Sets the spacing between subtiles of the atlas/autotile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:191
+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:201
+msgid ""
+"Sets the drawing index of the subtile from an atlas/autotile given its "
+"coordinates."
+msgstr ""
+
+#: doc/classes/TileSet.xml:207
+msgid "Clears all tiles."
+msgstr ""
+
+#: doc/classes/TileSet.xml:214
+msgid "Creates a new tile with the given ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:221
+msgid "Returns the first tile matching the given name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:227
+msgid ""
+"Returns the ID following the last currently used ID, useful when creating a "
+"new tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:233
+msgid "Returns an array of all currently used tile IDs."
+msgstr ""
+
+#: doc/classes/TileSet.xml:240
+msgid "Removes the given tile ID."
+msgstr ""
+
+#: doc/classes/TileSet.xml:251
+msgid "Adds a shape to the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:258
+msgid "Returns the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:265
+msgid "Returns the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:272
+msgid "Returns the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:279
+msgid "Returns the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:286
+msgid "Returns the navigation polygon of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:293
+msgid "Returns the offset of the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:300
+msgid "Returns the tile's normal map texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:307
+msgid "Returns the offset of the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:314
+msgid "Returns the tile sub-region in the texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:322
+msgid "Returns a tile's given shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:329
+msgid "Returns the number of shapes assigned to a tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:337
+msgid "Returns the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:345
+msgid "Returns the one-way collision value of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:360
+msgid "Returns the [Transform2D] of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:367
+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:384
+msgid "Returns the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:391
+msgid "Returns the texture offset of the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:398
+msgid "Returns the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:405
+msgid "Returns the tile's Z index (drawing layer)."
+msgstr ""
+
+#: doc/classes/TileSet.xml:413
+msgid "Sets a light occluder for the tile."
+msgstr ""
+
+#: doc/classes/TileSet.xml:421
+msgid "Sets the tile's material."
+msgstr ""
+
+#: doc/classes/TileSet.xml:429
+msgid "Sets the tile's modulation color."
+msgstr ""
+
+#: doc/classes/TileSet.xml:437
+msgid "Sets the tile's name."
+msgstr ""
+
+#: doc/classes/TileSet.xml:445
+msgid "Sets the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:453
+msgid "Sets an offset for the tile's navigation polygon."
+msgstr ""
+
+#: doc/classes/TileSet.xml:461
+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:470
+msgid "Sets an offset for the tile's light occluder."
+msgstr ""
+
+#: doc/classes/TileSet.xml:478
+msgid ""
+"Sets the tile's sub-region in the texture. This is common in texture atlases."
+msgstr ""
+
+#: doc/classes/TileSet.xml:487
+msgid "Sets a shape for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:496
+msgid "Sets the offset of a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:505
+msgid "Enables one-way collision on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:522
+msgid "Sets a [Transform2D] on a tile's shape."
+msgstr ""
+
+#: doc/classes/TileSet.xml:530
+msgid "Sets an array of shapes for the tile, enabling collision."
+msgstr ""
+
+#: doc/classes/TileSet.xml:538
+msgid "Sets the tile's texture."
+msgstr ""
+
+#: doc/classes/TileSet.xml:546
+msgid "Sets the tile's texture offset."
+msgstr ""
+
+#: doc/classes/TileSet.xml:554
+msgid "Sets the tile's [enum TileMode]."
+msgstr ""
+
+#: doc/classes/TileSet.xml:562
+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 a 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:24
+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:31
+msgid "Stops the timer."
+msgstr ""
+
+#: doc/classes/Timer.xml:37
+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:41
+msgid ""
+"If [code]true[/code], the timer will stop when reaching 0. If [code]false[/"
+"code], it will restart."
+msgstr ""
+
+#: doc/classes/Timer.xml:44
+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:47
+msgid "Processing mode. See [enum TimerProcessMode]."
+msgstr ""
+
+#: doc/classes/Timer.xml:50
+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:54
+msgid ""
+"The wait time in seconds.\n"
+"[b]Note:[/b] Timers can only emit once per rendered frame at most (or once "
+"per physics frame if [member process_mode] is [constant "
+"TIMER_PROCESS_PHYSICS]). This means very low wait times (lower than 0.05 "
+"seconds) will behave in significantly different ways depending on the "
+"rendered framerate. For very low wait times, it is recommended to use a "
+"process loop in a script instead of using a Timer node."
+msgstr ""
+
+#: doc/classes/Timer.xml:67
+msgid ""
+"Update the timer during the physics step at each frame (fixed framerate "
+"processing)."
+msgstr ""
+
+#: doc/classes/Timer.xml:70
+msgid "Update the timer during the idle time at each frame."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:4
+msgid "Flat button helper class."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:7
+msgid ""
+"This is a helper class to generate a flat [Button] (see [member Button."
+"flat]), creating a [ToolButton] is equivalent to:\n"
+"[codeblock]\n"
+"var btn = Button.new()\n"
+"btn.flat = true\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/ToolButton.xml:24
+msgid "[StyleBox] used when the [ToolButton] is disabled."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:27
+msgid ""
+"[StyleBox] used when the [ToolButton] is focused. It is displayed over the "
+"current [StyleBox], so using [StyleBoxEmpty] will just disable the focus "
+"visual effect."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:30
+msgid "[Font] of the [ToolButton]'s text."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:33
+msgid "Default text [Color] of the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:36
+msgid "Text [Color] used when the [ToolButton] is disabled."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:39
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:42
+msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:45
+msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:48
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:51
+msgid "The horizontal space between [ToolButton]'s icon and text."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
+msgid "[StyleBox] used when the [ToolButton] is being pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:4
+msgid "Button for touch screen devices for gameplay use."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:7
+msgid ""
+"TouchScreenButton allows you to create on-screen buttons for touch devices. "
+"It's intended for gameplay use, such as a unit you have to touch to move. "
+"Unlike [Button], TouchScreenButton supports multitouch out of the box. "
+"Several TouchScreenButtons can be pressed at the same time with touch "
+"input.\n"
+"This node inherits from [Node2D]. Unlike with [Control] nodes, you cannot "
+"set anchors on it. If you want to create menus or user interfaces, you may "
+"want to use [Button] nodes instead. To make button nodes react to touch "
+"events, you can enable the Emulate Mouse option in the Project Settings.\n"
+"You can configure TouchScreenButton to be visible only on touch devices, "
+"helping you develop your game both for desktop and mobile devices."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:17
+msgid "Returns [code]true[/code] if this button is currently pressed."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:23
+msgid "The button's action. Actions can be handled with [InputEventAction]."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:26
+msgid "The button's bitmask."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:29
+msgid "The button's texture for the normal state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:32
+msgid ""
+"If [code]true[/code], the [signal pressed] and [signal released] signals are "
+"emitted whenever a pressed finger goes in and out of the button, even if the "
+"pressure started outside the active area of the button.\n"
+"[b]Note:[/b] This is a \"pass-by\" (not \"bypass\") press mode."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:36
+msgid "The button's texture for the pressed state."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:39
+msgid "The button's shape."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:42
+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:45
+msgid "If [code]true[/code], the button's shape is visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:48
+msgid ""
+"The button's visibility mode. See [enum VisibilityMode] for possible values."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:54
+msgid "Emitted when the button is pressed (down)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:59
+msgid "Emitted when the button is released (up)."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:65
+msgid "Always visible."
+msgstr ""
+
+#: doc/classes/TouchScreenButton.xml:68
+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:26
+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:34
+msgid "Constructs a Transform from a [Basis] and [Vector3]."
+msgstr ""
+
+#: doc/classes/Transform.xml:41
+msgid "Constructs a Transform from a [Transform2D]."
+msgstr ""
+
+#: doc/classes/Transform.xml:48
+msgid ""
+"Constructs a Transform from a [Quat]. The origin will be [code]Vector3(0, 0, "
+"0)[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:55
+msgid ""
+"Constructs the Transform from a [Basis]. The origin will be Vector3(0, 0, 0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:61 doc/classes/Transform2D.xml:44
+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:69
+msgid ""
+"Interpolates the transform to other Transform by weight amount (on the range "
+"of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform.xml:75
+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:82 doc/classes/Transform2D.xml:99
+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:90
+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:98
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors."
+msgstr ""
+
+#: doc/classes/Transform.xml:106
+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:113
+msgid ""
+"Scales basis and origin of the transform by the given scale factor, using "
+"matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform.xml:120 doc/classes/Transform2D.xml:126
+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:128
+msgid ""
+"Transforms the given [Vector3], [Plane], [AABB], or [PoolVector3Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:135
+msgid ""
+"Inverse-transforms the given [Vector3], [Plane], [AABB], or "
+"[PoolVector3Array] by this transform."
+msgstr ""
+
+#: doc/classes/Transform.xml:141
+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:144
+msgid ""
+"The translation offset of the transform (column 3, the fourth column). "
+"Equivalent to array index [code]3[/code]."
+msgstr ""
+
+#: doc/classes/Transform.xml:149
+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:152
+msgid "[Transform] with mirroring applied perpendicular to the YZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:155
+msgid "[Transform] with mirroring applied perpendicular to the XZ plane."
+msgstr ""
+
+#: doc/classes/Transform.xml:158
+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 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:21
+msgid "Constructs the transform from a 3D [Transform]."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:30
+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:38
+msgid "Constructs the transform from a given angle (in radians) and position."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:51
+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:59
+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:66
+msgid "Returns the transform's origin (translation)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:72
+msgid "Returns the transform's rotation (in radians)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:78
+msgid "Returns the scale."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:86
+msgid ""
+"Returns a transform interpolated between this transform and another by a "
+"given [code]weight[/code] (on the range of 0.0 to 1.0)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:92
+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:105
+msgid ""
+"Returns the transform with the basis orthogonal (90 degrees), and normalized "
+"axis vectors (scale of 1 or -1)."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:112
+msgid ""
+"Rotates the transform by the given angle (in radians), using matrix "
+"multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:119
+msgid ""
+"Scales the transform by the given scale factor, using matrix multiplication."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:134
+msgid ""
+"Transforms the given [Vector2], [Rect2], or [PoolVector2Array] by this "
+"transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:141
+msgid ""
+"Inverse-transforms the given [Vector2], [Rect2], or [PoolVector2Array] by "
+"this transform."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:147
+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:158
+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:161
+msgid "The [Transform2D] that will flip something along the X axis."
+msgstr ""
+
+#: doc/classes/Transform2D.xml:164
+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/3.4/tutorials/i18n/internationalizing_games."
+"html"
+msgstr ""
+
+#: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11
+msgid "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html"
+msgstr ""
+
+#: doc/classes/Translation.xml:18
+msgid "Virtual method to override [method get_message]."
+msgstr ""
+
+#: doc/classes/Translation.xml:26
+msgid "Adds a message if nonexistent, followed by its translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:33
+msgid "Erases a message."
+msgstr ""
+
+#: doc/classes/Translation.xml:40
+msgid "Returns a message's translation."
+msgstr ""
+
+#: doc/classes/Translation.xml:46
+msgid "Returns the number of existing messages."
+msgstr ""
+
+#: doc/classes/Translation.xml:52
+msgid "Returns all the messages (keys)."
+msgstr ""
+
+#: doc/classes/Translation.xml:58
+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:18
+msgid "Adds a [Translation] resource."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:24
+msgid "Clears the server from all translations."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:30
+msgid "Returns an array of all loaded locales of the project."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:36
+msgid ""
+"Returns the current locale of the project.\n"
+"See also [method OS.get_locale] and [method OS.get_locale_language] to query "
+"the locale of the user system."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:44
+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:51
+msgid "Removes the given translation from the server."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:58
+msgid ""
+"Sets the locale of the project. The [code]locale[/code] string will be "
+"standardized to match known locales (e.g. [code]en-US[/code] would be "
+"matched to [code]en_US[/code]).\n"
+"If translations have been loaded beforehand for the new locale, they will be "
+"applied."
+msgstr ""
+
+#: doc/classes/TranslationServer.xml:66
+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:27
+msgid "Returns [code]true[/code] if the column titles are being shown."
+msgstr ""
+
+#: doc/classes/Tree.xml:33
+msgid "Clears the tree. This removes all items."
+msgstr ""
+
+#: doc/classes/Tree.xml:41
+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:49
+msgid ""
+"Edits the selected tree item as if it was clicked. The item must be set "
+"editable with [method TreeItem.set_editable]. Returns [code]true[/code] if "
+"the item could be edited. Fails if no item is selected."
+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:64
+msgid ""
+"Returns the column index at [code]position[/code], or -1 if no item is there."
+msgstr ""
+
+#: doc/classes/Tree.xml:71
+msgid "Returns the column's title."
+msgstr ""
+
+#: doc/classes/Tree.xml:78
+msgid "Returns the column's width in pixels."
+msgstr ""
+
+#: doc/classes/Tree.xml:84
+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:91
+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:99
+msgid ""
+"Returns the currently edited item. Can be used with [signal item_edited] to "
+"get the item that was modified.\n"
+"[codeblock]\n"
+"func _ready():\n"
+" $Tree.item_edited.connect(on_Tree_item_edited)\n"
+"\n"
+"func on_Tree_item_edited():\n"
+" print($Tree.get_edited()) # This item just got edited (e.g. checked).\n"
+"[/codeblock]"
+msgstr ""
+
+#: doc/classes/Tree.xml:112
+msgid "Returns the column for the currently edited item."
+msgstr ""
+
+#: doc/classes/Tree.xml:120
+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:127
+msgid ""
+"Returns the tree item at the specified position (relative to the tree origin "
+"position)."
+msgstr ""
+
+#: doc/classes/Tree.xml:134
+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:141
+msgid "Returns the last pressed button's index."
+msgstr ""
+
+#: doc/classes/Tree.xml:147
+msgid ""
+"Returns the tree's root item, or [code]null[/code] if the tree is empty."
+msgstr ""
+
+#: doc/classes/Tree.xml:153
+msgid "Returns the current scrolling position."
+msgstr ""
+
+#: doc/classes/Tree.xml:159
+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:167
+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:176
+msgid "Causes the [Tree] to jump to the specified item."
+msgstr ""
+
+#: doc/classes/Tree.xml:184
+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:192
+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:200
+msgid "Sets the title of a column."
+msgstr ""
+
+#: doc/classes/Tree.xml:207
+msgid "If [code]true[/code], column titles are visible."
+msgstr ""
+
+#: doc/classes/Tree.xml:213
+msgid ""
+"If [code]true[/code], the currently selected cell may be selected again."
+msgstr ""
+
+#: doc/classes/Tree.xml:216
+msgid "If [code]true[/code], a right mouse button click can select items."
+msgstr ""
+
+#: doc/classes/Tree.xml:219
+msgid "The number of columns."
+msgstr ""
+
+#: doc/classes/Tree.xml:222
+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:227
+msgid "If [code]true[/code], the folding arrow is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:230
+msgid "If [code]true[/code], the tree's root is hidden."
+msgstr ""
+
+#: doc/classes/Tree.xml:234
+msgid ""
+"Allows single or multiple selection. See the [enum SelectMode] constants."
+msgstr ""
+
+#: doc/classes/Tree.xml:243
+msgid ""
+"Emitted when a button on the tree was pressed (see [method TreeItem."
+"add_button])."
+msgstr ""
+
+#: doc/classes/Tree.xml:248
+msgid "Emitted when a cell is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:254
+msgid "Emitted when a column's title is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:260
+msgid ""
+"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
+"to be edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:266
+msgid ""
+"Emitted when the right mouse button is pressed in the empty space of the "
+"tree."
+msgstr ""
+
+#: doc/classes/Tree.xml:272
+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:277
+msgid "Emitted when an item's label is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:283
+msgid "Emitted when an item is collapsed by a click on the folding arrow."
+msgstr ""
+
+#: doc/classes/Tree.xml:288
+msgid ""
+"Emitted when a custom button is pressed (i.e. in a [constant TreeItem."
+"CELL_MODE_CUSTOM] mode cell)."
+msgstr ""
+
+#: doc/classes/Tree.xml:293
+msgid "Emitted when an item's icon is double-clicked."
+msgstr ""
+
+#: doc/classes/Tree.xml:298
+msgid "Emitted when an item is edited."
+msgstr ""
+
+#: doc/classes/Tree.xml:303
+msgid "Emitted when an item is edited using the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:309
+msgid "Emitted when an item is selected with the right mouse button."
+msgstr ""
+
+#: doc/classes/Tree.xml:314
+msgid "Emitted when an item is selected."
+msgstr ""
+
+#: doc/classes/Tree.xml:322
+msgid ""
+"Emitted instead of [code]item_selected[/code] if [code]select_mode[/code] is "
+"[constant SELECT_MULTI]."
+msgstr ""
+
+#: doc/classes/Tree.xml:327
+msgid "Emitted when a left mouse button click does not select any item."
+msgstr ""
+
+#: doc/classes/Tree.xml:333
+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:337
+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:341
+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:345
+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:349
+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:353
+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:359
+msgid "The arrow icon used when a foldable item is not collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:362
+msgid "The arrow icon used when a foldable item is collapsed."
+msgstr ""
+
+#: doc/classes/Tree.xml:365
+msgid ""
+"Default [StyleBox] for the [Tree], i.e. used when the control is not being "
+"focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:368
+msgid "[StyleBox] used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:371
+msgid "The horizontal space between each button in a cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:374
+msgid "[StyleBox] used when a button in the tree is pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:377
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is checked."
+msgstr ""
+
+#: doc/classes/Tree.xml:380
+msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:383
+msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:386
+msgid ""
+"Default [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:389
+msgid ""
+"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:392
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:395
+msgid ""
+"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
+"pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:398
+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:401
+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:404
+msgid ""
+"[Color] used to draw possible drop locations. See [enum DropModeFlags] "
+"constants for further description of drop locations."
+msgstr ""
+
+#: doc/classes/Tree.xml:416
+msgid "[Color] of the guideline."
+msgstr ""
+
+#: doc/classes/Tree.xml:419
+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:422
+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:425
+msgid "[Color] of the relationship lines."
+msgstr ""
+
+#: doc/classes/Tree.xml:428
+msgid ""
+"The maximum distance between the mouse cursor and the control's border to "
+"trigger border scrolling when dragging."
+msgstr ""
+
+#: doc/classes/Tree.xml:431
+msgid "The speed of border scrolling."
+msgstr ""
+
+#: doc/classes/Tree.xml:434
+msgid ""
+"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
+"cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:437
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is not being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:440
+msgid ""
+"[StyleBox] for the selected items, used when the [Tree] is being focused."
+msgstr ""
+
+#: doc/classes/Tree.xml:443
+msgid "Default text [Color] of the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:446
+msgid "[Font] of the title button's text."
+msgstr ""
+
+#: doc/classes/Tree.xml:449
+msgid "[StyleBox] used when the title button is being hovered."
+msgstr ""
+
+#: doc/classes/Tree.xml:452
+msgid "Default [StyleBox] for the title button."
+msgstr ""
+
+#: doc/classes/Tree.xml:455
+msgid "[StyleBox] used when the title button is being pressed."
+msgstr ""
+
+#: doc/classes/Tree.xml:458
+msgid ""
+"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
+"cell is unchecked."
+msgstr ""
+
+#: doc/classes/Tree.xml:461
+msgid ""
+"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
+"mode cell."
+msgstr ""
+
+#: doc/classes/Tree.xml:464
+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:21
+msgid ""
+"Adds a button with [Texture] [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:28
+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:35
+msgid "Resets the background color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:42
+msgid "Resets the color for the given column to default."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:49
+msgid "Deselects the given column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:57
+msgid ""
+"Removes the button at index [code]button_idx[/code] in column [code]column[/"
+"code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:65
+msgid ""
+"Returns the [Texture] of the button at index [code]button_idx[/code] in "
+"column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:72
+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:80
+msgid ""
+"Returns the tooltip string for the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:87
+msgid "Returns the column's cell mode."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:93
+msgid ""
+"Returns the TreeItem's first child item or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:100
+msgid "Returns the custom background color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:107
+msgid "Returns the custom color of column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:114
+msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:121
+msgid "Returns the given column's icon [Texture]. Error if no icon is set."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:128
+msgid "Returns the column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:135
+msgid "Returns the [Color] modulating the column's icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:142
+msgid "Returns the icon [Texture] region as [Rect2]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:149
+msgid ""
+"Returns the metadata value that was set for the given column using [method "
+"set_metadata]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:155
+msgid ""
+"Returns the next TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:162
+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:169
+msgid "Returns the parent TreeItem or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:175
+msgid ""
+"Returns the previous TreeItem in the tree or a null object if there is none."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:182
+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:190
+msgid "Returns the value of a [constant CELL_MODE_RANGE] column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:197
+msgid ""
+"Returns a dictionary containing the range parameters for a given column. The "
+"keys are \"min\", \"max\", \"step\", and \"expr\"."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:204
+msgid "Gets the suffix string shown after the column value."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:211
+msgid "Returns the given column's text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:218
+msgid "Returns the given column's text alignment."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:225
+msgid "Returns the given column's tooltip."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:233
+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:240
+msgid "Returns [code]true[/code] if the given column is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:253
+msgid "Returns [code]true[/code] if column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:260
+msgid "Returns [code]true[/code] if column [code]column[/code] is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:267
+msgid "Returns [code]true[/code] if column [code]column[/code] is selected."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:273
+msgid "Moves this TreeItem to the bottom in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:279
+msgid "Moves this TreeItem to the top in the [Tree] hierarchy."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:286
+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:293
+msgid "Selects the column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:302
+msgid ""
+"Sets the given column's button [Texture] at index [code]button_idx[/code] to "
+"[code]button[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:311
+msgid ""
+"If [code]true[/code], disables the button at index [code]button_idx[/code] "
+"in column [code]column[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:319
+msgid ""
+"Sets the given column's cell mode to [code]mode[/code]. See [enum "
+"TreeCellMode] constants."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:327
+msgid "If [code]true[/code], the column [code]column[/code] is checked."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:343
+msgid ""
+"Sets the given column's custom background color and whether to just use it "
+"as an outline."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:351
+msgid "Sets the given column's custom color."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:360
+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:369
+msgid "If [code]true[/code], column [code]column[/code] is editable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:377
+msgid ""
+"If [code]true[/code], column [code]column[/code] is expanded to the right."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:385
+msgid "Sets the given column's icon [Texture]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:393
+msgid "Sets the given column's icon's maximum width."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:401
+msgid "Modulates the given column's icon with [code]modulate[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:409
+msgid "Sets the given column's icon's texture region."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:417
+msgid ""
+"Sets the metadata value for the given column, which can be retrieved later "
+"using [method get_metadata]. This can be used, for example, to store a "
+"reference to the original data."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:425
+msgid "Sets the value of a [constant CELL_MODE_RANGE] column."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:436
+msgid ""
+"Sets the range of accepted values for a column. The column must be in the "
+"[constant CELL_MODE_RANGE] mode.\n"
+"If [code]expr[/code] is [code]true[/code], the edit mode slider will use an "
+"exponential scale as with [member Range.exp_edit]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:445
+msgid "If [code]true[/code], the given column is selectable."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:453
+msgid ""
+"Sets a string to be shown after a column's value (for example, a unit "
+"abbreviation)."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:461
+msgid "Sets the given column's text value."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:469
+msgid ""
+"Sets the given column's text alignment. See [enum TextAlign] for possible "
+"values."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:477
+msgid "Sets the given column's tooltip text."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:483
+msgid "If [code]true[/code], the TreeItem is collapsed."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:486
+msgid "The custom minimum height."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:489
+msgid "If [code]true[/code], folding is disabled for this TreeItem."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:494
+msgid "Cell contains a string."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:497
+msgid "Cell contains a checkbox."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:500
+msgid "Cell contains a range."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:503
+msgid "Cell contains an icon."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:508
+msgid "Align text to the left. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:511
+msgid "Center text. See [code]set_text_align()[/code]."
+msgstr ""
+
+#: doc/classes/TreeItem.xml:514
+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] (e.g. [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:36
+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:52
+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:59
+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:73
+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:87
+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:101
+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:116
+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:123
+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:132
+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:138
+msgid "Stops animation and removes all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:146
+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:152
+msgid ""
+"Resets all tweens to their initial values (the ones given, not those before "
+"the tween)."
+msgstr ""
+
+#: doc/classes/Tween.xml:160
+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:166
+msgid "Continues animating all stopped tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:173
+msgid "Sets the interpolation to the given [code]time[/code] in seconds."
+msgstr ""
+
+#: doc/classes/Tween.xml:180
+msgid ""
+"Activates/deactivates the tween. See also [method stop_all] and [method "
+"resume_all]."
+msgstr ""
+
+#: doc/classes/Tween.xml:186
+msgid "Starts the tween. You can define animations both before and after this."
+msgstr ""
+
+#: doc/classes/Tween.xml:194
+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:200
+msgid "Stops animating all tweens."
+msgstr ""
+
+#: doc/classes/Tween.xml:215
+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:231
+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:238
+msgid "Returns the current time of the tween."
+msgstr ""
+
+#: doc/classes/Tween.xml:244
+msgid "The tween's animation process thread. See [enum TweenProcessMode]."
+msgstr ""
+
+#: doc/classes/Tween.xml:247
+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:250
+msgid "If [code]true[/code], the tween loops."
+msgstr ""
+
+#: doc/classes/Tween.xml:256
+msgid "Emitted when all processes in a tween end."
+msgstr ""
+
+#: doc/classes/Tween.xml:263
+msgid "Emitted when a tween ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:270
+msgid "Emitted when a tween starts."
+msgstr ""
+
+#: doc/classes/Tween.xml:279
+msgid "Emitted at each step of the animation."
+msgstr ""
+
+#: doc/classes/Tween.xml:285
+msgid "The tween updates with the [code]_physics_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:288
+msgid "The tween updates with the [code]_process[/code] callback."
+msgstr ""
+
+#: doc/classes/Tween.xml:291
+msgid "The animation is interpolated linearly."
+msgstr ""
+
+#: doc/classes/Tween.xml:294
+msgid "The animation is interpolated using a sine function."
+msgstr ""
+
+#: doc/classes/Tween.xml:297
+msgid ""
+"The animation is interpolated with a quintic (to the power of 5) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:300
+msgid ""
+"The animation is interpolated with a quartic (to the power of 4) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:303
+msgid ""
+"The animation is interpolated with a quadratic (to the power of 2) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:306
+msgid ""
+"The animation is interpolated with an exponential (to the power of x) "
+"function."
+msgstr ""
+
+#: doc/classes/Tween.xml:309
+msgid ""
+"The animation is interpolated with elasticity, wiggling around the edges."
+msgstr ""
+
+#: doc/classes/Tween.xml:312
+msgid ""
+"The animation is interpolated with a cubic (to the power of 3) function."
+msgstr ""
+
+#: doc/classes/Tween.xml:315
+msgid "The animation is interpolated with a function using square roots."
+msgstr ""
+
+#: doc/classes/Tween.xml:318
+msgid "The animation is interpolated by bouncing at the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:321
+msgid "The animation is interpolated backing out at ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:324
+msgid "The interpolation starts slowly and speeds up towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:327
+msgid "The interpolation starts quickly and slows down towards the end."
+msgstr ""
+
+#: doc/classes/Tween.xml:330
+msgid ""
+"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
+"interpolation is slowest at both ends."
+msgstr ""
+
+#: doc/classes/Tween.xml:333
+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:61
+msgid ""
+"Returns [code]true[/code] if a packet with a new address/port combination "
+"was received on the socket."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:67
+msgid ""
+"Returns [code]true[/code] if the socket is open and listening on a port."
+msgstr ""
+
+#: doc/classes/UDPServer.xml:75
+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:81
+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:87
+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:93
+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:99
+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:39
+msgid "Register a method that will be called when the action is committed."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:48
+msgid "Register a property value change for \"do\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:55
+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:63
+msgid "Register a method that will be called when the action is undone."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:72
+msgid "Register a property value change for \"undo\"."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:79
+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:86
+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:93
+msgid ""
+"Commit the action. All \"do\" methods/properties are called/set when this "
+"function is called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:101
+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:108
+msgid "Gets the name of the current action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:114
+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:133
+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:139
+msgid "Redo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:145
+msgid "Undo the last action."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:152
+msgid "Called when [method undo] or [method redo] was called."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:158
+msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
+msgstr ""
+
+#: doc/classes/UndoRedo.xml:161
+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:164
+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]\n"
+"[b]Note:[/b] UPnP discovery blocks the current thread. To perform discovery "
+"without blocking the main thread, use [Thread]s like this:\n"
+"[codeblock]\n"
+"# Emitted when UPnP port mapping setup is completed (regardless of success "
+"or failure).\n"
+"signal upnp_completed(error)\n"
+"\n"
+"# Replace this with your own server port number between 1025 and 65535.\n"
+"const SERVER_PORT = 3928\n"
+"var thread = null\n"
+"\n"
+"func _upnp_setup(server_port):\n"
+" # UPNP queries take some time.\n"
+" var upnp = UPNP.new()\n"
+" var err = upnp.discover()\n"
+"\n"
+" if err != OK:\n"
+" push_error(str(err))\n"
+" emit_signal(\"upnp_completed\", err)\n"
+" return\n"
+"\n"
+" if upnp.get_gateway() and upnp.get_gateway().is_valid_gateway():\n"
+" upnp.add_port_mapping(server_port, server_port, ProjectSettings."
+"get_setting(\"application/config/name\"), \"UDP\")\n"
+" upnp.add_port_mapping(server_port, server_port, ProjectSettings."
+"get_setting(\"application/config/name\"), \"TCP\")\n"
+" emit_signal(\"upnp_completed\", OK)\n"
+"\n"
+"func _ready():\n"
+" thread = Thread.new()\n"
+" thread.start(self, \"_upnp_setup\", SERVER_PORT)\n"
+"\n"
+"func _exit_tree():\n"
+" # Wait for thread finish here to handle game exit while the thread is "
+"running.\n"
+" thread.wait_to_finish()\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:59
+msgid "Adds the given [UPNPDevice] to the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:70
+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:79
+msgid "Clears the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:87
+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:96
+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:105
+msgid "Returns the [UPNPDevice] at the given [code]index[/code]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:111
+msgid "Returns the number of discovered [UPNPDevice]s."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:117
+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:123
+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:130
+msgid ""
+"Removes the device at [code]index[/code] from the list of discovered devices."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:138
+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:144
+msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:147
+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:150
+msgid ""
+"Multicast interface to use for discovery. Uses the default multicast "
+"interface if empty."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:155
+msgid "UPNP command or discovery was successful."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:158
+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:161
+msgid ""
+"No port mapping was found for the given port, protocol combination on the "
+"given [UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:164
+msgid "Inconsistent parameters."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:167
+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:170
+msgid "The action failed."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:173
+msgid ""
+"The [UPNPDevice] does not allow wildcard values for the source IP address."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:176
+msgid "The [UPNPDevice] does not allow wildcard values for the external port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:179
+msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:182
+msgid "The remote host value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:185
+msgid "The external port value must be a wildcard."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:188
+msgid ""
+"No port maps are available. May also be returned if port mapping "
+"functionality is not available."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:191
+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:194
+msgid "Conflict with an existing port mapping."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:197
+msgid "External and internal port values must be the same."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:200
+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:203
+msgid "Invalid gateway."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:206
+msgid "Invalid port."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:209
+msgid "Invalid protocol."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:212
+msgid "Invalid duration."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:215
+msgid "Invalid arguments."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:218
+msgid "Invalid response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:221
+msgid "Invalid parameter."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:224
+#: modules/upnp/doc_classes/UPNPDevice.xml:69
+msgid "HTTP error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:227
+msgid "Socket error."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:230
+msgid "Error allocating memory."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNP.xml:233
+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:236
+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:239
+#: modules/upnp/doc_classes/UPNPDevice.xml:93
+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:20
+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:28
+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:34
+msgid ""
+"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
+"which potentially supports port forwarding."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:40
+msgid ""
+"Returns the external IP address of this [UPNPDevice] or an empty string."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:46
+msgid "URL to the device description."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:49
+msgid "IDG control URL."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:52
+msgid ""
+"Address of the local machine in the network connecting it to this "
+"[UPNPDevice]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:55
+msgid "IGD service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:58
+msgid "IGD status. See [enum IGDStatus]."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:61
+msgid "Service type."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:66
+msgid "OK."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:72
+msgid "Empty HTTP response."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:75
+msgid "Returned response contained no URLs."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:78
+msgid "Not a valid IGD."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:81
+msgid "Disconnected."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:84
+msgid "Unknown device."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:87
+msgid "Invalid control."
+msgstr ""
+
+#: modules/upnp/doc_classes/UPNPDevice.xml:90
+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/3.4/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:18
+msgid "The vertical space between the [VBoxContainer]'s elements."
+msgstr ""
+
+#: doc/classes/Vector2.xml:4
+msgid "Vector used for 2D math."
+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"
+"[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:14 doc/classes/Vector3.xml:14
+msgid ""
+"https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab"
+msgstr ""
+
+#: doc/classes/Vector2.xml:24
+msgid ""
+"Constructs a new Vector2 from the given [code]x[/code] and [code]y[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:30 doc/classes/Vector3.xml:31
+msgid ""
+"Returns a new vector with all components in absolute values (i.e. positive)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:36
+msgid ""
+"Returns this vector's angle with respect to the positive X axis, or [code]"
+"(1, 0)[/code] vector, in radians.\n"
+"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).\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle.png]Illustration of the returned angle.[/url]\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:46
+msgid ""
+"Returns the angle to the given vector, in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle_to.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Vector2.xml:54
+msgid ""
+"Returns the angle between the line connecting the two points and the X axis, "
+"in radians.\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"vector2_angle_to_point.png]Illustration of the returned angle.[/url]"
+msgstr ""
+
+#: doc/classes/Vector2.xml:61
+msgid ""
+"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
+"y]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:68 doc/classes/Vector3.xml:45
+msgid ""
+"Returns the vector \"bounced off\" from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:74
+msgid ""
+"Returns the vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:81
+msgid ""
+"Returns the vector with a maximum length by limiting its length to "
+"[code]length[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:88
+msgid "Returns the cross product of this vector and [code]with[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:98
+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]weight[/code]. [code]weight[/code] is on the range "
+"of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:105 doc/classes/Vector3.xml:75
+msgid ""
+"Returns the normalized vector pointing from this vector to [code]b[/code]. "
+"This is equivalent to using [code](b - a).normalized()[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:112 doc/classes/Vector3.xml:82
+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:120
+msgid "Returns the distance between this vector and [code]to[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:127
+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:136
+msgid ""
+"Returns the vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector2.xml:143 doc/classes/Vector3.xml:119
+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:149 doc/classes/Vector3.xml:125
+msgid ""
+"Returns [code]true[/code] if the vector is normalized, [code]false[/code] "
+"otherwise."
+msgstr ""
+
+#: doc/classes/Vector2.xml:155 doc/classes/Vector3.xml:131
+msgid "Returns the length (magnitude) of this vector."
+msgstr ""
+
+#: doc/classes/Vector2.xml:161 doc/classes/Vector3.xml:137
+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:170
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]to[/code] by amount [code]weight[/code]. [code]weight[/code] is on the "
+"range of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector2.xml:178
+msgid ""
+"Moves the vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector2.xml:184 doc/classes/Vector3.xml:172
+msgid ""
+"Returns the vector scaled to unit length. Equivalent to [code]v / v.length()"
+"[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:191 doc/classes/Vector3.xml:186
+msgid ""
+"Returns a vector composed of the [method @GDScript.fposmod] of this vector's "
+"components and [code]mod[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:198 doc/classes/Vector3.xml:193
+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:205
+msgid "Returns the vector projected onto the vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:212
+msgid "Returns the vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:219
+msgid ""
+"Returns the vector rotated by [code]phi[/code] radians. See also [method "
+"@GDScript.deg2rad]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:225
+msgid ""
+"Returns the vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector2.xml:231
+msgid ""
+"Returns the vector with each component set to one or negative one, depending "
+"on the signs of the components. If a component is zero, it returns positive "
+"one."
+msgstr ""
+
+#: doc/classes/Vector2.xml:239 doc/classes/Vector3.xml:243
+msgid ""
+"Returns the result of spherical linear interpolation between this vector and "
+"[code]to[/code], by amount [code]weight[/code]. [code]weight[/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:247 doc/classes/Vector3.xml:251
+msgid "Returns this vector slid along a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector2.xml:254 doc/classes/Vector3.xml:258
+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:260
+msgid ""
+"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
+"to the original, with the same length."
+msgstr ""
+
+#: doc/classes/Vector2.xml:266 doc/classes/Vector3.xml:271
+msgid ""
+"The vector's X component. Also accessible by using the index position [code]"
+"[0][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:269 doc/classes/Vector3.xml:274
+msgid ""
+"The vector's Y component. Also accessible by using the index position [code]"
+"[1][/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:274
+msgid "Enumerated value for the X axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:277
+msgid "Enumerated value for the Y axis."
+msgstr ""
+
+#: doc/classes/Vector2.xml:280 doc/classes/Vector3.xml:291
+msgid "Zero vector, a vector with all components set to [code]0[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:283 doc/classes/Vector3.xml:294
+msgid "One vector, a vector with all components set to [code]1[/code]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:286 doc/classes/Vector3.xml:297
+msgid ""
+"Infinity vector, a vector with all components set to [constant @GDScript."
+"INF]."
+msgstr ""
+
+#: doc/classes/Vector2.xml:289
+msgid "Left unit vector. Represents the direction of left."
+msgstr ""
+
+#: doc/classes/Vector2.xml:292
+msgid "Right unit vector. Represents the direction of right."
+msgstr ""
+
+#: doc/classes/Vector2.xml:295
+msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
+msgstr ""
+
+#: doc/classes/Vector2.xml:298
+msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
+msgstr ""
+
+#: doc/classes/Vector3.xml:4
+msgid "Vector used for 3D math."
+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"
+"[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:25
+msgid "Returns a Vector3 with the given components."
+msgstr ""
+
+#: doc/classes/Vector3.xml:38
+msgid "Returns the unsigned minimum angle to the given vector, in radians."
+msgstr ""
+
+#: doc/classes/Vector3.xml:51
+msgid ""
+"Returns a new vector with all components rounded up (towards positive "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:58
+msgid "Returns the cross product of this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:68
+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]weight[/code]. [code]weight[/code] is on the range of "
+"0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:90
+msgid "Returns the distance between this vector and [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:97
+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:106
+msgid ""
+"Returns a new vector with all components rounded down (towards negative "
+"infinity)."
+msgstr ""
+
+#: doc/classes/Vector3.xml:112
+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:146
+msgid ""
+"Returns the result of the linear interpolation between this vector and "
+"[code]to[/code] by amount [code]t[/code]. [code]weight[/code] is on the "
+"range of 0.0 to 1.0, representing the amount of interpolation."
+msgstr ""
+
+#: doc/classes/Vector3.xml:152
+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:158
+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:166
+msgid ""
+"Moves this vector toward [code]to[/code] by the fixed [code]delta[/code] "
+"amount."
+msgstr ""
+
+#: doc/classes/Vector3.xml:179
+msgid "Returns the outer product with [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:200
+msgid "Returns this vector projected onto another vector [code]b[/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:207
+msgid "Returns this vector reflected from a plane defined by the given normal."
+msgstr ""
+
+#: doc/classes/Vector3.xml:215
+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:221
+msgid ""
+"Returns this vector with all components rounded to the nearest integer, with "
+"halfway cases rounded away from zero."
+msgstr ""
+
+#: doc/classes/Vector3.xml:227
+msgid ""
+"Returns a vector with each component set to one or negative one, depending "
+"on the signs of this vector's components. If a component is zero, it returns "
+"positive one."
+msgstr ""
+
+#: doc/classes/Vector3.xml:235
+msgid ""
+"Returns the signed angle to the given vector, in radians. The sign of the "
+"angle is positive in a counter-clockwise direction and negative in a "
+"clockwise direction when viewed from the side specified by the [code]axis[/"
+"code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:264
+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:277
+msgid ""
+"The vector's Z component. Also accessible by using the index position [code]"
+"[2][/code]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:282
+msgid ""
+"Enumerated value for the X axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:285
+msgid ""
+"Enumerated value for the Y axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:288
+msgid ""
+"Enumerated value for the Z axis. Returned by [method max_axis] and [method "
+"min_axis]."
+msgstr ""
+
+#: doc/classes/Vector3.xml:300
+msgid ""
+"Left unit vector. Represents the local direction of left, and the global "
+"direction of west."
+msgstr ""
+
+#: doc/classes/Vector3.xml:303
+msgid ""
+"Right unit vector. Represents the local direction of right, and the global "
+"direction of east."
+msgstr ""
+
+#: doc/classes/Vector3.xml:306
+msgid "Up unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:309
+msgid "Down unit vector."
+msgstr ""
+
+#: doc/classes/Vector3.xml:312
+msgid ""
+"Forward unit vector. Represents the local direction of forward, and the "
+"global direction of north."
+msgstr ""
+
+#: doc/classes/Vector3.xml:315
+msgid ""
+"Back unit vector. Represents the local direction of back, and the global "
+"direction of south."
+msgstr ""
+
+#: doc/classes/VehicleBody.xml:4
+msgid "Physics body that simulates the behavior of a car."
+msgstr ""
+
+#: doc/classes/VehicleBody.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 [CollisionShape] for the main body of your vehicle and "
+"add [VehicleWheel] nodes for the wheels. You should also add a "
+"[MeshInstance] 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 VehicleBody will determine the center "
+"of gravity of your vehicle so it is better to keep this low and move the "
+"[CollisionShape] and [MeshInstance] 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 "
+"[PhysicsBody] class."
+msgstr ""
+
+#: doc/classes/VehicleBody.xml:18
+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 "
+"RigidBody.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/VehicleBody.xml:21
+msgid ""
+"Accelerates the vehicle by applying an engine force. The vehicle is only "
+"speed up if the wheels that have [member VehicleWheel.use_as_traction] set "
+"to [code]true[/code] and are in contact with a surface. The [member "
+"RigidBody.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/VehicleBody.xml:27
+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 "
+"VehicleWheel.use_as_steering] set to [code]true[/code] will automatically be "
+"rotated."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:4
+msgid "Physics object that simulates the behavior of a wheel."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:7
+msgid ""
+"This node needs to be used as a child node of [VehicleBody] 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 "
+"[PhysicsBody] class."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:17
+msgid "Returns the rotational speed of the wheel in revolutions per minute."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:23
+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/VehicleWheel.xml:29
+msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:35
+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 RigidBody.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/VehicleWheel.xml:38
+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/VehicleWheel.xml:41
+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/VehicleWheel.xml:44
+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 RigidBody.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/VehicleWheel.xml:49
+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/VehicleWheel.xml:52
+msgid ""
+"The maximum force the spring can resist. This value should be higher than a "
+"quarter of the [member RigidBody.mass] of the [VehicleBody] 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/VehicleWheel.xml:55
+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/VehicleWheel.xml:58
+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/VehicleWheel.xml:61
+msgid ""
+"If [code]true[/code], this wheel will be turned when the car steers. This "
+"value is used in conjunction with [member VehicleBody.steering] and ignored "
+"if you are using the per-wheel [member steering] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:64
+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 "
+"VehicleBody.engine_force] and ignored if you are using the per-wheel [member "
+"engine_force] value instead."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:67
+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/VehicleWheel.xml:71
+msgid "The radius of the wheel in meters."
+msgstr ""
+
+#: doc/classes/VehicleWheel.xml:74
+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/VehicleWheel.xml:77
+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] "
+"([code].webm[/code], [VideoStreamWebm]), [url=https://www.theora.org/]Ogg "
+"Theora[/url] ([code].ogv[/code], [VideoStreamTheora]), and any format "
+"exposed via a GDNative plugin using [VideoStreamGDNative].\n"
+"[b]Note:[/b] Due to a bug, VideoPlayer does not support localization "
+"remapping yet.\n"
+"[b]Warning:[/b] On HTML5, video playback [i]will[/i] perform poorly due to "
+"missing architecture-specific assembly optimizations, especially for VP8/VP9."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:18
+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 [Texture]."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:30
+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:37
+msgid ""
+"Starts the video playback from the beginning. If the video is paused, this "
+"will not unpause the video."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:43
+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:50
+msgid "The embedded audio track to play."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:53
+msgid "If [code]true[/code], playback starts when the scene loads."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:56
+msgid "Amount of time in milliseconds to store in buffer while playing."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:59
+msgid "Audio bus to use for sound playback."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:62
+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:65
+msgid "If [code]true[/code], the video is paused."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:68
+msgid "The assigned video stream. See description for supported formats."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:71
+msgid ""
+"The current position of the stream, in seconds.\n"
+"[b]Note:[/b] Changing this value won't have any effect as seeking is not "
+"implemented yet, except in video formats implemented by a GDNative add-on."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:75
+msgid "Audio volume as a linear value."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:78
+msgid "Audio volume in dB."
+msgstr ""
+
+#: doc/classes/VideoPlayer.xml:84
+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:16
+msgid "Returns the video file handled by this [VideoStreamGDNative]."
+msgstr ""
+
+#: modules/gdnative/doc_classes/VideoStreamGDNative.xml:23
+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. The Theora codec is less "
+"efficient than [VideoStreamWebm]'s VP8 and VP9, but it requires less CPU "
+"resources to decode. The Theora codec is decoded on the CPU.\n"
+"[b]Note:[/b] While Ogg Theora videos can also have an [code].ogg[/code] "
+"extension, you will have to rename the extension to [code].ogv[/code] to use "
+"those videos within Godot."
+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:23
+msgid ""
+"Sets the Ogg Theora video file that this [VideoStreamTheora] resource "
+"handles. The [code]file[/code] name should have the [code].ogv[/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. Both the VP8 and VP9 "
+"codecs are supported. The VP8 and VP9 codecs are more efficient than "
+"[VideoStreamTheora], but they require more CPU resources to decode "
+"(especially VP9). Both the VP8 and VP9 codecs are decoded on the CPU.\n"
+"[b]Note:[/b] Alpha channel (also known as transparency) is not supported. "
+"The video will always appear to have a black background, even if it "
+"originally contains an alpha channel.\n"
+"[b]Note:[/b] There are known bugs and performance issues with WebM video "
+"playback in Godot. If you run into problems, try using the Ogg Theora format "
+"instead: [VideoStreamTheora]"
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:17
+msgid "Returns the WebM video file handled by this [VideoStreamWebm]."
+msgstr ""
+
+#: modules/webm/doc_classes/VideoStreamWebm.xml:24
+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 Camera "
+"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 [ViewportContainer], 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/3.4/tutorials/viewports/index.html"
+msgstr ""
+
+#: doc/classes/Viewport.xml:18 doc/classes/ViewportTexture.xml:12
+msgid "https://godotengine.org/asset-library/asset/128"
+msgstr ""
+
+#: doc/classes/Viewport.xml:20
+msgid "https://godotengine.org/asset-library/asset/130"
+msgstr ""
+
+#: doc/classes/Viewport.xml:21
+msgid "https://godotengine.org/asset-library/asset/541"
+msgstr ""
+
+#: doc/classes/Viewport.xml:22 doc/classes/ViewportTexture.xml:14
+msgid "https://godotengine.org/asset-library/asset/586"
+msgstr ""
+
+#: doc/classes/Viewport.xml:28
+msgid ""
+"Returns the 3D world of the viewport, or if none the world of the parent "
+"viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:34
+msgid "Returns the 2D world of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:40
+msgid "Returns the active 3D camera."
+msgstr ""
+
+#: doc/classes/Viewport.xml:46
+msgid "Returns the total transform of the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:52
+msgid "Returns the topmost modal in the stack."
+msgstr ""
+
+#: doc/classes/Viewport.xml:58
+msgid "Returns the mouse position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:65
+msgid "Returns information about the viewport from the rendering pipeline."
+msgstr ""
+
+#: doc/classes/Viewport.xml:72
+msgid "Returns the [enum ShadowAtlasQuadrantSubdiv] of the specified quadrant."
+msgstr ""
+
+#: doc/classes/Viewport.xml:78
+msgid "Returns the size override set with [method set_size_override]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:84
+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 Texture.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:95
+msgid "Returns the viewport's RID from the [VisualServer]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:101
+msgid "Returns the visible rectangle in global screen coordinates."
+msgstr ""
+
+#: doc/classes/Viewport.xml:107
+msgid ""
+"Returns the drag data from the GUI, that was previously returned by [method "
+"Control.get_drag_data]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:113
+msgid "Returns [code]true[/code] if there are visible modals on-screen."
+msgstr ""
+
+#: doc/classes/Viewport.xml:119
+msgid ""
+"Returns [code]true[/code] if the viewport is currently performing a drag "
+"operation."
+msgstr ""
+
+#: doc/classes/Viewport.xml:136
+msgid ""
+"Returns [code]true[/code] if the size override is enabled. See [method "
+"set_size_override]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:143
+msgid ""
+"Attaches this [Viewport] to the root [Viewport] with the specified "
+"rectangle. This bypasses the need for another node to display this "
+"[Viewport] but makes you responsible for updating the position of this "
+"[Viewport] manually."
+msgstr ""
+
+#: doc/classes/Viewport.xml:149
+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:166
+msgid ""
+"Sets the size override of the viewport. If the [code]enable[/code] parameter "
+"is [code]true[/code] the override is used, otherwise it uses the default "
+"size. If the size parameter is [code](-1, -1)[/code], it won't update the "
+"size."
+msgstr ""
+
+#: doc/classes/Viewport.xml:178
+msgid "Forces update of the 2D and 3D worlds."
+msgstr ""
+
+#: doc/classes/Viewport.xml:185
+msgid "Warps the mouse to a position relative to the viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:191
+msgid "If [code]true[/code], the viewport will be used in AR/VR process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:194
+msgid "If [code]true[/code], the viewport will process 2D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:197
+msgid "If [code]true[/code], the viewport will process 3D audio streams."
+msgstr ""
+
+#: doc/classes/Viewport.xml:200
+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:203
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be "
+"[code]true[/code] for debanding to be effective."
+msgstr ""
+
+#: doc/classes/Viewport.xml:207
+msgid "The overlay mode for test rendered geometry in debug purposes."
+msgstr ""
+
+#: doc/classes/Viewport.xml:210
+msgid ""
+"If [code]true[/code], the viewport will disable 3D rendering. For actual "
+"disabling use [code]usage[/code]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:213
+msgid ""
+"Enables 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [member "
+"sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/Viewport.xml:216
+msgid ""
+"The global canvas transform of the viewport. The canvas transform is "
+"relative to this."
+msgstr ""
+
+#: doc/classes/Viewport.xml:219
+msgid "If [code]true[/code], the viewport will not receive input events."
+msgstr ""
+
+#: doc/classes/Viewport.xml:222
+msgid ""
+"If [code]true[/code], the GUI controls on the viewport will lay pixel "
+"perfectly."
+msgstr ""
+
+#: doc/classes/Viewport.xml:227
+msgid ""
+"If [code]true[/code], the viewport rendering will receive benefits from High "
+"Dynamic Range algorithm. High Dynamic Range allows the viewport to receive "
+"values that are outside the 0-1 range. In Godot HDR uses 16 bits, meaning it "
+"does not store the full range of a floating point number.\n"
+"[b]Note:[/b] Requires [member usage] to be set to [constant USAGE_3D] or "
+"[constant USAGE_3D_NO_EFFECTS], since HDR is not supported for 2D."
+msgstr ""
+
+#: doc/classes/Viewport.xml:231
+msgid ""
+"If [code]true[/code], the result after 3D rendering will not have a linear "
+"to sRGB color conversion applied. This is important when the viewport is "
+"used as a render target where the result is used as a texture on a 3D object "
+"rendered in another viewport. It is also important if the viewport is used "
+"to create data that is not color based (noise, heightmaps, pickmaps, etc.). "
+"Do not enable this when the viewport is used as a texture on a 2D object or "
+"if the viewport is your final output. For the GLES2 driver this will convert "
+"the sRGB output to linear, this should only be used for VR plugins that "
+"require input in linear color space!"
+msgstr ""
+
+#: doc/classes/Viewport.xml:234
+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:237
+msgid ""
+"If [code]true[/code], the viewport will use [World] defined in [code]world[/"
+"code] property."
+msgstr ""
+
+#: doc/classes/Viewport.xml:240
+msgid ""
+"If [code]true[/code], the objects rendered by viewport become subjects of "
+"mouse picking process."
+msgstr ""
+
+#: doc/classes/Viewport.xml:243
+msgid ""
+"If [code]true[/code], renders the Viewport directly to the screen instead of "
+"to the root viewport. Only available in GLES2. This is a low-level "
+"optimization and should not be used in most cases. If used, reading from the "
+"Viewport or from [code]SCREEN_TEXTURE[/code] becomes unavailable. For more "
+"information see [method VisualServer.viewport_set_render_direct_to_screen]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:246
+msgid ""
+"The clear mode when viewport used as a render target.\n"
+"[b]Note:[/b] This property is intended for 2D usage."
+msgstr ""
+
+#: doc/classes/Viewport.xml:250
+msgid "The update mode when viewport used as a render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:253
+msgid ""
+"If [code]true[/code], the result of rendering will be flipped vertically."
+msgstr ""
+
+#: doc/classes/Viewport.xml:256
+msgid "The subdivision amount of the first quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:259
+msgid "The subdivision amount of the second quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:262
+msgid "The subdivision amount of the third quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:265
+msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
+msgstr ""
+
+#: doc/classes/Viewport.xml:268
+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:272
+msgid ""
+"If set to a value greater than [code]0.0[/code], contrast-adaptive "
+"sharpening will be applied to the 3D viewport. This has a low performance "
+"cost and can be used to recover some of the sharpness lost from using FXAA. "
+"Values around [code]0.5[/code] generally give the best results. See also "
+"[member fxaa]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:275
+msgid ""
+"The width and height of viewport. Must be set to a value greater than or "
+"equal to 2 pixels on both dimensions. Otherwise, nothing will be displayed."
+msgstr ""
+
+#: doc/classes/Viewport.xml:278
+msgid "If [code]true[/code], the size override affects stretch as well."
+msgstr ""
+
+#: doc/classes/Viewport.xml:281
+msgid ""
+"If [code]true[/code], the viewport should render its background as "
+"transparent."
+msgstr ""
+
+#: doc/classes/Viewport.xml:284
+msgid "The rendering mode of viewport."
+msgstr ""
+
+#: doc/classes/Viewport.xml:287
+msgid "The custom [World] which can be used as 3D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:290
+msgid "The custom [World2D] which can be used as 2D environment source."
+msgstr ""
+
+#: doc/classes/Viewport.xml:297
+msgid "Emitted when a Control node grabs keyboard focus."
+msgstr ""
+
+#: doc/classes/Viewport.xml:302
+msgid ""
+"Emitted when the size of the viewport is changed, whether by [method "
+"set_size_override], resize of window, or some other means."
+msgstr ""
+
+#: doc/classes/Viewport.xml:308
+msgid "Do not update the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:311
+msgid ""
+"Update the render target once, then switch to [constant UPDATE_DISABLED]."
+msgstr ""
+
+#: doc/classes/Viewport.xml:314
+msgid ""
+"Update the render target only when it is visible. This is the default value."
+msgstr ""
+
+#: doc/classes/Viewport.xml:317
+msgid "Always update the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:320
+msgid "This quadrant will not be used."
+msgstr ""
+
+#: doc/classes/Viewport.xml:323
+msgid "This quadrant will only be used by one shadow map."
+msgstr ""
+
+#: doc/classes/Viewport.xml:326
+msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:329
+msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:332
+msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
+msgstr ""
+
+#: doc/classes/Viewport.xml:335
+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:338
+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:341
+msgid "Represents the size of the [enum ShadowAtlasQuadrantSubdiv] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:344
+msgid "Amount of objects in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:347
+msgid "Amount of vertices in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:350
+msgid "Amount of material changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:353
+msgid "Amount of shader changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:356
+msgid "Amount of surface changes in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:359 doc/classes/Viewport.xml:365
+msgid "Amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:362
+msgid "Amount of items or joined items in frame."
+msgstr ""
+
+#: doc/classes/Viewport.xml:368
+msgid "Represents the size of the [enum RenderInfo] enum."
+msgstr ""
+
+#: doc/classes/Viewport.xml:371
+msgid "Objects are displayed normally."
+msgstr ""
+
+#: doc/classes/Viewport.xml:374
+msgid "Objects are displayed without light information."
+msgstr ""
+
+#: doc/classes/Viewport.xml:377
+msgid ""
+"Objected are displayed semi-transparent with additive blending so you can "
+"see where they intersect."
+msgstr ""
+
+#: doc/classes/Viewport.xml:380
+msgid "Objects are displayed in wireframe style."
+msgstr ""
+
+#: doc/classes/Viewport.xml:383
+msgid "Multisample anti-aliasing mode disabled. This is the default value."
+msgstr ""
+
+#: doc/classes/Viewport.xml:386
+msgid "Use 2x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:389
+msgid "Use 4x Multisample Antialiasing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:392
+msgid ""
+"Use 8x Multisample Antialiasing. Likely unsupported on low-end and older "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:395
+msgid ""
+"Use 16x Multisample Antialiasing. Likely unsupported on medium and low-end "
+"hardware."
+msgstr ""
+
+#: doc/classes/Viewport.xml:398
+msgid ""
+"Allocates all buffers needed for drawing 2D scenes. This takes less VRAM "
+"than the 3D usage modes. Note that 3D rendering effects such as glow and HDR "
+"are not available when using this mode."
+msgstr ""
+
+#: doc/classes/Viewport.xml:401
+msgid ""
+"Allocates buffers needed for 2D scenes without allocating a buffer for "
+"screen copy. Accordingly, you cannot read from the screen. Of the [enum "
+"Usage] types, this requires the least VRAM. Note that 3D rendering effects "
+"such as glow and HDR are not available when using this mode."
+msgstr ""
+
+#: doc/classes/Viewport.xml:404
+msgid ""
+"Allocates full buffers for drawing 3D scenes and all 3D effects including "
+"buffers needed for 2D scenes and effects."
+msgstr ""
+
+#: doc/classes/Viewport.xml:407
+msgid ""
+"Allocates buffers needed for drawing 3D scenes. But does not allocate "
+"buffers needed for reading from the screen and post-processing effects. "
+"Saves some VRAM."
+msgstr ""
+
+#: doc/classes/Viewport.xml:410
+msgid "Always clear the render target before drawing."
+msgstr ""
+
+#: doc/classes/Viewport.xml:413
+msgid "Never clear the render target."
+msgstr ""
+
+#: doc/classes/Viewport.xml:416
+msgid ""
+"Clear the render target next frame, then switch to [constant "
+"CLEAR_MODE_NEVER]."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:4
+msgid "Control for holding [Viewport]s."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:7
+msgid ""
+"A [Container] node that holds a [Viewport], automatically setting its size.\n"
+"[b]Note:[/b] Changing a ViewportContainer'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/ViewportContainer.xml:16
+msgid ""
+"If [code]true[/code], the viewport will be scaled to the control's size."
+msgstr ""
+
+#: doc/classes/ViewportContainer.xml:19
+msgid ""
+"Divides the 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 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/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 [Texture]. 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:22
+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/VisibilityEnabler.xml:4 doc/classes/VisibilityEnabler2D.xml:4
+msgid "Enables certain nodes only when approximately visible."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:7
+msgid ""
+"The VisibilityEnabler will disable [RigidBody] and [AnimationPlayer] nodes "
+"when they are not visible. It will only affect other nodes within the same "
+"scene as the VisibilityEnabler itself.\n"
+"If you just want to receive notifications, use [VisibilityNotifier] "
+"instead.\n"
+"[b]Note:[/b] VisibilityEnabler 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 "
+"[Area] node as a child of a [Camera] node and/or [method Vector3.dot].\n"
+"[b]Note:[/b] VisibilityEnabler will not affect nodes added after scene "
+"initialization."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:19 doc/classes/VisibilityEnabler2D.xml:19
+msgid ""
+"Returns whether the enabler identified by given [enum Enabler] constant is "
+"active."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:27 doc/classes/VisibilityEnabler2D.xml:27
+msgid ""
+"Sets active state of the enabler identified by given [enum Enabler] constant."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:33
+msgid "If [code]true[/code], [RigidBody] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:36 doc/classes/VisibilityEnabler2D.xml:39
+msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:41 doc/classes/VisibilityEnabler2D.xml:53
+msgid "This enabler will pause [AnimationPlayer] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:44
+msgid "This enabler will freeze [RigidBody] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler.xml:47 doc/classes/VisibilityEnabler2D.xml:71
+msgid "Represents the size of the [enum Enabler] enum."
+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:33
+msgid "If [code]true[/code], [RigidBody2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:36
+msgid "If [code]true[/code], [AnimatedSprite] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:42
+msgid "If [code]true[/code], [Particles2D] nodes will be paused."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:45
+msgid ""
+"If [code]true[/code], the parent's [method Node._physics_process] will be "
+"stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:48
+msgid ""
+"If [code]true[/code], the parent's [method Node._process] will be stopped."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:56
+msgid "This enabler will freeze [RigidBody2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:59
+msgid "This enabler will stop [Particles2D] nodes."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:62
+msgid "This enabler will stop the parent's _process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:65
+msgid "This enabler will stop the parent's _physics_process function."
+msgstr ""
+
+#: doc/classes/VisibilityEnabler2D.xml:68
+msgid "This enabler will stop [AnimatedSprite] nodes animations."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:4 doc/classes/VisibilityNotifier2D.xml:4
+msgid "Detects approximately when the node is visible on screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:7
+msgid ""
+"The VisibilityNotifier detects when it is visible on the screen. It also "
+"notifies when its bounding rectangle enters or exits the screen or a "
+"[Camera]'s view.\n"
+"If you want nodes to be disabled automatically when they exit the screen, "
+"use [VisibilityEnabler] instead.\n"
+"[b]Note:[/b] VisibilityNotifier 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 [Area] node as a child of a [Camera] node and/or [method Vector3.dot]."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:17
+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/VisibilityNotifier.xml:24
+msgid "The VisibilityNotifier's bounding box."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:31
+msgid "Emitted when the VisibilityNotifier enters a [Camera]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:37
+msgid "Emitted when the VisibilityNotifier exits a [Camera]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:42
+msgid "Emitted when the VisibilityNotifier enters the screen."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier.xml:47
+msgid "Emitted when the VisibilityNotifier exits the 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:42
+msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisibilityNotifier2D.xml:48
+msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:4
+msgid "Parent of all visual 3D nodes."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:7
+msgid ""
+"The [VisualInstance] is used to connect a resource to a visual "
+"representation. All visual 3D nodes inherit from the [VisualInstance]. In "
+"general, you should not access the [VisualInstance] properties directly as "
+"they are accessed and managed by the nodes that inherit from "
+"[VisualInstance]. [VisualInstance] is the node representation of the "
+"[VisualServer] instance."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:15
+msgid ""
+"Returns the [AABB] (also known as the bounding box) for this "
+"[VisualInstance]. See also [method get_transformed_aabb]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:21
+msgid ""
+"Returns the RID of the resource associated with this [VisualInstance]. For "
+"example, if the Node is a [MeshInstance], this will return the RID of the "
+"associated [Mesh]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:27
+msgid ""
+"Returns the RID of this instance. This RID is the same as the RID returned "
+"by [method VisualServer.instance_create]. This RID is needed if you want to "
+"call [VisualServer] functions directly on this [VisualInstance]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:34
+msgid ""
+"Returns [code]true[/code] when the specified layer is enabled in [member "
+"layers] and [code]false[/code] otherwise."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:40
+msgid ""
+"Returns the transformed [AABB] (also known as the bounding box) for this "
+"[VisualInstance].\n"
+"Transformed in this case means the [AABB] plus the position, rotation, and "
+"scale of the [Spatial]'s [Transform]. See also [method get_aabb]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:48
+msgid ""
+"Sets the resource that is instantiated by this [VisualInstance], which "
+"changes how the engine handles the [VisualInstance] under the hood. "
+"Equivalent to [method VisualServer.instance_set_base]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:56
+msgid "Enables a particular layer in [member layers]."
+msgstr ""
+
+#: doc/classes/VisualInstance.xml:62
+msgid ""
+"The render layer(s) this [VisualInstance] is drawn on.\n"
+"This object will only be visible for [Camera]s whose cull mask includes the "
+"render object this [VisualInstance] 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/3.4/getting_started/scripting/visual_script/"
+"index.html"
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:19
+msgid "Add a custom signal with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:26
+msgid "Add a function with the specified name to the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:36
+msgid "Add a node to a function of the VisualScript."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:45
+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:55
+msgid ""
+"Add an argument to a custom signal added with [method add_custom_signal]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:62
+msgid "Get the count of a custom signal's arguments."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:70
+msgid "Get the name of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:78
+msgid "Get the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:86
+msgid "Remove a specific custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:95
+msgid "Rename a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:104
+msgid "Change the type of a custom signal's argument."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:113
+msgid "Swap two of the arguments of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:124
+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:135
+msgid ""
+"Disconnect two data ports previously connected with [method data_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:142
+msgid "Returns the id of a function's entry point node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:149
+msgid "Returns the position of the center of the screen for a given function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:157
+msgid "Returns a node given its id and its function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:165
+msgid "Returns a node's position in pixels."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:172
+msgid "Returns the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:179
+msgid "Returns whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:186
+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:193
+msgid "Returns whether a signal exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:204
+msgid "Returns whether the specified data ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:211
+msgid "Returns whether a function exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:219
+msgid "Returns whether a node exists with the given id."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:229
+msgid "Returns whether the specified sequence ports are connected."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:236
+msgid "Returns whether a variable exists with the specified name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:243
+msgid "Remove a custom signal with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:250
+msgid "Remove a specific function and its nodes from the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:258
+msgid "Remove a specific node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:265
+msgid "Remove a variable with the given name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:273
+msgid "Change the name of a custom signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:281
+msgid "Change the name of a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:289
+msgid "Change the name of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:299
+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:310
+msgid ""
+"Disconnect two sequence ports previously connected with [method "
+"sequence_connect]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:318
+msgid "Position the center of the screen for a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:325
+msgid "Set the base type of the script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:334
+msgid "Position a node on the screen."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:342
+msgid "Change the default (initial) value of a variable."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:350
+msgid "Change whether a variable is exported."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:358
+msgid ""
+"Set a variable's info, using the same format as [method get_variable_info]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScript.xml:367
+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 [PoolByteArray]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptBuiltinFunc.xml:203
+msgid ""
+"Deserialize a [Variant] from a [PoolByteArray] 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:15
+msgid "Return the node's title."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:21
+msgid "Return the node's category."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:27
+msgid "Return the count of input value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:34
+msgid ""
+"Return the specified input port's hint. See the [enum @GlobalScope."
+"PropertyHint] hints."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:41
+msgid "Return the specified input port's hint string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:48
+msgid "Return the specified input port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:55
+msgid ""
+"Return the specified input port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:61
+msgid "Return the amount of output [b]sequence[/b] ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:68
+msgid "Return the specified [b]sequence[/b] output's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:74
+msgid "Return the amount of output value ports."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:81
+msgid ""
+"Return the specified output port's hint. See the [enum @GlobalScope."
+"PropertyHint] hints."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:88
+msgid "Return the specified output port's hint string."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:95
+msgid "Return the specified output port's name."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:102
+msgid ""
+"Return the specified output port's type. See the [enum Variant.Type] values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:108
+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:114
+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:120
+msgid "Return whether the custom node has an input [b]sequence[/b] port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:130
+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. The size needs to be predefined "
+"using [method _get_working_memory_size].\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:141
+msgid "The start mode used the first time when [method _step] is called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:144
+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:147
+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:150
+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:154
+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:159
+msgid ""
+"Hint used by [method _step] to tell that control should stop and exit the "
+"function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptCustomNode.xml:162
+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:16
+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:24
+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:31
+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/VisualScriptExpression.xml:4
+msgid "A Visual Script node that can execute a custom expression."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptExpression.xml:7
+msgid ""
+"A Visual Script node that can execute a custom expression. Values can be "
+"provided for the input and the expression result can be retrieved from the "
+"output."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunction.xml:4
+msgid "A Visual Script node representing a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunction.xml:7
+msgid ""
+"[VisualScriptFunction] represents a function header. It is the starting "
+"point for the function body and can be used to tweak the function's "
+"properties (e.g. RPC mode)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:4
+msgid "A Visual Script node for calling a function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:7
+msgid ""
+"[VisualScriptFunctionCall] is created when you add or drag and drop a "
+"function onto the Visual Script graph. It allows to tweak parameters of the "
+"call, e.g. what object the function is called on."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:15
+msgid ""
+"The script to be used when [member call_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:18
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:15
+msgid ""
+"The base type to be used when [member call_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:21
+msgid ""
+"The type to be used when [member call_mode] is set to [constant "
+"CALL_MODE_BASIC_TYPE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:24
+msgid ""
+"[code]call_mode[/code] determines the target object on which the method will "
+"be called. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:27
+msgid "The name of the function to be called."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:30
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:21
+msgid ""
+"The node path to use when [member call_mode] is set to [constant "
+"CALL_MODE_NODE_PATH]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:33
+msgid ""
+"The mode for RPC calls. See [method Node.rpc] for more details and [enum "
+"RPCCallMode] for available options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:36
+msgid ""
+"The singleton to call the method on. Used when [member call_mode] is set to "
+"[constant CALL_MODE_SINGLETON]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:39
+msgid ""
+"Number of default arguments that will be used when calling the function. "
+"Can't be higher than the number of available default arguments in the "
+"method's declaration."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:42
+msgid ""
+"If [code]false[/code], call errors (e.g. wrong number of arguments) will be "
+"ignored."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:47
+msgid "The method will be called on this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:50
+msgid "The method will be called on the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:53
+msgid ""
+"The method will be called on an instanced node with the given type and "
+"script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:56
+msgid "The method will be called on a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:59
+msgid "The method will be called on a singleton."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:62
+msgid "The method will be called locally."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:65
+msgid "The method will be called remotely."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:68
+msgid "The method will be called remotely using an unreliable protocol."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:71
+msgid "The method will be called remotely for the given peer."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionCall.xml:74
+msgid ""
+"The method will be called remotely for the given peer, using an unreliable "
+"protocol."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:4
+msgid "A Visual Script node representing a function state."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:7
+msgid ""
+"[VisualScriptFunctionState] is returned from [VisualScriptYield] and can be "
+"used to resume a paused function call."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:18
+msgid ""
+"Connects this [VisualScriptFunctionState] to a signal in the given object to "
+"automatically resume when it's emitted."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:24
+msgid "Returns whether the function state is valid."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptFunctionState.xml:31
+msgid "Resumes the function to run from the point it was yielded."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:4
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:7
+msgid "A Visual Script node returning a constant from [@GlobalScope]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptGlobalConstant.xml:15
+msgid "The constant to be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexGet.xml:4
+msgid "A Visual Script node for getting a value from an array or a dictionary."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexGet.xml:7
+msgid ""
+"[VisualScriptIndexGet] will return the value stored in an array or a "
+"dictionary under the given index."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexSet.xml:4
+msgid "A Visual Script node for setting a value in an array or a dictionary."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptIndexSet.xml:7
+msgid ""
+"[VisualScriptIndexSet] will set the value stored in an array or a dictionary "
+"under the given index to the provided new value."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:4
+msgid "A Visual Script node returning a state of an action."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:7
+msgid ""
+"[VisualScriptInputAction] can be used to check if an action is pressed or "
+"released."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:15
+msgid "Name of the action."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:18
+msgid "State of the action to check. See [enum Mode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:23
+msgid "[code]True[/code] if action is pressed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:26
+msgid "[code]True[/code] if action is released (i.e. not pressed)."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:29
+msgid "[code]True[/code] on the frame the action was pressed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptInputAction.xml:32
+msgid "[code]True[/code] on the frame the action was released."
+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 "
+"behavior of the nodes that have to be in-graph editable nodes."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:18
+msgid "Adds an input port to the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:27
+msgid "Adds an output port to the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:34
+msgid "Removes an input port from the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:41
+msgid "Removes an output port from the Visual Script node."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:49
+msgid "Sets the name of an input port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:57
+msgid "Sets the type of an input port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:65
+msgid "Sets the name of an output port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptLists.xml:73
+msgid "Sets the type of an output port."
+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:16
+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:22
+msgid "Returns the [VisualScript] instance the node is bound to."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:28
+msgid ""
+"Notify that the node's ports have changed. Usually used in conjunction with "
+"[VisualScriptCustomNode] ."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:36
+msgid "Change the default value of a given port."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptNode.xml:43
+msgid "Emitted when the available input/output ports are changed."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:4
+msgid "A Visual Script node that performs an operation on two values."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:7
+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/VisualScriptOperator.xml:19
+msgid ""
+"The operation to be performed. See [enum Variant.Operator] for available "
+"options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptOperator.xml:22
+msgid ""
+"The type of the values for this operation. See [enum Variant.Type] for "
+"available options."
+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/VisualScriptPropertyGet.xml:4
+msgid "A Visual Script node returning a value of a property from an [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:7
+msgid ""
+"[VisualScriptPropertyGet] can return a value of any property from the "
+"current object or other objects."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:15
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:18
+msgid ""
+"The script to be used when [member set_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:18
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:21
+msgid ""
+"The base type to be used when [member set_mode] is set to [constant "
+"CALL_MODE_INSTANCE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:21
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:24
+msgid ""
+"The type to be used when [member set_mode] is set to [constant "
+"CALL_MODE_BASIC_TYPE]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:24
+msgid ""
+"The indexed name of the property to retrieve. See [method Object."
+"get_indexed] for details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:27
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:30
+msgid ""
+"The node path to use when [member set_mode] is set to [constant "
+"CALL_MODE_NODE_PATH]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:30
+msgid ""
+"The name of the property to retrieve. Changing this will clear [member "
+"index]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:33
+msgid ""
+"[code]set_mode[/code] determines the target object from which the property "
+"will be retrieved. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:38
+msgid "The property will be retrieved from this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:41
+msgid "The property will be retrieved from the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:44
+msgid ""
+"The property will be retrieved from an instanced node with the given type "
+"and script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertyGet.xml:47
+msgid ""
+"The property will be retrieved from a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:4
+msgid "A Visual Script node that sets a property of an [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:7
+msgid ""
+"[VisualScriptPropertySet] can set the value of any property from the current "
+"object or other objects."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:15
+msgid ""
+"The additional operation to perform when assigning. See [enum AssignOp] for "
+"options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:27
+msgid ""
+"The indexed name of the property to set. See [method Object.set_indexed] for "
+"details."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:33
+msgid ""
+"The name of the property to set. Changing this will clear [member index]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:36
+msgid ""
+"[code]set_mode[/code] determines the target object on which the property "
+"will be set. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:41
+msgid "The property will be set on this [Object]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:44
+msgid "The property will be set on the given [Node] in the scene tree."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:47
+msgid ""
+"The property will be set on an instanced node with the given type and script."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:50
+msgid "The property will be set on a GDScript basic type (e.g. [Vector2])."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:53
+msgid "The property will be assigned regularly."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:56
+msgid ""
+"The value will be added to the property. Equivalent of doing [code]+=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:59
+msgid ""
+"The value will be subtracted from the property. Equivalent of doing [code]-"
+"=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:62
+msgid ""
+"The property will be multiplied by the value. Equivalent of doing [code]*=[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:65
+msgid ""
+"The property will be divided by the value. Equivalent of doing [code]/=[/"
+"code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:68
+msgid ""
+"A modulo operation will be performed on the property and the value. "
+"Equivalent of doing [code]%=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:71
+msgid ""
+"The property will be binarly shifted to the left by the given value. "
+"Equivalent of doing [code]<<[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:74
+msgid ""
+"The property will be binarly shifted to the right by the given value. "
+"Equivalent of doing [code]>>[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:77
+msgid ""
+"A binary [code]AND[/code] operation will be performed on the property. "
+"Equivalent of doing [code]&=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:80
+msgid ""
+"A binary [code]OR[/code] operation will be performed on the property. "
+"Equivalent of doing [code]|=[/code]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptPropertySet.xml:83
+msgid ""
+"A binary [code]XOR[/code] operation will be performed on the property. "
+"Equivalent of doing [code]^=[/code]."
+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/VisualScriptSceneTree.xml:4
+#: modules/visual_script/doc_classes/VisualScriptSceneTree.xml:7
+msgid "A Visual Script node for accessing [SceneTree] methods."
+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/VisualScriptSubCall.xml:4
+msgid "Calls a method called [code]_subcall[/code] in this object."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSubCall.xml:7
+msgid ""
+"[VisualScriptSubCall] will call method named [code]_subcall[/code] in the "
+"current script. It will fail if the method doesn't exist or the provided "
+"arguments are wrong."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptSubCall.xml:16
+msgid "Called by this node."
+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/VisualScriptTypeCast.xml:4
+msgid "A Visual Script node that casts the given value to another type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:7
+msgid ""
+"[VisualScriptTypeCast] will perform a type conversion to an [Object]-derived "
+"type."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:15
+msgid ""
+"The target script class to be converted to. If none, only the [member "
+"base_type] will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptTypeCast.xml:18
+msgid "The target type to be converted to."
+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 ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:4
+msgid "A Visual Script node used to pause a function execution."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:7
+msgid ""
+"[VisualScriptYield] will pause the function call and return "
+"[VisualScriptFunctionState], which can be used to resume the function."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:15
+msgid ""
+"The mode to use for yielding. See [enum YieldMode] for available options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:18
+msgid "The time to wait when [member mode] is set to [constant YIELD_WAIT]."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:23
+msgid "Yields during an idle frame."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:26
+msgid "Yields during a physics frame."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYield.xml:29
+msgid "Yields a function and waits the given time."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:4
+msgid "A Visual Script node yielding for a signal."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:7
+msgid ""
+"[VisualScriptYieldSignal] will pause the function execution until the "
+"provided signal is emitted."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:18
+msgid ""
+"[code]call_mode[/code] determines the target object to wait for the signal "
+"emission. See [enum CallMode] for options."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:24
+msgid "The signal name to be waited for."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:29
+msgid "A signal from this [Object] will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:32
+msgid "A signal from the given [Node] in the scene tree will be used."
+msgstr ""
+
+#: modules/visual_script/doc_classes/VisualScriptYieldSignal.xml:35
+msgid "A signal from an instanced node with the given type will be used."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:4
+msgid "Server for anything visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:7
+msgid ""
+"Server for anything visible. The visual server is the API backend for "
+"everything visible. The whole scene system mounts on it to display.\n"
+"The visual server is completely opaque, the internals are entirely "
+"implementation specific and cannot be accessed.\n"
+"The visual 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 visual server from "
+"a running game, the scenario can be accessed from the scene tree from any "
+"[Spatial] node with [method Spatial.get_world]. 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/VisualServer.xml:18
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html"
+msgstr ""
+
+#: doc/classes/VisualServer.xml:28
+msgid "Sets images to be rendered in the window margin."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:38
+msgid ""
+"Sets margin size, where black bars (or images, if [method "
+"black_bars_set_images] was used) are rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:44
+msgid ""
+"Creates a camera and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]camera_*[/code] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:53
+msgid ""
+"Sets the cull mask associated with this camera. The cull mask describes "
+"which 3D layers are rendered by this camera. Equivalent to [member Camera."
+"cull_mask]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:61
+msgid ""
+"Sets the environment used by this camera. Equivalent to [member Camera."
+"environment]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:72
+msgid ""
+"Sets camera to use frustum projection. This mode allows adjusting the "
+"[code]offset[/code] argument to create \"tilted frustum\" effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:82
+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/VisualServer.xml:92
+msgid ""
+"Sets camera to use perspective projection. Objects on the screen becomes "
+"smaller when they are far away."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:100
+msgid "Sets [Transform] of camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:108
+msgid ""
+"If [code]true[/code], preserves the horizontal aspect ratio which is "
+"equivalent to [constant Camera.KEEP_WIDTH]. If [code]false[/code], preserves "
+"the vertical aspect ratio which is equivalent to [constant Camera."
+"KEEP_HEIGHT]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:114
+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] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:125
+msgid "Adds a circle command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:133
+msgid ""
+"If ignore is [code]true[/code], the VisualServer does not perform clipping."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:145
+msgid "Adds a line command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:157
+msgid "Adds a mesh command to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:167
+msgid ""
+"Adds a [MultiMesh] to the [CanvasItem]'s draw commands. Only affects its "
+"aabb at the moment."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:184
+msgid ""
+"Adds a nine patch image to the [CanvasItem]'s draw commands.\n"
+"See [NinePatchRect] for more explanation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:195
+msgid "Adds a particle system to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:208
+msgid "Adds a polygon to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:219
+msgid ""
+"Adds a polyline, which is a line from multiple points with a width, to the "
+"[CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:232
+msgid "Adds a primitive to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:241
+msgid "Adds a rectangle to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:249
+msgid ""
+"Adds a [Transform2D] command to the [CanvasItem]'s draw commands.\n"
+"This sets the extra_matrix uniform when executed. This affects the later "
+"commands of the canvas item."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:263
+msgid "Adds a textured rect to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:277
+msgid ""
+"Adds a texture rect with region setting to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:295
+msgid "Adds a triangle array to the [CanvasItem]'s draw commands."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:302
+msgid "Clears the [CanvasItem] and removes all commands in it."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:308
+msgid ""
+"Creates a new [CanvasItem] and returns its [RID]. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]canvas_item_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:317
+msgid "Sets clipping for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:326
+msgid "Sets the [CanvasItem] to copy a rect to the backbuffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:335
+msgid "Defines a custom drawing rectangle for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:343
+msgid ""
+"Enables the use of distance fields for GUI elements that are rendering "
+"distance field based fonts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:351
+msgid "Sets [CanvasItem] to be drawn behind its parent."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:359
+msgid "Sets the index for the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:367 doc/classes/VisualServer.xml:493
+#: doc/classes/VisualServer.xml:549
+msgid ""
+"The light mask. See [LightOccluder2D] for more information on light masks."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:375
+msgid "Sets a new material to the [CanvasItem]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:383
+msgid "Sets the color that modulates the [CanvasItem] and its children."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:391
+msgid ""
+"Sets the parent for the [CanvasItem]. The parent can be another canvas item, "
+"or it can be the root canvas that is attached to the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:399
+msgid "Sets the color that modulates the [CanvasItem] without children."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:407
+msgid "Sets if [CanvasItem]'s children should be sorted by y-position."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:415
+msgid "Sets the [CanvasItem]'s [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:423
+msgid "Sets if the [CanvasItem] uses its parent's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:431
+msgid "Sets if the canvas item (including its children) is visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:439
+msgid ""
+"If this is enabled, the Z index of the parent will be added to the "
+"children's Z index."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:447
+msgid ""
+"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are "
+"drawn first)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:455
+msgid ""
+"Attaches the canvas light to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:461
+msgid ""
+"Creates a canvas light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:470
+msgid ""
+"Attaches a light occluder to the canvas. Removes it from its previous canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:476
+msgid ""
+"Creates a light occluder and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]canvas_light_ocluder_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:485
+msgid "Enables or disables light occluder."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:501
+msgid "Sets a light occluder's polygon."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:509
+msgid "Sets a light occluder's [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:517
+msgid "Sets the color for a light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:525
+msgid "Enables or disables a canvas light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:533
+msgid "Sets a canvas light's energy."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:541
+msgid "Sets a canvas light's height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:557
+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/VisualServer.xml:566
+msgid "The layer range that gets rendered with this light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:574
+msgid "The mode of the light, see [enum CanvasLightMode] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:582
+msgid ""
+"Sets the texture's scale factor of the light. Equivalent to [member Light2D."
+"texture_scale]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:590
+msgid ""
+"Sets the width of the shadow buffer, size gets scaled to the next power of "
+"two for this."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:598
+msgid "Sets the color of the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:606
+msgid "Enables or disables the canvas light's shadow."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:614
+msgid ""
+"Sets the canvas light's shadow's filter, see [enum CanvasLightShadowFilter] "
+"constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:622
+msgid "Sets the length of the shadow's gradient."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:630
+msgid "Smoothens the shadow. The lower, the smoother."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:638
+msgid ""
+"Sets texture to be used by light. Equivalent to [member Light2D.texture]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:646
+msgid ""
+"Sets the offset of the light's texture. Equivalent to [member Light2D."
+"offset]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:654
+msgid "Sets the canvas light's [Transform2D]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:663
+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/VisualServer.xml:669
+msgid ""
+"Creates a new light occluder polygon and adds it to the VisualServer. It can "
+"be accessed with the RID that is returned. This RID will be used in all "
+"[code]canvas_occluder_polygon_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:678
+msgid ""
+"Sets an occluder polygons cull mode. See [enum "
+"CanvasOccluderPolygonCullMode] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:687
+msgid "Sets the shape of the occluder polygon."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:695
+msgid "Sets the shape of the occluder polygon as lines."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:704
+msgid ""
+"A copy of the canvas item will be drawn with a local offset of the mirroring "
+"[Vector2]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:712
+msgid "Modulates all colors in the given canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:718
+msgid ""
+"Creates a directional light and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID can be used in most "
+"[code]light_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:728
+msgid ""
+"Draws a frame. [i]This method is deprecated[/i], please use [method "
+"force_draw] instead."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:734
+msgid ""
+"Creates an environment and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all "
+"[code]environment_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:747
+msgid ""
+"Sets the values to be used with the \"Adjustment\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:757
+msgid "Sets the ambient light parameters. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:765
+msgid ""
+"Sets the [i]BGMode[/i] of the environment. Equivalent to [member Environment."
+"background_mode]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:773
+msgid ""
+"Color displayed for clear areas of the scene (if using Custom color or Color"
+"+Sky background modes)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:781
+msgid "Sets the intensity of the background color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:789
+msgid "Sets the maximum layer to use if using Canvas background mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:801
+msgid ""
+"Sets the values to be used with the \"DoF Far Blur\" post-process effect. "
+"See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:813
+msgid ""
+"Sets the values to be used with the \"DoF Near Blur\" post-process effect. "
+"See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:824
+msgid ""
+"Sets the variables to be used with the scene fog. See [Environment] for more "
+"details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:837
+msgid ""
+"Sets the variables to be used with the fog depth effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:848
+msgid ""
+"Sets the variables to be used with the fog height effect. See [Environment] "
+"for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:866
+msgid ""
+"Sets the variables to be used with the \"glow\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:874
+msgid ""
+"Sets the [Sky] to be used as the environment's background when using "
+"[i]BGMode[/i] sky. Equivalent to [member Environment.background_sky]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:882
+msgid ""
+"Sets a custom field of view for the background [Sky]. Equivalent to [member "
+"Environment.background_sky_custom_fov]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:890
+msgid ""
+"Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent "
+"to [member Environment.background_sky_orientation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:909
+msgid ""
+"Sets the variables to be used with the \"Screen Space Ambient Occlusion "
+"(SSAO)\" post-process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:922
+msgid ""
+"Sets the variables to be used with the \"screen space reflections\" post-"
+"process effect. See [Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:937
+msgid ""
+"Sets the variables to be used with the \"tonemap\" post-process effect. See "
+"[Environment] for more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:943
+msgid "Removes buffers and clears testcubes."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:951
+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/VisualServer.xml:957
+msgid "Synchronizes threads."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:964
+msgid "Tries to free an object in the VisualServer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:971
+msgid "Returns a certain information, see [enum RenderInfo] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:977
+msgid "Returns the id of the test cube. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:983
+msgid "Returns the id of the test texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:989
+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/VisualServer.xml:996
+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/VisualServer.xml:1003
+msgid "Returns the id of a white texture. Creates one if none exists."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1009
+msgid ""
+"Creates a GI probe and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]gi_probe_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"To place in a scene, attach this GI probe to an instance using [method "
+"instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1018
+msgid ""
+"Returns the bias value for the GI probe. Bias is used to avoid self "
+"occlusion. Equivalent to [member GIProbeData.bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1025
+msgid ""
+"Returns the axis-aligned bounding box that covers the full extent of the GI "
+"probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1032
+msgid "Returns the cell size set by [method gi_probe_set_cell_size]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1039
+msgid "Returns the data used by the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1046
+msgid ""
+"Returns the dynamic range set for this GI probe. Equivalent to [member "
+"GIProbe.dynamic_range]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1053
+msgid ""
+"Returns the energy multiplier for this GI probe. Equivalent to [member "
+"GIProbe.energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1060
+msgid ""
+"Returns the normal bias for this GI probe. Equivalent to [member GIProbe."
+"normal_bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1067
+msgid ""
+"Returns the propagation value for this GI probe. Equivalent to [member "
+"GIProbe.propagation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1074
+msgid "Returns the Transform set by [method gi_probe_set_to_cell_xform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1081
+msgid ""
+"Returns [code]true[/code] if the GI probe data associated with this GI probe "
+"is compressed. Equivalent to [member GIProbe.compress]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1088
+msgid ""
+"Returns [code]true[/code] if the GI probe is set to interior, meaning it "
+"does not account for sky light. Equivalent to [member GIProbe.interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1096
+msgid ""
+"Sets the bias value to avoid self-occlusion. Equivalent to [member GIProbe."
+"bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1104
+msgid ""
+"Sets the axis-aligned bounding box that covers the extent of the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1112
+msgid "Sets the size of individual cells within the GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1120
+msgid ""
+"Sets the compression setting for the GI probe data. Compressed data will "
+"take up less space but may look worse. Equivalent to [member GIProbe."
+"compress]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1128
+msgid ""
+"Sets the data to be used in the GI probe for lighting calculations. Normally "
+"this is created and called internally within the [GIProbe] node. You should "
+"not try to set this yourself."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1136
+msgid ""
+"Sets the dynamic range of the GI probe. Dynamic range sets the limit for how "
+"bright lights can be. A smaller range captures greater detail but limits how "
+"bright lights can be. Equivalent to [member GIProbe.dynamic_range]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1144
+msgid ""
+"Sets the energy multiplier for this GI probe. A higher energy makes the "
+"indirect light from the GI probe brighter. Equivalent to [member GIProbe."
+"energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1152
+msgid ""
+"Sets the interior value of this GI probe. A GI probe set to interior does "
+"not include the sky when calculating lighting. Equivalent to [member GIProbe."
+"interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1160
+msgid ""
+"Sets the normal bias for this GI probe. Normal bias behaves similar to the "
+"other form of bias and may help reduce self-occlusion. Equivalent to [member "
+"GIProbe.normal_bias]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1168
+msgid ""
+"Sets the propagation of light within this GI probe. Equivalent to [member "
+"GIProbe.propagation]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1176
+msgid "Sets the to cell [Transform] for this GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1182
+msgid ""
+"Returns [code]true[/code] if changes have been made to the VisualServer's "
+"data. [method draw] is usually called if this happens."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1189
+msgid "Not yet implemented. Always returns [code]false[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1196
+msgid ""
+"Returns [code]true[/code] if the OS supports a certain feature. Features "
+"might be [code]s3tc[/code], [code]etc[/code], [code]etc2[/code], "
+"[code]pvrtc[/code] and [code]skinning_fallback[/code].\n"
+"When rendering with GLES2, returns [code]true[/code] with "
+"[code]skinning_fallback[/code] in case the hardware doesn't support the "
+"default GPU skinning process."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1206
+msgid ""
+"Sets up [ImmediateGeometry] internals to prepare for drawing. Equivalent to "
+"[method ImmediateGeometry.begin]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1213
+msgid ""
+"Clears everything that was set up between [method immediate_begin] and "
+"[method immediate_end]. Equivalent to [method ImmediateGeometry.clear]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1221
+msgid ""
+"Sets the color to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1227
+msgid ""
+"Creates an immediate geometry and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]immediate_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1236
+msgid ""
+"Ends drawing the [ImmediateGeometry] and displays it. Equivalent to [method "
+"ImmediateGeometry.end]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1243
+msgid "Returns the material assigned to the [ImmediateGeometry]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1251
+msgid ""
+"Sets the normal to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_normal]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1259
+msgid "Sets the material to be used to draw the [ImmediateGeometry]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1267
+msgid ""
+"Sets the tangent to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_tangent]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1275
+msgid ""
+"Sets the UV to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_uv]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1283
+msgid ""
+"Sets the UV2 to be used with next vertex. Equivalent to [method "
+"ImmediateGeometry.set_uv2]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1291
+msgid ""
+"Adds the next vertex using the information provided in advance. Equivalent "
+"to [method ImmediateGeometry.add_vertex]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1299
+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 ImmediateGeometry.add_vertex]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1305
+msgid ""
+"Initializes the visual 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/VisualServer.xml:1313
+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/VisualServer.xml:1321
+msgid ""
+"Attaches a skeleton to an instance. Removes the previous skeleton from the "
+"instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1327
+msgid ""
+"Creates a visual instance and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]instance_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1337
+msgid ""
+"Creates a visual instance, adds it to the VisualServer, 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] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1346 doc/classes/VisualServer.xml:1365
+#: doc/classes/VisualServer.xml:1592 doc/classes/VisualServer.xml:2673
+msgid "Not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1354
+msgid ""
+"Sets the shadow casting setting to one of [enum ShadowCastingSetting]. "
+"Equivalent to [member GeometryInstance.cast_shadow]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1374
+msgid ""
+"Sets the flag for a given [enum InstanceFlags]. See [enum InstanceFlags] for "
+"more details."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1382
+msgid ""
+"Sets a material that will override the material for all surfaces on the mesh "
+"associated with this instance. Equivalent to [member GeometryInstance."
+"material_override]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1390
+msgid ""
+"Sets the base of the instance. A base can be any of the 3D objects that are "
+"created in the VisualServer that can be displayed. For example, any of the "
+"light types, mesh, multimesh, immediate geometry, particle system, "
+"reflection probe, lightmap capture, 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/VisualServer.xml:1399
+msgid "Sets the weight for a given blend shape associated with this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1407
+msgid ""
+"Sets a custom AABB to use when culling objects from the view frustum. "
+"Equivalent to [method GeometryInstance.set_custom_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1415
+msgid "Function not implemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1423
+msgid ""
+"Sets a margin to increase the size of the AABB when culling objects from the "
+"view frustum. This allows you to avoid culling objects that fall outside the "
+"view frustum. Equivalent to [member GeometryInstance.extra_cull_margin]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1431
+msgid ""
+"Sets the render layers that this instance will be drawn to. Equivalent to "
+"[member VisualInstance.layers]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1439
+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/VisualServer.xml:1448
+msgid ""
+"Sets the material of a specific surface. Equivalent to [method MeshInstance."
+"set_surface_material]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1456
+msgid ""
+"Sets the world space transform of the instance. Equivalent to [member "
+"Spatial.transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1467
+msgid "Sets the lightmap to use with this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1475
+msgid ""
+"Sets whether an instance is drawn or not. Equivalent to [member Spatial."
+"visible]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1483
+msgid ""
+"Returns an array of object IDs intersecting with the provided AABB. Only "
+"visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1492
+msgid ""
+"Returns an array of object IDs intersecting with the provided convex shape. "
+"Only visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1502
+msgid ""
+"Returns an array of object IDs intersecting with the provided 3D ray. Only "
+"visual 3D nodes are considered, such as [MeshInstance] or "
+"[DirectionalLight]. Use [method @GDScript.instance_from_id] to obtain the "
+"actual nodes. A scenario RID must be provided, which is available in the "
+"[World] 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/VisualServer.xml:1511
+msgid ""
+"If [code]true[/code], this directional light will blend between shadow map "
+"splits resulting in a smoother transition between them. Equivalent to "
+"[member DirectionalLight.directional_shadow_blend_splits]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1519
+msgid ""
+"Sets the shadow depth range mode for this directional light. Equivalent to "
+"[member DirectionalLight.directional_shadow_depth_range]. See [enum "
+"LightDirectionalShadowDepthRangeMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1527
+msgid ""
+"Sets the shadow mode for this directional light. Equivalent to [member "
+"DirectionalLight.directional_shadow_mode]. See [enum "
+"LightDirectionalShadowMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1535
+msgid ""
+"Sets whether to use vertical or horizontal detail for this omni light. This "
+"can be used to alleviate artifacts in the shadow map. Equivalent to [member "
+"OmniLight.omni_shadow_detail]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1543
+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 "
+"OmniLight.omni_shadow_mode]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1551
+msgid ""
+"Sets the bake mode for this light, see [enum LightBakeMode] for options. The "
+"bake mode affects how the light will be baked in [BakedLightmap]s and "
+"[GIProbe]s."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1559
+msgid "Sets the color of the light. Equivalent to [member Light.light_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1567
+msgid ""
+"Sets the cull mask for this Light. Lights only affect objects in the "
+"selected layers. Equivalent to [member Light.light_cull_mask]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1575
+msgid ""
+"If [code]true[/code], light will subtract light instead of adding light. "
+"Equivalent to [member Light.light_negative]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1584
+msgid ""
+"Sets the specified light parameter. See [enum LightParam] for options. "
+"Equivalent to [method Light.set_param]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1600
+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 Light.shadow_reverse_cull_face]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1608
+msgid ""
+"If [code]true[/code], light will cast shadows. Equivalent to [member Light."
+"shadow_enabled]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1616
+msgid ""
+"Sets the color of the shadow cast by the light. Equivalent to [member Light."
+"shadow_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1624
+msgid ""
+"Sets whether GI probes capture light information from this light. "
+"[i]Deprecated method.[/i] Use [method light_set_bake_mode] instead. This "
+"method is only kept for compatibility reasons and calls [method "
+"light_set_bake_mode] internally, setting the bake mode to [constant "
+"LIGHT_BAKE_DISABLED] or [constant LIGHT_BAKE_INDIRECT] depending on the "
+"given parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1630
+msgid ""
+"Creates a lightmap capture and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]lightmap_capture_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"To place in a scene, attach this lightmap capture to an instance using "
+"[method instance_set_base] using the returned RID."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1639
+msgid "Returns the size of the lightmap capture area."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1646
+msgid "Returns the energy multiplier used by the lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1653
+msgid "Returns the octree used by the lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1660
+msgid ""
+"Returns the cell subdivision amount used by this lightmap capture's octree."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1667
+msgid "Returns the cell transform for this lightmap capture's octree."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1674
+msgid "Returns [code]true[/code] if capture is in \"interior\" mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1682
+msgid ""
+"Sets the size of the area covered by the lightmap capture. Equivalent to "
+"[member BakedLightmapData.bounds]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1690
+msgid ""
+"Sets the energy multiplier for this lightmap capture. Equivalent to [member "
+"BakedLightmapData.energy]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1698
+msgid ""
+"Sets the \"interior\" mode for this lightmap capture. Equivalent to [member "
+"BakedLightmapData.interior]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1706
+msgid ""
+"Sets the octree to be used by this lightmap capture. This function is "
+"normally used by the [BakedLightmap] node. Equivalent to [member "
+"BakedLightmapData.octree]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1714
+msgid ""
+"Sets the subdivision level of this lightmap capture's octree. Equivalent to "
+"[member BakedLightmapData.cell_subdiv]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1722
+msgid ""
+"Sets the octree cell transform for this lightmap capture's octree. "
+"Equivalent to [member BakedLightmapData.cell_space_transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1731
+msgid ""
+"Returns a mesh of a sphere with the given amount of horizontal and vertical "
+"subdivisions."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1737
+msgid ""
+"Creates an empty material and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]material_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1746
+msgid "Returns the value of a certain material's parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1754
+msgid ""
+"Returns the default value for the param if available. Otherwise returns an "
+"empty [Variant]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1761
+msgid ""
+"Returns the shader of a certain material's shader. Returns an empty RID if "
+"the material doesn't have a shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1769
+msgid "Sets a material's line width."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1777
+msgid "Sets an object's next material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1786
+msgid "Sets a material's parameter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1794
+msgid "Sets a material's render priority."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1802
+msgid "Sets a shader material's shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1813
+msgid ""
+"Adds a surface generated from the Arrays to a mesh. See [enum PrimitiveType] "
+"constants for types."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1820
+msgid "Removes all surfaces from a mesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1826
+msgid ""
+"Creates a new mesh and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]mesh_*[/code] "
+"VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:1835
+msgid "Returns a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1842
+msgid "Returns a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1849
+msgid "Returns a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1856
+msgid "Returns a mesh's number of surfaces."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1864
+msgid "Removes a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1872
+msgid "Sets a mesh's blend shape count."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1880
+msgid "Sets a mesh's blend shape mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1888
+msgid "Sets a mesh's custom aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1896
+msgid "Returns a mesh's surface's aabb."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1904
+msgid "Returns a mesh's surface's vertex buffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1912
+msgid "Returns a mesh's surface's amount of indices."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1920
+msgid "Returns a mesh's surface's amount of vertices."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1928
+msgid "Returns a mesh's surface's buffer arrays."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1936
+msgid "Returns a mesh's surface's arrays for blend shapes."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1944
+msgid "Returns the format of a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1954
+msgid "Function is unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1971
+msgid "Returns a mesh's surface's index buffer."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1979
+msgid "Returns a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1987
+msgid "Returns the primitive type of a mesh's surface."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:1995
+msgid "Returns the aabb of a mesh's surface's skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2004
+msgid "Sets a mesh's surface's material."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2014
+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/VisualServer.xml:2025
+msgid ""
+"Allocates space for the multimesh data. Format parameters determine how the "
+"data will be stored by OpenGL. See [enum MultimeshTransformFormat], [enum "
+"MultimeshColorFormat], and [enum MultimeshCustomDataFormat] for usage. "
+"Equivalent to [member MultiMesh.instance_count]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2031
+msgid ""
+"Creates a new multimesh on the VisualServer and returns an [RID] handle. "
+"This RID will be used in all [code]multimesh_*[/code] VisualServer "
+"functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2040
+msgid ""
+"Calculates and returns the axis-aligned bounding box that encloses all "
+"instances within the multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2047
+msgid "Returns the number of instances allocated for this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2054
+msgid ""
+"Returns the RID of the mesh that will be used in drawing this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2061
+msgid "Returns the number of visible instances for this multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2069
+msgid "Returns the color by which the specified instance will be modulated."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2077
+msgid "Returns the custom data associated with the specified instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2085
+msgid "Returns the [Transform] of the specified instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2093
+msgid ""
+"Returns the [Transform2D] of the specified instance. For use when the "
+"multimesh is set to use 2D transforms."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2102
+msgid ""
+"Sets the color by which this instance will be modulated. Equivalent to "
+"[method MultiMesh.set_instance_color]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2111
+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/VisualServer.xml:2120
+msgid ""
+"Sets the [Transform] for this instance. Equivalent to [method MultiMesh."
+"set_instance_transform]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2129
+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/VisualServer.xml:2137
+msgid ""
+"Sets all data related to the instances in one go. This is especially useful "
+"when loading the data from disk or preparing the data from GDNative.\n"
+"\n"
+"All data is packed in one large float array. An array may look like this: "
+"Transform for instance 1, color data for instance 1, custom data for "
+"instance 1, transform for instance 2, color data for instance 2, etc.\n"
+"\n"
+"[Transform] is stored as 12 floats, [Transform2D] is stored as 8 floats, "
+"[code]COLOR_8BIT[/code] / [code]CUSTOM_DATA_8BIT[/code] is stored as 1 float "
+"(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/"
+"code] is stored as 4 floats."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2149
+msgid ""
+"Sets the mesh to be drawn by the multimesh. Equivalent to [member MultiMesh."
+"mesh]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2157
+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/VisualServer.xml:2163
+msgid ""
+"Creates a new omni light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2171
+msgid ""
+"Creates a particle system and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]particles_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2180
+msgid ""
+"Calculates and returns the axis-aligned bounding box that contains all the "
+"particles. Equivalent to [method Particles.capture_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2187
+msgid "Returns [code]true[/code] if particles are currently set to emitting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2194
+msgid ""
+"Returns [code]true[/code] if particles are not emitting and particles are "
+"set to inactive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2201
+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/VisualServer.xml:2208
+msgid ""
+"Reset the particles on the next update. Equivalent to [method Particles."
+"restart]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2216
+msgid ""
+"Sets the number of particles to be drawn and allocates the memory for them. "
+"Equivalent to [member Particles.amount]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2224
+msgid ""
+"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
+"to [member Particles.visibility_aabb]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2232
+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 Particles.draw_order]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2241
+msgid ""
+"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
+"Particles.draw_pass_1], [member Particles.draw_pass_2], [member Particles."
+"draw_pass_3], and [member Particles.draw_pass_4]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2249
+msgid ""
+"Sets the number of draw passes to use. Equivalent to [member Particles."
+"draw_passes]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2257
+msgid ""
+"Sets the [Transform] that will be used by the particles when they first emit."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2265
+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 Particles.emitting]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2273
+msgid ""
+"Sets the explosiveness ratio. Equivalent to [member Particles.explosiveness]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2281
+msgid ""
+"Sets the frame rate that the particle system rendering will be fixed to. "
+"Equivalent to [member Particles.fixed_fps]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2289
+msgid ""
+"If [code]true[/code], uses fractional delta which smooths the movement of "
+"the particles. Equivalent to [member Particles.fract_delta]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2297
+msgid ""
+"Sets the lifetime of each particle in the system. Equivalent to [member "
+"Particles.lifetime]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2305
+msgid ""
+"If [code]true[/code], particles will emit once and then stop. Equivalent to "
+"[member Particles.one_shot]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2313
+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 Particles.preprocess]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2321
+msgid ""
+"Sets the material for processing the particles.\n"
+"[b]Note:[/b] This is not the material used to draw the materials. Equivalent "
+"to [member Particles.process_material]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2330
+msgid ""
+"Sets the emission randomness ratio. This randomizes the emission of "
+"particles within their phase. Equivalent to [member Particles.randomness]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2338
+msgid ""
+"Sets the speed scale of the particle system. Equivalent to [member Particles."
+"speed_scale]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2346
+msgid ""
+"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
+"they use global coordinates. Equivalent to [member Particles.local_coords]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2352
+msgid ""
+"Creates a reflection probe and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]reflection_probe_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2362
+msgid ""
+"If [code]true[/code], reflections will ignore sky contribution. Equivalent "
+"to [member ReflectionProbe.interior_enable]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2370
+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/VisualServer.xml:2378
+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/VisualServer.xml:2386
+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/VisualServer.xml:2394
+msgid ""
+"Sets the size of the area that the reflection probe will capture. Equivalent "
+"to [member ReflectionProbe.extents]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2402
+msgid ""
+"Sets the intensity of the reflection probe. Intensity modulates the strength "
+"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2410
+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/VisualServer.xml:2418
+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/VisualServer.xml:2426
+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/VisualServer.xml:2434
+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/VisualServer.xml:2442
+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/VisualServer.xml:2450
+msgid ""
+"Sets how often the reflection probe updates. Can either be once or every "
+"frame. See [enum ReflectionProbeUpdateMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2459
+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/VisualServer.xml:2466
+msgid ""
+"Creates a scenario and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]scenario_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method.\n"
+"The scenario is the 3D world that all the visual instances exist in."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2476
+msgid ""
+"Sets the [enum ScenarioDebugMode] for this scenario. See [enum "
+"ScenarioDebugMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2484
+msgid "Sets the environment that will be used with this scenario."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2492
+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/VisualServer.xml:2501
+msgid ""
+"Sets the size of the reflection atlas shared by all reflection probes in "
+"this scenario."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2511
+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/VisualServer.xml:2518
+msgid ""
+"If [code]true[/code], the engine will generate wireframes for use with the "
+"wireframe debug mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2525
+msgid ""
+"Sets the default clear color which is used when a specific clear color has "
+"not been selected."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2532
+msgid ""
+"Sets the scale to apply to the passage of time for the shaders' [code]TIME[/"
+"code] builtin.\n"
+"The default value is [code]1.0[/code], which means [code]TIME[/code] will "
+"count the real time as it goes by, without narrowing or stretching it."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2540
+msgid "Enables or disables occlusion culling."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2546
+msgid ""
+"Creates an empty shader and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]shader_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2554
+msgid "Returns a shader's code."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2562
+msgid "Returns a default texture from a shader searched by name."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2569
+msgid "Returns the parameters of a shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2577
+msgid "Sets a shader's code."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2586
+msgid "Sets a shader's default texture. Overwrites the texture given by name."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2595
+msgid "Allocates the GPU buffers for this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2603
+msgid "Returns the [Transform] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2611
+msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2620
+msgid "Sets the [Transform] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2629
+msgid "Sets the [Transform2D] for a specific bone of this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2635
+msgid ""
+"Creates a skeleton and adds it to the VisualServer. It can be accessed with "
+"the RID that is returned. This RID will be used in all [code]skeleton_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2643
+msgid "Returns the number of bones allocated for this skeleton."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2649
+msgid ""
+"Creates an empty sky and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]sky_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2659
+msgid "Sets a sky's texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2665
+msgid ""
+"Creates a spot light and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID can be used in most [code]light_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer'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/VisualServer.xml:2686
+msgid "Allocates the GPU memory for the texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2694
+msgid "Binds the texture to a texture slot."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2700
+msgid ""
+"Creates an empty texture and adds it to the VisualServer. It can be accessed "
+"with the RID that is returned. This RID will be used in all [code]texture_*[/"
+"code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2709
+msgid ""
+"Creates a texture, allocates the space for an image, and fills in the image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2715
+msgid "Returns a list of all the textures and their information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2723
+msgid ""
+"Returns a copy of a texture's image unless it's a CubeMap, in which case it "
+"returns the [RID] of the image at one of the cubes sides."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2730
+msgid "Returns the depth of the texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2737
+msgid "Returns the flags of a texture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2744
+msgid "Returns the format of the texture's image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2751
+msgid "Returns the texture's height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2758
+msgid "Returns the texture's path."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2765
+msgid "Returns the opengl id of the texture's image."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2772
+msgid "Returns the type of the texture, can be any of the [enum TextureType]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2779
+msgid "Returns the texture's width."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2788
+msgid ""
+"Sets the texture's image data. If it's a CubeMap, it sets the image data at "
+"a cube side."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2804
+msgid ""
+"Sets a part of the data for a texture. Warning: this function calls the "
+"underlying graphics API directly and may corrupt your texture if used "
+"improperly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2812
+msgid "Sets the texture's flags. See [enum TextureFlags] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2820
+msgid "Sets the texture's path."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2827
+msgid ""
+"If [code]true[/code], sets internal processes to shrink all image data to "
+"half the size."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2844
+msgid ""
+"If [code]true[/code], the image will be stored in the texture's images array "
+"if overwritten."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2852
+msgid "Sets a viewport's camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2860
+msgid "Sets a viewport's canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2869
+msgid ""
+"Copies viewport to a region of the screen specified by [code]rect[/code]. If "
+"[member Viewport.render_direct_to_screen] is [code]true[/code], then "
+"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/VisualServer.xml:2882
+msgid ""
+"Creates an empty viewport and adds it to the VisualServer. It can be "
+"accessed with the RID that is returned. This RID will be used in all "
+"[code]viewport_*[/code] VisualServer functions.\n"
+"Once finished with your RID, you will want to free the RID using the "
+"VisualServer's [method free_rid] static method."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2890
+msgid "Detaches the viewport from the screen."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2898
+msgid ""
+"Returns a viewport's render information. For options, see the [enum "
+"ViewportRenderInfo] constants."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2905
+msgid "Returns the viewport's last rendered frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2913
+msgid "Detaches a viewport from a canvas and vice versa."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2921
+msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2931
+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/VisualServer.xml:2941
+msgid "Sets the transformation of a viewport's canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2949
+msgid ""
+"Sets the clear mode of a viewport. See [enum ViewportClearMode] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2957
+msgid ""
+"Sets the debug draw mode of a viewport. See [enum ViewportDebugDraw] for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2965
+msgid "If [code]true[/code], a viewport's 3D rendering is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2973
+msgid ""
+"If [code]true[/code], rendering of a viewport's environment is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2981
+msgid "Sets the viewport's global transformation matrix."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2989
+msgid "If [code]true[/code], the viewport renders to hdr."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:2997
+msgid "If [code]true[/code], the viewport's canvas is not rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3005
+msgid "Currently unimplemented in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3013
+msgid "Sets the anti-aliasing mode. See [enum ViewportMSAA] for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3021
+msgid "Sets the viewport's parent to another viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3029
+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/VisualServer.xml:3037
+msgid ""
+"Sets a viewport's scenario.\n"
+"The scenario contains information about the [enum ScenarioDebugMode], "
+"environment information, reflection atlas etc."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3047
+msgid "Sets the shadow atlas quadrant's subdivision."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3055
+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/VisualServer.xml:3063
+msgid ""
+"Sets the sharpening [code]intensity[/code] for the [code]viewport[/code]. If "
+"set to a value greater than [code]0.0[/code], contrast-adaptive sharpening "
+"will be applied to the 3D viewport. This has a low performance cost and can "
+"be used to recover some of the sharpness lost from using FXAA. Values around "
+"[code]0.5[/code] generally give the best results. See also [method "
+"viewport_set_use_fxaa]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3072
+msgid "Sets the viewport's width and height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3080
+msgid ""
+"If [code]true[/code], the viewport renders its background as transparent."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3088
+msgid ""
+"Sets when the viewport should be updated. See [enum ViewportUpdateMode] "
+"constants for options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3096
+msgid ""
+"Sets the viewport's 2D/3D mode. See [enum ViewportUsage] constants for "
+"options."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3104
+msgid ""
+"If [code]true[/code], the viewport uses augmented or virtual reality "
+"technologies. See [ARVRInterface]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3112
+msgid ""
+"If [code]true[/code], uses a fast post-processing filter to make banding "
+"significantly less visible. In some cases, debanding may introduce a "
+"slightly noticeable dithering pattern. It's recommended to enable debanding "
+"only when actually needed since the dithering pattern will make lossless-"
+"compressed screenshots larger.\n"
+"[b]Note:[/b] Only available on the GLES3 backend. [member Viewport.hdr] must "
+"also be [code]true[/code] for debanding to be effective."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3121
+msgid ""
+"Enables fast approximate antialiasing for this viewport. 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. Some of the lost sharpness can be "
+"recovered by enabling contrast-adaptive sharpening (see [method "
+"viewport_set_sharpen_intensity])."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3129
+msgid "If [code]true[/code], the viewport's rendering is flipped vertically."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3135
+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/VisualServer.xml:3141
+msgid ""
+"Emitted at the end of the frame, after the VisualServer has finished "
+"updating all the Viewports."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3146
+msgid ""
+"Emitted at the beginning of the frame, before the VisualServer updates all "
+"the Viewports."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3152
+msgid "Marks an error that shows that the index array is empty."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3155
+msgid "Number of weights/bones per vertex."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3158
+msgid "The minimum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3161
+msgid "The maximum Z-layer for canvas items."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3164
+msgid ""
+"Max number of glow levels that can be used with glow post-process effect."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3167
+msgid "Unused enum in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3170
+msgid "The minimum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3173
+msgid "The maximum renderpriority of all materials."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3176
+msgid "Marks the left side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3179
+msgid "Marks the right side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3182
+msgid "Marks the bottom side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3185
+msgid "Marks the top side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3188
+msgid "Marks the front side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3191
+msgid "Marks the back side of a cubemap."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3194
+msgid "Normal texture with 2 dimensions, width and height."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3197
+msgid ""
+"Texture made up of six faces, can be looked up with a [code]vec3[/code] in "
+"shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3200
+msgid "An array of 2-dimensional textures."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3203
+msgid "A 3-dimensional texture with width, height, and depth."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3209
+msgid "Repeats the texture (instead of clamp to edge)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3222
+msgid "Repeats the texture with alternate sections mirrored."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3228
+msgid ""
+"Default flags. [constant TEXTURE_FLAG_MIPMAPS], [constant "
+"TEXTURE_FLAG_REPEAT] and [constant TEXTURE_FLAG_FILTER] are enabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3231
+msgid "Shader is a 3D shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3234
+msgid "Shader is a 2D shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3237
+msgid "Shader is a particle shader."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3240
+msgid "Represents the size of the [enum ShaderMode] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3243
+msgid "Array is a vertex array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3246
+msgid "Array is a normal array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3249
+msgid "Array is a tangent array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3252
+msgid "Array is a color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3255
+msgid "Array is an UV coordinates array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3258
+msgid "Array is an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3261
+msgid "Array contains bone information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3264
+msgid "Array is weight information."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3267
+msgid "Array is index array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3273
+msgid "Flag used to mark a vertex array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3276
+msgid "Flag used to mark a normal array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3279
+msgid "Flag used to mark a tangent array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3282
+msgid "Flag used to mark a color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3285
+msgid "Flag used to mark an UV coordinates array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3288
+msgid ""
+"Flag used to mark an UV coordinates array for the second UV coordinates."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3291
+msgid "Flag used to mark a bone information array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3294
+msgid "Flag used to mark a weights array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3297
+msgid "Flag used to mark an index array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3336
+msgid ""
+"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
+"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
+"ARRAY_COMPRESS_TEX_UV], [constant ARRAY_COMPRESS_TEX_UV2], [constant "
+"ARRAY_COMPRESS_WEIGHTS], and [constant "
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3339
+msgid "Primitive to draw consists of points."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3342
+msgid "Primitive to draw consists of lines."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3345
+msgid "Primitive to draw consists of a line strip from start to end."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3348
+msgid ""
+"Primitive to draw consists of a line loop (a line strip with a line between "
+"the last and the first vertex)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3351
+msgid "Primitive to draw consists of triangles."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3354
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 3 vertices are "
+"always combined to make a triangle)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3357
+msgid ""
+"Primitive to draw consists of a triangle strip (the last 2 vertices are "
+"always combined with the first to make a triangle)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3360
+msgid "Represents the size of the [enum PrimitiveType] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3369
+msgid "Is a directional (sun) light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3372
+msgid "Is an omni light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3375
+msgid "Is a spot light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3378
+msgid "The light's energy."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3381
+msgid "Secondary multiplier used with indirect light (light bounces)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3384
+msgid ""
+"The light's size, currently only used for soft shadows in baked lightmaps."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3387
+msgid "The light's influence on specularity."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3390
+msgid "The light's range."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3393
+msgid "The light's attenuation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3396
+msgid "The spotlight's angle."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3399
+msgid "The spotlight's attenuation."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3402
+msgid "Scales the shadow color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3405
+msgid "Max distance that shadows will be rendered."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3408
+msgid "Proportion of shadow atlas occupied by the first split."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3411
+msgid "Proportion of shadow atlas occupied by the second split."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3414
+msgid ""
+"Proportion of shadow atlas occupied by the third split. The fourth split "
+"occupies the rest."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3417
+msgid ""
+"Normal bias used to offset shadow lookup by object normal. Can be used to "
+"fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3420
+msgid "Bias the shadow lookup to fix self-shadowing artifacts."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3423
+msgid ""
+"Increases bias on further splits to fix self-shadowing that only occurs far "
+"away from the camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3426
+msgid "Represents the size of the [enum LightParam] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3435
+msgid "Use a dual paraboloid shadow map for omni lights."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3438
+msgid ""
+"Use a cubemap shadow map for omni lights. Slower but better quality than "
+"dual paraboloid."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3441
+msgid "Use more detail vertically when computing shadow map."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3444
+msgid "Use more detail horizontally when computing shadow map."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3447
+msgid "Use orthogonal shadow projection for directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3450
+msgid "Use 2 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3453
+msgid "Use 4 splits for shadow projection when using directional light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3456
+msgid ""
+"Keeps shadows stable as camera moves but has lower effective resolution."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3459
+msgid ""
+"Optimize use of shadow maps, increasing the effective resolution. But may "
+"result in shadows moving or flickering slightly."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3462
+msgid "Do not update the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3465
+msgid "Update the viewport once then set to disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3468
+msgid "Update the viewport whenever it is visible."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3471
+msgid "Always update the viewport."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3474
+msgid "The viewport is always cleared before drawing."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3477
+msgid "The viewport is never cleared before drawing."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3480
+msgid ""
+"The viewport is cleared once, then the clear mode is set to [constant "
+"VIEWPORT_CLEAR_NEVER]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3483
+msgid "Multisample antialiasing is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3486
+msgid "Multisample antialiasing is set to 2×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3489
+msgid "Multisample antialiasing is set to 4×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3492
+msgid "Multisample antialiasing is set to 8×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3495
+msgid "Multisample antialiasing is set to 16×."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3498
+msgid ""
+"Multisample antialiasing is set to 2× on external texture. Special mode for "
+"GLES2 Android VR (Oculus Quest and Go)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3501
+msgid ""
+"Multisample antialiasing is set to 4× on external texture. Special mode for "
+"GLES2 Android VR (Oculus Quest and Go)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3504
+msgid "The Viewport does not render 3D but samples."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3507
+msgid "The Viewport does not render 3D and does not sample."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3510
+msgid "The Viewport renders 3D with effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3513
+msgid "The Viewport renders 3D but without effects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3516
+msgid "Number of objects drawn in a single frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3519
+msgid "Number of vertices drawn in a single frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3522
+msgid "Number of material changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3525
+msgid "Number of shader changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3528
+msgid "Number of surface changes during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3531
+msgid "Number of draw calls during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3534
+msgid "Number of 2d items drawn this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3537
+msgid "Number of 2d draw calls during this frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3540
+msgid "Represents the size of the [enum ViewportRenderInfo] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3543
+msgid "Debug draw is disabled. Default setting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3546
+msgid "Debug draw sets objects to unshaded."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3549
+msgid "Overwrites clear color to [code](0,0,0,0)[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3552
+msgid "Debug draw draws objects in wireframe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3555
+msgid "Do not use a debug mode."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3558
+msgid "Draw all objects as wireframe models."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3561
+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/VisualServer.xml:3564
+msgid ""
+"Draw all objects without shading. Equivalent to setting all objects shaders "
+"to [code]unshaded[/code]."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3567
+msgid "The instance does not have a type."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3570
+msgid "The instance is a mesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3573
+msgid "The instance is a multimesh."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3576
+msgid "The instance is an immediate geometry."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3579
+msgid "The instance is a particle emitter."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3582
+msgid "The instance is a light."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3585
+msgid "The instance is a reflection probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3588
+msgid "The instance is a GI probe."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3591
+msgid "The instance is a lightmap capture."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3594
+msgid "Represents the size of the [enum InstanceType] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3597
+msgid ""
+"A combination of the flags of geometry instances (mesh, multimesh, immediate "
+"and particles)."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3600
+msgid "Allows the instance to be used in baked lighting."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3603
+msgid "When set, manually requests to draw geometry on next frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3606
+msgid "Represents the size of the [enum InstanceFlags] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3609
+msgid "Disable shadows from this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3612
+msgid "Cast shadows from this instance."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3615
+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/VisualServer.xml:3618
+msgid ""
+"Only render the shadows from the object. The object itself will not be drawn."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3621
+msgid "The nine patch gets stretched where needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3624
+msgid "The nine patch gets filled with tiles where needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3627
+msgid ""
+"The nine patch gets filled with tiles where needed and stretches them a bit "
+"if needed."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3630
+msgid "Adds light color additive to the canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3633
+msgid "Adds light color subtractive to the canvas."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3636
+msgid "The light adds color depending on transparency."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3639
+msgid "The light adds color depending on mask."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3642
+msgid "Do not apply a filter to canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3645
+msgid "Use PCF3 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3648
+msgid "Use PCF5 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3651
+msgid "Use PCF7 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3654
+msgid "Use PCF9 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3657
+msgid "Use PCF13 filtering to filter canvas light shadows."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3660
+msgid "Culling of the canvas occluder is disabled."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3663
+msgid "Culling of the canvas occluder is clockwise."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3666
+msgid "Culling of the canvas occluder is counterclockwise."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3669
+msgid "The amount of objects in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3672
+msgid "The amount of vertices in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3675
+msgid "The amount of modified materials in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3678
+msgid "The amount of shader rebinds in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3681
+msgid "The amount of surface changes in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3684
+msgid "The amount of draw calls in frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3687
+msgid "The amount of 2d items in the frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3690
+msgid "The amount of 2d draw calls in frame."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3705
+msgid "Hardware supports shaders. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3708
+msgid ""
+"Hardware supports multithreading. This enum is currently unused in Godot 3.x."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3711
+msgid "Use [Transform2D] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3714
+msgid "Use [Transform] to store MultiMesh transform."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3717
+msgid "MultiMesh does not use per-instance color."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3720
+msgid ""
+"MultiMesh color uses 8 bits per component. This packs the color into a "
+"single float."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3723
+msgid "MultiMesh color uses a float per channel."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3726
+msgid "MultiMesh does not use custom data."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3729
+msgid ""
+"MultiMesh custom data uses 8 bits per component. This packs the 4-component "
+"custom data into a single float."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3732
+msgid "MultiMesh custom data uses a float per component."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3735
+msgid "Reflection probe will update reflections once and then stop."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3738
+msgid ""
+"Reflection probe will update each frame. This mode is necessary to capture "
+"moving objects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3741
+msgid "Draw particles in the order that they appear in the particles array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3744
+msgid "Sort particles based on their lifetime."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3747
+msgid "Sort particles based on their distance to the camera."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3750
+msgid "Use the clear color as background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3753
+msgid "Use a specified color as the background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3756
+msgid "Use a sky resource for the background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3759
+msgid ""
+"Use a custom color for background, but use a sky for shading and reflections."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3762
+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/VisualServer.xml:3765
+msgid ""
+"Do not clear the background, use whatever was rendered last frame as the "
+"background."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3768
+msgid "Represents the size of the [enum EnvironmentBG] enum."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3771
+msgid "Use lowest blur quality. Fastest, but may look bad."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3774
+msgid "Use medium blur quality."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3777
+msgid "Used highest blur quality. Looks the best, but is the slowest."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3780
+msgid "Add the effect of the glow on top of the scene."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3783
+msgid ""
+"Blends the glow effect with the screen. Does not get as bright as additive."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3786
+msgid "Produces a subtle color disturbance around objects."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3789
+msgid "Shows the glow effect by itself without the underlying scene."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3792
+msgid "Output color as they came in."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3795
+msgid "Use the Reinhard tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3798
+msgid "Use the filmic tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3801
+msgid "Use the ACES tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3804
+msgid "Use the ACES Fitted tonemapper."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3807
+msgid "Lowest quality of screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3810
+msgid "Medium quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3813
+msgid "Highest quality screen space ambient occlusion."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3816
+msgid "Disables the blur set for SSAO. Will make SSAO look noisier."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3819
+msgid "Perform a 1x1 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3822
+msgid "Performs a 2x2 blur on the SSAO output."
+msgstr ""
+
+#: doc/classes/VisualServer.xml:3825
+msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO."
+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:20
+msgid "Adds the specified node to the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:31
+msgid ""
+"Returns [code]true[/code] if the specified nodes and ports can be connected "
+"together."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:42 doc/classes/VisualShader.xml:64
+msgid "Connects the specified nodes and ports."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:53
+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:72
+msgid ""
+"Returns the shader node instance with specified [code]type[/code] and "
+"[code]id[/code]."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:79
+msgid "Returns the list of connected nodes with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:86
+msgid "Returns the list of all nodes in the shader with the specified type."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:94
+msgid "Returns the position of the specified node within the shader graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:111
+msgid ""
+"Returns [code]true[/code] if the specified node and port connection exist."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:119
+msgid "Removes the specified node from the shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:126
+msgid "Sets the mode of this shader."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:135
+msgid "Sets the position of the specified node."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:141
+msgid "The offset vector of the whole graph."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:146
+msgid "A vertex shader, operating on vertices."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:149
+msgid "A fragment shader, operating on fragments (pixels)."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:152
+msgid "A shader for light calculations."
+msgstr ""
+
+#: doc/classes/VisualShader.xml:155
+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:7
+msgid ""
+"Visual shader graphs consist of various nodes. Each node in the graph is a "
+"separate object and they are represented as a rectangular boxes with title "
+"and a set of properties. Each node has also connection ports that allow to "
+"connect it to another nodes and control the flow of the shader."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:10
+msgid ""
+"https://docs.godotengine.org/en/3.4/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:23
+msgid "Returns the default value of the input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:30
+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:38
+msgid "Sets the default value for the selected input [code]port[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:44
+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:50
+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:56
+msgid ""
+"Floating-point scalar. Translated to [code]float[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:59
+msgid ""
+"3D vector of floating-point values. Translated to [code]vec3[/code] type in "
+"shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:62
+msgid "Boolean type. Translated to [code]bool[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:65
+msgid "Transform type. Translated to [code]mat4[/code] type in shader code."
+msgstr ""
+
+#: doc/classes/VisualShaderNode.xml:68
+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:71
+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/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
+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 "A 3D vector type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:32
+msgid "A boolean type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:35
+msgid "A transform ([code]mat4[/code]) type."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:38
+msgid "Comparison for equality ([code]a == b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:41
+msgid "Comparison for inequality ([code]a != b[/code])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:44
+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:47
+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:50
+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:53
+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:56
+msgid ""
+"The result will be true if all of component in vector satisfy the comparison "
+"condition."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCompare.xml:59
+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/3.4/tutorials/plugins/editor/"
+"visual_shader_plugins.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:22
+msgid ""
+"Override this method to define the category of the associated custom node in "
+"the Visual Shader Editor's members dialog. The path may look like "
+"[code]\"MyGame/MyFunctions/Noise\"[/code].\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the \"Custom\" category."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeCustom.xml:33
+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:43
+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:51
+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:60
+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:68
+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:76
+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:83
+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:90
+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:98
+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:106
+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:113
+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:120
+msgid ""
+"Override this method to define the subcategory of the associated custom node "
+"in the Visual Shader Editor's members dialog.\n"
+"Defining this method is [b]optional[/b]. If not overridden, the node will be "
+"filed under the root of the main category (see [method _get_category])."
+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]determinant(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 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/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:18
+msgid ""
+"Adds an input port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:27
+msgid ""
+"Adds an output port with the specified [code]type[/code] (see [enum "
+"VisualShaderNode.PortType]) and [code]name[/code]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:33
+msgid "Removes all previously specified input ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:39
+msgid "Removes all previously specified output ports."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:45
+msgid ""
+"Returns a free input port ID which can be used in [method add_input_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:51
+msgid ""
+"Returns a free output port ID which can be used in [method add_output_port]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:57
+msgid ""
+"Returns the number of input ports in use. Alternative for [method "
+"get_free_input_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:63
+msgid ""
+"Returns a [String] description of the input ports as a colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_input_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:69
+msgid ""
+"Returns the number of output ports in use. Alternative for [method "
+"get_free_output_port_id]."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:75
+msgid ""
+"Returns a [String] description of the output ports as a colon-separated list "
+"using the format [code]id,type,name;[/code] (see [method add_output_port])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:82
+msgid "Returns [code]true[/code] if the specified input port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:89
+msgid "Returns [code]true[/code] if the specified output port exists."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:96
+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:103
+msgid "Removes the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:110
+msgid "Removes the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:118
+msgid "Renames the specified input port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:126
+msgid ""
+"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:133
+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:141
+msgid "Renames the specified output port."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:149
+msgid ""
+"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeGroupBase.xml:156
+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:162
+msgid "The size of the node in the visual shader graph."
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:6
+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:9
+msgid ""
+"https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/"
+"index.html"
+msgstr ""
+
+#: doc/classes/VisualShaderNodeInput.xml:20
+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/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/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/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 "
+"[Sprite])."
+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/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:15
+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:39
+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).\n"
+"[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] "
+"signals are part of the [Range] class which this class inherits from."
+msgstr ""
+
+#: doc/classes/VSlider.xml:25
+msgid "The background of the area below the grabber."
+msgstr ""
+
+#: doc/classes/VSlider.xml:36
+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:15
+msgid "Returns the [Object] this weakref is referring to."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:13
+msgid "Closes this data channel, notifying the other peer."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:19
+msgid ""
+"Returns the number of bytes currently queued to be sent over this channel."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:25
+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:32
+msgid "Returns the label assigned to this channel during creation."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:38
+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:45
+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:58
+msgid "Returns the current state of this channel, see [enum ChannelState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:64
+msgid ""
+"Returns [code]true[/code] if this channel was created with out-of-band "
+"configuration."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:70
+msgid ""
+"Returns [code]true[/code] if this channel was created with ordering enabled "
+"(default)."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:76
+msgid "Reserved, but not used for now."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:82
+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:88
+msgid ""
+"The transfer mode to use when sending outgoing packet. Either text or binary."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:93
+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:96
+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:99
+msgid "The channel was created, but it's still trying to connect."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:102
+msgid "The channel is currently open, and data can flow over it."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCDataChannel.xml:105
+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:108
+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:20
+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:27
+msgid "Close all the add peer connections and channels, freeing all resources."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCMultiplayer.xml:34
+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:40
+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:47
+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:55
+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:64
+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:23
+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:29
+msgid ""
+"Close the peer connection and all data channels associated with it.\n"
+"[b]Note:[/b] You cannot reuse this object for a new connection unless you "
+"call [method initialize]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:39
+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:61
+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:68
+msgid "Returns the connection state. See [enum ConnectionState]."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:76
+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"
+" \"credential\": \"a_password\", # Optional password for the TURN "
+"server.\n"
+" }\n"
+" ]\n"
+"}\n"
+"[/codeblock]"
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:97
+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:105
+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:114
+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:124
+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:133
+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:140
+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:146
+msgid ""
+"The connection is new, data channels and an offer can be created in this "
+"state."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:149
+msgid ""
+"The peer is connecting, ICE is in progress, none of the transports has "
+"failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:152
+msgid "The peer is connected, all ICE transports are connected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:155
+msgid "At least one ICE transport is disconnected."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:158
+msgid "One or more of the ICE transports failed."
+msgstr ""
+
+#: modules/webrtc/doc_classes/WebRTCPeerConnection.xml:161
+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:22
+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] To avoid mixed content warnings or errors in HTML5, you may "
+"have to use a [code]url[/code] that starts with [code]wss://[/code] (secure) "
+"instead of [code]ws://[/code]. When doing so, make sure to use the fully "
+"qualified domain name that matches the one defined in the server's SSL "
+"certificate. Do not connect directly via the IP address for [code]wss://[/"
+"code] connections, as it won't match with the SSL certificate.\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:35
+msgid ""
+"Disconnects this client from the connected host. See [method WebSocketPeer."
+"close] for more information."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:41
+msgid "Return the IP address of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:47
+msgid "Return the IP port of the currently connected host."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:53
+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:57
+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:65
+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:70
+msgid "Emitted when the connection to the server fails."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketClient.xml:76
+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:81
+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:89
+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:16
+msgid ""
+"Returns the [WebSocketPeer] associated to the given [code]peer_id[/code]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketMultiplayerPeer.xml:26
+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:41
+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 represents a specific WebSocket connection, allowing you to 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:18
+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:26
+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:33
+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:40
+msgid ""
+"Returns the current amount of data in the outbound websocket buffer. [b]Note:"
+"[/b] HTML5 exports use WebSocket.bufferedAmount, while other platforms use "
+"an internal buffer."
+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:52
+msgid "Returns [code]true[/code] if this peer is currently connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:59
+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:67
+msgid "Sets the socket to use the given [enum WriteMode]."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:73
+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:79
+msgid ""
+"Specifies that WebSockets messages should be transferred as text payload "
+"(only valid UTF-8 is allowed)."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketPeer.xml:82
+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:20
+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:41
+msgid "Returns [code]true[/code] if a peer with the given ID is connected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:47
+msgid ""
+"Returns [code]true[/code] if the server is actively listening on a port."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:56
+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:65
+msgid "Stops the server and clear its state."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:71
+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:74
+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:77
+msgid ""
+"The time in seconds before a pending client (i.e. a client that has not yet "
+"finished the HTTP handshake) is considered stale and forcefully disconnected."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:80
+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:83
+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:92
+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:99
+msgid ""
+"Emitted when a new client connects. \"protocol\" will be the sub-protocol "
+"agreed with the client."
+msgstr ""
+
+#: modules/websocket/doc_classes/WebSocketServer.xml:106
+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:112
+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 ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:4
+msgid "AR/VR interface using WebXR."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:7
+msgid ""
+"WebXR is an open standard that allows creating VR and AR applications that "
+"run in the web browser.\n"
+"As such, this interface is only available when running in an HTML5 export.\n"
+"WebXR supports a wide range of devices, from the very capable (like Valve "
+"Index, HTC Vive, Oculus Rift and Quest) down to the much less capable (like "
+"Google Cardboard, Oculus Go, GearVR, or plain smartphones).\n"
+"Since WebXR is based on Javascript, it makes extensive use of callbacks, "
+"which means that [WebXRInterface] is forced to use signals, where other AR/"
+"VR interfaces would instead use functions that return a result immediately. "
+"This makes [WebXRInterface] quite a bit more complicated to initialize than "
+"other AR/VR interfaces.\n"
+"Here's the minimum code required to start an immersive VR session:\n"
+"[codeblock]\n"
+"extends Spatial\n"
+"\n"
+"var webxr_interface\n"
+"var vr_supported = false\n"
+"\n"
+"func _ready():\n"
+" # We assume this node has a button as a child.\n"
+" # This button is for the user to consent to entering immersive VR mode.\n"
+" $Button.connect(\"pressed\", self, \"_on_Button_pressed\")\n"
+"\n"
+" webxr_interface = ARVRServer.find_interface(\"WebXR\")\n"
+" if webxr_interface:\n"
+" # WebXR uses a lot of asynchronous callbacks, so we connect to "
+"various\n"
+" # signals in order to receive them.\n"
+" webxr_interface.connect(\"session_supported\", self, "
+"\"_webxr_session_supported\")\n"
+" webxr_interface.connect(\"session_started\", self, "
+"\"_webxr_session_started\")\n"
+" webxr_interface.connect(\"session_ended\", self, "
+"\"_webxr_session_ended\")\n"
+" webxr_interface.connect(\"session_failed\", self, "
+"\"_webxr_session_failed\")\n"
+"\n"
+" # This returns immediately - our _webxr_session_supported() method\n"
+" # (which we connected to the \"session_supported\" signal above) "
+"will\n"
+" # be called sometime later to let us know if it's supported or not.\n"
+" webxr_interface.is_session_supported(\"immersive-vr\")\n"
+"\n"
+"func _webxr_session_supported(session_mode, supported):\n"
+" if session_mode == 'immersive-vr':\n"
+" vr_supported = supported\n"
+"\n"
+"func _on_Button_pressed():\n"
+" if not vr_supported:\n"
+" OS.alert(\"Your browser doesn't support VR\")\n"
+" return\n"
+"\n"
+" # We want an immersive VR session, as opposed to AR ('immersive-ar') or "
+"a\n"
+" # simple 3DoF viewer ('viewer').\n"
+" webxr_interface.session_mode = 'immersive-vr'\n"
+" # 'bounded-floor' is room scale, 'local-floor' is a standing or sitting\n"
+" # experience (it puts you 1.6m above the ground if you have 3DoF "
+"headset),\n"
+" # whereas as 'local' puts you down at the ARVROrigin.\n"
+" # This list means it'll first try to request 'bounded-floor', then\n"
+" # fallback on 'local-floor' and ultimately 'local', if nothing else is\n"
+" # supported.\n"
+" webxr_interface.requested_reference_space_types = 'bounded-floor, local-"
+"floor, local'\n"
+" # In order to use 'local-floor' or 'bounded-floor' we must also\n"
+" # mark the features as required or optional.\n"
+" webxr_interface.required_features = 'local-floor'\n"
+" webxr_interface.optional_features = 'bounded-floor'\n"
+"\n"
+" # This will return false if we're unable to even request the session,\n"
+" # however, it can still fail asynchronously later in the process, so we\n"
+" # only know if it's really succeeded or failed when our\n"
+" # _webxr_session_started() or _webxr_session_failed() methods are "
+"called.\n"
+" if not webxr_interface.initialize():\n"
+" OS.alert(\"Failed to initialize\")\n"
+" return\n"
+"\n"
+"func _webxr_session_started():\n"
+" $Button.visible = false\n"
+" # This tells Godot to start rendering to the headset.\n"
+" get_viewport().arvr = true\n"
+" # This will be the reference space type you ultimately got, out of the\n"
+" # types that you requested above. This is useful if you want the game "
+"to\n"
+" # work a little differently in 'bounded-floor' versus 'local-floor'.\n"
+" print (\"Reference space type: \" + webxr_interface."
+"reference_space_type)\n"
+"\n"
+"func _webxr_session_ended():\n"
+" $Button.visible = true\n"
+" # If the user exits immersive mode, then we tell Godot to render to the "
+"web\n"
+" # page again.\n"
+" get_viewport().arvr = false\n"
+"\n"
+"func _webxr_session_failed(message):\n"
+" OS.alert(\"Failed to initialize: \" + message)\n"
+"[/codeblock]\n"
+"There are several ways to handle \"controller\" input:\n"
+"- Using [ARVRController] nodes and their [signal ARVRController."
+"button_pressed] and [signal ARVRController.button_release] signals. This is "
+"how controllers are typically handled in AR/VR apps in Godot, however, this "
+"will only work with advanced VR controllers like the Oculus Touch or Index "
+"controllers, for example. The buttons codes are defined by [url=https://"
+"immersive-web.github.io/webxr-gamepads-module/#xr-standard-gamepad-"
+"mapping]Section 3.3 of the WebXR Gamepads Module[/url].\n"
+"- Using [method Node._unhandled_input] and [InputEventJoypadButton] or "
+"[InputEventJoypadMotion]. This works the same as normal joypads, except the "
+"[member InputEvent.device] starts at 100, so the left controller is 100 and "
+"the right controller is 101, and the button codes are also defined by "
+"[url=https://immersive-web.github.io/webxr-gamepads-module/#xr-standard-"
+"gamepad-mapping]Section 3.3 of the WebXR Gamepads Module[/url].\n"
+"- Using the [signal select], [signal squeeze] and related signals. This "
+"method will work for both advanced VR controllers, and non-traditional "
+"\"controllers\" like a tap on the screen, a spoken voice command or a button "
+"press on the device itself. The [code]controller_id[/code] passed to these "
+"signals is the same id as used in [member ARVRController.controller_id].\n"
+"You can use one or all of these methods to allow your game or app to support "
+"a wider or narrower set of devices and input methods, or to allow more "
+"advanced interations with more advanced devices."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:94
+msgid "https://www.snopekgames.com/blog/2020/how-make-vr-game-webxr-godot"
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:101
+msgid ""
+"Gets an [ARVRPositionalTracker] for the given [code]controller_id[/code].\n"
+"In the context of WebXR, a \"controller\" can be an advanced VR controller "
+"like the Oculus Touch or Index controllers, or even a tap on the screen, a "
+"spoken voice command or a button press on the device itself. When a non-"
+"traditional controller is used, interpret the position and orientation of "
+"the [ARVRPositionalTracker] as a ray pointing at the object the user wishes "
+"to interact with.\n"
+"Use this method to get information about the controller that triggered one "
+"of these signals:\n"
+"- [signal selectstart]\n"
+"- [signal select]\n"
+"- [signal selectend]\n"
+"- [signal squeezestart]\n"
+"- [signal squeeze]\n"
+"- [signal squeezestart]"
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:116
+msgid ""
+"Checks if the given [code]session_mode[/code] is supported by the user's "
+"browser.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
+"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code].\n"
+"This method returns nothing, instead it emits the [signal session_supported] "
+"signal with the result."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:124
+msgid ""
+"The vertices of a polygon which defines the boundaries of the user's play "
+"area.\n"
+"This will only be available if [member reference_space_type] is "
+"[code]\"bounded-floor\"[/code] and only on certain browsers and devices that "
+"support it.\n"
+"The [signal reference_space_reset] signal may indicate when this changes."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:129
+msgid ""
+"A comma-seperated list of optional features used by [method ARVRInterface."
+"initialize] when setting up the WebXR session.\n"
+"If a user's browser or device doesn't support one of the given features, "
+"initialization will continue, but you won't be able to use the requested "
+"feature.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:135
+msgid ""
+"The reference space type (from the list of requested types set in the "
+"[member requested_reference_space_types] property), that was ultimately used "
+"by [method ARVRInterface.initialize] when setting up the WebXR session.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:139
+msgid ""
+"A comma-seperated list of reference space types used by [method "
+"ARVRInterface.initialize] when setting up the WebXR session.\n"
+"The reference space types are requested in order, and the first on supported "
+"by the users device or browser will be used. The [member "
+"reference_space_type] property contains the reference space type that was "
+"ultimately used.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:145
+msgid ""
+"A comma-seperated list of required features used by [method ARVRInterface."
+"initialize] when setting up the WebXR session.\n"
+"If a user's browser or device doesn't support one of the given features, "
+"initialization will fail and [signal session_failed] will be emitted.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
+"use a particular reference space type, it must be listed in either [member "
+"required_features] or [member optional_features]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:151
+msgid ""
+"The session mode used by [method ARVRInterface.initialize] when setting up "
+"the WebXR session.\n"
+"This doesn't have any effect on the interface when already initialized.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
+"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:156
+msgid ""
+"Indicates if the WebXR session's imagery is visible to the user.\n"
+"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
+"API/XRVisibilityState]WebXR's XRVisibilityState[/url], including "
+"[code]\"hidden\"[/code], [code]\"visible\"[/code], and [code]\"visible-"
+"blurred\"[/code]."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:163
+msgid ""
+"Emitted to indicate that the reference space has been reset or "
+"reconfigured.\n"
+"When (or whether) this is emitted depends on the user's browser or device, "
+"but may include when the user has changed the dimensions of their play space "
+"(which you may be able to access via [member bounds_geometry]) or pressed/"
+"held a button to recenter their position.\n"
+"See [url=https://developer.mozilla.org/en-US/docs/Web/API/XRReferenceSpace/"
+"reset_event]WebXR's XRReferenceSpace reset event[/url] for more information."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:171
+msgid ""
+"Emitted after one of the \"controllers\" has finished its \"primary action"
+"\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:178
+msgid ""
+"Emitted when one of the \"controllers\" has finished its \"primary action"
+"\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:185
+msgid ""
+"Emitted when one of the \"controllers\" has started its \"primary action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:191
+msgid ""
+"Emitted when the user ends the WebXR session (which can be done using UI "
+"from the browser or device).\n"
+"At this point, you should do [code]get_viewport().arvr = false[/code] to "
+"instruct Godot to resume rendering to the screen."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:198
+msgid ""
+"Emitted by [method ARVRInterface.initialize] if the session fails to start.\n"
+"[code]message[/code] may optionally contain an error message from WebXR, or "
+"an empty string if no message is available."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:204
+msgid ""
+"Emitted by [method ARVRInterface.initialize] if the session is successfully "
+"started.\n"
+"At this point, it's safe to do [code]get_viewport().arvr = true[/code] to "
+"instruct Godot to start rendering to the AR/VR device."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:212
+msgid ""
+"Emitted by [method is_session_supported] to indicate if the given "
+"[code]session_mode[/code] is supported or not."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:218
+msgid ""
+"Emitted after one of the \"controllers\" has finished its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:225
+msgid ""
+"Emitted when one of the \"controllers\" has finished its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:232
+msgid ""
+"Emitted when one of the \"controllers\" has started its \"primary squeeze "
+"action\".\n"
+"Use [method get_controller] to get more information about the controller."
+msgstr ""
+
+#: modules/webxr/doc_classes/WebXRInterface.xml:238
+msgid "Emitted when [member visibility_state] has changed."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:4
+msgid "Base class for window dialogs."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:7
+msgid ""
+"Windowdialog is the base class for all window-based dialogs. It's a by-"
+"default toplevel [Control] that draws a window decoration and allows motion "
+"and resizing."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:15
+msgid ""
+"Returns the close [TextureButton].\n"
+"[b]Warning:[/b] This is a required internal node, removing and freeing it "
+"may cause a crash. If you wish to hide it or any of its children, use their "
+"[member CanvasItem.visible] property."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:22
+msgid "If [code]true[/code], the user can resize the window."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:25
+msgid "The text displayed in the window's title bar."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:32
+msgid "The icon for the close button."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:35
+msgid "The horizontal offset of the close button."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:38
+msgid ""
+"The icon used for the close button when it's hovered with the mouse cursor."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:44
+msgid ""
+"The style for both the content background of the [WindowDialog] and the "
+"title bar. The title bar is created with a top border and an expand margin "
+"using the [code]panel[/code] stylebox."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:47
+msgid ""
+"The thickness of the border that can be dragged when scaling the window (if "
+"[member resizable] is enabled)."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:50
+msgid "The color of the title text."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:53
+msgid "The font used to draw the title."
+msgstr ""
+
+#: doc/classes/WindowDialog.xml:56
+msgid "The vertical offset of the title text."
+msgstr ""
+
+#: doc/classes/World.xml:4
+msgid "Class that has everything pertaining to a world."
+msgstr ""
+
+#: doc/classes/World.xml:7
+msgid ""
+"Class that has everything pertaining to a world. A physics space, a visual "
+"scenario and a sound space. Spatial nodes register their resources into the "
+"current world."
+msgstr ""
+
+#: doc/classes/World.xml:16
+msgid ""
+"Direct access to the world's physics 3D space state. Used for querying "
+"current and potential collisions."
+msgstr ""
+
+#: doc/classes/World.xml:19
+msgid "The World's [Environment]."
+msgstr ""
+
+#: doc/classes/World.xml:22
+msgid ""
+"The World's fallback_environment will be used if the World's [Environment] "
+"fails or is missing."
+msgstr ""
+
+#: doc/classes/World.xml:25
+msgid "The World's visual scenario."
+msgstr ""
+
+#: doc/classes/World.xml:28
+msgid "The World's physics space."
+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 [VisualServer] 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. When using multi-threaded physics, access "
+"is limited to [code]_physics_process(delta)[/code] in the main thread."
+msgstr ""
+
+#: doc/classes/World2D.xml:22
+msgid ""
+"The [RID] of this world's physics space resource. Used by the "
+"[Physics2DServer] for 2D physics, treating it as both a space and an area."
+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 [Camera]. 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:21
+msgid ""
+"The [Environment] resource used by this [WorldEnvironment], defining the "
+"default properties."
+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:18
+msgid "Loads a certificate from [code]path[/code] (\"*.crt\" file)."
+msgstr ""
+
+#: doc/classes/X509Certificate.xml:25
+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:15
+msgid "Gets the amount of attributes in the current element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:22
+msgid ""
+"Gets the name of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:29
+msgid ""
+"Gets the value of the attribute specified by the index in [code]idx[/code] "
+"argument."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:35
+msgid "Gets the current line in the parsed file (currently not implemented)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:42
+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:49
+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:55
+msgid ""
+"Gets the contents of a text node. This will raise an error in any other type "
+"of node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:61
+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:67
+msgid ""
+"Gets the byte offset of the current node since the beginning of the file or "
+"buffer."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:73
+msgid ""
+"Gets the type of the current node. Compare with [enum NodeType] constants."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:80
+msgid "Check whether the current element has a certain attribute."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:86
+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:93
+msgid "Opens an XML file for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:100
+msgid "Opens an XML raw buffer for parsing. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:106
+msgid "Reads the next node of the file. This returns an error code."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:113
+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:119
+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:125
+msgid "There's no node (no file or buffer opened)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:128
+msgid "Element (tag)."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:131
+msgid "End of element."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:134
+msgid "Text node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:137
+msgid "Comment node."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:140
+msgid "CDATA content."
+msgstr ""
+
+#: doc/classes/XMLParser.xml:143
+msgid "Unknown node."
+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/th.po b/doc/translations/th.po
index 6e2512e6fa..9d6197823a 100644
--- a/doc/translations/th.po
+++ b/doc/translations/th.po
@@ -23,43 +23,43 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.7-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "รายละเอียด"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "บทสอน"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "คุณสมบัติ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "เมธอด"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "คุณสมบัติธีม"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "สัà¸à¸à¸²à¸“"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "อีนัม"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "ค่าคงที่"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "รายละเอียดของคุณสมบัติ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "รายละเอียดเมท็อด"
@@ -6310,21 +6310,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6332,7 +6336,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6343,7 +6347,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6351,41 +6355,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6393,61 +6397,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6462,7 +6466,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6471,7 +6475,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6480,7 +6484,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6497,29 +6501,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6558,21 +6562,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6580,7 +6588,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6591,7 +6599,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6599,14 +6607,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6614,21 +6622,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6643,7 +6651,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6658,7 +6666,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6667,7 +6675,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6676,7 +6684,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6695,7 +6703,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10280,7 +10288,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10478,19 +10487,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11335,26 +11356,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12825,80 +12853,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12942,49 +12986,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14759,26 +14810,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20008,7 +20066,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20135,7 +20194,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21170,8 +21229,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27782,16 +27844,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27799,7 +27863,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27807,73 +27871,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27883,7 +27947,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27893,7 +27957,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27904,7 +27968,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27912,7 +27976,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27920,7 +27984,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27929,21 +27993,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27952,25 +28016,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -27978,7 +28042,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27986,7 +28050,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -27994,7 +28058,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28002,7 +28066,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28010,7 +28074,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28020,7 +28084,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28030,7 +28094,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28041,31 +28105,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28080,55 +28144,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28353,6 +28417,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28364,7 +28439,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28374,7 +28449,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
#, fuzzy
msgid ""
"Returns a value between 0 and 1 representing the intensity of the given "
@@ -28390,7 +28465,7 @@ msgstr ""
"(อะนาล็อà¸à¸«à¸£à¸·à¸­à¸—ริà¸à¹€à¸à¸­à¸£à¹Œ L2, R2) อยู่ห่างจาภdead zone มาà¸à¹€à¸—่าใดค่าà¸à¹‡à¸ˆà¸°à¸¢à¸´à¹ˆà¸‡à¹ƒà¸à¸¥à¹‰à¹€à¸„ียงà¸à¸±à¸š 1 "
"มาà¸à¸‚ึ้นเท่านั้น ถ้าà¸à¸²à¸£ action ถูà¸à¸ˆà¸±à¸šà¸„ู่à¸à¸±à¸šà¸•à¸±à¸§à¸„วบคุมที่ไม่มีà¹à¸à¸™à¹€à¸›à¹‡à¸™à¹à¸›à¹‰à¸™à¸žà¸´à¸¡à¸žà¹Œà¸„่าที่ส่งคืนà¸à¹‡à¸ˆà¸°à¹€à¸›à¹‡à¸™ 0 หรือ 1"
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28398,17 +28473,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28418,7 +28493,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28427,53 +28502,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28481,7 +28556,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28490,17 +28565,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28513,7 +28588,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28525,7 +28600,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28535,7 +28610,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the action event. Note that if "
@@ -28550,13 +28625,13 @@ msgstr ""
"action มีà¸à¸²à¸£à¸à¸³à¸«à¸™à¸”ปุ่มไว้หลายปุ่มà¹à¸¥à¸°à¸¡à¸µà¸à¸²à¸£à¸à¸”มาà¸à¸à¸§à¹ˆà¸²à¸«à¸™à¸¶à¹ˆà¸‡à¸›à¸¸à¹ˆà¸¡ à¸à¸²à¸£à¸›à¸¥à¹ˆà¸­à¸¢à¸›à¸¸à¹ˆà¸¡à¸„รั้งเดียวจะเป็นà¸à¸²à¸£à¸¢à¸à¹€à¸¥à¸´à¸ "
"action นี้à¹à¸¡à¹‰à¸§à¹ˆà¸²à¸ˆà¸°à¸¢à¸±à¸‡à¸à¸”ปุ่มอื่นที่à¸à¸³à¸«à¸™à¸” action นี้อยู่à¸à¹‡à¸•à¸²à¸¡"
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28564,19 +28639,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28585,7 +28660,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28598,12 +28673,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28618,7 +28702,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28628,11 +28712,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28646,7 +28757,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28659,34 +28770,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28694,83 +28805,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28778,23 +28889,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32061,14 +32172,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32561,26 +32679,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37219,26 +37344,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42319,27 +42451,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42371,6 +42503,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42407,11 +42547,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42443,7 +42583,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43709,18 +43849,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43728,7 +43856,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43738,13 +43866,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43758,14 +43901,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43774,7 +43917,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43782,7 +43925,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43798,20 +43941,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43819,75 +43962,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43897,7 +44040,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43907,27 +44050,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43935,81 +44078,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44017,109 +44160,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44130,91 +44273,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44223,13 +44366,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44239,7 +44382,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44247,19 +44390,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44273,45 +44416,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44320,7 +44463,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44331,7 +44474,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44347,14 +44490,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44362,49 +44505,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44413,7 +44556,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44421,7 +44564,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
#, fuzzy
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
@@ -44434,7 +44577,7 @@ msgstr ""
"ได้เนื่องจาà¸à¸ˆà¸³à¹€à¸›à¹‡à¸™à¸ªà¸³à¸«à¸£à¸±à¸š logic ในà¸à¸²à¸£ [Control] ต่างๆ อย่างไรà¸à¹‡à¸•à¸²à¸¡ event "
"ที่à¸à¸³à¸«à¸™à¸”ให้à¸à¸±à¸šà¸à¸²à¸£ action สามารถà¹à¸à¹‰à¹„ขได้"
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44444,7 +44587,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44453,7 +44596,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44462,7 +44605,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44472,7 +44615,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44480,7 +44623,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44490,7 +44633,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44500,7 +44643,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44508,7 +44651,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44517,7 +44660,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44525,7 +44668,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44537,477 +44680,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45015,92 +45158,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45110,33 +45253,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45149,7 +45292,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45161,7 +45304,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45173,7 +45316,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45186,7 +45329,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45194,28 +45337,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45225,25 +45368,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45256,7 +45399,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45268,7 +45411,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45280,7 +45423,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45293,13 +45436,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45307,11 +45450,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45325,7 +45468,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45334,7 +45477,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45350,7 +45493,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45360,7 +45503,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45370,7 +45513,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45381,7 +45524,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45391,7 +45534,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45399,7 +45542,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45410,7 +45553,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45425,7 +45568,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45434,13 +45577,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45449,7 +45592,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45459,7 +45602,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45471,7 +45614,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45481,24 +45624,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45507,7 +45650,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45515,7 +45658,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45524,7 +45667,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45534,7 +45677,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45542,31 +45685,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45574,7 +45717,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45584,46 +45727,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45631,7 +45781,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45641,7 +45791,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45650,7 +45800,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45659,20 +45809,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45681,7 +45831,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45689,7 +45839,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45698,7 +45848,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45708,20 +45858,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45730,13 +45880,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45746,46 +45896,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45795,7 +45945,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45807,7 +45957,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45815,7 +45965,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45823,7 +45973,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45832,7 +45982,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45846,7 +45996,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45856,7 +46006,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45865,7 +46015,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45875,54 +46025,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45933,61 +46083,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45998,7 +46148,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46007,26 +46157,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46037,20 +46187,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46062,52 +46212,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46115,7 +46265,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46125,10 +46275,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46137,10 +46287,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46149,10 +46299,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46161,10 +46311,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46173,10 +46323,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57545,26 +57695,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/tr.po b/doc/translations/tr.po
index 51f3ec242d..4880d83be6 100644
--- a/doc/translations/tr.po
+++ b/doc/translations/tr.po
@@ -30,43 +30,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.7-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Açıklama"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Öğretici Örnekler"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Özellikler"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Metotlar"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Tema Özellikleri"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Sinyaller"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Numaralandırmalar"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Sabitler"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Özellik Açıklamaları"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Yöntem Açıklamaları"
@@ -6992,21 +6992,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7014,7 +7018,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7025,7 +7029,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7033,41 +7037,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7075,61 +7079,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7144,7 +7148,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7153,7 +7157,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7162,7 +7166,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -7179,29 +7183,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -7240,21 +7244,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -7262,7 +7270,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -7273,7 +7281,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7281,14 +7289,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7296,21 +7304,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7325,7 +7333,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7340,7 +7348,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7349,7 +7357,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7358,7 +7366,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7377,7 +7385,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10962,7 +10970,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -11161,19 +11170,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -12018,26 +12039,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13512,80 +13540,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13629,49 +13673,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -15446,26 +15497,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20699,7 +20757,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20826,7 +20885,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21863,8 +21922,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28485,16 +28547,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28502,7 +28566,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28510,73 +28574,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28586,7 +28650,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28596,7 +28660,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28607,7 +28671,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28615,7 +28679,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28623,7 +28687,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28632,21 +28696,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28655,25 +28719,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28681,7 +28745,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28689,7 +28753,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28697,7 +28761,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28705,7 +28769,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28713,7 +28777,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28723,7 +28787,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28733,7 +28797,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28744,31 +28808,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28783,55 +28847,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -29056,6 +29120,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -29067,7 +29142,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -29077,7 +29152,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -29089,7 +29164,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -29097,17 +29172,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -29117,7 +29192,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -29126,53 +29201,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -29180,7 +29255,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -29189,17 +29264,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -29212,7 +29287,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -29224,7 +29299,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -29234,7 +29309,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -29245,13 +29320,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -29259,19 +29334,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -29280,7 +29355,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -29293,12 +29368,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -29313,7 +29397,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -29323,11 +29407,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -29341,7 +29452,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -29354,34 +29465,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -29389,83 +29500,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29473,23 +29584,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32750,14 +32861,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -33250,26 +33368,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37890,26 +38015,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -43016,27 +43148,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -43068,6 +43200,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -43104,11 +43244,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -43140,7 +43280,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -44407,18 +44547,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -44426,7 +44554,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -44436,13 +44564,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -44456,14 +44599,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -44472,7 +44615,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -44480,7 +44623,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -44496,20 +44639,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -44517,75 +44660,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44595,7 +44738,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44605,27 +44748,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44633,81 +44776,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44715,109 +44858,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44828,91 +44971,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44921,13 +45064,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44937,7 +45080,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44945,19 +45088,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44971,45 +45114,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -45018,7 +45161,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -45029,7 +45172,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -45045,14 +45188,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -45060,49 +45203,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -45111,7 +45254,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -45119,7 +45262,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45127,7 +45270,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -45137,7 +45280,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -45146,7 +45289,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -45155,7 +45298,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -45165,7 +45308,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45173,7 +45316,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -45183,7 +45326,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -45193,7 +45336,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45201,7 +45344,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -45210,7 +45353,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -45218,7 +45361,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -45230,477 +45373,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45708,92 +45851,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45803,33 +45946,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45842,7 +45985,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45854,7 +45997,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45866,7 +46009,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45879,7 +46022,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45887,28 +46030,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45918,25 +46061,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45949,7 +46092,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45961,7 +46104,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45973,7 +46116,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45986,13 +46129,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -46000,11 +46143,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -46018,7 +46161,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -46027,7 +46170,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -46043,7 +46186,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -46053,7 +46196,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -46063,7 +46206,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -46074,7 +46217,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -46084,7 +46227,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -46092,7 +46235,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -46103,7 +46246,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -46118,7 +46261,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -46127,13 +46270,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -46142,7 +46285,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -46152,7 +46295,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -46164,7 +46307,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -46174,24 +46317,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -46200,7 +46343,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -46208,7 +46351,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -46217,7 +46360,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -46227,7 +46370,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -46235,31 +46378,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -46267,7 +46410,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -46277,46 +46420,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -46324,7 +46474,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -46334,7 +46484,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -46343,7 +46493,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -46352,20 +46502,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -46374,7 +46524,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -46382,7 +46532,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -46391,7 +46541,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -46401,20 +46551,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -46423,13 +46573,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -46439,46 +46589,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -46488,7 +46638,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -46500,7 +46650,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -46508,7 +46658,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -46516,7 +46666,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -46525,7 +46675,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46539,7 +46689,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46549,7 +46699,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46558,7 +46708,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46568,54 +46718,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46626,61 +46776,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46691,7 +46841,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46700,26 +46850,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46730,20 +46880,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46755,52 +46905,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46808,7 +46958,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46818,10 +46968,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46830,10 +46980,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46842,10 +46992,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46854,10 +47004,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46866,10 +47016,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -58249,26 +58399,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/uk.po b/doc/translations/uk.po
index d499992201..e0e7c14b32 100644
--- a/doc/translations/uk.po
+++ b/doc/translations/uk.po
@@ -24,43 +24,43 @@ msgstr ""
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.8-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "ОпиÑ"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Туторіали"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "ВлаÑтивоÑÑ‚Ñ–"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Методи"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "ВлаÑтивоÑÑ‚Ñ– теми"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Сигнали"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Переліки"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "КонÑтанти"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "ОпиÑи влаÑтивоÑтей"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "ОпиÑи методів"
@@ -6336,21 +6336,25 @@ msgstr "https://docs.godotengine.org/uk/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6358,7 +6362,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6369,7 +6373,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6377,41 +6381,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6419,61 +6423,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6488,7 +6492,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6497,7 +6501,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6506,7 +6510,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6523,29 +6527,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6584,21 +6588,25 @@ msgstr "https://docs.godotengine.org/uk/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6606,7 +6614,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6617,7 +6625,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6625,14 +6633,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6640,21 +6648,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6669,7 +6677,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6684,7 +6692,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6693,7 +6701,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6702,7 +6710,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6721,7 +6729,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10306,7 +10314,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10505,19 +10514,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11362,26 +11383,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12854,80 +12882,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12971,49 +13015,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14789,26 +14840,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20042,7 +20100,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20169,7 +20228,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21204,8 +21263,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27824,16 +27886,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27841,7 +27905,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27849,73 +27913,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27925,7 +27989,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27935,7 +27999,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27946,7 +28010,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27954,7 +28018,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27962,7 +28026,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27971,21 +28035,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27994,25 +28058,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28020,7 +28084,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28028,7 +28092,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28036,7 +28100,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28044,7 +28108,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28052,7 +28116,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28062,7 +28126,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28072,7 +28136,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28083,31 +28147,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28122,55 +28186,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28395,6 +28459,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28406,7 +28481,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28416,7 +28491,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28428,7 +28503,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28436,17 +28511,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28456,7 +28531,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28465,53 +28540,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28519,7 +28594,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28528,17 +28603,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28551,7 +28626,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28563,7 +28638,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28573,7 +28648,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28584,13 +28659,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28598,19 +28673,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28619,7 +28694,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28632,12 +28707,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28652,7 +28736,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28662,11 +28746,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28680,7 +28791,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28693,34 +28804,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28728,83 +28839,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28812,23 +28923,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32088,14 +32199,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32588,26 +32706,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37226,26 +37351,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42344,27 +42476,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42396,6 +42528,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42432,11 +42572,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42468,7 +42608,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43735,18 +43875,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43754,7 +43882,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43764,13 +43892,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43784,14 +43927,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43800,7 +43943,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43808,7 +43951,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43824,20 +43967,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43845,75 +43988,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43923,7 +44066,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43933,27 +44076,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43961,81 +44104,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44043,109 +44186,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44156,91 +44299,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44249,13 +44392,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44265,7 +44408,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44273,19 +44416,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44299,45 +44442,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44346,7 +44489,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44357,7 +44500,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44373,14 +44516,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44388,49 +44531,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44439,7 +44582,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44447,7 +44590,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44455,7 +44598,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44465,7 +44608,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44474,7 +44617,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44483,7 +44626,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44493,7 +44636,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44501,7 +44644,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44511,7 +44654,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44521,7 +44664,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44529,7 +44672,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44538,7 +44681,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44546,7 +44689,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44558,477 +44701,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45036,92 +45179,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45131,33 +45274,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45170,7 +45313,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45182,7 +45325,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45194,7 +45337,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45207,7 +45350,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45215,28 +45358,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45246,25 +45389,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45277,7 +45420,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45289,7 +45432,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45301,7 +45444,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45314,13 +45457,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45328,11 +45471,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45346,7 +45489,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45355,7 +45498,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45371,7 +45514,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45381,7 +45524,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45391,7 +45534,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45402,7 +45545,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45412,7 +45555,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45420,7 +45563,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45431,7 +45574,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45446,7 +45589,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45455,13 +45598,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45470,7 +45613,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45480,7 +45623,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45492,7 +45635,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45502,24 +45645,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45528,7 +45671,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45536,7 +45679,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45545,7 +45688,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45555,7 +45698,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45563,31 +45706,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45595,7 +45738,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45605,46 +45748,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45652,7 +45802,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45662,7 +45812,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45671,7 +45821,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45680,20 +45830,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45702,7 +45852,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45710,7 +45860,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45719,7 +45869,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45729,20 +45879,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45751,13 +45901,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45767,46 +45917,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45816,7 +45966,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45828,7 +45978,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45836,7 +45986,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45844,7 +45994,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45853,7 +46003,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45867,7 +46017,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45877,7 +46027,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45886,7 +46036,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45896,54 +46046,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45954,61 +46104,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46019,7 +46169,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46028,26 +46178,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46058,20 +46208,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46083,52 +46233,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46136,7 +46286,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46146,10 +46296,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46158,10 +46308,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46170,10 +46320,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46182,10 +46332,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46194,10 +46344,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57570,26 +57720,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/vi.po b/doc/translations/vi.po
index f952cfdcc2..a8cde40b8e 100644
--- a/doc/translations/vi.po
+++ b/doc/translations/vi.po
@@ -22,43 +22,43 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "Ná»™i dung"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "Hướng dẫn"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "Thuộc tính"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "Phương thức"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "Thuá»™c tính Chủ Ä‘á»"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "Tín hiệu"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "Liệt kê"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "Hằng số"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "Nội dung Thuộc tính"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "Mô tả phương thức"
@@ -6638,21 +6638,25 @@ msgstr ""
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6660,7 +6664,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6671,7 +6675,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6679,41 +6683,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6721,61 +6725,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6790,7 +6794,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6799,7 +6803,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6808,7 +6812,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6825,29 +6829,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6882,21 +6886,25 @@ msgstr ""
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6904,7 +6912,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6915,7 +6923,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6923,14 +6931,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6938,21 +6946,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6967,7 +6975,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6982,7 +6990,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6991,7 +6999,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7000,7 +7008,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -7019,7 +7027,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10587,7 +10595,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10786,19 +10795,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11632,26 +11653,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -13115,80 +13143,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -13232,49 +13276,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -15043,26 +15094,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20279,7 +20337,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20403,7 +20462,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21434,8 +21493,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -28015,16 +28077,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -28032,7 +28096,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -28040,73 +28104,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -28116,7 +28180,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -28126,7 +28190,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -28137,7 +28201,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28145,7 +28209,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -28153,7 +28217,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -28162,21 +28226,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -28185,25 +28249,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28211,7 +28275,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28219,7 +28283,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28227,7 +28291,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28235,7 +28299,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28243,7 +28307,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28253,7 +28317,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28263,7 +28327,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28274,31 +28338,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28313,55 +28377,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28585,6 +28649,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28596,7 +28671,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28606,7 +28681,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28618,7 +28693,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28626,17 +28701,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28646,7 +28721,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28655,53 +28730,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28709,7 +28784,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28718,17 +28793,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28741,7 +28816,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28753,7 +28828,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28763,7 +28838,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28774,13 +28849,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28788,19 +28863,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28809,7 +28884,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28822,12 +28897,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28842,7 +28926,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28852,11 +28936,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28870,7 +28981,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28883,34 +28994,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28918,83 +29029,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -29002,23 +29113,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32251,14 +32362,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32751,26 +32869,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37358,26 +37483,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42477,27 +42609,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42529,6 +42661,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42565,11 +42705,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42601,7 +42741,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43868,18 +44008,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43887,7 +44015,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43897,13 +44025,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43917,14 +44060,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43933,7 +44076,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43941,7 +44084,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43957,20 +44100,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43978,75 +44121,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44056,7 +44199,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -44066,27 +44209,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -44094,81 +44237,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44176,111 +44319,111 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr "Nếu [code]true[/code], há»a tiết sẽ được căn ở trung tâm."
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr "Nếu [code]true[/code], há»a tiết sẽ được căn ở trung tâm."
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44291,91 +44434,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44384,13 +44527,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44400,7 +44543,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44408,19 +44551,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44434,45 +44577,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44481,7 +44624,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44492,7 +44635,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44508,14 +44651,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44523,49 +44666,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44574,7 +44717,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44582,7 +44725,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44590,7 +44733,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44600,7 +44743,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44609,7 +44752,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44618,7 +44761,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44628,7 +44771,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44636,7 +44779,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44646,7 +44789,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44656,7 +44799,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44664,7 +44807,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44673,7 +44816,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44681,7 +44824,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44693,477 +44836,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45171,92 +45314,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45266,33 +45409,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45305,7 +45448,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45317,7 +45460,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45329,7 +45472,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45342,7 +45485,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45350,28 +45493,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45381,25 +45524,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45412,7 +45555,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45424,7 +45567,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45436,7 +45579,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45449,13 +45592,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45463,11 +45606,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45481,7 +45624,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45490,7 +45633,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45506,7 +45649,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45516,7 +45659,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45526,7 +45669,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45537,7 +45680,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45547,7 +45690,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45555,7 +45698,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45566,7 +45709,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45581,7 +45724,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45590,13 +45733,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45605,7 +45748,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45615,7 +45758,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45627,7 +45770,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45637,24 +45780,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45663,7 +45806,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45671,7 +45814,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45680,7 +45823,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45690,7 +45833,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45698,31 +45841,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45730,7 +45873,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45740,46 +45883,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45787,7 +45937,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45797,7 +45947,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45806,7 +45956,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45815,20 +45965,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45837,7 +45987,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45845,7 +45995,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45854,7 +46004,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45864,20 +46014,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45886,13 +46036,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45902,46 +46052,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45951,7 +46101,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45963,7 +46113,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45971,7 +46121,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45979,7 +46129,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45988,7 +46138,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -46002,7 +46152,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -46012,7 +46162,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -46021,7 +46171,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -46031,54 +46181,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -46089,61 +46239,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -46154,7 +46304,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46163,26 +46313,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46193,20 +46343,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46218,52 +46368,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46271,7 +46421,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46281,10 +46431,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46293,10 +46443,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46305,10 +46455,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46317,10 +46467,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46329,10 +46479,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57662,26 +57812,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/doc/translations/zh_CN.po b/doc/translations/zh_CN.po
index 987dbc88ad..9d8db6ea96 100644
--- a/doc/translations/zh_CN.po
+++ b/doc/translations/zh_CN.po
@@ -52,12 +52,17 @@
# 有趣æžäº† <2944595791@qq.com>, 2021.
# 刘亚西 <wayrboy123@gmail.com>, 2021.
# 诗鸷Temsys <shenshichao920@hotmail.com>, 2021.
+# Sam Sun <oppositenormal@outlook.com>, 2021.
+# sudo-behappy <3216539984@qq.com>, 2021.
+# Cc <2590090025@qq.com>, 2021.
+# è‹è½¼ <youwanyuyu@gmail.com>, 2021.
+# ErrorDreemurr <diandaokui@qq.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-10-16 13:25+0000\n"
-"Last-Translator: WangYi13 <wyi13@outlook.com>\n"
+"PO-Revision-Date: 2021-11-03 13:15+0000\n"
+"Last-Translator: suplife <2634557184@qq.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"godot-engine/godot-class-reference/zh_Hans/>\n"
"Language: zh_CN\n"
@@ -67,43 +72,43 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "æè¿°"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "教程"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "属性"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "方法"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "主题属性"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "ä¿¡å·"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "枚举"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "常é‡"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "属性说明"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "方法说明"
@@ -152,8 +157,8 @@ 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"
+"æ ¹æ®æ ‡å‡†å称 [code]name[/code] 和在0到1区间的值 [code]alpha[/code] 返回一个颜"
+"色。\n"
"[codeblock]\n"
"red = ColorN(\"red\", 1)\n"
"[/codeblock]\n"
@@ -242,7 +247,7 @@ msgstr ""
"push_error] 的加强版,用于å‘项目开å‘者或æ’件用户报错。\n"
"[b]注æ„:[/b] 出于对性能的考虑,[method assert] 中的代ç åªä¼šåœ¨è°ƒè¯•ç‰ˆæœ¬æˆ–者从"
"编辑器è¿è¡Œé¡¹ç›®æ—¶æ‰§è¡Œã€‚所以ä¸è¦åœ¨ [method assert] 调用中加入具有副作用的代ç ã€‚"
-"å¦åˆ™ï¼Œé¡¹ç›®åœ¨ä»¥å‘布模å¼å¯¼å‡ºåŽå°†æœ‰ä¸ä¸€è‡´çš„行为。\n"
+"å¦åˆ™ï¼Œé¡¹ç›®åœ¨ä»¥å‘行模å¼å¯¼å‡ºåŽå°†æœ‰ä¸ä¸€è‡´çš„行为。\n"
"如果给出了å¯é€‰çš„ [code]message[/code] å‚数,在通用的“Assertion failedâ€æ¶ˆæ¯ä¹‹"
"外,还会显示该信æ¯ã€‚ä½ å¯ä»¥ä½¿ç”¨å®ƒæ¥æ供关于断言失败原因的其他详细信æ¯ã€‚\n"
"[codeblock]\n"
@@ -486,18 +491,18 @@ msgstr ""
"\"值。这个缓和函数是基于指数。曲线[code]curve[/code]å¯ä»¥æ˜¯ä»»ä½•æµ®ç‚¹æ•°ï¼Œå…·ä½“æ•°"
"值会导致以下行为。\n"
"[codeblock]\n"
-"- 低于-1.0(独å ï¼‰ã€‚缓进缓出\n"
+"- 低于-1.0(ä¸åŒ…括)。缓进缓出\n"
"- 1.0:线性\n"
-"- 在-1.0å’Œ0.0之间(独å ï¼‰ã€‚缓出-è¿›\n"
+"- 在-1.0å’Œ0.0之间(ä¸åŒ…括)。缓出-è¿›\n"
"- 0.0: æ’定\n"
"- 在0.0到1.0之间(ä¸åŒ…括)。缓进\n"
"- 1.0:线性\n"
"- 大于1.0(ä¸åŒ…括)。缓出\n"
"[/codeblock]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
-"ease_cheatsheet.png]ease()曲线值作弊表[/url]\n"
-"也请看[方法smoothstep]。如果你需è¦æ‰§è¡Œæ›´é«˜çº§çš„转场,请使用[Tween]或"
-"[AnimationPlayer]。(如果地å€æ— æ³•è®¿é—®ç”¨raw.sevencdn.com替æ¢raw."
+"ease_cheatsheet.png]ease()曲线值备忘图[/url]\n"
+"也请看[method smoothstep]。如果你需è¦æ‰§è¡Œæ›´é«˜çº§çš„转场,请使用[Tween]或"
+"[AnimationPlayer]。(如果备忘图地å€æ— æ³•è®¿é—®ç”¨raw.sevencdn.com替æ¢raw."
"githubusercontent.comå¯åŠ é€Ÿè®¿é—®)。"
#: modules/gdscript/doc_classes/@GDScript.xml:274
@@ -539,7 +544,7 @@ msgstr ""
"a = floor(2.99) # a = 2.0\n"
"a = floor(-2.99) # a = -3.0\n"
"[/codeblock]\n"
-"å¦è§ [method ceil]ã€[method round]ã€[method stepify] å’Œ [int]。\n"
+"å‚阅 [method ceil]ã€[method round]ã€[method stepify] å’Œ [int]。\n"
"[b]注æ„:[/b] 该方法返回一个浮点数。如果你需è¦ä¸€ä¸ªæ•´æ•°ï¼Œè€Œ [code]s[/code] 是"
"一个éžè´Ÿæ•°ï¼Œä½ å¯ä»¥ç›´æŽ¥ä½¿ç”¨ [code]int(s)[/code]。"
@@ -736,11 +741,10 @@ msgstr ""
"考虑给定范围,返回归一化值。这与 [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"
+"# `middle` 现在是 27.5\n"
+"# 现在,我们å‡è£…忘记了原æ¥çš„比例,想把它找回æ¥ã€‚\n"
"var ratio = inverse_lerp(20, 30, 27.5)\n"
-"# `ratio` is now 0.75.\n"
+"# `ratio` 现在是 0.75.\n"
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml:430
@@ -754,9 +758,9 @@ msgid ""
msgstr ""
"如果 [code]a[/code] 和 [code]b[/code] 彼此近似相等,则返回 [code]true[/"
"code]。\n"
-"在此,近似等于是指 [code]a[/code] å’Œ [code]b[/code] 彼此之间在较å°çš„内部ε内,"
-"它éšæ•°å­—的大å°æˆæ¯”例。\n"
-"具有相åŒç¬¦å·çš„无穷大值被视为相等。"
+"这里,近似相等æ„味ç€[code]a[/code]å’Œ[code]b[/code]相互之间在一个å°çš„内部ε里,"
+"这个内部εéšç€æ•°å­—的大å°è€Œå˜åŒ–。 \n"
+"相åŒç¬¦å·çš„无穷大值被认为是相等的。"
#: modules/gdscript/doc_classes/@GDScript.xml:439
msgid ""
@@ -816,12 +820,12 @@ 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"
-"如果两者都是相åŒçš„矢é‡ç±»åž‹ï¼ˆ[Vector2]ã€[Vector3]或[Color]),返回值将是相åŒçš„"
-"类型([code]lerp[/code]然åŽè°ƒç”¨è¯¥çŸ¢é‡ç±»åž‹çš„[code]linear_interpolate[/code]æ–¹"
-"法)。\n"
+"用一个归一化的值在两个值之间进行线性æ’值。这与 [method inverse_lerp]相å。\n"
+"如果[code] from [/code]å’Œ[code] to [/code]å‚数类型是 [int] 或 [float],返回值"
+"都是[float]。\n"
+"如果两者都是相åŒçš„å‘é‡ç±»åž‹ï¼ˆ[Vector2]ã€[Vector3]或[Color]),返回值将是相åŒçš„"
+"类型([code]lerp[/code]然åŽè°ƒç”¨è¯¥å‘é‡ç±»åž‹çš„[code] linear_interpolate [/code]"
+"方法)。\n"
"[codeblock]\n"
"lerp(0, 4, 0.75) # 返回3.0\n"
"lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # 返回 Vector2(2, 3.5)\n"
@@ -1577,7 +1581,7 @@ msgstr ""
"code]和[code]1[/code]之间。\n"
"è¿™æ¡S形曲线是立方Hermiteæ’值器,由[code]f(y)=3*y^2-2*y^3[/code]给出,其中"
"[code]y=(x-from)/(to-from)[/code]。\n"
-"[codeblock]。\n"
+"[codeblock]\n"
"smoothstep(0, 2, -5.0) # 返回 0.0\n"
"smoothstep(0, 2, 0.5) # 返回 0.15625\n"
"smoothstep(0, 2, 1.0) # 返回 0.5\n"
@@ -1586,7 +1590,7 @@ msgstr ""
"与曲线值为[code]-1.6521[/code]的[method ease]相比,[method smoothstep]返回最"
"平滑的曲线,导数没有çªç„¶å˜åŒ–。如果你需è¦æ‰§è¡Œæ›´é«˜çº§çš„过渡,请使用[Tween]或"
"[AnimationPlayer]。\n"
-"[url=https://raw.sevencdn.com/godotengine/godot-docs/3.4/img/"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/"
"smoothstep_ease_comparison.png]smoothstep()与 ease(x, -1.6521)返回值的比较[/"
"url]"
@@ -2245,9 +2249,8 @@ msgid "Vertical bottom alignment, usually for text-derived classes."
msgstr "垂直下对é½ï¼Œå¸¸ç”¨äºŽæ–‡æœ¬æ´¾ç”Ÿç±»ã€‚"
#: doc/classes/@GlobalScope.xml:140
-#, fuzzy
msgid "Scancodes with this bit applied are non-printable."
-msgstr "é”®ç åœ¨å¯ç”¨äº†è¯¥æ¯”特ä½åŽæ˜¯ä¸å¯æ‰“å°çš„。"
+msgstr "该比特ä½åº”用的键ç ä¸å¯æ‰“å°ã€‚"
#: doc/classes/@GlobalScope.xml:143
msgid "Escape key."
@@ -4586,6 +4589,9 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回嵌入文本的标签。\n"
+"[b]警告:[/b]这是个必è¦çš„内部节点,删除和释放它有å¯èƒ½é€ æˆå´©æºƒã€‚如果你希望éšè—"
+"它或它的任æ„一个å­èŠ‚点,请使用它们的 [member CanvasItem.visible] 属性。"
#: doc/classes/AcceptDialog.xml:41
msgid ""
@@ -4594,6 +4600,9 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回OK按钮\n"
+"[b]警告:[/b]这是个必è¦çš„内部节点,删除和释放它有å¯èƒ½é€ æˆå´©æºƒã€‚如果你希望éšè—"
+"它或它的任æ„一个å­èŠ‚点,请使用它们的 [member CanvasItem.visible] 属性。"
#: doc/classes/AcceptDialog.xml:49
msgid ""
@@ -4924,7 +4933,6 @@ msgid "Proxy texture for simple frame-based animations."
msgstr "基于简å•å¸§åŠ¨ç”»çš„代ç†çº¹ç†ã€‚"
#: doc/classes/AnimatedTexture.xml:7
-#, fuzzy
msgid ""
"[AnimatedTexture] is a resource format for frame-based animations, where "
"multiple textures can be chained automatically with a predefined delay for "
@@ -4940,15 +4948,17 @@ msgid ""
"[b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each "
"frame needs to be a separate [Texture]."
msgstr ""
-"[AnimatedTexture]是用于基于帧的动画的资æºæ ¼å¼ï¼Œå…¶ä¸­å¯ä»¥è‡ªåŠ¨ä¸ºæ¯ä¸ªå¸§ä»¥é¢„定义的"
-"延迟链接多个纹ç†ã€‚与[AnimationPlayer]或[AnimatedSprite2D]ä¸åŒï¼Œå®ƒä¸æ˜¯[Node],"
-"但具有å¯ä»¥åœ¨å¯ä»¥ä½¿ç”¨[Texture2D]资æºçš„任何地方使用的优点,例如在[TileSet]"
+"[AnimatedTexture]是一ç§èµ„æºæ ¼å¼ï¼Œç”¨äºŽåŸºäºŽå¸§çš„动画,其中多个纹ç†è‡ªåŠ¨é“¾æŽ¥èµ·æ¥ï¼Œ"
+"æ¯å¸§æœ‰é¢„定义延迟。与[AnimationPlayer]或[AnimatedSprite]ä¸åŒï¼Œå®ƒä¸æ˜¯ä¸€ä¸ª"
+"[Node],其优点是å¯åœ¨ä»»ä½•å¯ä»¥ä½¿ç”¨[Texture]资æºçš„地方使用,例如在[TileSet]"
"中。\n"
-"动画的回放由[member fps]属性以åŠæ¯å¸§çš„å¯é€‰å»¶è¿ŸæŽ§åˆ¶ï¼ˆè¯·å‚阅[method "
-"set_frame_delay])。动画循环播放,å³å®ƒå°†åœ¨æ’­æ”¾æœ€åŽä¸€å¸§åŽåœ¨ç¬¬0帧自动é‡æ–°å¼€"
-"始。\n"
-"[AnimatedTexture]当å‰è¦æ±‚所有帧纹ç†å…·æœ‰ç›¸åŒçš„大å°ï¼Œå¦åˆ™è¾ƒå¤§çš„纹ç†å°†è¢«è£å‰ªä»¥åŒ¹"
-"é…最å°çš„纹ç†ã€‚å¦å¤–,它ä¸æ”¯æŒ[AtlasTexture]。æ¯ä¸ªå¸§éœ€è¦æ˜¯å•ç‹¬çš„图åƒã€‚"
+"动画的播放由[member fps]属性以åŠæ¯ä¸€å¸§çš„å¯é€‰å»¶è¿ŸæŽ§åˆ¶ï¼Œå‚阅[method "
+"set_frame_delay]。动画是循环播放的,也就是说,在播放完最åŽä¸€å¸§åŽï¼Œå®ƒå°†è‡ªåŠ¨ä»Ž"
+"第0帧é‡æ–°å¼€å§‹ã€‚\n"
+"[AnimatedTexture]ç›®å‰è¦æ±‚所有帧的纹ç†å…·æœ‰ç›¸åŒçš„尺寸,å¦åˆ™è¾ƒå¤§çš„纹ç†ä¼šè¢«è£å‰ªï¼Œ"
+"与最å°çš„纹ç†ç›¸åŒ¹é…。\n"
+"[b]注æ„:[/b] AnimatedTextureä¸æ”¯æŒä½¿ç”¨[AtlasTexture]。æ¯ä¸€å¸§éƒ½éœ€è¦æ˜¯ä¸€ä¸ªå•ç‹¬"
+"的[Texture]。"
#: doc/classes/AnimatedTexture.xml:19
msgid "Returns the given frame's delay value."
@@ -4987,7 +4997,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/AnimatedTexture.xml:49
-#, fuzzy
msgid ""
"Assigns a [Texture] 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] - "
@@ -4997,9 +5006,9 @@ msgid ""
"animation."
msgstr ""
"å°†[Texture2D]分é…给给定的帧。帧ID从0开始,因此第一帧的ID为0,动画的最åŽä¸€å¸§çš„"
-"ID为[member 帧]-1。\n"
+"ID为[member frames] -1。\n"
"您å¯ä»¥å®šä¹‰ä»»æ„æ•°é‡çš„纹ç†ï¼Œç›´åˆ°[constant MAX_FRAMES],但è¦è®°ä½ï¼Œåªæœ‰0到"
-"[member 帧]-1的帧会æˆä¸ºåŠ¨ç”»çš„一部分。"
+"[member frames]-1的帧会æˆä¸ºåŠ¨ç”»çš„一部分。"
#: doc/classes/AnimatedTexture.xml:56
msgid "Sets the currently visible frame of the texture."
@@ -5062,7 +5071,6 @@ 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 "
@@ -5083,22 +5091,21 @@ msgid ""
"tracks have different types, each with its own set of dedicated methods. "
"Check [enum TrackType] to see available types."
msgstr ""
-"动画资æºåŒ…å«ç”¨äºŽå¯¹å¼•æ“Žä¸­æ‰€æœ‰å†…容进行动画处ç†çš„æ•°æ®ã€‚动画分为轨é“,æ¯ä¸ªè½¨é“å¿…"
-"须链接到一个节点。通过将定时键(事件)添加到轨é“,å¯ä»¥éšæ—¶é—´æ›´æ”¹è¯¥èŠ‚点的状"
-"æ€ã€‚\n"
+"动画资æºåŒ…å«æ•°æ®ï¼Œç”¨äºŽå¯¹å¼•æ“Žä¸­çš„一切对象进行动画化。动画被划分为轨é“,æ¯ä¸ªè½¨"
+"é“必须与一个节点相连。通过å‘轨é“添加时间键或事件,节点状æ€åˆ™å¯é€šè¿‡æ—¶é—´æ¥æ”¹"
+"å˜ã€‚\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"
+"# 这将创建一个动画,使节点 \"Enemy\" å‘å³ç§»åŠ¨\n"
+"# 在0.5秒内移动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"
-"动画åªæ˜¯æ•°æ®å®¹å™¨ï¼Œå¿…须将其添加到诸如[AnimationPlayer]之类的节点æ‰èƒ½æ’­æ”¾ã€‚动画"
-"轨é“有ä¸åŒçš„类型,æ¯ç§éƒ½æœ‰è‡ªå·±çš„专用方法集。选中 [enum TrackType]以查看å¯ç”¨çš„"
-"类型。"
+"动画åªæ˜¯æ•°æ®å®¹å™¨ï¼Œå¿…须添加到[AnimationPlayer]或[AnimationTreePlayer]等节点上"
+"æ‰èƒ½æ’­æ”¾ã€‚动画轨é“有ä¸åŒçš„类型,æ¯ä¸ªéƒ½æœ‰è‡ªå·±çš„一套专用方法。å‚阅[enum "
+"TrackType]查看å¯ç”¨ç±»åž‹ã€‚"
#: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:12
msgid "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html"
@@ -5432,7 +5439,6 @@ msgid "Sets the value of an existing key."
msgstr "设置现有键的值。"
#: doc/classes/Animation.xml:446
-#, fuzzy
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 "
@@ -5441,11 +5447,11 @@ msgid ""
"For example, [code]\"character/skeleton:ankle\"[/code] or [code]\"character/"
"mesh:transform/local\"[/code]."
msgstr ""
-"设置轨迹的路径。路径必须是通往节点的有效场景树路径,并且必须从é‡çŽ°åŠ¨ç”»çš„节点"
-"的父节点开始指定。控制属性或骨骼的轨迹必须在路径åŽé™„加其å称,并以[code]\":"
-"\"[/code]分隔。\n"
-"例如,[code]\"character/skeleton:ankle\"[/code]or[code]\"character/mesh:"
-"transform/local\"[/code]。"
+"设置轨é“的路径。路径必须是指å‘节点场景树的有效路径,必须从将è¦å®žçŽ°åŠ¨ç”»çš„节点"
+"的父节点开始指定。控件属性或骨骼的轨é“必须在路径åŽé¢åŠ ä¸Šå®ƒä»¬çš„å字,用"
+"[code]\":\"[/code]分隔。\n"
+"例如,[code]\"character/skeleton:ankle\"[/code] 或[code]\"character/mesh:"
+"transform/local\"[/code] 。"
#: doc/classes/Animation.xml:455
msgid ""
@@ -5501,13 +5507,13 @@ msgstr ""
"确的æ’值和循环。"
#: doc/classes/Animation.xml:516
-#, fuzzy
msgid ""
"A flag indicating that the animation must loop. This is used for correct "
"interpolation of animation cycles, and for hinting the player that it must "
"restart the animation."
msgstr ""
-"表示动画必须循环的标志。用于正确的动画循环æ’值,并æ示玩家必须é‡æ–°å¼€å§‹åŠ¨ç”»ã€‚"
+"指示动画必须循环的标志。这用于动画循环正确æ’值,以åŠæ示播放器须é‡æ–°å¯åŠ¨åŠ¨"
+"画。"
#: doc/classes/Animation.xml:519
msgid "The animation step value."
@@ -6389,9 +6395,8 @@ msgid "Renames the given node."
msgstr "é‡å‘½å给定的节点。"
#: doc/classes/AnimationNodeStateMachine.xml:152
-#, fuzzy
msgid "Replaces the node and keeps its transitions unchanged."
-msgstr "æ›´æ¢èŠ‚点并ä¿æŒå…¶è¿‡æ¸¡ä¸å˜ã€‚"
+msgstr "替æ¢èŠ‚点并ä¿æŒå…¶è¿‡æ¸¡ä¸å˜ã€‚"
#: doc/classes/AnimationNodeStateMachine.xml:159
msgid "Sets the given node as the graph end point."
@@ -6437,9 +6442,8 @@ msgid "Returns the currently playing animation state."
msgstr "返回当å‰æ’­æ”¾çš„动画状æ€ã€‚"
#: doc/classes/AnimationNodeStateMachinePlayback.xml:32
-#, fuzzy
msgid "Returns the playback position within the current animation state."
-msgstr "返回接触点的局部å标系下的ä½ç½®ã€‚"
+msgstr "返回当å‰åŠ¨ç”»çŠ¶æ€å†…的播放ä½ç½®ã€‚"
#: doc/classes/AnimationNodeStateMachinePlayback.xml:38
msgid ""
@@ -6465,7 +6469,6 @@ msgid ""
msgstr "按照最短路径从当å‰çŠ¶æ€è¿‡æ¸¡åˆ°å¦ä¸€ä¸ªçŠ¶æ€ã€‚"
#: doc/classes/AnimationNodeStateMachineTransition.xml:14
-#, fuzzy
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 "
@@ -6478,11 +6481,11 @@ msgid ""
"(linear_velocity.x == 0)\n"
"[/codeblock]"
msgstr ""
-"当设置此æ¡ä»¶æ—¶ï¼Œå¼€å¯è‡ªåŠ¨å‰è¿›ã€‚æ供的å称将æˆä¸º[AnimationTree]上的一个布尔å‚"
-"数,å¯ä»¥ä»Žä»£ç ä¸­è¿›è¡ŒæŽ§åˆ¶ï¼ˆè§[url=https://docs.godotengine.org/zh_CN/latest/"
-"tutorials/animation/animation_tree.html#controlling-from-code][/url])。例"
-"如,如果[member AnimationTree.tree_root]是一个[AnimationNodeStateMachine],并"
-"且[member advance_condition]设置为[code]\"idle\"[/code]:\n"
+"设置此æ¡ä»¶ï¼Œå¼€å¯è‡ªåŠ¨å‰è¿›ã€‚æ供的å称将æˆä¸º[AnimationTree]上的一个布尔å‚数,å¯"
+"以通过代ç æŽ§åˆ¶ï¼Œå‚阅[url=https://docs.godotengine.org/en/3.4/tutorials/"
+"animation/animation_tree.html#controlling-from-code][/url]。例如,如果"
+"[member AnimationTree.tree_root]是一个[AnimationNodeStateMachine],[member "
+"advance_condition]被设置为[code]\"idle\"[/code]。\n"
"[codeblock]\n"
"$animation_tree[\"parameters/conditions/idle\"] = is_on_floor and "
"(linear_velocity.x == 0)\n"
@@ -6577,6 +6580,21 @@ msgid ""
"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
"[/codeblock]"
msgstr ""
+"这个节点å¯ä»¥ä½¿å‘½ä»¤å‘生在动画图示的所有å­çº§ä¸Šã€‚使用这个节点类型å¯ä»¥ä»Ž"
+"[AnimationNodeBlendTree]内部的开头或æŸä¸ªæ’­æ”¾ä½ç½®å¼€å§‹æ’­æ”¾[Animation]。在设置时"
+"间和改å˜åŠ¨ç”»æ’­æ”¾åŽï¼Œé€šè¿‡è®¾ç½®å…¶[code]seek_position[/code]值为[code]-1.0[/"
+"code],使节点在下一个处ç†å¸§è‡ªåŠ¨è¿›å…¥ä¼‘眠模å¼ã€‚\n"
+"[codeblock]\n"
+"# 从头开始播放å­åŠ¨ç”»ã€‚\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 0.0)\n"
+"# å¦ä¸€ç§è¯­æ³•ï¼ˆç»“果与上述相åŒï¼‰ã€‚\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 0.0\n"
+"\n"
+"# 从12秒的时间戳开始播放å­åŠ¨ç”»ã€‚\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 12.0)\n"
+"# å¦ä¸€ç§è¯­æ³•ï¼ˆç»“果与上述相åŒï¼‰ã€‚\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
+"[/codeblock]"
#: doc/classes/AnimationNodeTransition.xml:4
msgid "A generic animation transition node for [AnimationTree]."
@@ -6728,16 +6746,16 @@ msgid ""
"time this is called, they may be updated too early. To perform the update "
"immediately, call [code]advance(0)[/code]."
msgstr ""
-"用键[code]with key[/code]播放动画。å¯ä»¥è®¾ç½®è‡ªå®šä¹‰æ··åˆæ—¶é—´å’Œé€Ÿåº¦ã€‚如果[code] "
-"custom_speed [/code]为负,[code] from_end [/code]is[code]true[/code],则动画"
-"å°†å‘åŽæ’­æ”¾ï¼ˆç›¸å½“于调用[method play_backwards])。\n"
-"[AnimationPlayer]使用[member Assigned_animation]跟踪其当å‰æˆ–最åŽæ’­æ”¾çš„动画。"
-"如果使用相åŒçš„动画[code] name [/code]或没有[code] name [/code]å‚数调用此方"
-"法,则分é…的动画将在暂åœæ—¶ç»§ç»­æ’­æ”¾ï¼Œæˆ–者在åœæ­¢æ—¶é‡æ–°å¯åŠ¨ï¼ˆè¯·å‚阅[方法]åœæ­¢],"
-"åŒæ—¶æš‚åœå’Œåœæ­¢ã€‚如果动画已ç»åœ¨æ’­æ”¾ï¼Œå®ƒå°†ç»§ç»­æ’­æ”¾ã€‚\n"
-"[b]注æ„:[/b]下次处ç†[AnimationPlayer]时,动画将被更新。如果在调用的åŒæ—¶æ›´æ–°"
-"了其他å˜é‡ï¼Œåˆ™å®ƒä»¬å¯èƒ½æ›´æ–°å¾—太早。è¦ç«‹å³æ‰§è¡Œæ›´æ–°ï¼Œè¯·è°ƒç”¨[code] advance(0)[/"
-"code]。"
+"播放键å为 [code]name[/code] 的动画。å¯ä»¥è®¾ç½®è‡ªå®šä¹‰æ··åˆæ—¶é—´å’Œé€Ÿåº¦ã€‚如果"
+"[code] custom_speed [/code]为负,[code] from_end [/code] =[code]true[/code],"
+"则动画将å‘åŽæ’­æ”¾ï¼ˆç›¸å½“于调用 [method play_backwards])。\n"
+"[AnimationPlayer] 使用 [member Assigned_animation] 跟踪其当å‰æˆ–最åŽæ’­æ”¾çš„动"
+"画。如果使用相åŒçš„动画å [code]name[/code] 或没有 [code] name [/code] å‚æ•°è°ƒ"
+"用此方法,则分é…的动画将在暂åœæ—¶ç»§ç»­æ’­æ”¾ï¼Œæˆ–者在åœæ­¢æ—¶é‡æ–°å¯åŠ¨ï¼ˆè¯·å‚阅 "
+"[method stop],åŒæ—¶æš‚åœå’Œåœæ­¢ã€‚如果动画已ç»åœ¨æ’­æ”¾ï¼Œå®ƒå°†ç»§ç»­æ’­æ”¾ã€‚\n"
+"[b]注æ„:[/b]ä¸‹æ¬¡å¤„ç† [AnimationPlayer] 时,动画将被更新。如果在调用的åŒæ—¶æ›´"
+"新了其他å˜é‡ï¼Œåˆ™å®ƒä»¬å¯èƒ½æ›´æ–°å¾—太早。è¦ç«‹å³æ‰§è¡Œæ›´æ–°ï¼Œè¯·è°ƒç”¨ [code] advance(0)"
+"[/code]。"
#: doc/classes/AnimationPlayer.xml:129
msgid ""
@@ -6746,9 +6764,9 @@ msgid ""
"code] and [code]from_end = true[/code], so see its description for more "
"information."
msgstr ""
-"åå‘播放按键[code]name[/code]的动画。\n"
-"这个方法是 [method play] 的简写,其中 [code]custom_speed = -1.0[/code] and "
-"[code]from_end = true[/code],所以更多信æ¯è¯·å‚阅其æ述。"
+"åå‘播放键å称为 [code]name[/code] 的动画。\n"
+"这个方法是 [method play] 的简写,åªæ˜¯å…¶ä¸­å‚数设为 [code]custom_speed = -1.0[/"
+"code] å’Œ [code]from_end = true[/code],所以更多信æ¯è¯·å‚阅其æ述。"
#: doc/classes/AnimationPlayer.xml:137
msgid ""
@@ -6880,6 +6898,10 @@ msgid ""
"defined by the reset animation, if any, with the editor keeping the values "
"that the nodes had before saving."
msgstr ""
+"这由编辑器使用。如果设置为[code]true[/code],场景在ä¿å­˜æ—¶å°†åº”用é‡ç½®åŠ¨ç”»çš„效果"
+"(就åƒå®ƒå›žåˆ°0时间点),然åŽåœ¨ä¿å­˜åŽæ¢å¤åŽŸçŠ¶ã€‚\n"
+"æ¢å¥è¯è¯´ï¼Œä¿å­˜çš„åœºæ™¯æ–‡ä»¶å°†åŒ…å« \"默认状æ€\",是由é‡ç½®åŠ¨ç”»å®šä¹‰ï¼Œå¦‚果有,编辑器"
+"ä¿æŒèŠ‚点在ä¿å­˜å‰çš„值。"
#: doc/classes/AnimationPlayer.xml:219
msgid "The node from which node path references will travel."
@@ -6944,7 +6966,6 @@ msgid ""
msgstr "用于[AnimationPlayer]中高级动画转æ¢çš„节点。"
#: doc/classes/AnimationTree.xml:7
-#, fuzzy
msgid ""
"A node to be used for advanced animation transitions in an "
"[AnimationPlayer].\n"
@@ -6955,25 +6976,27 @@ msgid ""
"[AnimationPlayer] node should be used solely for adding, deleting, and "
"editing animations."
msgstr ""
-"注æ„:当与[AnimationPlayer]链接时,对应的[AnimationPlayer]的一些属性和方法将"
-"无法按照预期的方å¼è¿è¡Œã€‚播放和转场应仅使用[AnimationTree]åŠå…¶ç»„æˆçš„"
-"[AnimationNode]æ¥å¤„ç†ã€‚AnimationPlayer]节点应仅用于添加ã€åˆ é™¤å’Œç¼–辑动画。"
+"用于[AnimationPlayer]中高级动画过渡的节点。\n"
+"[b]注æ„:[/b]当与一个[AnimationPlayer]链接时,相应的[AnimationPlayer]的一些属"
+"性和方法将ä¸ä¼šåƒé¢„期的那样å‘挥作用。播放和过渡应该åªä½¿ç”¨[AnimationTree]和它的"
+"组æˆ[AnimationNode]æ¥å¤„ç†ã€‚[AnimationPlayer]节点应仅用于添加ã€åˆ é™¤å’Œç¼–辑动"
+"画。"
#: doc/classes/AnimationTree.xml:19
msgid "Manually advance the animations by the specified time (in seconds)."
msgstr "手动将动画å‰è¿›æŒ‡å®šçš„时间(å•ä½ä¸ºç§’)。"
#: doc/classes/AnimationTree.xml:25
-#, fuzzy
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. See also [member root_motion_track] and [RootMotionView]."
msgstr ""
-"èŽ·å– [member root_motion_track] çš„è¿åŠ¨ï¼Œç±»åž‹ä¸º [Transform],å¯åœ¨å…¶å®ƒåœ°æ–¹ä½¿"
-"用。如果 [member root_motion_track] ä¸æ˜¯ [constant Animation.TYPE_TRANSFORM] "
-"类型轨é“的路径,则返回æ’ç­‰å˜æ¢ã€‚"
+"检索[member root_motion_track]çš„è¿åŠ¨ï¼Œä½œä¸ºä¸€ä¸ªå¯ä»¥åœ¨å…¶ä»–地方使用的"
+"[Transform]。如果[member root_motion_track]ä¸æ˜¯ä¸€ä¸ª[constant Animation."
+"TYPE_TRANSFORM]类型轨é“的路径,返回一个å˜æ¢ID。å‚阅[member root_motion_track]"
+"和[RootMotionView]。"
#: doc/classes/AnimationTree.xml:38
msgid "If [code]true[/code], the [AnimationTree] will be processing."
@@ -6991,7 +7014,6 @@ msgstr ""
"该 [AnimationTree] 的处ç†æ¨¡å¼ã€‚å¯ç”¨çš„模å¼è§ [enum AnimationProcessMode]。"
#: doc/classes/AnimationTree.xml:47
-#, 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 "
@@ -7004,12 +7026,13 @@ msgid ""
"stay in place. See also [method get_root_motion_transform] and "
"[RootMotionView]."
msgstr ""
-"æ ¹è¿åŠ¨æ‰€ä½¿ç”¨çš„动画轨é“的路径。路径必须是有效的场景树节点路径,并且必须从想è¦"
-"å†çŽ°åŠ¨ç”»çš„节点的父节点开始。如果è¦æŒ‡å®šæŽ§åˆ¶å±žæ€§æˆ–者骨骼的轨é“,å¯ä»¥å°†å¯¹åº”çš„å"
-"称写在路径åŽé¢ï¼Œä»¥ [code]\":\"[/code] 分隔。例如 [code]\"character/skeleton:"
-"ankle\"[/code] 和 [code]\"character/mesh:transform/local\"[/code]。\n"
-"如果轨é“是 [constant Animation.TYPE_TRANSFORM] 类型的,对应的å˜æ¢å°†è¢«å–消,动"
-"画看上去就是在原地进行。"
+"用于根部è¿åŠ¨çš„动画轨é“的路径。路径必须是指å‘节点的场景树有效路径,必须从将实"
+"现动画的节点的父节点开始指定。è¦æŒ‡å®šæŽ§ä»¶å±žæ€§æˆ–骨骼的轨é“,请在路径åŽé™„加其å"
+"称,用[code]\":\"[/code]隔开。例如,[code]\"character/skeleton:ankle\"[/code]"
+"或[code]\"character/mesh:transform/local\"[/code]。\n"
+"如果轨é“的类型是[constant Animation.TYPE_TRANSFORM],那么将å–消视觉上的å˜æ¢ï¼Œ"
+"其动画将看起æ¥ç•™åœ¨åŽŸåœ°ã€‚å‚阅[method get_root_motion_transform]å’Œ"
+"[RootMotionView]。"
#: doc/classes/AnimationTree.xml:51
msgid "The root animation node of this [AnimationTree]. See [AnimationNode]."
@@ -7049,50 +7072,52 @@ msgid ""
"depending on the graph.\n"
"See [AnimationTree] for a more full-featured replacement of this node."
msgstr ""
+"[i]已弃用。[/i] 节点图示工具,用于混åˆç»‘定在[AnimationPlayer]上的多个动画。对"
+"于给角色或其他基于骨架的é…件制作动画特别有用。它å¯ä»¥ç»“åˆå‡ ä¸ªåŠ¨ç”»æ¥å½¢æˆä¸€ä¸ªæ‰€"
+"需的姿势。\n"
+"它从[AnimationPlayer]节点获å–[Animation],并根æ®å›¾ç¤ºå°†å®ƒä»¬æ··åˆèµ·æ¥ã€‚\n"
+"å‚阅[AnimationTree]以获得该节点的更全é¢çš„功能替代。"
#: doc/classes/AnimationTreePlayer.xml:20
-#, fuzzy
msgid "Adds a [code]type[/code] node to the graph with name [code]id[/code]."
-msgstr "为索引 [code]tab_idx[/code] 处的选项å¡è®¾ç½® [code]title[/code]。"
+msgstr "添加[code]type[/code]节点到图示中,å称为[code]id[/code]。"
#: doc/classes/AnimationTreePlayer.xml:27
-#, fuzzy
msgid ""
"Shifts position in the animation timeline. [code]delta[/code] is the time in "
"seconds to shift. Events between the current frame and [code]delta[/code] "
"are handled."
msgstr ""
-"移动动画时间轴上的ä½ç½®å¹¶ç«‹å³æ›´æ–°åŠ¨ç”»ã€‚[code]delta[/code]是è¦ç§»åŠ¨çš„时间,å•ä½"
-"是秒。处ç†å½“å‰å¸§å’Œ [code]delta[/code] 之间的事件。"
+"移动动画时间轴上的ä½ç½®ã€‚[code]delta[/code]是移动的时间,å•ä½æ˜¯ç§’。当å‰å¸§å’Œ"
+"[code]delta[/code]之间的事件被处ç†ã€‚"
#: doc/classes/AnimationTreePlayer.xml:34
-#, fuzzy
msgid ""
"Returns the [AnimationPlayer]'s [Animation] bound to the "
"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
msgstr ""
-"如果[AnimationPlayer]存储了带有[code]name[/code]with key[Animation],返回"
-"[code]true[/code]。"
+"返回与[AnimationTreePlayer]的动画节点绑定的[Animation],å称为[code]id[/"
+"code]。"
#: doc/classes/AnimationTreePlayer.xml:41
-#, fuzzy
msgid ""
"Returns the name of the [member master_player]'s [Animation] bound to this "
"animation node."
-msgstr "返回此索引处的混åˆå½¢çŠ¶çš„å称。"
+msgstr "返回与此动画节点绑定的[member master_player]çš„[Animation]å称。"
#: doc/classes/AnimationTreePlayer.xml:48
-#, fuzzy
msgid ""
"Returns the absolute playback timestamp of the animation node with name "
"[code]id[/code]."
-msgstr "返回[code]idx[/code]处的节点å称。"
+msgstr "返回å称为[code]id[/code]的动画节点的ç»å¯¹æ’­æ”¾æ—¶é—´æˆ³ã€‚"
#: doc/classes/AnimationTreePlayer.xml:56
msgid ""
"Binds a new [Animation] from the [member master_player] to the "
"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
msgstr ""
+"å°†å称为[code]id[/code]çš„æ–°[Animation]从[member master_player]绑定到"
+"[AnimationTreePlayer]的动画节点。"
#: doc/classes/AnimationTreePlayer.xml:65
msgid ""
@@ -7100,25 +7125,26 @@ msgid ""
"[code]id[/code] turns off the track modifying the property at [code]path[/"
"code]. The modified node's children continue to animate."
msgstr ""
+"如果[code]enable[/code]为[code]true[/code],则ID为[code]id[/code]的动画节点将"
+"关闭修改[code]path[/code]属性的轨é“。修改åŽçš„节点的å­ä»£ç»§ç»­è¿›è¡ŒåŠ¨ç”»å¤„ç†ã€‚"
#: doc/classes/AnimationTreePlayer.xml:73
msgid ""
"Binds the [Animation] named [code]source[/code] from [member master_player] "
"to the animation node [code]id[/code]. Recalculates caches."
msgstr ""
+"å°†[member master_player]中å为[code]source[/code]çš„[Animation]绑定到动画节点"
+"[code]id[/code]。é‡æ–°è®¡ç®—缓存。"
#: doc/classes/AnimationTreePlayer.xml:82
-#, fuzzy
msgid ""
"Returns whether node [code]id[/code] and [code]dst_id[/code] are connected "
"at the specified slot."
-msgstr ""
-"返回索引[code]idx[/code]处项目的id。[code]id[/code]å¯ä»¥æ‰‹åŠ¨åˆ†é…,而索引ä¸èƒ½ã€‚"
+msgstr "返回节点[code]id[/code]å’Œ[code]dst_id[/code]是å¦åœ¨æŒ‡å®šçš„æ’槽上连接。"
#: doc/classes/AnimationTreePlayer.xml:89
-#, fuzzy
msgid "Returns the blend amount of a Blend2 node given its name."
-msgstr "返回指定轨é“中的键数。"
+msgstr "返回给定å称的Blend2节点的混åˆé‡ã€‚"
#: doc/classes/AnimationTreePlayer.xml:97
msgid ""
@@ -7128,6 +7154,10 @@ msgid ""
"At 0, output is input A. Towards 1, the influence of A gets lessened, the "
"influence of B gets raised. At 1, output is input B."
msgstr ""
+"设置Blend2节点的混åˆé‡ï¼Œç»™å®šå…¶å称和值。\n"
+"一个Blend2节点混åˆä¸¤ä¸ªåŠ¨ç”»ï¼ˆAå’ŒB),混åˆé‡åœ¨0到1之间。\n"
+"在0的时候,输出是输入A。接近1的时候,Açš„å½±å“å˜å°ï¼ŒBçš„å½±å“å˜å¤§ã€‚在1时,输出是"
+"输入B。"
#: doc/classes/AnimationTreePlayer.xml:108
msgid ""
@@ -7135,11 +7165,12 @@ msgid ""
"[code]id[/code] turns off the track modifying the property at [code]path[/"
"code]. The modified node's children continue to animate."
msgstr ""
+"如果[code]enable[/code]是[code]true[/code],å称为[code]id[/code]çš„Blend2节点"
+"会关闭修改[code]path[/code]处属性的轨é“。被修改的节点的å­èŠ‚点继续处ç†åŠ¨ç”»ã€‚"
#: doc/classes/AnimationTreePlayer.xml:115
-#, fuzzy
msgid "Returns the blend amount of a Blend3 node given its name."
-msgstr "返回指定轨é“中的键数。"
+msgstr "返回给定å称的Blend3节点的混åˆé‡ã€‚"
#: doc/classes/AnimationTreePlayer.xml:123
msgid ""
@@ -7158,9 +7189,8 @@ msgstr ""
"为1时,输出为动画B+。"
#: doc/classes/AnimationTreePlayer.xml:132
-#, fuzzy
msgid "Returns the blend amount of a Blend4 node given its name."
-msgstr "返回指定轨é“中的键数。"
+msgstr "返回给定å称的Blend4节点的混åˆé‡ã€‚"
#: doc/classes/AnimationTreePlayer.xml:140
msgid ""
@@ -7168,35 +7198,36 @@ msgid ""
"A Blend4 Node blends two pairs of animations.\n"
"The two pairs are blended like Blend2 and then added together."
msgstr ""
+"设置Blend4节点的混åˆé‡ï¼Œç»™å®šå…¶å称和值。\n"
+"Blend4节点å¯ä»¥æ··åˆä¸¤å¯¹åŠ¨ç”»ã€‚\n"
+"这两对动画åƒBlend2一样被混åˆï¼Œç„¶åŽç›¸åŠ åœ¨ä¸€èµ·ã€‚"
#: doc/classes/AnimationTreePlayer.xml:151
-#, fuzzy
msgid ""
"Connects node [code]id[/code] to [code]dst_id[/code] at the specified input "
"slot."
-msgstr "断开连接到指定输入端的节点。"
+msgstr "将节点[code]id[/code]连接到指定输入æ’槽的[code]dst_id[/code]。"
#: doc/classes/AnimationTreePlayer.xml:159
-#, fuzzy
msgid ""
"Disconnects nodes connected to [code]id[/code] at the specified input slot."
-msgstr "断开连接到指定输入端的节点。"
+msgstr "断开在指定输入æ’槽连接到[code]id[/code]的节点。"
#: doc/classes/AnimationTreePlayer.xml:165
-#, fuzzy
msgid "Returns a [PoolStringArray] containing the name of all nodes."
-msgstr "返回一个 [Array],包å«å½“å‰æ‰€æœ‰è¿žæŽ¥æ‰‹æŸ„的设备 ID。"
+msgstr "返回包å«æ‰€æœ‰èŠ‚点å称的[PoolStringArray]。"
#: doc/classes/AnimationTreePlayer.xml:172
-#, fuzzy
msgid "Returns the mix amount of a Mix node given its name."
-msgstr "返回指定轨é“中的键数。"
+msgstr "返回给定å称的Mix节点的混åˆé‡ã€‚"
#: doc/classes/AnimationTreePlayer.xml:180
msgid ""
"Sets the mix amount of a Mix node given its name and value.\n"
"A Mix node adds input b to input a by the amount given by ratio."
msgstr ""
+"设置混åˆèŠ‚点的混åˆé‡ï¼Œç»™å®šå®ƒçš„å称和值。\n"
+"æ··åˆèŠ‚点将输入b添加到输入a中,其é‡ç”±æ¯”率给出。"
#: doc/classes/AnimationTreePlayer.xml:188
msgid "Check if a node exists (by name)."
@@ -7206,90 +7237,78 @@ msgstr "按å称检查节点是å¦å­˜åœ¨ã€‚"
msgid ""
"Returns the input count for a given node. Different types of nodes have "
"different amount of inputs."
-msgstr ""
+msgstr "返回给定节点的输入计数。ä¸åŒç±»åž‹çš„节点有ä¸åŒçš„输入数é‡ã€‚"
#: doc/classes/AnimationTreePlayer.xml:203
-#, fuzzy
msgid "Returns the input source for a given node input."
-msgstr "返回给定步骤的输入断点。"
+msgstr "返回给定节点输入的输入æºã€‚"
#: doc/classes/AnimationTreePlayer.xml:210
-#, fuzzy
msgid "Returns position of a node in the graph given its name."
-msgstr "返回指定å称的动画节点。"
+msgstr "返回给定其å称节点在图示中的ä½ç½®ã€‚"
#: doc/classes/AnimationTreePlayer.xml:217
-#, fuzzy
msgid "Gets the node type, will return from [enum NodeType] enum."
-msgstr "获å–当å‰èŠ‚点的类型。与[enum NodeType]常é‡æ¯”较。"
+msgstr "获å–节点类型,将从[enum NodeType]枚举中返回。"
#: doc/classes/AnimationTreePlayer.xml:225
-#, fuzzy
msgid "Renames a node in the graph."
-msgstr "从图中删除指定的节点。"
+msgstr "é‡å‘½å图示中的一个节点。"
#: doc/classes/AnimationTreePlayer.xml:233
-#, fuzzy
msgid "Sets the position of a node in the graph given its name and position."
-msgstr "将给定的节点设置为图形的端点。"
+msgstr "设置节点在图示中的ä½ç½®ï¼Œç»™å®šå…¶å称和ä½ç½®ã€‚"
#: doc/classes/AnimationTreePlayer.xml:240
-#, fuzzy
msgid "Returns the autostart delay of a OneShot node given its name."
-msgstr "返回给定轨é“中给定键的值。"
+msgstr "返回给定å称的OneShot节点的自动å¯åŠ¨å»¶è¿Ÿã€‚"
#: doc/classes/AnimationTreePlayer.xml:247
-#, fuzzy
msgid "Returns the autostart random delay of a OneShot node given its name."
-msgstr "返回指定å称的动画节点。"
+msgstr "返回给定å称的OneShot节点的自动å¯åŠ¨éšæœºå»¶è¿Ÿã€‚"
#: doc/classes/AnimationTreePlayer.xml:254
-#, fuzzy
msgid "Returns the fade in time of a OneShot node given its name."
-msgstr "返回指定å称的动画节点。"
+msgstr "返回给定å称的OneShot节点的淡入时间。"
#: doc/classes/AnimationTreePlayer.xml:261
-#, fuzzy
msgid "Returns the fade out time of a OneShot node given its name."
-msgstr "返回与给定å称相匹é…的第一个图å—。"
+msgstr "返回给定其å称的OneShot节点的淡出时间。"
#: doc/classes/AnimationTreePlayer.xml:268
-#, fuzzy
msgid "Returns whether a OneShot node will auto restart given its name."
-msgstr "返回指定å称的动画节点。"
+msgstr "返回OneShot节点是å¦ä¼šæ ¹æ®å…¶å称自动é‡æ–°å¯åŠ¨ã€‚"
#: doc/classes/AnimationTreePlayer.xml:275
-#, fuzzy
msgid "Returns whether a OneShot node is active given its name."
-msgstr "返回指定å称的动画节点。"
+msgstr "返回指定å称的OneShot节点是å¦å¤„于活动状æ€ã€‚"
#: doc/classes/AnimationTreePlayer.xml:283
msgid ""
"Sets the autorestart property of a OneShot node given its name and value."
-msgstr ""
+msgstr "设置OneShot节点的自动å¯åŠ¨å±žæ€§ï¼Œç»™å®šå…¶å称和值。"
#: doc/classes/AnimationTreePlayer.xml:291
msgid ""
"Sets the autorestart delay of a OneShot node given its name and value in "
"seconds."
-msgstr ""
+msgstr "设置OneShot节点的自动å¯åŠ¨å»¶è¿Ÿï¼Œç»™å®šå…¶å称和值,å•ä½ç§’。"
#: doc/classes/AnimationTreePlayer.xml:299
msgid ""
"Sets the autorestart random delay of a OneShot node given its name and value "
"in seconds."
-msgstr ""
+msgstr "设置OneShot节点的自动é‡å¯éšæœºå»¶è¿Ÿï¼Œç»™å®šå…¶å称和数值,å•ä½ç§’。"
#: doc/classes/AnimationTreePlayer.xml:307
-#, fuzzy
msgid ""
"Sets the fade in time of a OneShot node given its name and value in seconds."
-msgstr "设置æ’值为指定的[code]time[/code],å•ä½ç§’。"
+msgstr "设置OneShot节点的淡入时间,给定其å称和数值,å•ä½ç§’。"
#: doc/classes/AnimationTreePlayer.xml:315
msgid ""
"Sets the fade out time of a OneShot node given its name and value in seconds."
-msgstr ""
+msgstr "设置OneShot节点的淡出时间,给定其å称和数值,å•ä½ç§’。"
#: doc/classes/AnimationTreePlayer.xml:324
msgid ""
@@ -7297,16 +7316,16 @@ msgid ""
"[code]id[/code] turns off the track modifying the property at [code]path[/"
"code]. The modified node's children continue to animate."
msgstr ""
+"如果[code]enable[/code]是[code]true[/code],ID为[code]id[/code]的OneShot节点"
+"会关闭修改[code]path[/code]处属性的轨é“。被修改的节点的å­èŠ‚点继续进行动画。"
#: doc/classes/AnimationTreePlayer.xml:331
-#, fuzzy
msgid "Starts a OneShot node given its name."
-msgstr "开始播放指定的动画。"
+msgstr "å¯åŠ¨æŒ‡å®šå称的OneShot节点。"
#: doc/classes/AnimationTreePlayer.xml:338
-#, fuzzy
msgid "Stops the OneShot node with name [code]id[/code]."
-msgstr "返回[code]idx[/code]处的节点å称。"
+msgstr "åœæ­¢å称为[code]id[/code]çš„OneShot节点。"
#: doc/classes/AnimationTreePlayer.xml:344
msgid ""
@@ -7314,21 +7333,21 @@ msgid ""
"animation nodes. Needed when external sources modify the animation nodes' "
"state."
msgstr ""
+"手动é‡æ–°è®¡ç®—由动画节点生æˆçš„轨é“ä¿¡æ¯ç¼“存。当外部资æºä¿®æ”¹åŠ¨ç”»èŠ‚点的状æ€æ—¶éœ€è¦"
+"用到。"
#: doc/classes/AnimationTreePlayer.xml:351
-#, fuzzy
msgid "Removes the animation node with name [code]id[/code]."
-msgstr "移除按键[code]name[/code]的动画。"
+msgstr "移除å称为[code]id[/code]的动画节点。"
#: doc/classes/AnimationTreePlayer.xml:357
msgid "Resets this [AnimationTreePlayer]."
msgstr "é‡ç½®æ­¤ [AnimationTreePlayer]。"
#: doc/classes/AnimationTreePlayer.xml:364
-#, fuzzy
msgid ""
"Returns the time scale value of the TimeScale node with name [code]id[/code]."
-msgstr "返回具有给定 [code] name [/code] çš„æ质属性的默认值。"
+msgstr "返回å称为[code]id[/code]çš„TimeScale节点的时间缩放值。"
#: doc/classes/AnimationTreePlayer.xml:372
msgid ""
@@ -7339,6 +7358,9 @@ msgid ""
"If applied after a blend or mix, affects all input animations to that blend "
"or mix."
msgstr ""
+"设置å称为[code]id[/code]çš„TimeScale节点的时间缩放为[code]scale[/code]。\n"
+"时间缩放节点用æ¥åŠ å¿«[Animation]的速度,如果缩放高于1,就会å‡æ…¢å®ƒä»¬ã€‚\n"
+"如果在混åˆåŽåº”用,会影å“到该混åˆçš„所有输入动画。"
#: doc/classes/AnimationTreePlayer.xml:382
msgid ""
@@ -7347,33 +7369,34 @@ msgid ""
"This functions as a seek in the [Animation] or the blend or mix of "
"[Animation]s input in it."
msgstr ""
+"设置å称为[code]id[/code]çš„TimeSeek节点的时间查寻值为[code]seconds[/code]。\n"
+"这在[Animation]或输入的[Animation]çš„æ··åˆä¸­èµ·åˆ°æŸ¥å¯»çš„作用。"
#: doc/classes/AnimationTreePlayer.xml:391
-#, fuzzy
msgid ""
"Deletes the input at [code]input_idx[/code] for the transition node with "
"name [code]id[/code]."
-msgstr "返回[code]prop_idx[/code]处的属性å称,用于[code]idx[/code]处的节点。"
+msgstr "删除å称为[code]id[/code]的过渡节点的[code]input_idx[/code]的输入。"
#: doc/classes/AnimationTreePlayer.xml:398
-#, fuzzy
msgid ""
"Returns the index of the currently evaluated input for the transition node "
"with name [code]id[/code]."
-msgstr "返回带有给定[code]id[/code]的项的索引。"
+msgstr "返回å称为[code]id[/code]的过渡节点的当å‰è¯„估输入的索引。"
#: doc/classes/AnimationTreePlayer.xml:405
msgid ""
"Returns the number of inputs for the transition node with name [code]id[/"
"code]. You can add inputs by right-clicking on the transition node."
msgstr ""
+"返回å称为[code]id[/code]的过渡节点的输入数。你å¯ä»¥é€šè¿‡å³é”®ç‚¹å‡»è¿‡æ¸¡èŠ‚点æ¥å¢žåŠ "
+"输入。"
#: doc/classes/AnimationTreePlayer.xml:412
-#, fuzzy
msgid ""
"Returns the cross fade time for the transition node with name [code]id[/"
"code]."
-msgstr "返回[code]idx[/code]处的节点å称。"
+msgstr "返回å称为[code]id[/code]的过渡节点的交å‰æ·¡åŒ–时间。"
#: doc/classes/AnimationTreePlayer.xml:420
msgid ""
@@ -7381,41 +7404,41 @@ msgid ""
"transition node with name [code]id[/code] is set to automatically advance to "
"the next input upon completion."
msgstr ""
+"如果过渡节点上å称为[code]id[/code]çš„[code]input_idx[/code]的输入被设置为在完"
+"æˆåŽè‡ªåŠ¨å‰è¿›åˆ°ä¸‹ä¸€ä¸ªè¾“入,则返回[code]true[/code]。"
#: doc/classes/AnimationTreePlayer.xml:428
-#, fuzzy
msgid ""
"The transition node with name [code]id[/code] sets its current input at "
"[code]input_idx[/code]."
msgstr ""
-"å°†è½¨é“ [code]idx[/code] 的索引ä½ç½®æ”¹ä¸º [code]to_idx[/code] 中定义的ä½ç½®ã€‚"
+"å称为 [code]id[/code] 的过渡节点将其当å‰è¾“入设置为 [code]input_idx[/code]。"
#: doc/classes/AnimationTreePlayer.xml:437
msgid ""
"The transition node with name [code]id[/code] advances to its next input "
"automatically when the input at [code]input_idx[/code] completes."
msgstr ""
+"当[code]input_idx[/code]处的输入完æˆåŽï¼Œå称为[code]id[/code]的过渡节点自动进"
+"行到下一个输入。"
#: doc/classes/AnimationTreePlayer.xml:445
-#, fuzzy
msgid ""
"Resizes the number of inputs available for the transition node with name "
"[code]id[/code]."
-msgstr "返回与给定[code] id [/code]å…³è”的点的æƒé‡æ¯”例。"
+msgstr "调整å称为[code]id[/code]的过渡节点的å¯ç”¨è¾“入数。"
#: doc/classes/AnimationTreePlayer.xml:453
-#, fuzzy
msgid ""
"The transition node with name [code]id[/code] sets its cross fade time to "
"[code]time_sec[/code]."
msgstr ""
-"å°†è½¨é“ [code]idx[/code] 的索引ä½ç½®æ”¹ä¸º [code]to_idx[/code] 中定义的ä½ç½®ã€‚"
+"å称为[code]id[/code]的过渡节点将其交å‰æ·¡åŒ–时间设置为[code]time_sec[/code]。"
#: doc/classes/AnimationTreePlayer.xml:459
-#, fuzzy
msgid ""
"If [code]true[/code], the [AnimationTreePlayer] is able to play animations."
-msgstr "如果 [code]true[/code] 时,[AnimationTree] 将执行逻辑处ç†ã€‚"
+msgstr "如果[code]true[/code],[AnimationTreePlayer]就能够播放动画。"
#: doc/classes/AnimationTreePlayer.xml:462
msgid ""
@@ -7423,6 +7446,8 @@ msgid ""
"It accesses the bones, so it should point to the same node the "
"[AnimationPlayer] would point its Root Node at."
msgstr ""
+"相对访问其他节点的节点。\n"
+"它访问骨骼,应该指å‘[AnimationPlayer]将指å‘其根节点的åŒä¸€ä¸ªèŠ‚点。"
#: doc/classes/AnimationTreePlayer.xml:466
msgid ""
@@ -7430,6 +7455,9 @@ msgid ""
"binds animations to animation nodes.\n"
"Once set, [Animation] nodes can be added to the [AnimationTreePlayer]."
msgstr ""
+"通过 [AnimationPlayer] 的路径,此 [AnimationTreePlayer] 将动画绑定到动画节"
+"点。\n"
+"设置åŽï¼Œ[Animation]节点å¯ä»¥æ·»åŠ åˆ°[AnimationPlayer]。"
#: doc/classes/AnimationTreePlayer.xml:470
msgid "The thread in which to update animations."
@@ -7494,39 +7522,45 @@ msgid "https://godotengine.org/asset-library/asset/127"
msgstr "https://godotengine.org/asset-library/asset/127"
#: doc/classes/Area.xml:17
+#, fuzzy
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
-"返回一个相交的区域[Area]的列表。由于性能原因(碰撞都是åŒæ—¶å¤„ç†çš„),这个列表"
-"在物ç†æ­¥éª¤ä¸­è¢«ä¿®æ”¹ä¸€æ¬¡ï¼Œè€Œä¸æ˜¯åœ¨ç‰©ä½“被移动åŽç«‹å³ä¿®æ”¹ã€‚å¯ä»¥è€ƒè™‘使用信å·æ¥ä»£"
-"替。"
+"返回一个相交的[PhysicsBody]的列表。由于性能的原因(碰撞都是在åŒä¸€æ—¶é—´å¤„ç†"
+"的),这个列表在物ç†æ­¥éª¤ä¸­è¢«ä¿®æ”¹ä¸€æ¬¡ï¼Œè€Œä¸æ˜¯åœ¨ç‰©ä½“被移动åŽç«‹å³ä¿®æ”¹ã€‚å¯ä»¥è€ƒè™‘"
+"使用信å·æ¥ä»£æ›¿ã€‚"
-#: doc/classes/Area.xml:23
+#: doc/classes/Area.xml:24
+#, fuzzy
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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 ""
"返回一个相交的[PhysicsBody]的列表。由于性能的原因(碰撞都是在åŒä¸€æ—¶é—´å¤„ç†"
"的),这个列表在物ç†æ­¥éª¤ä¸­è¢«ä¿®æ”¹ä¸€æ¬¡ï¼Œè€Œä¸æ˜¯åœ¨ç‰©ä½“被移动åŽç«‹å³ä¿®æ”¹ã€‚å¯ä»¥è€ƒè™‘"
"使用信å·æ¥ä»£æ›¿ã€‚"
-#: doc/classes/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\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 ""
-"如果 [code]true[/code],则给定区域与该区域é‡å ã€‚\n"
-" [b]注æ„:[/b]在移动物体åŽï¼Œè¿™ä¸ªæµ‹è¯•çš„结果ä¸æ˜¯å³æ—¶çš„。为了性能,é‡å åˆ—表在æ¯"
-"一帧和物ç†æ­¥éª¤ä¹‹å‰æ›´æ–°ä¸€æ¬¡ã€‚å¯ä»¥è€ƒè™‘用信å·ä»£æ›¿ã€‚"
+"如果 [code]true[/code],则给定区域与该区域é‡å .\n"
+"[b]注æ„:[/b]在移动物体åŽï¼Œè¿™ä¸ªæµ‹è¯•çš„结果ä¸æ˜¯å³æ—¶çš„。为了性能,é‡å åˆ—表在æ¯ä¸€"
+"帧和物ç†æ­¥éª¤ä¹‹å‰æ›´æ–°ä¸€æ¬¡ã€‚å¯ä»¥è€ƒè™‘用信å·ä»£æ›¿ã€‚"
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -7536,48 +7570,48 @@ msgid ""
"instance (while GridMaps are not physics body themselves, they register "
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-"如果为[code]true[/code],则给定的物ç†ä½“与该区域é‡å ã€‚\n"
+"如果为[code]true[/code],则给定的物ç†ä½“与该区域é‡å .\n"
"[b]注æ„:[/b]在移动物体åŽï¼Œè¿™ä¸ªæµ‹è¯•çš„结果ä¸æ˜¯å³æ—¶çš„。为了æ高性能,é‡å åˆ—表在"
"æ¯ä¸€å¸§å’Œç‰©ç†æ­¥éª¤ä¹‹å‰æ›´æ–°ä¸€æ¬¡ã€‚å¯ä»¥è€ƒè™‘使用信å·æ¥ä»£æ›¿ã€‚\n"
"[code]body[/code]å‚æ•°å¯ä»¥æ˜¯ä¸€ä¸ª[PhysicsBody]或一个[GridMap]实例(虽然GridMaps"
"本身ä¸æ˜¯ç‰©ç†ä½“,但它们用碰撞形状注册它们的瓦片(tiles)作为一个虚拟物ç†ä½“)。"
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/3d/default_angular_damp] for more "
"details about damping."
msgstr ""
-"物体在此区域åœæ­¢æ—‹è½¬çš„速度。代表æ¯ç§’æŸå¤±çš„角速度。\n"
+"物体在此区域åœæ­¢æ—‹è½¬çš„速度。代表æ¯ç§’æŸå¤±çš„角速度.\n"
"关于阻尼的更多细节,è§[member ProjectSettings.physics/3d/"
"default_angular_damp]。"
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
-msgstr "该区域音频总线的å称。"
+msgstr "该区域音频总线的å称."
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr "如果[code]true[/code],该区域的音频总线覆盖默认的音频总线。"
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-"该区域内的é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ï¼šç±³/秒平方)。这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这对åªæ”¹å˜å¼•åŠ›"
-"大å°è€Œä¸æ”¹å˜å…¶æ–¹å‘很有用。"
+"该区域内的é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ï¼šm/s^2)。这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这个é‡åœ¨æ”¹å˜å¼•åŠ›å¤§"
+"å°è€Œä¸æ”¹å˜å…¶æ–¹å‘很有用。"
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
-msgstr "点状é‡åŠ›çš„è¡°å‡ç³»æ•°ã€‚该值越大,é‡åŠ›å€¼éšè·ç¦»ä¸‹é™çš„速度就越快。"
+msgstr "点é‡åŠ›çš„è¡°å‡ç³»æ•°ã€‚该值越大,é‡åŠ›å€¼éšè·ç¦»ä¸‹é™çš„速度就越快。"
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
@@ -7585,40 +7619,40 @@ msgstr ""
"如果 [code]true[/code],则从一个点计算é‡åŠ›ï¼ˆé€šè¿‡ [member gravity_vec] 设"
"置)。å‚阅 [member space_override]。"
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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 ""
-"区域的é‡åŠ›å‘é‡ï¼ˆæœªå½’一化)。如果é‡åŠ›æ˜¯ä¸€ä¸ªç‚¹ï¼ˆè¯·å‚阅[membergravity_point]),"
-"则这将是å¸å¼•åŠ›ç‚¹ã€‚"
+"区域的未归一化的é‡åŠ›å‘é‡ã€‚如果é‡åŠ›ä½œç”¨åœ¨ä¸€ä¸ªç‚¹ä¸Šï¼Œåˆ™å®ƒå°†æ˜¯å¼•åŠ›ç‚¹ã€‚å‚阅"
+"[membergravity_point]。"
-#: doc/classes/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
-"物体在此区域åœæ­¢è¿åŠ¨çš„速度。代表æ¯ç§’æŸå¤±çš„线速度。\n"
+"物体在此区域å‡é€Ÿçš„速率。代表æ¯ç§’æŸå¤±çš„线速度。\n"
"关于阻尼的更多细节,è§[member ProjectSettings.physics/3d/"
"default_linear_damp]。"
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr "如果[code]true[/code],其他监测区域å¯ä»¥æ£€æµ‹åˆ°è¿™ä¸ªåŒºåŸŸã€‚"
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr "如果[code]true[/code],则该区域检测进入和退出该区域的机构或区域。"
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr "该地区的优先级。优先级较高的地区优先处ç†ã€‚"
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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."
@@ -7626,15 +7660,15 @@ msgstr ""
"该区域对其相关音频应用混å“的程度。范围从[code]0[/code]到[code]1[/code],精度"
"为[code]0.1[/code]。"
-#: doc/classes/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
-msgstr "如果[code]true[/code],则该区域将混å“应用于其相关音频。"
+msgstr "如果为[code]true[/code],则该区域将混å“应用于其相关音频。"
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
-msgstr "这个区域的相关音频è¦ä½¿ç”¨çš„æ··å“总线å称。"
+msgstr "这个区域的相关音频è¦ä½¿ç”¨çš„æ··å“总线å称."
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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."
@@ -7642,23 +7676,23 @@ msgstr ""
"这个区域的混å“效果å‡åŒ€çš„程度。范围从[code]0[/code]到[code]1[/code],精度为"
"[code]0.1[/code]。"
-#: doc/classes/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr "该区域内é‡åŠ›å’Œé˜»å°¼è®¡ç®—的覆盖模å¼ã€‚å¯èƒ½çš„值è§[enum SpaceOverride]。"
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-"当å¦ä¸€ä¸ªåŒºåŸŸè¿›å…¥è¿™ä¸ªåŒºåŸŸæ—¶å‘出的。需è¦å°†ç›‘控[member monitoring]设置为"
+"当å¦ä¸€ä¸ªArea进入这个Area时触å‘。需è¦å°†ç›‘控[member monitoring]设置为"
"[code]true[/code]。\n"
-"[code]area[/code]å‚数是进入的其他区域。"
+"[code]area[/code]å‚数是å¦å¤–一个Area。"
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
@@ -7666,10 +7700,9 @@ msgid ""
msgstr ""
"当å¦ä¸€ä¸ªåŒºåŸŸé€€å‡ºè¿™ä¸ªåŒºåŸŸæ—¶å‘出的。è¦æ±‚监控[member monitoring]被设置为"
"[code]true[/code]。\n"
-"[code]area[/code]å‚数是进入的其他区域。"
+"[code]area[/code]å‚数是å¦å¤–一个Area。"
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
-#, fuzzy
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7683,17 +7716,19 @@ msgid ""
"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-"当å¦ä¸€ä¸ªåŒºåŸŸçš„一个形状[Shape]进入这个区域的一个形状[Shape]æ—¶å‘出的。è¦æ±‚监控"
-"[member monitoring]被设置为[code]true[/code]。\n"
-"[code] area_id[/code] å‚数是[PhysicsServer]使用的其他区域的[CollisionObject]"
-"的[RID]。\n"
-"[code]area[/code] å‚数是其他区域。\n"
-"[code]area_shape[/code] å‚数是被[PhysicsServer]使用的其他区域的[Shape]çš„ç´¢"
-"引。\n"
-"[code]local_shape[/code]å‚数是被[PhysicsServer]使用的这个区域的[Shape]çš„ç´¢"
-"引。"
+"当å¦ä¸€ä¸ªåŒºåŸŸçš„一个[Shape]进入这个区域的一个[Shape]æ—¶å‘出的。è¦æ±‚[member "
+"monitoring] 被设置为[code]true[/code]。\n"
+"[code]area_rid[/code] [PhysicsServer]使用的其他区域的[CollisionObject]的"
+"[RID]。\n"
+"[code]area[/code] 其他区域。\n"
+"[code]area_shape_index[/code] [PhysicsServer]使用的其他区域的[Shape]的索引。"
+"用[code]area.shape_owner_get_owner(area_shape_index)[/code]获得"
+"[CollisionShape]节点。\n"
+"[code]local_shape_index[/code]是[PhysicsServer]使用的该区域的[Shape]的索引。"
+"用[code]self.shape_owner_get_owner(local_shape_index)[/code]获得"
+"[CollisionShape]节点。"
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7704,10 +7739,10 @@ msgstr ""
"当[PhysicsBody]或[GridMap]进入这个区域时å‘出的。需è¦å°†ç›‘控[member monitoring]"
"设置为[code]true[/code]。如果[MeshLibrary]有碰撞形状[Shape],就会检测到"
"[GridMap]。\n"
-"[code]body[/code]是å¦ä¸€ä¸ª[PhysicsBody]或[GridMap]的节点[Node],如果它存在于场"
-"景树中。"
+"[code]body[/code], 如果它存在于场景树中, 是å¦ä¸€ä¸ª[PhysicsBody]或[GridMap]节点"
+"[Node]。"
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -7715,14 +7750,13 @@ msgid ""
"[code]body[/code] the [Node], if it exists in the tree, of the other "
"[PhysicsBody] or [GridMap]."
msgstr ""
-"当[PhysicsBody]或[GridMap]离开这个区域时å‘出的。需è¦å°†ç›‘控[member monitoring]"
+"当[PhysicsBody]或[GridMap]离开这个Areaæ—¶å‘出的。需è¦å°†ç›‘控[member monitoring]"
"设置为[code]true[/code]。如果[MeshLibrary]有碰撞形状[Shape],就会检测到"
"[GridMap]。\n"
-"[code]body[/code]是其他[PhysicsBody]或[GridMap]的[Node],如果它存在于场景树"
-"中。"
+"[code]body[/code], 如果它存在于场景树中, 是其他[PhysicsBody]或[GridMap]的"
+"[Node]。"
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
-#, fuzzy
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -7738,29 +7772,31 @@ msgid ""
"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-"当[PhysicsBody]或[GridMap]的一个形状[Shape]进入这个区域的一个形状[Shape]æ—¶å‘"
-"出的。需è¦å°†ç›‘控[member monitoring]设置为[code]true[/code]。如果[MeshLibrary]"
-"有碰撞形状[Shape],就会检测到[GridMap]。\n"
-"[code]body_id[/code]å‚数是[PhysicsServer]使用的[PhysicsBody]或[MeshLibrary]çš„"
-"[CollisionObject]的RID。\n"
-"[code]body[/code] å‚数是[PhysicsBody]或[GridMap]çš„[Node],如果它存在于树"
-"中。\n"
-"[code]body_shape[/code] å‚数是由[PhysicsServer]使用的[PhysicsBody]或[GridMap]"
-"的[Shape]的索引。\n"
-"[code]local_shape[/code] å‚数是[PhysicsServer]使用的这个区域的[Shape]的索引。"
-
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+"当[PhysicsBody]或[GridMap]的一个[Shape]进入这个区域的一个[Shape]时触å‘。需è¦"
+"将[member monitoring]设置为[code]true[/code]。如果[MeshLibrary]有碰撞"
+"[Shape],就会检测到[GridMap]。\n"
+"[code]body_rid[/code] [PhysicsServer]使用的[PhysicsBody]或[MeshLibrary]的"
+"[CollisionObject]的[RID]。\n"
+"[code]body[/code] [PhysicsBody]或[GridMap]çš„[Node],如果它存在于树中的è¯ã€‚\n"
+"[code]body_shape_index[/code] [PhysicsServer]使用的[PhysicsBody]或[GridMap]的"
+"[Shape]的索引。用[code]body.shape_owner_get_owner(body_shape_index)[/code]获"
+"å–[CollisionShape]节点。\n"
+"[code]local_shape_index[/code]这个区域的[Shape]的索引,由[PhysicsServer]使"
+"用。用[code]self.shape_owner_get_owner(local_shape_index)[/code]获得"
+"[CollisionShape]节点。"
+
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr "这个区域ä¸å½±å“é‡åŠ›/阻尼。"
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
"该区域将其é‡åŠ›/阻尼值加到迄今为止计算出的任何值上(按[member 优先级]排åºï¼‰ã€‚"
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
@@ -7768,13 +7804,13 @@ msgstr ""
"该区域将其é‡åŠ›/阻尼值添加到到目å‰ä¸ºæ­¢å·²è®¡ç®—的任何内容(按[member 优先级]顺"
"åºï¼‰ï¼Œè€Œå¿½ç•¥ä»»ä½•è¾ƒä½Žä¼˜å…ˆçº§çš„区域。"
-#: doc/classes/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr "该区域将替æ¢æ‰€æœ‰é‡åŠ›/阻尼,甚至是默认值,而忽略任何较低优先级的区域。"
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -7813,26 +7849,32 @@ msgid "https://godotengine.org/asset-library/asset/120"
msgstr "https://godotengine.org/asset-library/asset/120"
#: doc/classes/Area2D.xml:19
+#, fuzzy
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"返回相交的 [Area2D] 的列表。由于性能原因(碰撞都是åŒæ—¶å¤„ç†çš„),该列表ä¸ä¼šåœ¨"
"对象移动åŽç«‹å³æ›´æ–°ï¼Œåªä¼šåœ¨ç‰©ç†æ›´æ–°æ—¶è¿›è¡Œç»Ÿä¸€ä¿®æ”¹ã€‚å¯ä»¥è€ƒè™‘改用信å·ã€‚"
-#: doc/classes/Area2D.xml:25
+#: doc/classes/Area2D.xml:26
+#, fuzzy
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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 ""
"返回相交的 [PhysicsBody2D] 的列表。由于性能原因(碰撞都是åŒæ—¶å¤„ç†çš„),该列表"
"ä¸ä¼šåœ¨å¯¹è±¡ç§»åŠ¨åŽç«‹å³æ›´æ–°ï¼Œåªä¼šåœ¨ç‰©ç†æ›´æ–°æ—¶è¿›è¡Œç»Ÿä¸€ä¿®æ”¹ã€‚å¯ä»¥è€ƒè™‘改用信å·ã€‚"
-#: doc/classes/Area2D.xml:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -7843,7 +7885,7 @@ msgstr ""
"[b]注æ„:[/b]在移动物体åŽï¼Œè¿™ä¸ªæµ‹è¯•çš„结果ä¸æ˜¯å³æ—¶çš„。为了性能,é‡å åˆ—表在æ¯ä¸€"
"帧和物ç†æ­¥éª¤ä¹‹å‰æ›´æ–°ä¸€æ¬¡ã€‚å¯ä»¥è€ƒè™‘用信å·ä»£æ›¿ã€‚"
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -7859,7 +7901,7 @@ msgstr ""
"[code]body[/code]å‚æ•°å¯ä»¥æ˜¯ä¸€ä¸ª[PhysicsBody2D]或一个[TileMap]实例(虽然"
"TileMaps本身ä¸æ˜¯ç‰©ç†ä½“,但它们用碰撞形状注册它们的瓦片作为一个虚拟物ç†ä½“)。"
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -7870,7 +7912,7 @@ msgstr ""
"关于阻尼的更多细节,è§[member ProjectSettings.physics/2D/"
"default_angular_damp]。"
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
@@ -7879,7 +7921,7 @@ msgstr ""
"该区域的é‡åŠ›å¼ºåº¦ï¼ˆä»¥åƒç´ /秒的平方为å•ä½ï¼‰ã€‚这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这对改å˜å¼•"
"力大å°è€Œä¸æ”¹å˜å…¶æ–¹å‘很有用。"
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -7890,7 +7932,7 @@ msgstr ""
"关于阻尼的更多细节,è§[member ProjectSettings.physics/2D/"
"default_linear_damp]。"
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
@@ -7900,7 +7942,7 @@ msgstr ""
"[code]true[/code]。\n"
"[code]area[/code]å‚数是其他Area2D。"
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
@@ -7910,8 +7952,7 @@ msgstr ""
"[code]true[/code]。\n"
"[code]area[/code]å‚数是其他Area2D。"
-#: doc/classes/Area2D.xml:107
-#, fuzzy
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7925,18 +7966,19 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-"当å¦ä¸€ä¸ªArea2Dçš„[Shape2D]s进入这个Area2Dçš„[Shape2D]sæ—¶å‘出的。è¦æ±‚监控"
-"[member monitoring]被设置为[code]true[/code]。\n"
-"[code]area_id[/code] å‚数是由[Physics2DServer]使用的其他Area2Dçš„"
+"当å¦ä¸€ä¸ªArea2Dçš„[Shape2D]进入此Area2Dçš„[Shape2D]时触å‘。需è¦å°† [member "
+"monitoring] 设置为[code]true[/code]。\n"
+"[code]area_rid[/code] 由[Physics2DServer]使用的其他Area2D的"
"[CollisionObject2D]的[RID]。\n"
-"[code]area[/code] å‚数是其他Area2D。\n"
-"[code]area_shape[/code] å‚数是[Physics2DServer]使用的其他Area2Dçš„[Shape2D]çš„"
-"索引。\n"
-"[code]local_shape[/code]å‚数是 ç”±[Physics2DServer]使用的这个Area2Dçš„[Shape2D]"
-"的索引。"
+"[code]area[/code] 其他Area2D。\n"
+"[code]area_shape_index[/code][Physics2DServer]使用的其他Area2D的[Shape2D]的索"
+"引。用[code]area.shape_owner_get_owner(area_shape_index)[/code]获得"
+"[CollisionShape2D]节点。\n"
+"[code]local_shape_index[/code]此Area2D的[Shape2D]的索引,由[Physics2DServer]"
+"使用。用[code]self.shape_owner_get_owner(local_shape_index)[/code]获å–"
+"[CollisionShape2D]节点。"
-#: doc/classes/Area2D.xml:120
-#, fuzzy
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -7950,17 +7992,19 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-"当å¦ä¸€ä¸ªArea2Dçš„[Shape2D]s离开这个Area2Dçš„[Shape2D]s之一时å‘出。è¦æ±‚监控"
-"[member monitoring]被设置为[code]true[/code]。\n"
-"[code]area_id[/code] å‚数是由[Physics2DServer]使用的其他Area2Dçš„"
+"当å¦ä¸€ä¸ªArea2Dçš„[Shape2D]退出这个Area2Dçš„[Shape2D]之一时触å‘。è¦æ±‚[member "
+"monitoring] 被设置为[code]true[/code]。\n"
+"[code]area_rid[/code] 由[Physics2DServer]使用的其他Area2D的"
"[CollisionObject2D]的[RID]。\n"
-"[code]area[/code] å‚数是其他Area2D。\n"
-"[code]area_shape[/code] å‚数是[Physics2DServer]使用的其他Area2Dçš„[Shape2D]çš„"
-"索引。\n"
-"[code]local_shape[/code] å‚数是由[Physics2DServer]使用的这个Area2Dçš„[Shape2D]"
-"的索引。"
+"[code]area[/code] 其他Area2D。\n"
+"[code]area_shape_index[/code][Physics2DServer]使用的其他Area2D的[Shape2D]的索"
+"引。用[code]area.shape_owner_get_owner(area_shape_index)[/code]获å–"
+"[CollisionShape2D]节点。\n"
+"[code]local_shape_index[/code]这个Area2D的[Shape2D]的索引,由"
+"[Physics2DServer]使用。用[code]self.shape_owner_get_owner(local_shape_index)"
+"[/code]获得[CollisionShape2D]节点。"
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7974,7 +8018,7 @@ msgstr ""
"[code]body[/code]å‚数是其他[PhysicsBody2D]或[TileMap]çš„[Node],如果它存在于树"
"中。"
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -7988,8 +8032,7 @@ msgstr ""
"[code]body[/code] å‚数是其他 [PhysicsBody2D] 或 [TileMap] çš„ [Node],如果它存"
"在于树中。"
-#: doc/classes/Area2D.xml:147
-#, fuzzy
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8007,20 +8050,21 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-"当[PhysicsBody2D]或[TileMap]çš„[Shape2D]之一进入此Area2Dçš„[Shape2D]之一时å‘"
-"出。需è¦å°†ç›‘控[member monitoring]设置为[code]true[/code]。如果[TileSet]有碰撞"
-"形状[Shape2D]s,就会检测到[TileMap]s。\n"
-"[code]body_id[/code]å‚数是 [Physics2DServer]使用的[PhysicsBody2D]或[TileSet]"
-"的[CollisionObject2D]的RID。\n"
-"[code]body[/code]å‚数是 [PhysicsBody2D]或[TileMap]çš„[节点],如果它在树上存在"
-"çš„è¯ã€‚\n"
-"[code]body_shape[/code] å‚数是[Physics2DServer]使用的[PhysicsBody2D]或"
-"[TileMap]的[Shape2D]的索引。\n"
-"[code]local_shape[/code] å‚数是[Physics2DServer]使用的这个Area2Dçš„[Shape2D]çš„"
-"索引。"
+"当[PhysicsBody2D]或[TileMap]的[Shape2D]之一进入此Area2D的[Shape2D]之一时触"
+"å‘。需è¦å°†[member monitoring]设置为[code]true[/code]。如果[TileSet]有"
+"Collision[Shape2D],就会检测到[TileMap]。\n"
+"[code]body_rid[/code] [Physics2DServer]使用的[PhysicsBody2D]或[TileSet]的"
+"[CollisionObject2D]的[RID]。\n"
+"[code]body[/code] [PhysicsBody2D]或[TileMap]的[Node],如果它在树上存在的"
+"è¯ã€‚\n"
+"[code]body_shape_index[/code] [Physics2DServer]使用的[PhysicsBody2D]或"
+"[TileMap]的[Shape2D]的索引。用[code]body."
+"shape_owner_get_owner(body_shape_index)[/code]获得[CollisionShape2D]节点。\n"
+"[code]local_shape_index[/code]此Area2D的[Shape2D]的索引,由[Physics2DServer]"
+"使用。用[code]self.shape_owner_get_owner(local_shape_index)[/code]获得"
+"[CollisionShape2D]节点。"
-#: doc/classes/Area2D.xml:160
-#, fuzzy
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -8038,17 +8082,19 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-"当[PhysicsBody2D]或[TileMap]的一个[Shape2D]离开这个Area2D的一个[Shape2D]æ—¶å‘"
-"出的。需è¦å°†ç›‘控[member monitoring]设置为[code]true[/code]。如果[TileSet]有碰"
-"撞形状[Shape2D]s,就会检测到[TileMap]s。\n"
-"[code]body_id[/code] å‚数是[Physics2DServer]使用的[PhysicsBody2D]或[TileSet]"
-"的[CollisionObject2D]的RID。\n"
-"[code]body[/code]å‚数是[PhysicsBody2D]或[TileMap]çš„[Node],如果它存在于树中的"
+"当[PhysicsBody2D]或[TileMap]的一个[Shape2D]退出这个Area2D的一个[Shape2D]æ—¶å‘"
+"出的。需è¦å°†[member monitoring]设置为[code]true[/code]。如果[TileSet]有碰撞"
+"[Shape2D],就会检测到[TileMap]。\n"
+"[code]body_rid[/code] 是[Physics2DServer]使用的[PhysicsBody2D]或[TileSet]的"
+"[CollisionObject2D]的[RID]。\n"
+"[code]body[/code] [PhysicsBody2D]或[TileMap]的[Node],如果它在树上存在的"
"è¯ã€‚\n"
-"[code]body_shape[/code] å‚数是[Physics2DServer]使用的[PhysicsBody2D]或"
-"[TileMap]的[Shape2D]的索引。\n"
-"[code]local_shape[/code] å‚数是[Physics2DServer]使用的这个Area2Dçš„[Shape2D]çš„"
-"索引。"
+"[code]body_shape_index[/code] [Physics2DServer]使用的[PhysicsBody2D]或"
+"[TileMap]的[Shape2D]的索引。用[code]body."
+"shape_owner_get_owner(body_shape_index)[/code]获å–[CollisionShape2D]节点。\n"
+"[code]local_shape_index[/code]此Area2D的[Shape2D]的索引,由[Physics2DServer]"
+"使用。用[code]self.shape_owner_get_owner(local_shape_index)[/code]获å–"
+"[CollisionShape2D]节点。"
#: doc/classes/Array.xml:4
msgid "A generic array datatype."
@@ -8373,6 +8419,9 @@ msgid ""
"[b]Note:[/b] Arrays with equal contents can still produce different hashes. "
"Only the exact same arrays will produce the same hashed integer value."
msgstr ""
+"返回这个数组的整数哈希值\n"
+"[b]注æ„:[/b] 仅仅内容相åŒçš„数组会产生ä¸åŒçš„哈希值, å¿…é¡»è¦å®Œå…¨ä¸€è‡´çš„数组æ‰ä¼šäº§"
+"生相åŒçš„哈希值."
#: doc/classes/Array.xml:232
msgid ""
@@ -8383,6 +8432,11 @@ msgid ""
"element is close to the beginning of the array (index 0). This is because "
"all elements placed after the newly inserted element have to be reindexed."
msgstr ""
+"在给定的数组ä½ç½®æ’入一个新值. ä½ç½®å¿…é¡»åˆæ³•, 或者在数组末尾([code]pos == "
+"size()[/code]).\n"
+"[b]注æ„:[/b] 这个数组没有返回值.\n"
+"[b]注æ„:[/b] 在较大的数组中, 如果æ’入值的ä½ç½®åœ¨æ•°ç»„åå‰çš„ä½ç½®, 这个方法的è¿è¡Œ"
+"速度会比较慢, 因为在æ’入值åŽé¢æ‰€æœ‰çš„元素都è¦è¢«é‡æ–°ç´¢å¼•."
#: doc/classes/Array.xml:239 doc/classes/PoolByteArray.xml:96
#: doc/classes/PoolColorArray.xml:48 doc/classes/PoolIntArray.xml:49
@@ -8421,14 +8475,22 @@ msgid ""
"removed element. The larger the array and the lower the index of the removed "
"element, the slower [method pop_at] will be."
msgstr ""
+"移除并返回索引[code]position[/code]处的数组元素。如果是负数,[code]position[/"
+"code]被认为是相对于数组的末端。如果数组是空的或者被越界访问,则ä¿ç•™æ•°ç»„ä¸åŠ¨ï¼Œ"
+"并返回[code]null[/code]。当数组被越界访问时,会打å°å‡ºä¸€æ¡é”™è¯¯ä¿¡æ¯ï¼Œä½†å½“数组为"
+"空时,则ä¸ä¼šã€‚\n"
+"[b]注æ„:[/b] 在大的数组上,这个方法å¯èƒ½æ¯”[method pop_back]慢,因为它将é‡æ–°ç´¢"
+"引ä½äºŽè¢«ç§»é™¤å…ƒç´ ä¹‹åŽçš„数组元素。数组越大,被移除元素的索引越低,[method "
+"pop_at]的速度就越慢。"
#: doc/classes/Array.xml:265
-#, fuzzy
msgid ""
"Removes and returns the last element of the array. Returns [code]null[/code] "
"if the array is empty, without printing an error message. See also [method "
"pop_front]."
-msgstr "删除并返回数组中的末尾元素。数组为空时,返回 [code]null[/code]。"
+msgstr ""
+"删除并返回数组中的末尾元素。数组为空时,返回 [code]null[/code]。å¦è¯·å‚阅 "
+"[method pop_front]。"
#: doc/classes/Array.xml:271
msgid ""
@@ -8439,12 +8501,16 @@ msgid ""
"pop_back] as it will reindex all the array's elements every time it's "
"called. The larger the array, the slower [method pop_front] will be."
msgstr ""
+"移除并返回数组的第一个元素。如果数组是空的,将ä¸ä¼šè¾“出任何错误信æ¯å¹¶è¿”回"
+"[code]null[/code]。å¦è¯·å‚阅 [method pop_back]。\n"
+"[b]注æ„:[/b] 当数组元素很多时,由于 [method pop_front] æ¯æ¬¡è°ƒç”¨æ—¶éƒ½è¦é‡æ–°å¯»"
+"找数组所有元素的索引,所以会比 [method pop_back] 慢很多。数组 越大,[method "
+"pop_front] 越慢。"
#: doc/classes/Array.xml:278
-#, fuzzy
msgid ""
"Appends an element at the end of the array. See also [method push_front]."
-msgstr "å‘数组末尾追加一个元素([method push_back] 的别å)。"
+msgstr "在数组的末端添加一个元素。å‚阅[method push_front]。"
#: doc/classes/Array.xml:284
msgid ""
@@ -8453,6 +8519,9 @@ msgid ""
"push_back] as it will reindex all the array's elements every time it's "
"called. The larger the array, the slower [method push_front] will be."
msgstr ""
+"在数组的开头添加一个元素。å‚阅[method push_back]。\n"
+"[b]注æ„:[/b] 在大数组中,这个方法比[method push_back]慢得多,因为æ¯æ¬¡è°ƒç”¨å®ƒéƒ½"
+"会é‡æ–°ç´¢å¼•æ‰€æœ‰æ•°ç»„的元素。数组越大,[method push_front]的速度就越慢。"
#: doc/classes/Array.xml:291
msgid ""
@@ -8464,6 +8533,11 @@ msgid ""
"element is close to the beginning of the array (index 0). This is because "
"all elements placed after the removed element have to be reindexed."
msgstr ""
+"按索引从数组中移除一个元素。如果索引在数组中ä¸å­˜åœ¨ï¼Œåˆ™ä»€ä¹ˆä¹Ÿä¸ä¼šå‘生。è¦é€šè¿‡"
+"æœç´¢ä¸€ä¸ªå…ƒç´ çš„值æ¥ç§»é™¤å®ƒï¼Œè¯·ä½¿ç”¨[method erase]æ¥ä»£æ›¿ã€‚\n"
+"[b]注æ„:[/b] 这个方法是就地æ“作,ä¸è¿”回值。\n"
+"[b]注æ„:[/b] 在大数组中,如果被删除的元素é è¿‘数组的开头(索引0),这个方法会"
+"比较慢。这是因为所有放置在被移除元素之åŽçš„元素都è¦è¢«é‡æ–°ç´¢å¼•ã€‚"
#: doc/classes/Array.xml:299
msgid ""
@@ -8531,7 +8605,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/Array.xml:346
-#, fuzzy
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 "
@@ -8555,21 +8628,23 @@ msgid ""
"print(my_items) # Prints [[4, Tomato], [5, Potato], [9, Rice]].\n"
"[/codeblock]"
msgstr ""
-"使用自定义方法对数组进行排åºã€‚å‚数是一个æŒæœ‰æ–¹æ³•çš„对象和方法的å称。自定义方"
-"法接收两个å‚数(数组中的一对元素),必须返回[code]true[/code]or[code]false[/"
-"code]。\n"
-"[b]注æ„:[/b]您ä¸èƒ½éšæœºåŒ–返回值,因为堆栈算法希望得到确定的结果。这样åšä¼šå¯¼è‡´"
-"æ„外的行为。\n"
-"(codeblock)\n"
+"使用一个自定义的方法对数组进行排åºã€‚å‚数是一个æŒæœ‰è¯¥æ–¹æ³•çš„对象和该方法的å"
+"称。自定义方法接收两个å‚数(一对æ¥è‡ªæ•°ç»„的元素),并且必须返回[code]true[/"
+"code]或者[code]false[/code]。\n"
+"对于两个元素[code]a[/code]和[code]b[/code],如果给定的方法返回[code]true[/"
+"code],元素[code]b[/code]将在数组中元素[code]a[/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"
+" 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"
+"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"
+"print(my_items) # Prints [[4, Tomato], [5, Potato], [9, Rice]].\n"
"[/codeblock]"
#: doc/classes/ArrayMesh.xml:4
@@ -8578,7 +8653,6 @@ msgid ""
msgstr "[Mesh] 网格类型,æ供了用于从数组构造表é¢çš„工具。"
#: doc/classes/ArrayMesh.xml:7
-#, fuzzy
msgid ""
"The [ArrayMesh] is used to construct a [Mesh] by specifying the attributes "
"as arrays.\n"
@@ -8605,28 +8679,27 @@ msgid ""
"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
"primitive modes."
msgstr ""
-"[ArrayMesh]用于通过将属性指定为数组æ¥æž„造[Mesh](网格)。\n"
-"最基本的例å­æ˜¯åˆ›å»ºä¸€ä¸ªå•ä¸€çš„三角形。\n"
+"[ArrayMesh]是用æ¥æž„造一个[Mesh]的,其属性指定为数组。\n"
+"最基本的例å­æ˜¯åˆ›å»ºå•ä¸ªä¸‰è§’å½¢:\n"
"[codeblock]\n"
-"var vertices = PackedVector3Array()\n"
+"var vertices = PoolVector3Array()\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 ArrayMesh。\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 Mesh。\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"
+"var m = MeshInstance.new()\n"
"m.mesh = arr_mesh\n"
"[/codeblock]\n"
-"[MeshInstance3D]已准备好添加到[SceneTree]中显示。\n"
-"程åºåŒ–几何体的生æˆè¿˜å¯ä»¥å‚考[ImmediateGeometry3D]ã€[MeshDataTool]å’Œ"
-"[SurfaceTool]。\n"
-"[b]Note:[/b]Godot对三角形基元模å¼çš„å‰è„¸ä½¿ç”¨é¡ºæ—¶é’ˆ[url=https://learnopengl."
-"com/Advanced-OpenGL/Face-culling]winding order[/url]。"
+"这个[MeshInstance]å·²ç»å‡†å¤‡å°±ç»ªï¼Œä»¥æ·»åŠ åˆ°è¦æ˜¾ç¤ºçš„[SceneTree]中。\n"
+"å‚阅[ImmediateGeometry]ã€[MeshDataTool]å’Œ[SurfaceTool]的程åºæ€§å‡ ä½•ä½“生æˆã€‚\n"
+"[b]注æ„:[/b] Godot对三角形基本网格模å¼çš„æ­£é¢ä½¿ç”¨é¡ºæ—¶é’ˆ[url=https://"
+"learnopengl.com/Advanced-OpenGL/Face-culling]环绕顺åº[/url]。"
#: doc/classes/ArrayMesh.xml:29
msgid ""
@@ -8645,7 +8718,6 @@ msgstr ""
"加曲é¢ä¹‹å‰è°ƒç”¨ã€‚"
#: doc/classes/ArrayMesh.xml:46
-#, fuzzy
msgid ""
"Creates a new surface.\n"
"Surfaces are created to be rendered using a [code]primitive[/code], which "
@@ -8662,18 +8734,16 @@ msgid ""
"length as the vertex array or be empty, except for [constant ARRAY_INDEX] if "
"it is used."
msgstr ""
-"创建一个新曲é¢ã€‚\n"
-"创建表é¢ä»¥ä½¿ç”¨[code] primitive [/code]进行渲染,该基元å¯ä»¥æ˜¯[enum Mesh."
-"PrimitiveType]中定义的任何类型。 (请注æ„,使用索引时,建议仅使用点,线或三角"
-"形。)[method.Mesh.get_surface_count]å°†æˆä¸ºæ­¤æ–°æ›²é¢çš„[code] surf_idx [/"
+"创建一个新的é¢ã€‚\n"
+"创建é¢æ˜¯ä¸ºäº†ä½¿ç”¨ [code]primitive[/code] 进行渲染,å¯ä»¥æ˜¯ [enum Mesh."
+"PrimitiveType] 中定义的任何类型。(注æ„,当使用索引时,建议åªä½¿ç”¨ç‚¹ã€çº¿æˆ–三角"
+"å½¢)。[method Mesh.get_surface_count] 值将æˆä¸ºè¿™ä¸ªæ–°é¢çš„ [code]surface_idx[/"
"code]。\n"
-"[code] arrays [/code]å‚数是一个数组数组。有关此数组中使用的值,请å‚阅[enum "
-"ArrayType]。例如,[code] arrays [0] [/code]是顶点的数组。始终需è¦ç¬¬ä¸€ä¸ªé¡¶ç‚¹å­"
-"数组;其他是å¯é€‰çš„。添加索引数组会使此函数进入“索引模å¼â€ï¼Œåœ¨è¯¥æ¨¡å¼ä¸‹ï¼Œé¡¶ç‚¹å’Œ"
-"其他数组æˆä¸ºæ•°æ®æºï¼Œè€Œç´¢å¼•æ•°ç»„定义了顶点顺åºã€‚所有å­æ•°ç»„的长度必须与顶点数组"
-"相åŒï¼Œæˆ–者为空,除éžä½¿ç”¨äº†[constant ARRAY_INDEX]。\n"
-"添加索引数组会使此函数进入“索引模å¼â€ï¼Œå…¶ä¸­é¡¶ç‚¹å’Œå…¶ä»–数组æˆä¸ºæ•°æ®æºï¼Œå¹¶ä¸”索引"
-"数组定义了顶点的顺åºã€‚"
+"[code]arrays[/code] å‚数是数组阵列。关于这个数组中使用的值,å‚阅 [enum "
+"ArrayType]。例如,[code]arrays[0][/code] 是顶点的数组。总是需è¦ç¬¬ä¸€ä¸ªé¡¶ç‚¹å­æ•°"
+"组,其他的å¯é€‰ã€‚添加一个索引数组使这个函数进入 \"索引模å¼\",顶点和其他数组作"
+"为数æ®æ¥æºï¼Œç´¢å¼•æ•°ç»„定义其顶点顺åºã€‚所有的å­æ•°ç»„必须与顶点数组具有相åŒçš„é•¿"
+"度,或者为空,如果使用了 [constant ARRAY_INDEX] 时除外。"
#: doc/classes/ArrayMesh.xml:54
msgid "Removes all blend shapes from this [ArrayMesh]."
@@ -8741,13 +8811,12 @@ msgid ""
msgstr "返回所请求曲é¢çš„基本类型(请å‚阅[method add_surface_from_arrays])。"
#: doc/classes/ArrayMesh.xml:143
-#, fuzzy
msgid ""
"Removes a surface at position [code]surf_idx[/code], shifting greater "
"surfaces one [code]surf_idx[/code] slot down."
msgstr ""
-"将索引 [code]effect_idx[/code] 的效果从索引 [code]bus_idx[/code] 的总线上删"
-"除。"
+"移除ä½ç½®[code]surf_idx[/code]的一个é¢ï¼Œå°†è¾ƒå¤§çš„é¢å‘下移动一个[code]surf_idx[/"
+"code]槽。"
#: doc/classes/ArrayMesh.xml:151
msgid "Sets a name for a given surface."
@@ -8785,23 +8854,21 @@ msgid "Amount of weights/bone indices per vertex (always 4)."
msgstr "æ¯ä¸ªé¡¶ç‚¹çš„æƒé‡/骨指数é‡ï¼ˆå§‹ç»ˆä¸º 4)。"
#: doc/classes/ArrayMesh.xml:181
-#, fuzzy
msgid "[PoolVector3Array], [PoolVector2Array], or [Array] of vertex positions."
-msgstr "顶点ä½ç½®çš„[PackedVector3Array]ã€[PackedVector2Array]或[Array]。"
+msgstr "[PoolVector3Array], [PoolVector2Array], 或[Array]的顶点ä½ç½®ã€‚"
#: doc/classes/ArrayMesh.xml:184
msgid "[PoolVector3Array] of vertex normals."
msgstr "[PoolVector3Array] 顶点法线。"
#: doc/classes/ArrayMesh.xml:187
-#, fuzzy
msgid ""
"[PoolRealArray] 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 ""
-"顶点切线的[PackedFloat32Array]。æ¯ç»„元素由4个浮点组æˆï¼Œå‰3个浮点确定切线,最"
-"åŽä¸€ä¸ªåŒæ³•çº¿æ–¹å‘为-1或1。"
+"顶点切线的[PoolRealArray]。æ¯ä¸ªå…ƒç´ ä»¥4个浮点数为一组,å‰3个浮点数决定切线,最"
+"åŽä¸€ä¸ªæ˜¯-1或1çš„åŒæ³•çº¿æ–¹å‘。"
#: doc/classes/ArrayMesh.xml:190
msgid "[PoolColorArray] of vertex colors."
@@ -8812,26 +8879,20 @@ msgid "[PoolVector2Array] for UV coordinates."
msgstr "[PoolVector2Array] 用于UVå标。"
#: doc/classes/ArrayMesh.xml:196
-#, fuzzy
msgid "[PoolVector2Array] for second UV coordinates."
-msgstr "第二个UVå标的[PackedVector2Array]。"
+msgstr "[PoolVector2Array]用于第二UVå标。"
#: doc/classes/ArrayMesh.xml:199
-#, fuzzy
msgid ""
"[PoolRealArray] or [PoolIntArray] of bone indices. Each element in groups of "
"4 floats."
-msgstr ""
-"骨骼索引的[PackedFloat32Array]或[PackedInt32Array]。æ¯ä¸ªå…ƒç´ ä»¥4个浮点数为一"
-"组。"
+msgstr "[PoolRealArray]或[PoolIntArray]的骨骼索引。æ¯ä¸ªå…ƒç´ ä»¥4个浮点数为一组。"
#: doc/classes/ArrayMesh.xml:202
-#, fuzzy
msgid "[PoolRealArray] of bone weights. Each element in groups of 4 floats."
-msgstr "骨骼é‡é‡çš„[PackedFloat32Array]。æ¯ä¸ªå…ƒç´ ä»¥4个浮点数为一组。"
+msgstr "骨骼æƒé‡çš„[PoolRealArray]。æ¯ä¸ªå…ƒç´ ä»¥4个浮点数为一组。"
#: doc/classes/ArrayMesh.xml:205
-#, fuzzy
msgid ""
"[PoolIntArray] of integers used as indices referencing vertices, colors, "
"normals, tangents, and textures. All of those arrays must have the same "
@@ -8844,12 +8905,12 @@ msgid ""
"vertices of each triangle. For lines, the index array is in pairs indicating "
"the start and end of each line."
msgstr ""
-"æ•´æ•°[PackedInt32Array]用作引用顶点,颜色,法线,切线和纹ç†çš„索引。所有这些数"
-"组必须具有与顶点数组相åŒæ•°é‡çš„元素。索引ä¸èƒ½è¶…出顶点数组的大å°ã€‚当存在此索引"
-"数组时,它将函数置于“索引模å¼â€ï¼Œå…¶ä¸­ç´¢å¼•é€‰æ‹©ç¬¬* i *个顶点,法线,切线,颜色,"
-"UV等。这æ„味ç€æ˜¯å¦è¦å…·æœ‰ä¸åŒçš„法线或颜色沿ç€è¾¹ç¼˜ï¼Œæ‚¨å¿…é¡»å¤åˆ¶é¡¶ç‚¹ã€‚\n"
-"对于三角形,索引数组被解释为三元组,指的是æ¯ä¸ªä¸‰è§’形的顶点。对于行,索引数组"
-"是æˆå¯¹çš„,指示æ¯è¡Œçš„开始和结æŸã€‚"
+"[PoolIntArray]整数数组,用作引用顶点ã€é¢œè‰²ã€æ³•çº¿ã€åˆ‡çº¿å’Œçº¹ç†çš„索引。所有这些"
+"数组必须具有与顶点数组相åŒçš„元素数é‡ã€‚任何索引都ä¸èƒ½è¶…过顶点数组的大å°ã€‚当这"
+"个索引数组出现时,它使函数进入 \"索引模å¼\",其中索引选择*i*的顶点ã€æ³•çº¿ã€åˆ‡"
+"线ã€é¢œè‰²ã€UV等。这æ„味ç€å¦‚果你想沿ç€ä¸€æ¡è¾¹æœ‰ä¸åŒçš„法线或颜色,需拷è´é¡¶ç‚¹ã€‚\n"
+"对于三角形,索引数组被解释为三元组,指的是æ¯ä¸ªä¸‰è§’形的顶点。对于线,索引数组"
+"是æˆå¯¹çš„,表示æ¯æ¡çº¿çš„起点和终点。"
#: doc/classes/ArrayMesh.xml:209 doc/classes/Mesh.xml:225
#: doc/classes/VisualServer.xml:3270
@@ -8897,7 +8958,6 @@ msgid "An anchor point in AR space."
msgstr "AR空间中的锚点。"
#: doc/classes/ARVRAnchor.xml:7
-#, fuzzy
msgid ""
"The [ARVRAnchor] point is a spatial node that maps a real world location "
"identified by the AR platform to a position within the game world. For "
@@ -8913,14 +8973,14 @@ msgid ""
"more about the real world out there especially if only part of the surface "
"is in view."
msgstr ""
-"[XRAnchor3D]点是空间节点,它将ARå¹³å°è¯†åˆ«çš„现实世界的ä½ç½®æ˜ å°„到游æˆä¸–界中的一"
-"个ä½ç½®ã€‚例如,åªè¦ARKit中的平é¢æ£€æµ‹å¼€å¯ï¼ŒARKit就会识别并更新平é¢çš„ä½ç½®ï¼Œå¦‚æ¡Œ"
-"å­ã€åœ°æ¿ç­‰ï¼Œå¹¶ä¸ºå…¶åˆ›å»ºé”šç‚¹ã€‚\n"
-"这个节点通过其独特的ID被映射到其中一个锚点。当你收到一个新的锚点å¯ç”¨çš„ä¿¡å·"
-"时,你应该为该锚点在你的场景中添加这个节点。你å¯ä»¥é¢„先定义节点并设置ID;节点"
-"将简å•åœ°ä¿æŒåœ¨0,0,0上,直到一个平é¢è¢«è¯†åˆ«ã€‚\n"
-"请记ä½ï¼Œåªè¦å¯ç”¨äº†å¹³é¢æ£€æµ‹ï¼Œé”šçš„大å°ã€æ”¾ç½®å’Œæ–¹å‘就会éšç€æ£€æµ‹é€»è¾‘了解更多关于"
-"现实世界的信æ¯è€Œæ›´æ–°ï¼Œå°¤å…¶æ˜¯åœ¨åªæœ‰éƒ¨åˆ†è¡¨é¢å¯è§çš„情况下。"
+"[ARVRAnchor]点是空间节点,它将ARå¹³å°è¯†åˆ«çš„现实世界的ä½ç½®æ˜ å°„到游æˆä¸–界中相应"
+"ä½ç½®ã€‚例如,åªè¦ARKit中的平é¢æ£€æµ‹å¼€å¯ï¼ŒARKit就会识别并更新平é¢ï¼ˆæ¡Œå­ã€åœ°æ¿"
+"等)的ä½ç½®ï¼Œå¹¶ä¸ºå…¶åˆ›å»ºé”šç‚¹ã€‚\n"
+"此节点通过其特有ID映射到其中一个锚点。当你收到一个新锚点å¯ç”¨çš„ä¿¡å·æ—¶ï¼Œåœ¨ä½ çš„"
+"场景中,应该为该锚点添加这个节点。你å¯ä»¥é¢„先定义节点并设置ID;节点将简å•åœ°ä¿"
+"æŒåœ¨0,0,0,直到一个平é¢è¢«è¯†åˆ«ã€‚\n"
+"请记ä½ï¼Œåªè¦å¯ç”¨äº†å¹³é¢æ£€æµ‹ï¼Œé”šçš„大å°ã€ä½ç½®å’Œæ–¹å‘就会éšç€æ£€æµ‹é€»è¾‘对外é¢çœŸå®žä¸–"
+"界的信æ¯è€Œæ›´æ–°ï¼Œç‰¹åˆ«æ˜¯åœ¨åªæœ‰éƒ¨åˆ†è¡¨é¢åœ¨è§†é‡Žä¸­çš„情况下。"
#: doc/classes/ARVRAnchor.xml:17
msgid "Returns the name given to this anchor."
@@ -8935,7 +8995,6 @@ msgstr ""
"点,则返回 [code]false[/code]。"
#: doc/classes/ARVRAnchor.xml:29
-#, fuzzy
msgid ""
"If provided by the [ARVRInterface], this returns a mesh object for the "
"anchor. For an anchor, this can be a shape related to the object being "
@@ -8943,9 +9002,9 @@ msgid ""
"can be used to create shadows/reflections on surfaces or for generating "
"collision shapes."
msgstr ""
-"如果由[XRInterface]æ供,这将返回锚点的网格对象。对于锚点æ¥è¯´ï¼Œè¿™å¯ä»¥æ˜¯ä¸€ä¸ªä¸Ž"
-"被追踪物体有关的形状,也å¯ä»¥æ˜¯ä¸€ä¸ªæ供与锚点有关的拓扑结构的网格,å¯ä»¥ç”¨æ¥åœ¨"
-"表é¢ä¸Šåˆ›å»ºé˜´å½±åŠå射,或者用于生æˆç¢°æ’žå½¢çŠ¶ã€‚"
+"如果由[ARVRInterface]æ供,这将返回一个锚的网格对象。对于一个锚,这å¯ä»¥æ˜¯ä¸€ä¸ª"
+"与被追踪物体相关的形状,也å¯ä»¥æ˜¯ä¸€ä¸ªæ供与锚相关的拓扑的网格,å¯ä»¥ç”¨äºŽåœ¨è¡¨é¢"
+"上创建阴影/å射,或者用于生æˆç¢°æ’žå½¢çŠ¶ã€‚"
#: doc/classes/ARVRAnchor.xml:35
msgid ""
@@ -8991,7 +9050,6 @@ msgid ""
msgstr "应用了一些 AR/VR 规则的相机节点,例如ä½ç½®è·Ÿè¸ªã€‚"
#: doc/classes/ARVRCamera.xml:7
-#, fuzzy
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, "
@@ -9004,11 +9062,11 @@ msgid ""
"tracking data of the HMD and the location of the ARVRCamera can lag a few "
"milliseconds behind what is used for rendering as a result."
msgstr ""
-"这是用于相机的辅助空间节点;注æ„,如果是应用于立体渲染(VR-HMD),大部分的相"
-"机属性会被忽略,因为HMDä¿¡æ¯ä¼šé‡å†™å®ƒä»¬ã€‚唯一å¯ä»¥ä¿è¯çš„属性是近平é¢å’Œè¿œå¹³é¢ã€‚\n"
-"这个节点的ä½ç½®å’Œæ–¹å‘ç”±XRæœåŠ¡å™¨è‡ªåŠ¨æ›´æ–°ï¼Œä»¥è¡¨ç¤ºHMDçš„ä½ç½®ï¼Œå¦‚果这ç§è·Ÿè¸ªæ˜¯å¯ç”¨"
-"的,则å¯åœ¨æ¸¸æˆé€»è¾‘使用。请注æ„,与XR控制器相å,渲染线程å¯ä»¥è®¿é—®HMD的最新跟踪"
-"æ•°æ®ï¼Œå› æ­¤XRCamera3Dçš„ä½ç½®å¯èƒ½æ¯”用于渲染的ä½ç½®æ»žåŽå‡ æ¯«ç§’。"
+"这是用于我们相机辅助的空间节点;请注æ„,如果适用立体渲染 (VR-HMD),大多数相机"
+"属性将被忽略,因为 HMD ä¿¡æ¯ä¼šè¦†ç›–它们。唯一å¯ä»¥ä¿¡ä»»çš„属性是近平é¢å’Œè¿œå¹³é¢ã€‚\n"
+"该节点的ä½ç½®å’Œæ–¹å‘ç”± ARVR æœåŠ¡è‡ªåŠ¨æ›´æ–°ï¼Œä»¥å映 HMD çš„ä½ç½®ï¼ˆå¦‚果这类跟踪å¯ç”¨ï¼Œ"
+"并å¯è¢«æ¸¸æˆé€»è¾‘使用)。请注æ„,与 ARVR 控制器相比,渲染线程å¯ä»¥èŽ·å– HMD 的最新"
+"跟踪数æ®ï¼Œä»Žè€Œ ARVRCamera çš„ä½ç½®å¯èƒ½ä¼šæ»žåŽäºŽå¯¹äºŽæ¸²æŸ“çš„ä½ç½®å‡ æ¯«ç§’。"
#: doc/classes/ARVRCamera.xml:11 doc/classes/ARVRController.xml:12
#: doc/classes/ARVRInterface.xml:11 doc/classes/ARVROrigin.xml:13
@@ -9021,7 +9079,6 @@ msgid "A spatial node representing a spatially-tracked controller."
msgstr "表示空间跟踪控制器的空间节点。"
#: doc/classes/ARVRController.xml:7
-#, fuzzy
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 "
@@ -9036,14 +9093,14 @@ msgid ""
"[ARVRServer]. This makes this node ideal to add child nodes to visualize the "
"controller."
msgstr ""
-"这是一个与控制器的跟踪有关的辅助空间节点。它还为控制器上的按钮等状æ€æ供了几"
-"个方便的通é“。\n"
-"控制器是通过他们的ID链接的。你å¯ä»¥åœ¨æŽ§åˆ¶å™¨å¯ç”¨ä¹‹å‰åˆ›å»ºæŽ§åˆ¶å™¨èŠ‚点。如果你的游"
-"æˆæ€»æ˜¯ä½¿ç”¨ä¸¤ä¸ªæŽ§åˆ¶å™¨ï¼Œå³æ¯åªæ‰‹ä¸€ä¸ªï¼Œä½ å¯ä»¥ç”¨ID1å’Œ2预先定义控制器;一旦控制器"
-"被识别,它们就会被激活。如果你计划使用é¢å¤–的控制器,则应该对信å·åšå‡ºå“应,并"
-"在你的场景中添加XRController3D节点。\n"
-"控制器节点的ä½ç½®ä¼šç”±[XRServer]自动更新。这使得该节点éžå¸¸é€‚åˆæ·»åŠ å­èŠ‚点以实现"
-"å¯è§†åŒ–控制器。"
+"这是链接到控制器跟踪的辅助空间节点。它还为控制器上的按钮等状æ€æ供了几个便æ·"
+"的通é“。\n"
+"控制器通过它们的 ID 链接。你å¯ä»¥åœ¨æŽ§åˆ¶å™¨å¯ç”¨ä¹‹å‰åˆ›å»ºæŽ§åˆ¶å™¨èŠ‚点。如果你的游æˆ"
+"总是使用两个控制器,å³æ¯åªæ‰‹ä¸€ä¸ªï¼Œä½ å¯ä»¥é¢„先定义 ID 为 1 å’Œ 2 的控制器;一旦"
+"确定了控制器,它们就会被激活。如果你希望使用é¢å¤–的控制器,应该对信å·åŠ ä»¥å¤„"
+"ç†ï¼Œå¹¶å°† ARVRController 节点添加到您场景中。\n"
+"控制器节点的ä½ç½®ç”± [ARVRServer] 自动更新。这使得该节点éžå¸¸é€‚åˆæ·»åŠ å­èŠ‚点以实"
+"现å¯è§†åŒ–控制器。"
#: doc/classes/ARVRController.xml:18
msgid ""
@@ -9052,22 +9109,20 @@ msgid ""
msgstr "如果激活,如果由使用的AR/VR SDKæ供,则返回相关控制器的å称。"
#: doc/classes/ARVRController.xml:24
-#, fuzzy
msgid ""
"Returns the hand holding this controller, if known. See [enum "
"ARVRPositionalTracker.TrackerHand]."
msgstr ""
-"返回æŒæœ‰æ­¤æŽ§åˆ¶å™¨çš„手,在知é“的情况下。å‚阅[enum XRPositionalTracker."
+"返回æŒæœ‰æ­¤æŽ§åˆ¶å™¨çš„手,如果知é“çš„è¯ã€‚å‚阅[enum ARVRPositionalTracker."
"TrackerHand]。"
#: doc/classes/ARVRController.xml:30
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the bound controller is active. ARVR systems "
"attempt to track active controllers."
msgstr ""
-"如果绑定的控制器处于激活状æ€ï¼Œè¿”回[code]true[/code]。XR系统å°è¯•è·Ÿè¸ªæ¿€æ´»çš„控制"
-"器。"
+"如果绑定的控制器处于活动状æ€ï¼Œè¿”回[code]true[/code]。ARVR系统å°è¯•è·Ÿè¸ªæ´»åŠ¨çš„控"
+"制器。"
#: doc/classes/ARVRController.xml:37
msgid ""
@@ -9076,7 +9131,6 @@ msgid ""
msgstr "为嵌入到控制器中的触å‘器ã€è§¦æ‘¸æ¿ç­‰è¿”回给定轴的值。"
#: doc/classes/ARVRController.xml:43
-#, fuzzy
msgid ""
"Returns the ID of the joystick object bound to this. Every controller "
"tracked by the [ARVRServer] that has buttons and axis will also be "
@@ -9085,31 +9139,28 @@ msgid ""
"the AR/VR controllers. This ID is purely offered as information so you can "
"link up the controller with its joystick entry."
msgstr ""
-"返回与此绑定的æ“纵æ†å¯¹è±¡çš„ID。[XRServer]追踪æ¯ä¸ªæŽ§åˆ¶å™¨ï¼Œå¦‚果有按钮和轴,会被"
-"注册为Godotçš„æ“纵æ†ã€‚è¿™æ„味ç€æ‰€æœ‰æ­£å¸¸çš„æ“纵æ†è¿½è¸ªå’Œè¾“入映射将对AR/VR控制器上"
-"的按钮和轴也起作用。这个ID是æ供的信æ¯ï¼Œè¿™æ ·ä½ å°±å¯ä»¥æŠŠæŽ§åˆ¶å™¨å’Œå®ƒçš„æ“纵æ†æ¡ç›®"
-"å…³è”èµ·æ¥ã€‚"
+"返回与此绑定的摇æ†å¯¹è±¡çš„ID。由[ARVRServer]跟踪的æ¯ä¸ªæŽ§åˆ¶å™¨ï¼Œå¦‚果有按钮和轴,"
+"也将被注册为Godot中的摇æ†ã€‚è¿™æ„味ç€æ‰€æœ‰æ­£å¸¸çš„摇æ†è·Ÿè¸ªå’Œè¾“入映射将对AR/VR控制"
+"器上的按钮和轴起作用。这个ID纯粹是作为信æ¯æ供的,这样你就å¯ä»¥æŠŠæŽ§åˆ¶å™¨å’Œå®ƒçš„"
+"摇æ†æ¡ç›®å…³è”èµ·æ¥ã€‚"
#: doc/classes/ARVRController.xml:49
-#, fuzzy
msgid ""
"If provided by the [ARVRInterface], this returns a mesh associated with the "
"controller. This can be used to visualize the controller."
msgstr ""
-"如果由[XRInterface]æ供,将返回一个与控制器相关的网格。å¯ç”¨äºŽå¯è§†åŒ–控制器。"
+"如果由 [ARVRInterface]æ供,则返回与控制器相关的网格。这å¯ç”¨äºŽå¯è§†åŒ–控制器。"
#: doc/classes/ARVRController.xml:56
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the button at index [code]button[/code] is "
"pressed. See [enum JoystickList], in particular the [code]JOY_VR_*[/code] "
"constants."
msgstr ""
-"如果索引[code]button[/code]处的按钮被按下,则返回[code]true[/code]。å‚阅"
-"[enum JoyButtonList]。"
+"如果索引[code]button[/code]处的按钮被按下,返回[code]true[/code]。å‚阅[enum "
+"JoystickList],特别是[code]JOY_VR_*[/code]常数。"
#: doc/classes/ARVRController.xml:62
-#, fuzzy
msgid ""
"The controller's ID.\n"
"A controller ID of 0 is unbound and will always result in an inactive node. "
@@ -9121,15 +9172,15 @@ msgid ""
"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 ""
-"控制器的ID。\n"
-"控制器ID为0是ä¸ç»‘定,将始终有一个未激活的节点。控制器ID 1ä¿ç•™ç»™ç¬¬ä¸€ä¸ªè¯†åˆ«è‡ªèº«"
-"左手的控制器,ID 2ä¿ç•™ç»™ç¬¬ä¸€ä¸ªè¯†åˆ«è‡ªèº«å³æ‰‹çš„控制器。\n"
-"对于[XRServer]检测到的任何其他控制器,我们继续使用控制器ID 3。\n"
-"当一个控制器被关闭时,释放它的æ’槽。这确ä¿æŽ§åˆ¶å™¨å°†ä¿æŒç›¸åŒçš„ID,å³ä½¿ID较低的"
-"控制器被关闭。"
+"控制器的 ID。\n"
+"控制器 ID 为 0 是未绑定的,并且始终会导致节点处于éžæ´»åŠ¨çŠ¶æ€ã€‚控制器 ID 1 ä¿ç•™"
+"给第一个将自己标识为左侧控制器的控制器,ID 2 ä¿ç•™ç»™ç¬¬ä¸€ä¸ªå°†å…¶æ ‡è¯†ä¸ºå³ä¾§æŽ§åˆ¶å™¨"
+"的控制器。\n"
+"对于 [ARVRServer] 检测到的任何其他控制器,继而使用控制器 ID 3。\n"
+"当控制器关闭时,它的æ’槽被释放。这å¯ç¡®ä¿å³ä½¿åœ¨å…³é—­ ID 较低的控制器时,其他控"
+"制器也将ä¿æŒç›¸åŒçš„ ID。"
#: doc/classes/ARVRController.xml:68
-#, fuzzy
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 "
@@ -9138,8 +9189,8 @@ msgid ""
"for a limited duration."
msgstr ""
"控制器振动的程度。范围从[code]0.0[/code]到[code]1.0[/code],精度[code].01[/"
-"code]。如果改å˜äº†ï¼Œä¼šç›¸åº”地更新[member XRPositionalTracker.rumble]。\n"
-"如果你想让控制器在有é™çš„时间内振动,这是一个有用的动画属性。"
+"code]。如果更改,会相应地更新[member ARVRPositionalTracker.rumble]。\n"
+"如果你想让控制器在é™å®šæ—¶é—´å†…振动,这是一个有用的属性,å¯ä»¥å°†å…¶åŠ¨ç”»åŒ–。"
#: doc/classes/ARVRController.xml:76
msgid "Emitted when a button on this controller is pressed."
@@ -9163,7 +9214,6 @@ msgid "Base class for an AR/VR interface implementation."
msgstr "AR/VR接å£å®žçŽ°çš„基类。"
#: doc/classes/ARVRInterface.xml:7
-#, fuzzy
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 "
@@ -9174,11 +9224,11 @@ msgid ""
"give us a working setup. You can query the available interfaces through "
"[ARVRServer]."
msgstr ""
-"这个类需è¦å®žçŽ°ï¼Œä»¥ä½¿AR或VRå¹³å°åœ¨Godot中å¯ç”¨ï¼Œè¿™äº›å†…容应以C++模å—或GDNative模"
-"å—实现,注æ„,对于GDNative应使用å­ç±»XRScriptInterface。其部分接å£æš´éœ²ç»™"
-"GDScript,因此你å¯ä»¥æ£€æµ‹ã€å¯ç”¨å’Œé…ç½®AR或VRå¹³å°ã€‚\n"
-"接å£çš„编写方å¼å°†æ˜¯ç®€å•åœ°å¯ç”¨å®ƒä»¬ï¼Œå°±å¯ä»¥å¾—到环境安装。你å¯ä»¥é€šè¿‡[XRServer]查"
-"询å¯ç”¨çš„接å£ã€‚"
+"需è¦å®žçŽ°è¿™ä¸ªç±»æ‰èƒ½ä½¿ AR 或 VR å¹³å°å¯ä¾› Godot 使用,并且应实现为 C++ 模å—或 "
+"GDNative 模å—,注æ„,对于 GDNative,应使用å­ç±» ARVRScriptInterface。部分接å£"
+"å‘ GDScript 公开,因而,您å¯ä»¥æ£€æµ‹ã€å¯ç”¨å’Œé…ç½® AR 或 VR å¹³å°ã€‚\n"
+"接å£åº”以这样的方å¼ç¼–写,åªéœ€å¯ç”¨å®ƒä»¬å°±å¯ä»¥ä¸ºæˆ‘们æ供工作é…置。您å¯ä»¥é€šè¿‡"
+"[ARVRServer]查询å¯ç”¨æŽ¥å£ã€‚"
#: doc/classes/ARVRInterface.xml:17
msgid ""
@@ -9345,26 +9395,23 @@ msgid ""
msgstr "追踪功能失效,å³ç›¸æœºæœªæ’电或被é®æŒ¡ï¼Œç¯å¡”关闭,等等。"
#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:4
-#, fuzzy
msgid "GDNative wrapper for an ARVR interface."
-msgstr "XR接å£çš„GDNative包装器。"
+msgstr "ARVR接å£çš„GDNative包装器。"
#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml:7
-#, fuzzy
msgid ""
"This is a wrapper class for GDNative implementations of the ARVR interface. "
"To use a GDNative ARVR interface, simply instantiate this object and set "
"your GDNative library containing the ARVR interface implementation."
msgstr ""
-"这是一个包装类,用于XR接å£çš„GDNative实现。è¦ä½¿ç”¨GDNative XR接å£ï¼Œåªéœ€å°†æ­¤å¯¹è±¡"
-"实例化,并设置你GDNative库中包å«XR接å£çš„实现。"
+"这是 ARVR 接å£çš„ GDNative 实现的包装类。è¦ä½¿ç”¨ GDNative ARVR 接å£ï¼Œåªéœ€å®žä¾‹åŒ–"
+"æ­¤å¯¹è±¡å¹¶è®¾ç½®åŒ…å« ARVR 接å£å®žçŽ°çš„ GDNative 库。"
#: doc/classes/ARVROrigin.xml:4
msgid "The origin point in AR/VR."
msgstr "AR/VR的原点。"
#: doc/classes/ARVROrigin.xml:7
-#, fuzzy
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 "
@@ -9379,33 +9426,30 @@ msgid ""
"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 ""
-"这是AR/VR系统中的特殊节点,它将我们追踪空间中心的物ç†ä½ç½®æ˜ å°„到游æˆä¸–界中的虚"
-"æ‹Ÿä½ç½®ã€‚\n"
-"在你的场景中应该至少有一个这样的节点。所有的XRCamera3Dã€XRController3Då’Œ"
-"XRAnchor3D节点都应该是这个节点的直接å­èŠ‚点,这样空间追踪æ‰èƒ½æ­£å¸¸å·¥ä½œã€‚\n"
-"当你的角色需è¦åœ¨æ¸¸æˆä¸–界中移动时,你会更新这个节点的ä½ç½®ï¼Œè€Œæˆ‘们并没有在现实"
-"世界中移动。现实世界中的è¿åŠ¨æ€»æ˜¯ä¸Žè¿™ä¸ªåŽŸç‚¹æœ‰å…³ã€‚\n"
-"例如,如果你的角色正在驾驶一辆汽车,XROrigin3D节点应该是这辆汽车的一个å­èŠ‚"
-"点。或者,如果你正在实现一个传é€ç³»ç»Ÿæ¥ç§»åŠ¨ä½ çš„角色,你应该改å˜è¿™ä¸ªèŠ‚点的ä½"
-"置。"
+"这是 AR/VR 系统中的一个特殊节点,它将我们跟踪空间中心的物ç†ä½ç½®æ˜ å°„到游æˆä¸–ç•Œ"
+"中的虚拟ä½ç½®ã€‚\n"
+"你的场景中应该有且必须有这样节点。所有 ARVRCameraã€ARVRController å’Œ "
+"ARVRAnchor 节点都应该是该节点的直接å­èŠ‚点,以便空间跟踪正常è¿è¡Œã€‚\n"
+"当你的角色需è¦åœ¨æ¸¸æˆä¸–界中移动而我们ä¸åœ¨çŽ°å®žä¸–界中移动时,会更新此节点的ä½"
+"置。现实世界中的è¿åŠ¨æ€»æ˜¯ä¸Žè¿™ä¸ªåŽŸç‚¹æœ‰å…³ã€‚\n"
+"例如,如果你的角色正在驾驶汽车,则 ARVROrigin 节点应该是这辆车的å­èŠ‚点。或"
+"者,如果通过传é€ç³»ç»Ÿæ¥ç§»åŠ¨è§’色,应该更改此节点的ä½ç½®ã€‚"
#: doc/classes/ARVROrigin.xml:19
-#, fuzzy
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 [ARVRServer] itself."
msgstr ""
-"å…许你根æ®ä½ çš„游æˆçš„å•ä½æ¥è°ƒæ•´æ¯”例。大多数AR/VRå¹³å°çš„比例是,1个游æˆä¸–界的å•"
-"ä½=1个现实世界的米。\n"
-"[b]注æ„:[/b]è¿™ç§æ–¹æ³•æ˜¯å¯¹[XRServer]本身的一ç§ç©¿é€ã€‚"
+"å…许你根æ®ä½ çš„游æˆçš„å•ä½æ¥è°ƒæ•´æ¯”例。大多数AR/VRå¹³å°å‡å®š1个游æˆä¸–界的å•ä½=1个"
+"现实世界的米的比例。\n"
+"[b]注æ„:[/b]è¿™ç§æ–¹æ³•æ˜¯é€šè¿‡[ARVRServer]本身的。"
#: doc/classes/ARVRPositionalTracker.xml:4
msgid "A tracked object."
msgstr "跟踪对象。"
#: doc/classes/ARVRPositionalTracker.xml:7
-#, fuzzy
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 "
@@ -9418,13 +9462,13 @@ msgid ""
"hood objects that make this all work. These are mostly exposed so that "
"GDNative-based interfaces can interact with them."
msgstr ""
-"此对象的一个实例代表一个被追踪的设备,如控制器或锚点。这里ä¸ä»£è¡¨HMD,因为它们"
-"是内部处ç†çš„。\n"
-"当打开控制器,并且AR/VR接å£æ£€æµ‹åˆ°å®ƒä»¬æ—¶ï¼Œä¼šè‡ªåŠ¨æ·»åŠ è¿™ä¸ªå¯¹è±¡çš„实例到通过这个"
-"[XRServer]访问的激活的跟踪对象列表中。\n"
-"[XRController3D]å’Œ[XRAnchor3D]会消耗这ç§ç±»åž‹çš„对象,你应在项目中使用。ä½ç½®è·Ÿ"
-"踪器åªæ˜¯ä½¿è¿™ä¸€åˆ‡å·¥ä½œçš„幕åŽå¯¹è±¡ã€‚这些对象通常被公开出æ¥ï¼Œä»¥ä¾¿åŸºäºŽGDNative的接"
-"å£å¯ä»¥ä¸Žå®ƒä»¬è¿›è¡Œäº¤äº’。"
+"此对象的实例表示被跟踪的设备,例如控制器或锚点。由于 HMD 是在内部处ç†çš„,因此"
+"ä¸è¡¨ç¤º HMD。\n"
+"当控制器打开并且 AR/VR ç•Œé¢æ£€æµ‹åˆ°å®ƒä»¬æ—¶ï¼Œæ­¤å¯¹è±¡çš„实例会自动添加到å¯é€šè¿‡ "
+"[ARVRServer] 访问的活动的跟踪对象列表中。\n"
+"[ARVRController] å’Œ [ARVRAnchor] 都使用这ç§ç±»åž‹çš„对象,你应该在的项目中使用。"
+"ä½ç½®è·Ÿè¸ªå™¨åªæ˜¯ä½¿è¿™ä¸€åˆ‡æ­£å¸¸å·¥ä½œçš„底层对象。这些大部分都是公开的,以便基于 "
+"GDNative 的接å£å¯ä»¥ä¸Žå®ƒä»¬äº¤äº’。"
#: doc/classes/ARVRPositionalTracker.xml:18
msgid ""
@@ -9457,14 +9501,13 @@ msgid "Returns the world-space controller position."
msgstr "返回世界空间控制器的ä½ç½®ã€‚"
#: doc/classes/ARVRPositionalTracker.xml:54
-#, fuzzy
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 "
"[ARVRController] and [ARVRAnchor] nodes."
msgstr ""
-"返回内部追踪器的ID。这是对æ¯ä¸ªè·Ÿè¸ªå™¨ç±»åž‹çš„唯一标识,与你需è¦ä¸º"
-"[XRController3D]å’Œ[XRAnchor3D]节点指定的ID相匹é…。"
+"返回内部跟踪器的ID。这是对æ¯ä¸ªè·Ÿè¸ªå™¨ç±»åž‹çš„唯一标识,与你需è¦ä¸º"
+"[ARVRController]å’Œ[ARVRAnchor]节点指定的ID相匹é…。"
#: doc/classes/ARVRPositionalTracker.xml:60
msgid "Returns [code]true[/code] if this device tracks orientation."
@@ -9520,7 +9563,7 @@ msgstr "注册一个[ARVRInterface]对象。"
msgid ""
"Registers a new [ARVRPositionalTracker] that tracks a spatial location in "
"real space."
-msgstr ""
+msgstr "注册一个新的[ARVRPositionalTracker],跟踪现实空间中的空间ä½ç½®ã€‚"
#: doc/classes/ARVRServer.xml:32
msgid ""
@@ -9560,7 +9603,7 @@ msgstr ""
#: doc/classes/ARVRServer.xml:44
msgid ""
"Clears our current primary interface if it is set to the provided interface."
-msgstr ""
+msgstr "如果设置为æ供的接å£ï¼Œåˆ™æ¸…除我们当å‰çš„主接å£ã€‚"
#: doc/classes/ARVRServer.xml:51
msgid ""
@@ -9598,7 +9641,6 @@ msgid ""
msgstr "返回å¯ç”¨æŽ¥å£çš„列表,æ¯ä¸ªæŽ¥å£çš„IDå’Œå称。"
#: doc/classes/ARVRServer.xml:82
-#, fuzzy
msgid ""
"Returns the absolute timestamp (in μs) of the last [ARVRServer] commit of "
"the AR/VR eyes to [VisualServer]. The value comes from an internal call to "
@@ -9617,7 +9659,6 @@ msgstr ""
"get_last_commit_usec]和[method get_last_process_usec]之间的差异。"
#: doc/classes/ARVRServer.xml:94
-#, fuzzy
msgid ""
"Returns the absolute timestamp (in μs) of the last [ARVRServer] process "
"callback. The value comes from an internal call to [method OS."
@@ -9649,7 +9690,6 @@ msgid "Removes this positional tracker."
msgstr "移除此ä½ç½®è·Ÿè¸ªå™¨ã€‚"
#: doc/classes/ARVRServer.xml:133
-#, fuzzy
msgid "The primary [ARVRInterface] currently bound to the [ARVRServer]."
msgstr "当å‰ç»‘定到 [XRServer] çš„ä¸»è¦ [XRInterface]。"
@@ -9670,19 +9710,17 @@ msgid "Emitted when an interface is removed."
msgstr "当接å£è¢«åˆ é™¤æ—¶è§¦å‘。"
#: doc/classes/ARVRServer.xml:157
-#, fuzzy
msgid ""
"Emitted when a new tracker has been added. If you don't use a fixed number "
"of controllers or if you're using [ARVRAnchor]s for an AR solution, it is "
"important to react to this signal to add the appropriate [ARVRController] or "
"[ARVRAnchor] nodes related to this new tracker."
msgstr ""
-"添加新跟踪器时触å‘。如果你ä¸ä½¿ç”¨å›ºå®šæ•°é‡çš„控制器,或者你使用[XRAnchor3D]çš„AR"
-"解决方案,那么对这个信å·åšå‡ºå应,添加与这个新追踪器相关的适当的"
-"[XRController3D]或[XRAnchor3D]节点将很é‡è¦ã€‚"
+"当新的追踪器被添加时触å‘。如果你ä¸ä½¿ç”¨å›ºå®šæ•°é‡çš„控制器,或者你在AR解决方案中"
+"使用[ARVRAnchor],那么对这个信å·åšå‡ºå应,以添加与这个新追踪器相关的适当的"
+"[ARVRController]或[ARVRAnchor]节点,将会很é‡è¦ã€‚"
#: doc/classes/ARVRServer.xml:165
-#, fuzzy
msgid ""
"Emitted when a tracker is removed. You should remove any [ARVRController] or "
"[ARVRAnchor] points if applicable. This is not mandatory, the nodes simply "
@@ -9690,9 +9728,9 @@ msgid ""
"available (i.e. a new controller is switched on that takes the place of the "
"previous one)."
msgstr ""
-"当追踪器被移除时触å‘。如果适用,你应该删除任何[XRController3D]或[XRAnchor3D]"
-"点。这ä¸æ˜¯å¼ºåˆ¶æ€§çš„,这些节点将å˜å¾—éžæ¿€æ´»ï¼Œå½“一个新的追踪器å¯ç”¨æ—¶ï¼Œå³ä¸€ä¸ªæ–°çš„"
-"控制器被打开,å–代了之å‰çš„控制器,这些节点将被é‡æ–°æ¿€æ´»ã€‚"
+"删除跟踪器时触å‘。如果适当,您应该删除所有 [ARVRController] 或 [ARVRAnchor] "
+"点。这ä¸æ˜¯å¼ºåˆ¶æ€§çš„,节点åªæ˜¯å˜ä¸ºä¸æ´»åŠ¨çŠ¶æ€ï¼Œå½“新的跟踪器å¯ç”¨æ—¶å°†å†æ¬¡æ¿€æ´»ï¼Œå³"
+"打开一个新的控制器æ¥ä»£æ›¿å‰ä¸€ä¸ªæŽ§åˆ¶å™¨ã€‚"
#: doc/classes/ARVRServer.xml:171
msgid "The tracker tracks the location of a controller."
@@ -9755,14 +9793,12 @@ msgstr ""
"动æ€çš„,而内容的大å°éœ€è¦ç›¸åº”调整而ä¸å¤±åŽ»æ¯”例的问题。"
#: doc/classes/AspectRatioContainer.xml:15
-#, fuzzy
msgid "Specifies the horizontal relative position of child controls."
-msgstr "å­èŠ‚点的水平分隔é‡ã€‚"
+msgstr "指定å­æŽ§ä»¶çš„水平相对ä½ç½®ã€‚"
#: doc/classes/AspectRatioContainer.xml:18
-#, fuzzy
msgid "Specifies the vertical relative position of child controls."
-msgstr "å­èŠ‚点的垂直分隔é‡ã€‚"
+msgstr "指定å­æŽ§ä»¶çš„垂直相对ä½ç½®ã€‚"
#: doc/classes/AspectRatioContainer.xml:21
msgid ""
@@ -9773,9 +9809,8 @@ msgstr ""
"stretch_mode]。"
#: doc/classes/AspectRatioContainer.xml:24
-#, fuzzy
msgid "The stretch mode used to align child controls."
-msgstr "用于“呼å«æ–¹æ³•â€è½¨é“的呼å«æ¨¡å¼ã€‚"
+msgstr "用æ¥å¯¹é½å­æŽ§ä»¶çš„拉伸模å¼ã€‚"
#: doc/classes/AspectRatioContainer.xml:29
msgid ""
@@ -9784,11 +9819,10 @@ msgid ""
msgstr "å­æŽ§ä»¶çš„高度会根æ®å®¹å™¨çš„宽度自动调整。"
#: doc/classes/AspectRatioContainer.xml:32
-#, fuzzy
msgid ""
"The width of child controls is automatically adjusted based on the height of "
"the container."
-msgstr "如果为 [code]true[/code],控件将自动调整高度以适åˆå…¶å†…容。"
+msgstr "å­æŽ§ä»¶çš„宽度会根æ®å®¹å™¨çš„高度自动调整。"
#: doc/classes/AspectRatioContainer.xml:35
msgid ""
@@ -9811,30 +9845,25 @@ msgstr ""
"用时,这仅å…许显示å—其自身边界矩形é™åˆ¶çš„容器区域。"
#: doc/classes/AspectRatioContainer.xml:42
-#, fuzzy
msgid ""
"Aligns child controls with the beginning (left or top) of the container."
-msgstr "å°†å­é¡¹ä¸Žå®¹å™¨çš„开端对é½ã€‚"
+msgstr "å°†å­æŽ§ä»¶ä¸Žå®¹å™¨çš„开头对é½ï¼Œå·¦ä¾§æˆ–顶部。"
#: doc/classes/AspectRatioContainer.xml:45
-#, fuzzy
msgid "Aligns child controls with the center of the container."
-msgstr "å°†å­é¡¹ä¸Žå®¹å™¨çš„中心对é½ã€‚"
+msgstr "使å­æŽ§ä»¶ä¸Žå®¹å™¨çš„中心对é½ã€‚"
#: doc/classes/AspectRatioContainer.xml:48
-#, fuzzy
msgid "Aligns child controls with the end (right or bottom) of the container."
-msgstr "å°†å­é¡¹ä¸Žå®¹å™¨çš„末端对é½ã€‚"
+msgstr "å°†å­æŽ§ä»¶ä¸Žå®¹å™¨çš„末端对é½ï¼Œå³ä¾§æˆ–底部。"
#: doc/classes/AStar.xml:4
-#, fuzzy
msgid ""
"An implementation of A* to find the shortest paths among connected points in "
"space."
-msgstr "A *的一ç§å®žçŽ°ï¼Œç”¨äºŽåœ¨ç©ºé—´ä¸­çš„连接点之间找到最短路径。"
+msgstr "A* 的一ç§å®žçŽ°ï¼Œç”¨äºŽå¯»æ‰¾ç©ºé—´ä¸­è¿žæŽ¥ç‚¹ä¹‹é—´çš„最短路径。"
#: doc/classes/AStar.xml:7
-#, fuzzy
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 "
@@ -9877,16 +9906,16 @@ msgid ""
"[code]1.0[/code], then this equals the sum of Euclidean distances of all "
"segments in the path."
msgstr ""
-"A*(A star)是一个计算机算法,被广泛应用于寻路和图é历,å³åœ¨é¡¶ç‚¹ï¼ˆpoints)之"
-"间绘制短路径的过程,通过给定的一组边(segments)。由于它的性能和精度,得到了"
-"广泛的应用。Godotçš„A*算法实现默认使用三维空间中的点和欧æ°è·ç¦»ã€‚\n"
-"你必须使用[method add_point]手动添加点并使用[method connect_points]手动创建"
-"边。然åŽä½ å¯ä»¥ä½¿ç”¨[method are_points_connected]函数测试两个点之间是å¦å­˜åœ¨è·¯"
-"径,使用[method get_id_path]获å–包å«ç´¢å¼•çš„路径,或者使用[method "
-"get_point_path]æ¥èŽ·å–包å«çœŸå®žå标的路径。\n"
-"使用éžæ¬§å‡ é‡Œå¾·è·ç¦»ä¹Ÿæ˜¯å¯ä»¥çš„。为此,创建一个类继承[code]AStar[/code]并é‡å†™ "
-"[method _compute_cost] å’Œ [method _estimate_cost]方法。两者都需è¦è¾“入两个索引"
-"并返回一个长度,如下é¢çš„例å­æ‰€ç¤ºã€‚\n"
+"A*å³A 星是一ç§è®¡ç®—机算法,广泛用于寻路和图é历,通过一组给定的边或线段,在顶"
+"点或点之间绘制短路径的过程。由于其性能和准确性,而被广泛使用。 Godot 的 A* 实"
+"现默认使用三维空间中的点和欧å¼è·ç¦»ã€‚\n"
+"您需è¦ä½¿ç”¨ [method add_point] 手动添加点,并使用 [method connect_points] 手动"
+"创建线段。然åŽï¼Œå¯ä»¥ä½¿ç”¨ [method are_points_connected] 函数测试两点之间是å¦å­˜"
+"在路径,通过 [method get_id_path] 获å–包å«ç´¢å¼•çš„路径,或使用 [method "
+"get_point_path] 获å–包å«å®žé™…å标的路径。\n"
+"也å¯ä»¥ä½¿ç”¨éžæ¬§å¼è·ç¦»ã€‚为此,创建一个扩展 [code]AStar[/code] 的类并é‡å†™æ–¹æ³• "
+"[method _compute_cost] å’Œ [method _estimate_cost]。这两个方法都接å—两个索引并"
+"返回一个长度,如以下示例所示:\n"
"[codeblock]\n"
"class MyAStar:\n"
" extends AStar\n"
@@ -9897,11 +9926,17 @@ msgstr ""
" func _estimate_cost(u, v):\n"
" return min(0, abs(u - v) - 1)\n"
"[/codeblock]\n"
-"[method _estimate_cost]应该返回è·ç¦»çš„一个下界,å³[code]_estimate_cost(u, v) "
-"<= _compute_cost(u, v)[/code]。这是对算法的一个æ示,因为自定义的"
-"[code]_compute_cost[/code]å¯èƒ½è®¡ç®—é‡å¾ˆå¤§ã€‚如果ä¸æ˜¯è¿™æ ·ï¼Œè¯·è®©[method "
-"_estimate_cost]返回与[method _compute_cost]相åŒçš„值,以便为算法æ供最准确的信"
-"æ¯ã€‚"
+"[method _estimate_cost] 应返回è·ç¦»çš„下é™ï¼Œå³ [code]_estimate_cost(u, v) <= "
+"_compute_cost(u, v)[/code]。这å¯ä»¥ä½œä¸ºç®—法的æ示,因为自定义 "
+"[code]_compute_cost[/code] å¯èƒ½è®¡ç®—é‡å¾ˆå¤§ã€‚如果ä¸æ˜¯è¿™ç§æƒ…况,请使 [method "
+"_estimate_cost] 返回与 [method _compute_cost] 相åŒçš„值,以便为算法æ供最准确"
+"çš„ä¿¡æ¯ã€‚\n"
+"如果使用默认的 [method _estimate_cost] 和 [method _compute_cost] 方法,或者如"
+"æžœæ供的 [method _estimate_cost] 方法返回æˆæœ¬çš„下é™ï¼Œåˆ™ A* 返回的路径将是æˆæœ¬"
+"最低的路径。这里,路径的代价等于路径中所有段的[method_compute_cost]结果之和乘"
+"以å„个段端点的[code]weight_scale[/code]æƒé‡ã€‚如果使用默认方法并且所有点的 "
+"[code]weight_scale[/code] 设置为 [code]1.0[/code],则这等于路径中所有段的欧å¼"
+"è·ç¦»ä¹‹å’Œã€‚"
#: doc/classes/AStar.xml:31
msgid ""
@@ -9921,7 +9956,6 @@ msgstr ""
"注æ„这个函数éšè—在默认的 [code]AStar[/code] 类中。"
#: doc/classes/AStar.xml:50
-#, fuzzy
msgid ""
"Adds a new point at the given position with the given identifier. The "
"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
@@ -9939,15 +9973,17 @@ msgid ""
"If there already exists a point for the given [code]id[/code], its position "
"and weight scale are updated to the given values."
msgstr ""
-"在给定的ä½ç½®æ·»åŠ ä¸€ä¸ªæ–°çš„点。算法优先选择[code]weight_scale[/code]较低的点æ¥å½¢"
-"æˆè·¯å¾„。[code]id[/code]必须是0或更大,[code]weight_scale[/code]必须是1或更"
-"大。\n"
+"在给定的ä½ç½®æ·»åŠ ä¸€ä¸ªæ–°çš„点,并使用给定的标识符。[code]id[/code]必须是0或者更"
+"大,[code]weight_scale[/code]必须是1或者更大。\n"
+"在确定从邻点到此点的一段路程的总æˆæœ¬æ—¶ï¼Œ[code]weight_scale[/code]è¦ä¹˜ä»¥"
+"[method _compute_cost]的结果。因此,在其他æ¡ä»¶ç›¸åŒçš„情况下,算法优先选择"
+"[code]weight_scale[/code]较低的点æ¥å½¢æˆè·¯å¾„。\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"
-"如果给定的[code]id[/code]å·²ç»å­˜åœ¨ä¸€ä¸ªç‚¹ï¼Œé‚£ä¹ˆå®ƒçš„ä½ç½®å’Œæƒé‡åˆ»åº¦å°†æ›´æ–°åˆ°ç»™å®šçš„"
+"如果对于给定的[code]id[/code]å·²ç»å­˜åœ¨ä¸€ä¸ªç‚¹ï¼Œå®ƒçš„ä½ç½®å’Œæƒé‡å°†è¢«æ›´æ–°ä¸ºç»™å®šçš„"
"值。"
#: doc/classes/AStar.xml:65
@@ -10123,7 +10159,6 @@ msgid "Returns the number of points currently in the points pool."
msgstr "返回当å‰ç§¯åˆ†æ± ä¸­çš„积分数é‡ã€‚"
#: doc/classes/AStar.xml:187
-#, fuzzy
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 "
@@ -10131,8 +10166,10 @@ msgid ""
"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
"will return an empty [PoolVector3Array] and will print an error message."
msgstr ""
-"返回一个数组,该数组包å«äº†AStar在给定点之间找到的路径上的点。数组从路径的起始"
-"点到结æŸç‚¹æŽ’åºã€‚"
+"è¿”å›žä¸€ä¸ªæ•°ç»„ï¼Œå…¶ä¸­åŒ…å« AStar 在给定点之间找到的路径中的点。数组从路径的起点到"
+"终点进行排åºã€‚\n"
+"[b]注æ„:[/b] 这个方法ä¸æ˜¯çº¿ç¨‹å®‰å…¨çš„。如果从 [Thread] 调用,它将返回一个空的 "
+"[PoolVector3Array] 并打å°ä¸€æ¡é”™è¯¯æ¶ˆæ¯ã€‚"
#: doc/classes/AStar.xml:195 doc/classes/AStar2D.xml:179
msgid ""
@@ -10193,6 +10230,9 @@ msgid ""
"_compute_cost] when determining the overall cost of traveling across a "
"segment from a neighboring point to this point."
msgstr ""
+"为给定的[code]id[/code]的点设置[code]weight_scale[/code]。在确定从邻接点到这"
+"个点的一段路程的总æˆæœ¬æ—¶ï¼Œ[code]weight_scale[/code]è¦ä¹˜ä»¥[method "
+"_compute_cost]的结果。"
#: doc/classes/AStar2D.xml:4
msgid "AStar class representation that uses 2D vectors as edges."
@@ -10222,7 +10262,6 @@ msgstr ""
"请注æ„,这个函数éšè—在默认的 [code]AStar2D[/code] 类中。"
#: doc/classes/AStar2D.xml:36
-#, fuzzy
msgid ""
"Adds a new point at the given position with the given identifier. The "
"[code]id[/code] must be 0 or larger, and the [code]weight_scale[/code] must "
@@ -10240,16 +10279,17 @@ msgid ""
"If there already exists a point for the given [code]id[/code], its position "
"and weight scale are updated to the given values."
msgstr ""
-"在给定的ä½ç½®æ·»åŠ ä¸€ä¸ªæ–°çš„点。算法优先选择[code]weight_scale[/code]较低的点æ¥å½¢"
-"æˆè·¯å¾„。[code]id[/code]必须是0或更大,[code]weight_scale[/code]必须是1或更"
-"大。\n"
+"在给定的ä½ç½®æ·»åŠ ä¸€ä¸ªæ–°çš„点,并使用给定的标识符。[code]id[/code]必须是0或者更"
+"大,[code]weight_scale[/code]必须是1或者更大。\n"
+"在确定从相邻点到此点的一段路程的总æˆæœ¬æ—¶ï¼Œ[code]weight_scale[/code]è¦ä¹˜ä»¥"
+"[method _compute_cost]的结果。因此,在其他æ¡ä»¶ç›¸åŒçš„情况下,算法优先选择"
+"[code]weight_scale[/code]较低的点æ¥å½¢æˆè·¯å¾„。\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"
-"如果给定的[code]id[/code]å·²ç»å­˜åœ¨ä¸€ä¸ªç‚¹ï¼Œé‚£ä¹ˆå®ƒçš„ä½ç½®å’Œæƒé‡åˆ»åº¦å°†æ›´æ–°åˆ°ç»™å®šçš„"
-"值。"
+"如果已ç»å­˜åœ¨ä¸€ä¸ªç»™å®š[code]id[/code]的点,它的ä½ç½®å’Œæƒé‡å°†è¢«æ›´æ–°ä¸ºç»™å®šå€¼ã€‚"
#: doc/classes/AStar2D.xml:50
msgid "Returns whether there is a connection/segment between the given points."
@@ -10382,7 +10422,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/AStar2D.xml:171
-#, fuzzy
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 "
@@ -10390,8 +10429,10 @@ msgid ""
"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
"will return an empty [PoolVector2Array] and will print an error message."
msgstr ""
-"返回一个数组,该数组包å«äº†AStar2D在给定点之间找到的路径中的点。数组从路径的起"
-"始点到结æŸç‚¹æŽ’åºã€‚"
+"返回一个数组,该数组包å«äº†AStar2D在给定点之间找到的路径中的点。该数组从路径的"
+"起点到终点排åºã€‚\n"
+"[b]注æ„:[/b] 这个方法ä¸æ˜¯çº¿ç¨‹å®‰å…¨çš„。如果从一个[Thread]线程中调用,它将返回"
+"一个空的[PoolVector2Array],并打å°ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ã€‚"
#: doc/classes/AtlasTexture.xml:4
msgid ""
@@ -10416,11 +10457,20 @@ msgid ""
"FLAG_REPEAT] and [constant Texture.FLAG_MIRRORED_REPEAT] flags are ignored "
"when using an AtlasTexture."
msgstr ""
+"[Texture]资æºï¼Œç”±[member region]定义,è£å‰ªå‡º[member atlas]纹ç†çš„一个部分。主"
+"è¦çš„用例是从纹ç†å›¾é›†ä¸­è£å‰ªå‡ºçº¹ç†ï¼Œä¸€ä¸ªå¤§çš„纹ç†æ–‡ä»¶ï¼ŒåŒ…å«äº†å¤šä¸ªè¾ƒå°çš„纹ç†ã€‚ç”± "
+"[member atlas]çš„[Texture]ã€å®šä¹‰ä½¿ç”¨ [member atlas]区域的[member region]和定义"
+"边界宽度的[member margin]组æˆã€‚\n"
+"[AtlasTexture]ä¸èƒ½åœ¨[AnimatedTexture]中使用,ä¸èƒ½åœ¨[TextureRect]等节点中平"
+"铺,如果在其他[AtlasTexture]资æºå†…部使用,将ä¸èƒ½æ­£å¸¸å·¥ä½œã€‚多个[AtlasTexture]"
+"资æºå¯ä»¥ç”¨æ¥è£å‰ªå›¾é›†ä¸­çš„多个纹ç†ã€‚与使用多个å°æ–‡ä»¶ç›¸æ¯”,使用一个纹ç†å›¾é›†æœ‰åŠ©"
+"于优化视频内存消耗和渲染调用。\n"
+"[b]注æ„:[/b] AtlasTexturesä¸æ”¯æŒé‡å¤ã€‚当使用AtlasTexture时,[constant "
+"Texture.FLAG_REPEAT]和[constant Texture.FLAG_MIRRORED_REPEAT]标志被忽略。"
#: doc/classes/AtlasTexture.xml:17
-#, fuzzy
msgid "The texture that contains the atlas. Can be any [Texture] subtype."
-msgstr "包å«å›¾é›†çš„纹ç†ã€‚å¯ä»¥æ˜¯ä»»ä½• [Texture2D]å­ç±»åž‹ã€‚"
+msgstr "包å«å›¾é›†çš„纹ç†ã€‚å¯ä»¥æ˜¯ä»»ä½•[Texture]å­ç±»åž‹ã€‚"
#: doc/classes/AtlasTexture.xml:20
msgid ""
@@ -10514,7 +10564,7 @@ msgstr ""
#: doc/classes/AudioEffectCapture.xml:4
msgid "Captures audio from an audio bus in real-time."
-msgstr ""
+msgstr "从音频总线上实时æ•æ‰éŸ³é¢‘。"
#: doc/classes/AudioEffectCapture.xml:7
msgid ""
@@ -10525,20 +10575,22 @@ msgid ""
"data from a microphone, implement application defined effects, or to "
"transmit audio over the network."
msgstr ""
+"音频效果æ•èŽ·æ˜¯ä¸€ç§éŸ³é¢‘效果,å¯å°†æ‰€é™„音频效果总线的所有音频帧å¤åˆ¶åˆ°å…¶å†…部环缓"
+"冲器中。\n"
+"应用程åºä»£ç åº”使用 [method get_buffer]从该环缓冲器中消耗这些音频帧,并根æ®éœ€"
+"è¦è¿›è¡Œå¤„ç†ï¼Œä¾‹å¦‚从麦克风æ•èŽ·æ•°æ®ã€å®žçŽ°åº”用程åºå®šä¹‰çš„效果或通过网络传输音频。"
#: doc/classes/AudioEffectCapture.xml:17
-#, fuzzy
msgid ""
"Returns [code]true[/code] if at least [code]frames[/code] audio frames are "
"available to read in the internal ring buffer."
msgstr ""
-"如果给定[code]name[/code]的字体在这个[Control]节点中具有有效的覆盖,则返回"
-"[code]true[/code]。"
+"如果内部环缓冲器中至少有[code]frames[/code]音频帧å¯ä¾›è¯»å–,则返回[code]true[/"
+"code]。"
#: doc/classes/AudioEffectCapture.xml:23
-#, fuzzy
msgid "Clears the internal ring buffer."
-msgstr "清除库。"
+msgstr "清除内部环缓冲区。"
#: doc/classes/AudioEffectCapture.xml:30
msgid ""
@@ -10548,35 +10600,35 @@ msgid ""
"samples if available, or an empty [PoolVector2Array] if insufficient data "
"was available."
msgstr ""
+"从内部环缓冲区获å–下一个[code]frames[/code]音频样本。\n"
+"如果有的è¯ï¼Œè¿”回一个正好包å«[code]frames[/code]音频样本的[PoolVector2Array],"
+"如果没有足够的数æ®ï¼Œåˆ™è¿”回一个空[PoolVector2Array]。"
#: doc/classes/AudioEffectCapture.xml:37
-#, fuzzy
msgid "Returns the total size of the internal ring buffer in frames."
-msgstr "返回文件的大å°ï¼Œä»¥å­—节(bytes)å½¢å¼ã€‚"
+msgstr "返回内部环缓冲区的总大å°ï¼Œä»¥å¸§ä¸ºå•ä½ã€‚"
#: doc/classes/AudioEffectCapture.xml:43
-#, fuzzy
msgid ""
"Returns the number of audio frames discarded from the audio bus due to full "
"buffer."
-msgstr "返回这个目录的å­ç›®å½•çš„æ•°é‡ã€‚"
+msgstr "返回由于缓冲区满而从音频总线上丢弃的音频帧的数é‡ã€‚"
#: doc/classes/AudioEffectCapture.xml:49
-#, fuzzy
msgid ""
"Returns the number of frames available to read using [method get_buffer]."
-msgstr "返回环形缓冲区中当å‰å¯ç”¨çš„æ•°æ®åŒ…数。"
+msgstr "返回å¯ä½¿ç”¨ [method get_buffer] 读å–的帧数。"
#: doc/classes/AudioEffectCapture.xml:55
-#, fuzzy
msgid "Returns the number of audio frames inserted from the audio bus."
-msgstr "返回动画中的帧数。"
+msgstr "返回从音频总线æ’入的音频帧的数é‡ã€‚"
#: doc/classes/AudioEffectCapture.xml:61
msgid ""
"Length of the internal ring buffer, in seconds. Setting the buffer length "
"will have no effect if already initialized."
msgstr ""
+"内部环缓冲区的长度,å•ä½æ˜¯ç§’。如果已ç»åˆå§‹åŒ–,设置缓冲区长度将没有效果。"
#: doc/classes/AudioEffectChorus.xml:4
msgid "Adds a chorus audio effect."
@@ -10783,16 +10835,14 @@ msgid ""
msgstr "[code]tap2[/code]的平移ä½ç½®ã€‚值的范围为-1(完全å‘左)至1(完全å‘å³ï¼‰ã€‚"
#: doc/classes/AudioEffectDistortion.xml:4
-#, fuzzy
msgid ""
"Adds a distortion audio effect to an Audio bus.\n"
"Modify the sound to make it distorted."
msgstr ""
-"为音频总线添加失真音频效果。\n"
+"在音频总线上添加一个失真的音频效果。\n"
"修改声音,使其失真。"
#: doc/classes/AudioEffectDistortion.xml:8
-#, fuzzy
msgid ""
"Different types are available: clip, tan, lo-fi (bit crushing), overdrive, "
"or waveshape.\n"
@@ -10800,10 +10850,10 @@ msgid ""
"make the sound \"crunchy\" or \"abrasive\". For games, it can simulate sound "
"coming from some saturated device or speaker very efficiently."
msgstr ""
-"修改声音并使其混淆。å¯ç”¨çš„类型有: clip, tan, lo-fi (bit crushing), "
-"overdrive, or waveshape。\n"
-"通过使波形扭曲,频率内容会å‘生å˜åŒ–,这通常会使声音“嘎å±â€æˆ–“磨砂â€ã€‚对于游æˆï¼Œ"
-"它å¯ä»¥éžå¸¸æœ‰æ•ˆåœ°æ¨¡æ‹Ÿæ¥è‡ªæŸäº›é¥±å’Œè®¾å¤‡æˆ–扬声器的声音。"
+"æä¾›ä¸åŒç±»åž‹çš„类型:clip, tan, lo-fi (bit crushing), overdrive, or "
+"waveshape.\n"
+"通过扭曲波形,频率内容会å‘生å˜åŒ–,这通常会使声音\"清脆\"或\"ç²—ç³™\"。对于游"
+"æˆï¼Œå®ƒå¯ä»¥éžå¸¸æœ‰æ•ˆåœ°æ¨¡æ‹Ÿæ¥è‡ªä¸€äº›é¥±å’Œè®¾å¤‡æˆ–扬声器的声音。"
#: doc/classes/AudioEffectDistortion.xml:12
#: doc/classes/AudioEffectFilter.xml:10
@@ -10934,7 +10984,7 @@ msgstr ""
"频段8:4000赫兹\n"
"频段9:8000赫兹\n"
"频段10:16000赫兹\n"
-"å¦è§[AudioEffectEQ]ã€[AudioEffectEQ6]ã€[AudioEffectEQ21]。"
+"å‚阅[AudioEffectEQ]ã€[AudioEffectEQ6]ã€[AudioEffectEQ21]。"
#: doc/classes/AudioEffectEQ21.xml:4
msgid ""
@@ -10993,7 +11043,7 @@ msgstr ""
"频段19:11000赫兹\n"
"频段20:16000赫兹\n"
"频段21:22000赫兹\n"
-"å¦è§[AudioEffectEQ]ã€[AudioEffectEQ6]ã€[AudioEffectEQ10]。"
+"å‚阅[AudioEffectEQ]ã€[AudioEffectEQ6]ã€[AudioEffectEQ10]。"
#: doc/classes/AudioEffectEQ6.xml:4
msgid ""
@@ -11041,9 +11091,8 @@ msgid "Gain amount of the frequencies after the filter."
msgstr "滤波åŽé¢‘率的增益é‡ã€‚"
#: doc/classes/AudioEffectFilter.xml:24
-#, fuzzy
msgid "Amount of boost in the frequency range near the cutoff frequency."
-msgstr "在截止频率附近泛音的æå‡é‡ã€‚"
+msgstr "在截断频率附近的频率范围内的æå‡é‡ã€‚"
#: doc/classes/AudioEffectHighPassFilter.xml:4
msgid "Adds a high-pass filter to the Audio Bus."
@@ -11057,10 +11106,8 @@ msgstr ""
"削å‡æ¯”[member AudioEffectFilter.cutoff_hz]更低的频率,å…许更高的频率通过。"
#: doc/classes/AudioEffectHighShelfFilter.xml:4
-#, fuzzy
msgid "Reduces all frequencies above the [member AudioEffectFilter.cutoff_hz]."
-msgstr ""
-"削å‡æ¯”[member AudioEffectFilter.cutoff_hz]更低的频率,å…许更高的频率通过。"
+msgstr "é™ä½Žæ‰€æœ‰é«˜äºŽ[member AudioEffectFilter.cutoff_hz]的频率。"
#: doc/classes/AudioEffectLimiter.xml:4
msgid "Adds a soft-clip limiter audio effect to an Audio bus."
@@ -11110,10 +11157,8 @@ msgstr ""
"削å‡æ¯”[member AudioEffectFilter.cutoff_hz]更低的频率,å…许更高的频率通过。"
#: doc/classes/AudioEffectLowShelfFilter.xml:4
-#, fuzzy
msgid "Reduces all frequencies below the [member AudioEffectFilter.cutoff_hz]."
-msgstr ""
-"削å‡æ¯”[member AudioEffectFilter.cutoff_hz]更低的频率,å…许更高的频率通过。"
+msgstr "é™ä½Ž[member AudioEffectFilter.cutoff_hz]以下的所有频率。"
#: doc/classes/AudioEffectNotchFilter.xml:4
msgid "Adds a notch filter to the Audio bus."
@@ -11208,6 +11253,9 @@ msgid ""
"this higher latency are especially noticeable on sounds that have sudden "
"amplitude changes."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/Fast_Fourier_transform]快速傅里å¶å˜æ¢[/"
+"url]缓冲区的大å°ã€‚较高的数值å¯ä»¥ä½¿æ•ˆæžœéšæ—¶é—´å¹³æ»‘,但有较大的延迟。这ç§è¾ƒé«˜çš„"
+"延迟对有çªç„¶å¹…度å˜åŒ–的声音的影å“特别明显。"
#: doc/classes/AudioEffectPitchShift.xml:19
msgid ""
@@ -11215,6 +11263,8 @@ msgid ""
"are more demanding on the CPU and may cause audio cracking if the CPU can't "
"keep up."
msgstr ""
+"è¦ä½¿ç”¨çš„过采样系数。更高的值会带æ¥æ›´å¥½çš„è´¨é‡ï¼Œä½†å¯¹CPUçš„è¦æ±‚更高,如果CPUè·Ÿä¸"
+"上,å¯èƒ½ä¼šå¯¼è‡´éŸ³é¢‘破裂。"
#: doc/classes/AudioEffectPitchShift.xml:22
msgid ""
@@ -11223,6 +11273,9 @@ msgid ""
"(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than "
"the initial pitch)."
msgstr ""
+"è¦ä½¿ç”¨çš„音阶。[code]1.0[/code]是默认的音高,播放的声音没有改å˜ã€‚[member "
+"pitch_scale]的范围从[code]0.0[/code](无é™ä½Žçš„音调,å¬ä¸è§ï¼‰åˆ°[code]16[/code]"
+"(比åˆå§‹éŸ³è°ƒé«˜16å€ï¼‰ã€‚"
#: doc/classes/AudioEffectPitchShift.xml:27
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:28
@@ -11230,6 +11283,8 @@ msgid ""
"Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, "
"but least stable over time."
msgstr ""
+"使用 256 个样å“的缓冲器进行快速傅里å¶å˜æ¢ã€‚最低延迟,但éšç€æ—¶é—´çš„推移最ä¸ç¨³"
+"定。"
#: doc/classes/AudioEffectPitchShift.xml:30
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:31
@@ -11237,6 +11292,7 @@ msgid ""
"Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but "
"less stable over time."
msgstr ""
+"使用 512 个样本的缓冲器进行快速傅里å¶å˜æ¢ã€‚低延迟,但éšç€æ—¶é—´çš„推移ä¸å¤ªç¨³å®šã€‚"
#: doc/classes/AudioEffectPitchShift.xml:33
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:34
@@ -11244,6 +11300,8 @@ msgid ""
"Use a buffer of 1024 samples for the Fast Fourier transform. This is a "
"compromise between latency and stability over time."
msgstr ""
+"使用 1024 个样本的缓冲器进行快速傅里å¶å˜æ¢ã€‚éšç€æ—¶é—´çš„推移,这是延迟和稳定性"
+"之间的折衷。"
#: doc/classes/AudioEffectPitchShift.xml:36
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:37
@@ -11251,6 +11309,7 @@ msgid ""
"Use a buffer of 2048 samples for the Fast Fourier transform. High latency, "
"but stable over time."
msgstr ""
+"使用 2048 个样å“的缓冲器进行快速傅里å¶å˜æ¢ã€‚éšç€æ—¶é—´çš„推移,延迟高但稳定。"
#: doc/classes/AudioEffectPitchShift.xml:39
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:40
@@ -11258,6 +11317,8 @@ msgid ""
"Use a buffer of 4096 samples for the Fast Fourier transform. Highest "
"latency, but most stable over time."
msgstr ""
+"使用 4096 个样å“的缓冲器进行快速傅里å¶å˜æ¢ã€‚éšç€æ—¶é—´çš„推移,延迟最高但最稳"
+"定。"
#: doc/classes/AudioEffectPitchShift.xml:42
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:43
@@ -11374,7 +11435,7 @@ msgstr "输出修改åŽå£°éŸ³çš„百分比。在0时,åªè¾“出原始声音。å€
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:4
msgid "Audio effect that can be used for real-time audio visualizations."
-msgstr ""
+msgstr "å¯ç”¨äºŽå®žæ—¶éŸ³é¢‘å¯è§†åŒ–的音频效果。"
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:7
msgid ""
@@ -11382,6 +11443,8 @@ msgid ""
"time audio visualizations.\n"
"See also [AudioStreamGenerator] for procedurally generating sounds."
msgstr ""
+"è¿™ç§éŸ³é¢‘效果ä¸å½±å“声音输出,但å¯ä»¥ç”¨äºŽå®žæ—¶éŸ³é¢‘å¯è§†åŒ–。\n"
+"å‚阅[AudioStreamGenerator],以程åºåŒ–地生æˆå£°éŸ³ã€‚"
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:11
msgid "Audio Spectrum Demo"
@@ -11398,6 +11461,8 @@ msgid ""
"The length of the buffer to keep (in seconds). Higher values keep data "
"around for longer, but require more memory."
msgstr ""
+"è¦ä¿ç•™çš„缓冲区长度(以秒为å•ä½ï¼‰ã€‚较高的值将数æ®ä¿å­˜çš„时间更长,但需è¦æ›´å¤šçš„"
+"内存。"
#: doc/classes/AudioEffectSpectrumAnalyzer.xml:21
msgid ""
@@ -11407,6 +11472,9 @@ msgid ""
"effects of this higher latency are especially noticeable with sudden "
"amplitude changes."
msgstr ""
+"[url=https://en.wikipedia.org/wiki/Fast_Fourier_transform]快速傅里å¶å˜æ¢[/"
+"url]缓冲区的大å°ã€‚较高的值å¯ä»¥ä½¿é¢‘谱分æžéšæ—¶é—´çš„推移而平滑,但有较大的延迟。"
+"è¿™ç§è¾ƒé«˜å»¶è¿Ÿçš„å½±å“在çªç„¶çš„振幅å˜åŒ–中特别明显。"
#: doc/classes/AudioEffectSpectrumAnalyzerInstance.xml:21
msgid "Use the average value as magnitude."
@@ -11715,6 +11783,12 @@ msgid ""
"class from GDScript, consider using a lower [member mix_rate] such as 11,025 "
"Hz or 22,050 Hz."
msgstr ""
+"此音频æµä¸æ’­æ”¾å£°éŸ³ï¼Œéœ€è¦è„šæœ¬ä¸ºå…¶ç”ŸæˆéŸ³é¢‘æ•°æ®ã€‚å‚阅"
+"[AudioStreamGeneratorPlayback]。\n"
+"å¦è¯·å‚阅 [AudioEffectSpectrumAnalyzer] 用于执行实时音频频谱分æžã€‚\n"
+"[b]注æ„:[/b] 由于性能é™åˆ¶ï¼Œæœ€å¥½ä»Ž C# 或通过 GDNative 编译的语言中使用此类。"
+"如果你ä»ç„¶æƒ³ä»ŽGDScript中使用这个类,请考虑使用较低的 [member mix_rate],例如 "
+"11,025 Hz 或 22,050 Hz。"
#: doc/classes/AudioStreamGenerator.xml:19
msgid ""
@@ -11723,6 +11797,9 @@ msgid ""
"resulting in increased CPU usage and more risk for audio cracking if the CPU "
"can't keep up."
msgstr ""
+"è¦ç”Ÿæˆçš„缓冲区的长度,以秒为å•ä½ã€‚较低的值会带æ¥æ›´å°‘的延迟,但需è¦è„šæœ¬æ›´å¿«åœ°"
+"生æˆéŸ³é¢‘æ•°æ®ï¼Œä»Žè€Œå¯¼è‡´ CPU 使用率增加,如果 CPU è·Ÿä¸ä¸Šï¼Œåˆ™éŸ³é¢‘破裂的风险更"
+"大。"
#: doc/classes/AudioStreamGenerator.xml:22
msgid ""
@@ -11739,6 +11816,14 @@ msgid ""
"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
"quality."
msgstr ""
+"使用的采样率(å•ä½ï¼šHz)。更高的值对CPUè¦æ±‚更高,但会带æ¥æ›´å¥½çš„è´¨é‡ã€‚\n"
+"在游æˆä¸­ï¼Œå¸¸ç”¨çš„采样率有[code]11025[/code]ã€[code]16000[/code]ã€[code]22050[/"
+"code]ã€[code]32000[/code]ã€[code]44100[/code]å’Œ[code]48000[/code]。\n"
+"æ ¹æ®[url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon采样定ç†[/url],当超过40000"
+"赫兹时,人类的å¬è§‰æ²¡æœ‰è´¨é‡ä¸Šçš„差别(因为大多数人åªèƒ½å¬åˆ°~20000赫兹,往往更"
+"少)。如果你è¦ç”Ÿæˆè¾ƒä½ŽéŸ³è°ƒçš„声音,例如语音,则å¯ä»¥ä½¿ç”¨è¾ƒä½Žçš„采样率,例如 "
+"[code]32000[/code] 或 [code]22050[/code],而ä¸ä¼šé™ä½Žè´¨é‡ã€‚"
#: doc/classes/AudioStreamGeneratorPlayback.xml:4
msgid "Plays back audio generated using [AudioStreamGenerator]."
@@ -11748,22 +11833,20 @@ msgstr "播放使用[AudioStreamGenerator]生æˆçš„音频。"
msgid ""
"This class is meant to be used with [AudioStreamGenerator] to play back the "
"generated audio in real-time."
-msgstr ""
+msgstr "此类旨在与 [AudioStreamGenerator] 一起使用以实时播放生æˆçš„音频。"
#: doc/classes/AudioStreamGeneratorPlayback.xml:18
-#, fuzzy
msgid ""
"Returns [code]true[/code] if a buffer of the size [code]amount[/code] can be "
"pushed to the audio sample data buffer without overflowing it, [code]false[/"
"code] otherwise."
msgstr ""
-"如果[member cull_mask]中给定的[code]layer[/code]被å¯ç”¨ï¼Œè¿”回[code]true[/"
-"code],å¦åˆ™è¿”回[code]false[/code]。"
+"如果å¯ä»¥å°†å¤§å°ä¸º [code]amount[/code] 的缓冲区推é€åˆ°éŸ³é¢‘采样数æ®ç¼“冲区而ä¸ä½¿å…¶"
+"溢出,则返回 [code]true[/code],å¦åˆ™è¿”回 [code]false[/code]。"
#: doc/classes/AudioStreamGeneratorPlayback.xml:24
-#, fuzzy
msgid "Clears the audio sample data buffer."
-msgstr "包å«ä»¥å­—节为å•ä½çš„音频数æ®ã€‚"
+msgstr "清除音频样本数æ®ç¼“冲区。"
#: doc/classes/AudioStreamGeneratorPlayback.xml:30
msgid ""
@@ -11772,6 +11855,9 @@ msgid ""
"added again. Therefore, make sure your script can always generate and push "
"new audio frames fast enough to avoid audio cracking."
msgstr ""
+"返回è¦æ’­æ”¾çš„音频数æ®å¸§æ•°ã€‚如果返回的数字达到 [code]0[/code],音频将åœæ­¢æ’­æ”¾ï¼Œ"
+"直到å†æ¬¡æ·»åŠ å¸§ã€‚因此,请确ä¿ä½ çš„脚本始终能够以足够快的速度生æˆå’ŒæŽ¨é€æ–°çš„音频"
+"帧,以é¿å…音频破裂。"
#: doc/classes/AudioStreamGeneratorPlayback.xml:42
msgid ""
@@ -11779,6 +11865,9 @@ msgid ""
"efficient than [method push_frame] in C# and compiled languages via "
"GDNative, but [method push_buffer] may be [i]less[/i] efficient in GDScript."
msgstr ""
+"将多个音频数æ®å¸§æŽ¨é€åˆ°ç¼“冲区。这通常比 C# 中的 [method push_frame] 和通过 "
+"GDNative 编译的语言更有效,但 [method push_buffer] 在 GDScript 中的效率å¯èƒ½ "
+"[i]低[/i]。"
#: doc/classes/AudioStreamGeneratorPlayback.xml:49
msgid ""
@@ -11786,6 +11875,9 @@ msgid ""
"efficient than [method push_buffer] in C# and compiled languages via "
"GDNative, but [method push_frame] may be [i]more[/i] efficient in GDScript."
msgstr ""
+"å°†å•ä¸ªéŸ³é¢‘æ•°æ®å¸§æŽ¨é€åˆ°ç¼“冲区。在C#和通过GDNative编译的语言中,这通常比"
+"[method push_buffer]效率低,但在GDScript中[method push_frame]å¯èƒ½[i]更高效[/"
+"i]。"
#: modules/minimp3/doc_classes/AudioStreamMP3.xml:4
#: modules/minimp3/doc_classes/AudioStreamMP3.xml:7
@@ -11836,6 +11928,9 @@ msgid ""
"To play audio positionally, use [AudioStreamPlayer2D] or "
"[AudioStreamPlayer3D] instead of [AudioStreamPlayer]."
msgstr ""
+"以éžä½ç½®æ–¹å¼æ”¯æŒæ’­æ”¾éŸ³é¢‘æµã€‚\n"
+"è¦åœ¨ä½ç½®ä¸Šæ’­æ”¾éŸ³é¢‘,请使用[AudioStreamPlayer2D]或[AudioStreamPlayer3D]而ä¸æ˜¯"
+"[AudioStreamPlayer]。"
#: doc/classes/AudioStreamPlayer.xml:22
msgid "Returns the position in the [AudioStream] in seconds."
@@ -11923,9 +12018,8 @@ msgid ""
msgstr "音频将在第二通é“,也就是通常的中央播放。"
#: doc/classes/AudioStreamPlayer2D.xml:4
-#, fuzzy
msgid "Plays positional sound in 2D space."
-msgstr "在3D空间中播放3D声音。"
+msgstr "在 2D 空间中播放ä½ç½®å£°éŸ³ã€‚"
#: doc/classes/AudioStreamPlayer2D.xml:7
msgid ""
@@ -11936,6 +12030,11 @@ msgid ""
"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
"audible to human hearing)."
msgstr ""
+"播放音频,éšç€ä¸Žå±å¹•ä¸­å¿ƒçš„è·ç¦»è€Œå‡å¼±ã€‚\n"
+"å‚阅[AudioStreamPlayer]æ¥æ’­æ”¾éžä½ç½®æ€§çš„声音。\n"
+"[b]注æ„:[/b] éšè—一个[AudioStreamPlayer2D]节点并ä¸èƒ½ç¦ç”¨å…¶éŸ³é¢‘输出。è¦æš‚æ—¶ç¦"
+"用[AudioStreamPlayer2D]的音频输出,请将[member volume_db]设置为一个éžå¸¸ä½Žçš„"
+"值,如[code]-100[/code](人的å¬è§‰å¬ä¸åˆ°ï¼‰ã€‚"
#: doc/classes/AudioStreamPlayer2D.xml:18
#: doc/classes/AudioStreamPlayer3D.xml:19
@@ -11973,9 +12072,8 @@ msgid "Base volume without dampening."
msgstr "基础音é‡ï¼Œæ— è¡°å‡ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:4
-#, fuzzy
msgid "Plays positional sound in 3D space."
-msgstr "在3D空间中播放3D声音。"
+msgstr "在 3D 空间中播放ä½ç½®å£°éŸ³ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:7
msgid ""
@@ -11993,6 +12091,15 @@ msgid ""
"[member unit_db] to a very low value like [code]-100[/code] (which isn't "
"audible to human hearing)."
msgstr ""
+"播放具有定å‘性的声音效果,如果需è¦ï¼Œå¯éšç€è·ç¦»çš„增加而å‡å¼±ï¼Œäº§ç”Ÿç©ºé—´ä¸­å¯å¬åˆ°"
+"çš„ä½ç½®æ•ˆæžœã€‚为了更逼真,低通滤波器会自动应用于远处的声音。这å¯ä»¥é€šè¿‡è®¾ç½®"
+"[member attenuation_filter_cutoff_hz]为[code]20500[/code]æ¥ç¦ç”¨ã€‚\n"
+"默认情况下,音频是从相机的ä½ç½®å¬åˆ°çš„,这å¯ä»¥é€šè¿‡åœ¨åœºæ™¯ä¸­æ·»åŠ ä¸€ä¸ª[Listener]节"
+"点,并通过对其调用[method Listener.make_current]æ¥å¯ç”¨å®ƒï¼Œä»¥æ”¹å˜ã€‚\n"
+"å‚阅[AudioStreamPlayer]æ¥æ’­æ”¾éžä½ç½®çš„声音。\n"
+"[b]注æ„:[/b] éšè—一个[AudioStreamPlayer3D]节点并ä¸èƒ½ç¦ç”¨å…¶éŸ³é¢‘输出。è¦æš‚æ—¶ç¦"
+"用[AudioStreamPlayer3D]的音频输出,请将[member unit_db]设置为一个éžå¸¸ä½Žçš„值,"
+"如[code]-100[/code](人的å¬è§‰å¬ä¸åˆ°ï¼‰ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:25
msgid ""
@@ -12006,11 +12113,12 @@ msgid ""
"disable the dampening effect entirely, set this to [code]20500[/code] as "
"this frequency is above the human hearing limit."
msgstr ""
+"使用高于此频率的低通滤波器衰å‡éŸ³é¢‘,以 Hz 为å•ä½ã€‚è¦å®Œå…¨ç¦ç”¨é˜»å°¼æ•ˆæžœï¼Œè¯·å°†å…¶"
+"设置为 [code]20500[/code],因为该频率高于人类å¬åŠ›æžé™ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:57
-#, fuzzy
msgid "Amount how much the filter affects the loudness, in decibels."
-msgstr "滤波器对å“度的影å“程度,å•ä½ä¸ºdB。"
+msgstr "滤波器对å“度的影å“程度,以分è´ä¸ºå•ä½ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:60
msgid ""
@@ -12022,14 +12130,14 @@ msgstr ""
"用衰å‡ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:63
-#, fuzzy
msgid ""
"If [code]true[/code], audio plays when the AudioStreamPlayer3D node is added "
"to scene tree."
-msgstr "如果[code]true[/code],则在添加到场景树时播放音频。"
+msgstr ""
+"如果 [code]true[/code],则在将 AudioStreamPlayer3D 节点添加到场景树时播放音"
+"频。"
#: doc/classes/AudioStreamPlayer3D.xml:66
-#, fuzzy
msgid "The bus on which this audio is playing."
msgstr "播放此音频的总线。"
@@ -12041,6 +12149,10 @@ msgid ""
"doppler_tracking] property is set to a value other than [constant Camera."
"DOPPLER_TRACKING_DISABLED]."
msgstr ""
+"决定 [url=https://en.wikipedia.org/wiki/Doppler_effect] 多普勒效应 [/url] 应"
+"该在哪一步计算。\n"
+"[b]注æ„:[/b]仅当当å‰[Camera]çš„[member Camera.doppler_tracking]属性设置为"
+"[constant Camera.DOPPLER_TRACKING_DISABLED]以外的值时有效。"
#: doc/classes/AudioStreamPlayer3D.xml:73
msgid "The angle in which the audio reaches cameras undampened."
@@ -12053,18 +12165,16 @@ msgid ""
msgstr "如果[code]true[/code],则应根æ®å£°éŸ³çš„æ–¹å‘对音频进行衰å‡ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:79
-#, fuzzy
msgid ""
"Dampens audio if camera is outside of [member emission_angle_degrees] and "
"[member emission_angle_enabled] is set by this factor, in decibels."
msgstr ""
-"如果相机在[membermission_angle_degrees]之外,并以此å‚数设置"
-"[membermission_angle_enabled],则衰å‡éŸ³é¢‘,以dB为å•ä½ã€‚"
+"如果样机在[member emission_angle_degrees]之外,并且[member "
+"emission_angle_enabled]被设置为这个系数,则对音频进行å‡å¼±ï¼Œå•ä½æ˜¯åˆ†è´ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:82
-#, fuzzy
msgid "Sets the absolute maximum of the soundlevel, in decibels."
-msgstr "设置声级的ç»å¯¹æœ€å¤§å€¼ï¼Œå•ä½ä¸ºdB。"
+msgstr "设置声级的ç»å¯¹æœ€å¤§å€¼ï¼Œä»¥åˆ†è´ä¸ºå•ä½ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:85
msgid ""
@@ -12079,29 +12189,26 @@ msgid ""
msgstr "决定当音æºè¶…出 [member max_distance] 范围时,是å¦åº”该暂åœéŸ³é¢‘。"
#: doc/classes/AudioStreamPlayer3D.xml:97
-#, fuzzy
msgid "The [AudioStream] resource to be played."
-msgstr "è¦æ’­æ”¾çš„[AudioStream]对象。"
+msgstr "è¦æ’­æ”¾çš„[AudioStream]资æºã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:100
-#, fuzzy
msgid ""
"If [code]true[/code], the playback is paused. You can resume it by setting "
"[member stream_paused] to [code]false[/code]."
msgstr ""
-"如果 [code]true[/code],则暂åœæ’­æ”¾ã€‚您å¯ä»¥é€šè¿‡å°† [code]stream_paused[/code] "
-"设置为 [code]false[/code] æ¥æ¢å¤æ’­æ”¾ã€‚"
+"如果[code]true[/code],则播放会暂åœã€‚ä½ å¯ä»¥é€šè¿‡è®¾ç½®[member stream_paused]为"
+"[code]false[/code]æ¥æ¢å¤å®ƒã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:103
-#, fuzzy
msgid "The base sound level unaffected by dampening, in decibels."
-msgstr "未å—阻尼影å“的基本声级,å•ä½ä¸ºdB。"
+msgstr "ä¸å—阻尼影å“的基本声级,å•ä½ä¸ºåˆ†è´ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:106
msgid ""
"The factor for the attenuation effect. Higher values make the sound audible "
"over a larger distance."
-msgstr ""
+msgstr "è¡°å‡æ•ˆæžœçš„系数。更高的值使声音在更远的è·ç¦»å¯ä»¥å¬åˆ°ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:118
msgid "Linear dampening of loudness according to distance."
@@ -12123,6 +12230,9 @@ msgid ""
"greater than [code]0.0[/code] to achieve linear attenuation clamped to a "
"sphere of a defined size."
msgstr ""
+"ä¸ä¼šæ ¹æ®è·ç¦»è¡°å‡å“度。与 [AudioStreamPlayer] ä¸åŒï¼Œå£°éŸ³ä»ä¼šåœ¨ä½ç½®ä¸Šè¢«å¬åˆ°ã€‚ "
+"[constant ATTENUATION_DISABLED] å¯ä»¥ä¸Žå¤§äºŽ [code]0.0[/code] çš„ [member "
+"max_distance] 值结åˆä½¿ç”¨ï¼Œä»¥å®žçŽ°çº¿æ€§è¡°å‡ï¼Œé™åˆ¶åœ¨å®šä¹‰çš„çƒä½“大å°ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:130
msgid ""
@@ -12130,6 +12240,9 @@ msgid ""
"but keeps the sound playing at the correct position if the camera leaves and "
"enters the [AudioStreamPlayer3D]'s [member max_distance] radius."
msgstr ""
+"将此音频混åˆï¼Œå³ä½¿å®ƒè¶…出范围。这会增加 CPU 使用率,但如果相机离开并进入 "
+"[AudioStreamPlayer3D] çš„ [member max_distance] åŠå¾„,则ä¿æŒå£°éŸ³åœ¨æ­£ç¡®çš„ä½ç½®æ’­"
+"放。"
#: doc/classes/AudioStreamPlayer3D.xml:133
msgid ""
@@ -12137,21 +12250,21 @@ msgid ""
"will cause the sound to restart if the camera leaves and enters the "
"[AudioStreamPlayer3D]'s [member max_distance] radius."
msgstr ""
+"超出范围时暂åœæ­¤éŸ³é¢‘。这会é™ä½Ž CPU 使用率,但如果相机离开并进入 "
+"[AudioStreamPlayer3D] çš„ [member max_distance] åŠå¾„,则会使声音é‡æ–°å¼€å§‹ã€‚"
#: doc/classes/AudioStreamPlayer3D.xml:136
msgid "Disables doppler tracking."
msgstr "ç¦ç”¨å¤šæ™®å‹’跟踪。"
#: doc/classes/AudioStreamPlayer3D.xml:139
-#, fuzzy
msgid "Executes doppler tracking in idle step (every rendered frame)."
-msgstr "以空闲步骤执行多普勒跟踪。"
+msgstr "在空闲的步骤中执行多普勒跟踪(æ¯æ¸²æŸ“一帧)。"
#: doc/classes/AudioStreamPlayer3D.xml:142
-#, fuzzy
msgid ""
"Executes doppler tracking in physics step (every simulated physics frame)."
-msgstr "在物ç†è¿ç®—步骤中执行doppler(多普勒)跟踪。"
+msgstr "在物ç†æ­¥éª¤ä¸­æ‰§è¡Œå¤šæ™®å‹’跟踪(æ¯ä¸ªæ¨¡æ‹Ÿçš„物ç†å¸§ï¼‰ã€‚"
#: doc/classes/AudioStreamRandomPitch.xml:4
msgid "Plays audio with random pitch shifting."
@@ -12174,7 +12287,6 @@ msgid "Stores audio data loaded from WAV files."
msgstr "存储从WAV文件加载的音频数æ®ã€‚"
#: doc/classes/AudioStreamSample.xml:7
-#, fuzzy
msgid ""
"AudioStreamSample stores sound samples loaded from WAV files. To play the "
"stored sound, use an [AudioStreamPlayer] (for non-positional audio) or "
@@ -12183,10 +12295,11 @@ msgid ""
"This class can also be used to store dynamically-generated PCM audio data. "
"See also [AudioStreamGenerator] for procedural audio generation."
msgstr ""
-"AudioStreamSample存储从WAV文件加载的声音样本。è¦æ’­æ”¾å­˜å‚¨çš„声音,请使用"
-"[AudioStreamPlayer](用于éžå®šä½éŸ³é¢‘)或[AudioStreamPlayer2D]/"
-"[AudioStreamPlayer3D](用于定ä½éŸ³é¢‘)。声音å¯ä»¥è¢«å¾ªçŽ¯æ’­æ”¾ã€‚\n"
-"这个类也å¯ä»¥ç”¨æ¥å­˜å‚¨åŠ¨æ€ç”Ÿæˆçš„PCM音频数æ®ã€‚"
+"AudioStreamSample 存储从 WAV 文件加载的声音样本。è¦æ’­æ”¾å­˜å‚¨çš„声音,请使用 "
+"[AudioStreamPlayer](用于éžå®šä½éŸ³é¢‘)或 [AudioStreamPlayer2D]/"
+"[AudioStreamPlayer3D](用于定ä½éŸ³é¢‘)。声音å¯ä»¥å¾ªçŽ¯æ’­æ”¾ã€‚\n"
+"此类还å¯ç”¨äºŽå­˜å‚¨åŠ¨æ€ç”Ÿæˆçš„ PCM 音频数æ®ã€‚å¦è¯·å‚阅 [AudioStreamGenerator] 以了"
+"解程åºéŸ³é¢‘生æˆã€‚"
#: doc/classes/AudioStreamSample.xml:17
msgid ""
@@ -12253,6 +12366,14 @@ msgid ""
"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
"quality."
msgstr ""
+"æ··åˆè¿™ä¸ªéŸ³é¢‘的采样率。更高的数值需è¦æ›´å¤šçš„存储空间,但会带æ¥æ›´å¥½çš„è´¨é‡ã€‚\n"
+"在游æˆä¸­ï¼Œå¸¸ç”¨çš„采样率有[code]11025[/code]ã€[code]16000[/code]ã€[code]22050[/"
+"code]ã€[code]32000[/code]ã€[code]44100[/code],以åŠ[code]48000[/code]。\n"
+"æ ¹æ®[url=https://en.wikipedia.org/wiki/Nyquist"
+"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon采样定ç†[/url],当超过40000"
+"赫兹时,对于人的å¬è§‰æ²¡æœ‰è´¨é‡ä¸Šçš„差别(因为大多数人åªèƒ½å¬åˆ°~20000赫兹,往往更"
+"少)。如果你使用低音调的声音,如语音,较低的采样率,如[code]32000[/code]或"
+"[code]22050[/code]å¯èƒ½æ˜¯å¯ç”¨çš„,没有质é‡ä¸Šçš„æŸå¤±ã€‚"
#: doc/classes/AudioStreamSample.xml:45
msgid "If [code]true[/code], audio is stereo."
@@ -12306,7 +12427,6 @@ msgstr ""
"texture(SCREEN_TEXTURE,...)[/code]函数在ç€è‰²å™¨è„šæœ¬ä¸­å¯¹å…¶è¿›è¡Œè®¿é—®ã€‚"
#: doc/classes/BackBufferCopy.xml:7
-#, fuzzy
msgid ""
"Node for back-buffering the currently-displayed screen. The region defined "
"in the BackBufferCopy node is buffered with the content of the screen it "
@@ -12319,13 +12439,13 @@ msgid ""
"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of "
"adding them as children."
msgstr ""
-"用于对当å‰æ˜¾ç¤ºçš„å±å¹•è¿›è¡Œå缓冲的节点。在BackBufferCopy节点中定义的区域将用它"
-"所覆盖的å±å¹•å†…容进行缓冲,或者根æ®è®¾ç½®çš„å¤åˆ¶æ¨¡å¼å¯¹æ•´ä¸ªå±å¹•è¿›è¡Œç¼“冲。在你的ç€"
-"色器脚本中使用[code]texture(SCREEN_TEXTURE,...)[/code]函数æ¥è®¿é—®ç¼“冲区。\n"
-"[b]注æ„:[/b]由于该节点继承自 [Node2D] (而éž[Control]),因此锚点和边è·å°†ä¸ä¼š"
-"应用于[Control]派生的å­èŠ‚点。这在调整窗å£å¤§å°æ—¶å¯èƒ½ä¼šæœ‰é—®é¢˜ã€‚为了é¿å…è¿™ç§æƒ…"
-"况,请将 [Control] 派生节点作为 [i] siblings[/i] 添加到 BackBufferCopy 节点,"
-"而ä¸æ˜¯å°†å®ƒä»¬ä½œä¸ºå­èŠ‚点添加。"
+"用于对当å‰å±å¹•æ˜¾ç¤ºè¿›è¡ŒåŽå°ç¼“冲的节点。 BackBufferCopy 节点中定义的区域与其覆"
+"ç›–å±å¹•çš„内容一起缓冲,或者根æ®æ‹·è´æ¨¡å¼è®¾ç½®çš„整个å±å¹•è¿›è¡Œç¼“冲。在ç€è‰²å™¨è„šæœ¬ä¸­"
+"使用 [code]texture(SCREEN_TEXTURE, ...)[/code] 函数æ¥è®¿é—®ç¼“冲区。\n"
+"[b]注æ„:[/b] 由于该节点继承自 [Node2D]ï¼Œè€Œéž [Control],锚点和边è·å°†ä¸ä¼šåº”用"
+"于从 [Control] 派生的å­èŠ‚点。这在调整窗å£å¤§å°æ—¶å¯èƒ½ä¼šå‡ºçŽ°é—®é¢˜ã€‚为é¿å…è¿™ç§æƒ…"
+"况,请将 [Control] 派生节点作为 [i]åŒçº§[/i] 添加到 BackBufferCopy 节点,而ä¸"
+"是将它们添加为å­èŠ‚点。"
#: doc/classes/BackBufferCopy.xml:16
msgid "Buffer mode. See [enum CopyMode] constants."
@@ -12367,35 +12487,46 @@ msgid ""
"[b]Note:[/b] Due to how lightmaps work, most properties only have a visible "
"effect once lightmaps are baked again."
msgstr ""
+"烘焙光照贴图是å‘场景添加间接(或烘焙)光照的替代工作æµç¨‹ã€‚与 [GIProbe] 方法ä¸"
+"åŒï¼Œçƒ˜ç„™å…‰ç…§è´´å›¾åœ¨ä½Žç«¯ PC 和移动设备上è¿è¡Œè‰¯å¥½ï¼Œå› ä¸ºå®ƒä»¬åœ¨è¿è¡Œæ—¶å‡ ä¹Žä¸æ¶ˆè€—资"
+"æºã€‚\n"
+"[b]注æ„:[/b] 由于光照贴图的工作原ç†ï¼Œå¤§å¤šæ•°å±žæ€§åªæœ‰åœ¨å…‰ç…§è´´å›¾å†æ¬¡çƒ˜ç„™åŽæ‰ä¼š"
+"看到效果。"
#: doc/classes/BakedLightmap.xml:11
msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html"
#: doc/classes/BakedLightmap.xml:19
+#, fuzzy
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
+"烘焙光照贴图,从给定的 [code]from_node[/code] 根扫æ并将结果 "
+"[BakedLightmapData] ä¿å­˜åœ¨ [code]data_save_path[/code] 中。如果没有æä¾›ä¿å­˜è·¯"
+"径,它将å°è¯•åŒ¹é…æ¥è‡ªå½“å‰ [member light_data] 的路径。"
#: doc/classes/BakedLightmap.xml:25
msgid ""
"When enabled, the lightmapper will merge the textures for all meshes into a "
"single large layered texture. Not supported in GLES2."
msgstr ""
+"å¯ç”¨åŽï¼Œå…‰ç…§è´´å›¾ä¼šå°†æ‰€æœ‰ç½‘格的纹ç†åˆå¹¶ä¸ºä¸€ä¸ªå¤§çš„分层纹ç†ã€‚ GLES2 ä¸æ”¯æŒã€‚"
#: doc/classes/BakedLightmap.xml:28
msgid ""
"Maximum size of each lightmap layer, only used when [member atlas_generate] "
"is enabled."
-msgstr ""
+msgstr "æ¯ä¸ªå…‰ç…§è´´å›¾å±‚的最大尺寸,仅在å¯ç”¨ [member atlas_generate] 时使用。"
#: doc/classes/BakedLightmap.xml:31
msgid ""
"Raycasting bias used during baking to avoid floating point precision issues."
-msgstr ""
+msgstr "在烘焙过程中使用光线投射åç½®æ¥é¿å…浮点数精度问题。"
#: doc/classes/BakedLightmap.xml:34
msgid ""
@@ -12410,16 +12541,23 @@ msgid ""
"[b]Note:[/b] [member bounce_indirect_energy] only has an effect if [member "
"bounces] is set to a value greater than or equal to [code]1[/code]."
msgstr ""
+"æ¯æ¬¡å弹的能é‡ä¹˜æ•°ã€‚较高的值将使间接照明更亮。 [code]1.0[/code] 的值表示与物"
+"ç†ç›¸ä¸€è‡´çš„行为,但在使用少é‡å弹时,å¯ä»¥ä½¿ç”¨æ›´é«˜çš„值使间接照明传播更明显。这"
+"å¯ç”¨äºŽé€šè¿‡é™ä½Ž[member bounces]çš„æ•°é‡ç„¶åŽå¢žåŠ  [member bounce_indirect_energy] "
+"æ¥åŠ å¿«çƒ˜ç„™æ—¶é—´ã€‚与 [member BakedLightmapData.energy] ä¸åŒï¼Œæ­¤å±žæ€§ä¸ä¼šå½±å“ç¯å…‰"
+"节点ã€è‡ªå‘å…‰æ质和环境å‘出的直接光照。\n"
+"[b]注æ„:[/b] [member bounce_indirect_energy] 仅在[member bounces] 设置为大于"
+"或等于[code]1[/code]的值时有效。"
#: doc/classes/BakedLightmap.xml:38
msgid ""
"Number of light bounces that are taken into account during baking. See also "
"[member bounce_indirect_energy]."
-msgstr ""
+msgstr "烘焙过程中考虑的光线å射次数。å‚阅 [member bounce_indirect_energy]。"
#: doc/classes/BakedLightmap.xml:41
msgid "Grid size used for real-time capture information on dynamic objects."
-msgstr ""
+msgstr "用于实时æ•èŽ·åŠ¨æ€å¯¹è±¡ä¿¡æ¯çš„网格大å°ã€‚"
#: doc/classes/BakedLightmap.xml:44
msgid ""
@@ -12427,11 +12565,13 @@ msgid ""
"computed. This octree will then be used to light dynamic objects in the "
"scene."
msgstr ""
+"å¯ç”¨åŽï¼Œå°†è®¡ç®—包å«åœºæ™¯ç…§æ˜Žä¿¡æ¯çš„å…«å‰æ ‘。然åŽæ­¤å…«å‰æ ‘将用于照亮场景中的动æ€å¯¹"
+"象。"
#: doc/classes/BakedLightmap.xml:47
msgid ""
"Bias value to reduce the amount of light proagation in the captured octree."
-msgstr ""
+msgstr "å置值,用于å‡å°‘æ•èŽ·çš„å…«å‰æ ‘中的光传播é‡ã€‚"
#: doc/classes/BakedLightmap.xml:50
msgid "Bake quality of the capture data."
@@ -12442,12 +12582,16 @@ msgid ""
"If a baked mesh doesn't have a UV2 size hint, this value will be used to "
"roughly compute a suitable lightmap size."
msgstr ""
+"如果烘焙åŽçš„网格没有UV2的尺寸æ示,这个值将被用æ¥ç²—略计算出åˆé€‚的光照贴图尺"
+"寸。"
#: doc/classes/BakedLightmap.xml:56
msgid ""
"The environment color when [member environment_mode] is set to [constant "
"ENVIRONMENT_MODE_CUSTOM_COLOR]."
msgstr ""
+"[member environment_mode] 设置为 [constant ENVIRONMENT_MODE_CUSTOM_COLOR] 时"
+"的环境颜色。"
#: doc/classes/BakedLightmap.xml:59
msgid ""
@@ -12455,18 +12599,20 @@ msgid ""
"[constant ENVIRONMENT_MODE_CUSTOM_COLOR] or [constant "
"ENVIRONMENT_MODE_CUSTOM_SKY]."
msgstr ""
+"[member environment_mode] 设置为 [constant ENVIRONMENT_MODE_CUSTOM_COLOR] 或 "
+"[constant ENVIRONMENT_MODE_CUSTOM_SKY] 时的能é‡æ¯”例系数。"
#: doc/classes/BakedLightmap.xml:62
-#, fuzzy
msgid ""
"The [Sky] resource to use when [member environment_mode] is set o [constant "
"ENVIRONMENT_MODE_CUSTOM_SKY]."
-msgstr "当[member overlay]设置为[constant OVERLAY_POSITION]时使用的背景。"
+msgstr ""
+"当 [member environment_mode] 设置为 [constant ENVIRONMENT_MODE_CUSTOM_SKY] 时"
+"è¦ä½¿ç”¨çš„ [Sky] 资æºã€‚"
#: doc/classes/BakedLightmap.xml:65
-#, fuzzy
msgid "The rotation of the baked custom sky."
-msgstr "编辑场景的根。"
+msgstr "烘焙自定义天空的旋转。"
#: doc/classes/BakedLightmap.xml:68
msgid ""
@@ -12475,6 +12621,8 @@ msgid ""
"amount of light on all the lightmap texels. Can be used for artistic control "
"on shadow color."
msgstr ""
+"所有光照贴图纹ç†å…ƒç´ çš„最å°çŽ¯å¢ƒå…‰ã€‚è¿™ä¸è€ƒè™‘场景几何体的任何é®æŒ¡ï¼Œå®ƒåªæ˜¯ç¡®ä¿æ‰€"
+"有光照贴图纹ç†å…ƒç´ ä¸Šçš„å…‰é‡æœ€å°ã€‚å¯ç”¨äºŽé˜´å½±é¢œè‰²çš„艺术控制。"
#: doc/classes/BakedLightmap.xml:71
msgid "Decides which environment to use during baking."
@@ -12486,12 +12634,14 @@ msgid ""
"in the baked lightmap, also used as the bounds of the captured region for "
"dynamic lighting."
msgstr ""
+"烘焙光照贴图的大å°ã€‚åªæœ‰è¯¥åŒºåŸŸå†…的网格æ‰ä¼šåŒ…å«åœ¨çƒ˜ç„™å…‰ç…§è´´å›¾ä¸­ï¼Œä¹Ÿç”¨ä½œåŠ¨æ€å…‰"
+"ç…§æ•èŽ·åŒºåŸŸçš„边界。"
#: doc/classes/BakedLightmap.xml:77
msgid ""
"Deprecated, in previous versions it determined the location where lightmaps "
"were be saved."
-msgstr ""
+msgstr "已废弃,在以å‰çš„版本中,它决定了光照贴图的ä¿å­˜ä½ç½®ã€‚"
#: doc/classes/BakedLightmap.xml:80
msgid "The calculated light data."
@@ -12503,6 +12653,8 @@ msgid ""
"amount of samples for each quality level can be configured in the project "
"settings."
msgstr ""
+"决定在ä¸æ­£ç¡®çš„光照烘烤中æ¯ä¸€ä¸ªçº¹ç†å…ƒç´ çš„采样é‡ã€‚å¯ä»¥åœ¨é¡¹ç›®è®¾ç½®ä¸­é…ç½®æ¯ä¸ªè´¨é‡"
+"级别的采样é‡ã€‚"
#: doc/classes/BakedLightmap.xml:86
msgid ""
@@ -12511,12 +12663,15 @@ msgid ""
"disk usage if the scene contains only white lights or you don't mind losing "
"color information in indirect lighting."
msgstr ""
+"在光照贴图纹ç†ä¸­å­˜å‚¨å…¨è‰²å€¼ã€‚ç¦ç”¨æ—¶ï¼Œå…‰ç…§è´´å›¾çº¹ç†å°†å­˜å‚¨å•ä¸ªäº®åº¦é€šé“。如果场景"
+"仅包å«ç™½å…‰æˆ–者您ä¸ä»‹æ„在间接照明中丢失颜色信æ¯ï¼Œåˆ™å¯ä»¥ç¦ç”¨ä»¥å‡å°‘ç£ç›˜ä½¿ç”¨é‡ã€‚"
#: doc/classes/BakedLightmap.xml:89
msgid ""
"When enabled, a lightmap denoiser will be used to reduce the noise inherent "
"to Monte Carlo based global illumination."
msgstr ""
+"å¯ç”¨åŽï¼Œå°†ä½¿ç”¨å…‰ç…§è´´å›¾é™å™ªå™¨æ¥å‡å°‘基于Monte Carlo的全局照明固有的噪声。"
#: doc/classes/BakedLightmap.xml:92
msgid ""
@@ -12529,23 +12684,29 @@ msgid ""
"lightmap banding even when using the GLES2 backend or if [member "
"ProjectSettings.rendering/quality/depth/hdr] is [code]false[/code]."
msgstr ""
+"如果 [code]true[/code],则以高动æ€èŒƒå›´æ ¼å¼ (EXR) 存储光照贴图纹ç†ã€‚如果 "
+"[code]false[/code],则将光照贴图纹ç†å­˜å‚¨åœ¨ä½ŽåŠ¨æ€èŒƒå›´çš„ PNG 图åƒä¸­ã€‚è¿™å¯ä»¥è®¾ç½®"
+"为 [code]false[/code] 以å‡å°‘ç£ç›˜å ç”¨ï¼Œä½†è¶…过 1.0 的光照值将被é™åˆ¶ï¼Œä½ å¯èƒ½ä¼šçœ‹"
+"到因精度é™ä½Žè€Œå¯¼è‡´çš„æ¡çº¹ã€‚\n"
+"[b]注æ„:[/b] å°† [member use_hdr] 设置为 [code]true[/code] å³ä½¿ä½¿ç”¨ GLES2 åŽ"
+"端或 [member ProjectSettings.rendering/quality/depth/hdr] 为 [code]false,也"
+"会é™ä½Žå…‰ç…§è´´å›¾æ¡çº¹[/code]。"
#: doc/classes/BakedLightmap.xml:98
msgid "The lowest bake quality mode. Fastest to calculate."
-msgstr ""
+msgstr "最低烘焙质é‡æ¨¡å¼ã€‚计算速度最快。"
#: doc/classes/BakedLightmap.xml:101
-#, fuzzy
msgid "The default bake quality mode."
-msgstr "默认的文本字体。"
+msgstr "默认烘焙质é‡æ¨¡å¼ã€‚"
#: doc/classes/BakedLightmap.xml:104
msgid "A higher bake quality mode. Takes longer to calculate."
-msgstr ""
+msgstr "更高的烘焙质é‡æ¨¡å¼ã€‚需è¦æ›´é•¿çš„时间æ¥è®¡ç®—。"
#: doc/classes/BakedLightmap.xml:107
msgid "The highest bake quality mode. Takes the longest to calculate."
-msgstr ""
+msgstr "最高的烘烤质é‡æ¨¡å¼ã€‚需è¦æœ€é•¿çš„时间æ¥è®¡ç®—。"
#: doc/classes/BakedLightmap.xml:110
msgid "Baking was successful."
@@ -12556,46 +12717,56 @@ msgid ""
"Returns if no viable save path is found. This can happen where an [member "
"image_path] is not specified or when the save location is invalid."
msgstr ""
+"如果没有找到åˆé€‚çš„ä¿å­˜è·¯å¾„,则返回。这å¯èƒ½å‘生在没有指定[member image_path]或"
+"者ä¿å­˜ä½ç½®æ— æ•ˆçš„情况下。"
#: doc/classes/BakedLightmap.xml:116 doc/classes/SpatialMaterial.xml:622
msgid "Currently unused."
msgstr "当å‰æœªä½¿ç”¨."
#: doc/classes/BakedLightmap.xml:119
-#, fuzzy
msgid "Returns when the baker cannot save per-mesh textures to file."
-msgstr "返回分é…给图å—的形状数é‡ã€‚"
+msgstr "当烘焙器ä¸èƒ½å°†æ¯ä¸ªç½‘格的纹ç†ä¿å­˜åˆ°æ–‡ä»¶æ—¶è¿”回。"
#: doc/classes/BakedLightmap.xml:122
-#, fuzzy
msgid "The size of the generated lightmaps is too large."
-msgstr "生æˆå¹³é¢çš„大å°ã€‚"
+msgstr "生æˆçš„光照贴图尺寸过大。"
#: doc/classes/BakedLightmap.xml:125
msgid "Some mesh contains UV2 values outside the [code][0,1][/code] range."
-msgstr ""
+msgstr "有些网格包å«[code][0,1][/code]范围以外的UV2值。"
#: doc/classes/BakedLightmap.xml:128
-#, fuzzy
msgid "Returns if user cancels baking."
-msgstr "返回å–消按钮。"
+msgstr "如果用户å–消了烘烤,则返回。"
+
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr "烘焙过程中ä¸ä½¿ç”¨ä»»ä½•çŽ¯å¢ƒã€‚"
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
-msgstr ""
+msgstr "烘焙环境会自动从当å‰åœºæ™¯ä¸­èŽ·å–。"
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
-msgstr ""
+msgstr "在烘焙过程中使用自定义天空作为环境。"
-#: doc/classes/BakedLightmap.xml:142
-#, fuzzy
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
-msgstr "自定义的[World2D],å¯ä»¥ä½œä¸º2D环境æºã€‚"
+msgstr "烘焙过程中使用自定义纯色作为环境。"
#: doc/classes/BakedLightmapData.xml:56
msgid ""
@@ -12605,11 +12776,15 @@ msgid ""
"lighting or emissive materials), adjust [member BakedLightmap."
"bounce_indirect_energy] and bake lightmaps again."
msgstr ""
+"烘焙和动æ€æ•èŽ·å¯¹è±¡çš„全局能é‡ä¹˜æ•°ã€‚è¿™å¯ä»¥åœ¨è¿è¡Œæ—¶æ›´æ”¹ï¼Œè€Œæ— éœ€å†æ¬¡çƒ˜ç„™å…‰ç…§è´´"
+"图。\n"
+"è¦ä»…调整间接照明的能é‡ï¼Œå³ä¸å½±å“直接照明或自å‘å…‰æ质,请调整 [member "
+"BakedLightmap.bounce_indirect_energy] 并å†æ¬¡çƒ˜ç„™å…‰ç…§è´´å›¾ã€‚"
#: doc/classes/BakedLightmapData.xml:60
msgid ""
"Controls whether dynamic capture objects receive environment lighting or not."
-msgstr ""
+msgstr "控制动æ€æ•æ‰å¯¹è±¡æ˜¯å¦æŽ¥æ”¶çŽ¯å¢ƒå…‰ç…§ã€‚"
#: doc/classes/BaseButton.xml:4
msgid "Base class for different kinds of buttons."
@@ -12662,6 +12837,10 @@ msgid ""
"[b]Note:[/b] This method doesn't unpress other buttons in its button [member "
"group]."
msgstr ""
+"改å˜æŒ‰é’®çš„[member pressed]状æ€ï¼Œä¸è§¦å‘[signal toggled]。当你åªæƒ³æ”¹å˜æŒ‰é’®çš„状"
+"æ€è€Œä¸å‘é€æŒ‰ä¸‹äº‹ä»¶æ—¶ä½¿ç”¨ï¼ˆä¾‹å¦‚,在åˆå§‹åŒ–场景时)。åªæœ‰å½“[member toggle_mode]"
+"是[code]true[/code]æ—¶æ‰æœ‰æ•ˆã€‚\n"
+"[b]注æ„:[/b] 这个方法ä¸ä¼šé‡Šæ”¾å…¶æŒ‰é’®[member group] 中的其他按钮。"
#: doc/classes/BaseButton.xml:48
msgid ""
@@ -12691,6 +12870,8 @@ msgid ""
"will be removed in Godot 4.0. This property no longer has any effect when "
"set. Please use [member Control.focus_mode] instead."
msgstr ""
+"[i]已弃用。[/i] 由于冗余,此属性已弃用,将在 Godot 4.0 中删除。此属性在设置åŽ"
+"ä¸ä¼šæœ‰ä»»ä½•å½±å“。请改用 [member Control.focus_mode]。"
#: doc/classes/BaseButton.xml:62
msgid "[ButtonGroup] associated to the button."
@@ -12705,7 +12886,7 @@ msgid ""
"value."
msgstr ""
"如果[code]true[/code],当按下按钮时将光标移到按钮外时,按钮会ä¿æŒæŒ‰ä¸‹çŠ¶æ€ã€‚\n"
-"[b]注æ„:[/b]该属性åªå½±å“按钮的视觉外观。无论该属性的值是多少,信å·éƒ½ä¼šåœ¨åŒä¸€"
+"[b]注æ„:[/b]该属性åªå½±å“按钮的视觉表现。无论该属性的值是多少,信å·éƒ½ä¼šåœ¨åŒä¸€"
"时刻å‘出。"
#: doc/classes/BaseButton.xml:69
@@ -12717,6 +12898,11 @@ msgid ""
"emitted. If you want to change the pressed state without emitting that "
"signal, use [method set_pressed_no_signal]."
msgstr ""
+"如果 [code]true[/code],按钮为按下状æ€ã€‚表示按钮被按下或切æ¢ï¼ˆå¦‚æžœ [member "
+"toggle_mode] 处于激活状æ€ï¼‰ã€‚仅当 [member toggle_mode] 为 [code]true[/code] "
+"æ—¶æ‰æœ‰æ•ˆã€‚\n"
+"[b]注:[/b]设置 [member pressed] 将导致 [signal toggled] 触å‘。如果你想在ä¸è§¦"
+"å‘该信å·çš„情况下更改按下状æ€ï¼Œè¯·ä½¿ç”¨ [method set_pressed_no_signal]。"
#: doc/classes/BaseButton.xml:73
msgid "[ShortCut] associated to the button."
@@ -12946,15 +13132,16 @@ msgid "Returns the inverse of the matrix."
msgstr "返回矩阵的逆值。"
#: doc/classes/Basis.xml:97
-#, fuzzy
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.\n"
"[b]Note:[/b] For complicated reasons, the epsilon argument is always "
"discarded. Don't use the epsilon argument, it does nothing."
msgstr ""
-"通过对æ¯ä¸ªåˆ†é‡è°ƒç”¨[code]is_equal_approx[/code],如果这个基础和[code]b[/code]"
-"近似相等,返回[code]true[/code]。"
+"如果这个 basis å’Œ[code]b[/code]近似相等,返回[code]true[/code],是通过对æ¯ä¸ª"
+"分é‡è°ƒç”¨[code]is_equal_approx[/code]。\n"
+"[b]注æ„:[/b] 由于å¤æ‚的原因,epsilonå‚数总是被丢弃,ä¸è¦ä½¿ç”¨å®ƒï¼Œå®ƒæ²¡æœ‰ä»»ä½•ä½œ"
+"用。"
#: doc/classes/Basis.xml:104
msgid ""
@@ -13106,7 +13293,7 @@ msgstr "返回设置为[code]true[/code]çš„ä½å›¾å…ƒç´ çš„æ•°é‡ã€‚"
msgid ""
"Applies morphological dilation to the bitmap. The first argument is the "
"dilation amount, Rect2 is the area where the dilation will be applied."
-msgstr ""
+msgstr "在ä½å›¾ä¸Šåº”用形æ€æ‰©å±•ã€‚第一个å‚数是扩展é‡ï¼ŒRect2是è¦åº”用扩展的区域。"
#: doc/classes/BitMap.xml:66
msgid ""
@@ -13243,7 +13430,7 @@ msgstr ""
#: doc/classes/Bone2D.xml:36
msgid ""
"Length of the bone's representation drawn in the editor's viewport in pixels."
-msgstr "在编辑器的视å£ä¸­ç»˜åˆ¶çš„骨骼的长度,å•ä½ä¸ºåƒç´ ã€‚"
+msgstr "在编辑器的视窗中绘制的骨骼的长度,å•ä½ä¸ºåƒç´ ã€‚"
#: doc/classes/Bone2D.xml:39
msgid ""
@@ -13257,14 +13444,13 @@ msgid "A node that will attach to a bone."
msgstr "一个会附ç€åœ¨éª¨éª¼ä¸Šçš„节点。"
#: doc/classes/BoneAttachment.xml:7
-#, fuzzy
msgid ""
"This node must be the child of a [Skeleton] node. You can then select a bone "
"for this node to attach to. The BoneAttachment node will copy the transform "
"of the selected bone."
msgstr ""
-"此节点必须是[Skeleton3D]节点的å­èŠ‚点。然åŽï¼Œæ‚¨å¯ä»¥ä¸ºè¿™ä¸ªèŠ‚点选择一个骨骼æ¥é™„"
-"ç€ã€‚BoneAttachment3D 节点将å¤åˆ¶æ‰€é€‰éª¨éª¼çš„å˜å½¢ã€‚"
+"此节点必须是 [Skeleton] 节点的å­èŠ‚点。然åŽï¼Œä½ å¯ä»¥ä¸ºæ­¤èŠ‚点选择è¦é™„加的骨骼。 "
+"BoneAttachment 节点将拷è´æ‰€é€‰éª¨éª¼çš„å˜æ¢ã€‚"
#: doc/classes/BoneAttachment.xml:15
msgid "The name of the attached bone."
@@ -13275,7 +13461,6 @@ msgid "Boolean built-in type."
msgstr "布尔型内置型。"
#: doc/classes/bool.xml:7
-#, fuzzy
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 a switch with on or off (1 or "
@@ -13324,12 +13509,12 @@ msgid ""
" can_shoot = true\n"
"[/codeblock]"
msgstr ""
-"布尔型是一个内置类型。有两个布尔值。[code]true[/code]和[code]false[/code]。你"
-"å¯ä»¥æŠŠå®ƒæƒ³è±¡æˆä¸€ä¸ªå¼€å…³ï¼Œæœ‰å¼€æˆ–关(1或0)的设置。布尔è¿ç®—在编程中用于æ¡ä»¶è¯­å¥"
-"中的逻辑,比如[code]if[/code]语å¥ã€‚\n"
-"布尔è¿ç®—å¯ä»¥ç›´æŽ¥ç”¨äºŽ[code]if[/code]语å¥ä¸­ã€‚下é¢çš„代ç åœ¨[code]if can_shoot:[/"
-"code]行中演示了这一点。你ä¸éœ€è¦ä½¿ç”¨[code]==true[/code],你åªéœ€è¦[code]if "
-"can_shoot:[/code]。åŒæ ·ï¼Œä½¿ç”¨ [code]if not can_shoot:[/code] 而ä¸æ˜¯ [code]== "
+"布尔是内置类型。有两个布尔值。[code]true[/code]å’Œ[code]false[/code]。你å¯ä»¥æŠŠ"
+"它想象æˆæœ‰å¼€æˆ–关状æ€çš„开关(1或0)。布尔在编程中用于æ¡ä»¶è¯­å¥çš„逻辑,如"
+"[code]if[/code]语å¥ã€‚\n"
+"布尔å¯ä»¥ç›´æŽ¥ç”¨äºŽ[code]if[/code]语å¥ä¸­ã€‚下é¢çš„代ç åœ¨[code]if can_shoot:[/code]"
+"行中演示了这一点。你ä¸éœ€è¦ä½¿ç”¨[code]==true[/code],你åªéœ€è¦[code]if "
+"can_shoot:[/code]。åŒæ ·åœ°ï¼Œä½¿ç”¨[code]if not can_shoot:[/code]而ä¸æ˜¯[code]== "
"false[/code]。\n"
"[codeblock]\n"
"var can_shoot = true\n"
@@ -13338,12 +13523,11 @@ msgstr ""
" 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"
+"下é¢çš„代ç åªæœ‰åœ¨ä¸¤ä¸ªæ¡ä»¶éƒ½æ»¡è¶³çš„情况下æ‰ä¼šäº§ç”Ÿå­å¼¹ï¼šåŠ¨ä½œ \"shoot\" 被按下,并"
+"且如果[code]can_shoot[/code]是[code]true[/code]。\n"
+"[b]注æ„:[/b][code]Input.is_action_pressed(\"shoot\")[/code]也是一个布尔值,"
+"当 \"shoot\"被按下时为[code]true[/code],当 \"shoot\" 没有被按下时为"
+"[code]false[/code]。\n"
"[codeblock]\n"
"var can_shoot = true\n"
"\n"
@@ -13351,10 +13535,9 @@ msgstr ""
" 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"
+"下é¢çš„代ç å°†æŠŠ[code]can_shoot[/code]设置为[code]false[/code]并å¯åŠ¨ä¸€ä¸ªå®šæ—¶"
+"器。这将阻止玩家射击,直到定时器用完。然åŽ[code]can_shoot[/code]设置为"
+"[code]true[/code],å†æ¬¡å…许玩家进行射击。\n"
"[codeblock]\n"
"var can_shoot = true\n"
"onready var cool_down = $CoolDownTimer\n"
@@ -13405,29 +13588,26 @@ msgid "Base class for box containers."
msgstr "ç›’å­å®¹å™¨çš„基类。"
#: doc/classes/BoxContainer.xml:7
-#, fuzzy
msgid ""
"Arranges child controls vertically or horizontally, and rearranges the "
"controls automatically when their minimum size changes."
-msgstr "垂直或水平排列å­[Control]节点,并在其最å°å°ºå¯¸æ›´æ”¹æ—¶è‡ªåŠ¨é‡æ–°æŽ’列它们。"
+msgstr "垂直或水平排列å­æŽ§ä»¶ï¼Œå¹¶åœ¨å…¶æœ€å°å°ºå¯¸æ›´æ”¹æ—¶è‡ªåŠ¨é‡æ–°æŽ’列。"
#: doc/classes/BoxContainer.xml:16
-#, fuzzy
msgid ""
"Adds a control to the box as a spacer. If [code]true[/code], [code]begin[/"
"code] will insert the spacer control in front of other children."
msgstr ""
-"在方框中添加一个 [Control] 节点作为间隔。如果 [code]begin[/code] 是 "
-"[code]true[/code],它将在所有其他å­èŠ‚点å‰æ’å…¥ [Control] 节点。"
+"将控件添加到盒å­ä½œä¸ºé—´éš”。如果 [code]true[/code], [code]begin[/code] 将在其他"
+"å­çº§ä¹‹å‰æ’入间隔控件。"
#: doc/classes/BoxContainer.xml:22
-#, fuzzy
msgid ""
"The alignment of the container's children (must be one of [constant "
"ALIGN_BEGIN], [constant ALIGN_CENTER] or [constant ALIGN_END])."
msgstr ""
-"容器å­ä»£çš„对é½æ–¹å¼ï¼ˆå¿…须是[constant ALIGN_BEGIN]ã€[constant ALIGN_CENTER]或"
-"[constant ALIGN_END]中的一个)。"
+"容器å­é¡¹çš„对é½æ–¹å¼ï¼Œå¿…须是 [constant ALIGN_BEGIN]ã€[constant ALIGN_CENTER] "
+"或 [constant ALIGN_END] 之一。"
#: doc/classes/BoxContainer.xml:28
msgid "Aligns children with the beginning of the container."
@@ -13446,9 +13626,8 @@ msgid "Box shape resource."
msgstr "盒形资æºã€‚"
#: doc/classes/BoxShape.xml:7
-#, fuzzy
msgid "3D box shape that can be a child of a [PhysicsBody] or [Area]."
-msgstr "3Dç›’å­å½¢çŠ¶å¯ä»¥æ˜¯[PhysicsBody3D]或[Area3D]çš„å­çº§ã€‚"
+msgstr "3D ç›’å­å½¢çŠ¶ï¼Œå¯ä»¥æ˜¯ [PhysicsBody] 或 [Area] çš„å­é¡¹ã€‚"
#: doc/classes/BoxShape.xml:10 doc/classes/CapsuleShape.xml:10
#: doc/classes/ConcavePolygonShape.xml:11 doc/classes/ConvexPolygonShape.xml:10
@@ -13476,7 +13655,6 @@ msgid "Standard themed Button."
msgstr "标准主题按钮。"
#: doc/classes/Button.xml:7
-#, fuzzy
msgid ""
"Button is the standard themed button. It can contain text and an icon, and "
"will display them according to the current [Theme].\n"
@@ -13501,8 +13679,8 @@ msgid ""
"given time. Use [TouchScreenButton] for buttons that trigger gameplay "
"movement or actions, as [TouchScreenButton] supports multitouch."
msgstr ""
-"按钮是标准主题按钮。它å¯ä»¥åŒ…å«æ–‡æœ¬å’Œå›¾æ ‡ï¼Œå¹¶å°†æ ¹æ®å½“å‰çš„[主题]显示它们。\n"
-"[b]创建按钮并在被代ç æŒ‰ä¸‹æ—¶åˆ†é…动作的示例:[/b]\n"
+"标准的主题按钮。它å¯ä»¥åŒ…å«æ–‡å­—和图标,并根æ®å½“å‰çš„ [Theme]显示。\n"
+"[b]创建按钮并在按下代ç æ—¶é…置动作的示例:[/b]\n"
"[codeblock]\n"
"func _ready():\n"
" var button = Button.new()\n"
@@ -13513,8 +13691,12 @@ msgstr ""
"func _button_pressed():\n"
" print(\"Hello world!\")\n"
"[/codeblock]\n"
-"也å¯ä»¥åœ¨ç¼–辑器中创建按钮(如所有Control节点),但是æŸäº›æƒ…况下å¯èƒ½éœ€è¦é€šè¿‡ä»£ç "
-"创建它们。"
+"按钮åƒæ‰€æœ‰æŽ§ä»¶èŠ‚点一样,也å¯ä»¥åœ¨ç¼–辑器中创建,但在æŸäº›æƒ…况下å¯èƒ½éœ€è¦ä»Žä»£ç ä¸­"
+"创建。\n"
+"å‚阅 [BaseButton],其中包括与此节点相关的通用属性和方法。\n"
+"[b]注æ„:[/b] 按钮ä¸å¤„ç†è§¦æ‘¸è¾“入,因此ä¸æ”¯æŒå¤šç‚¹è§¦æŽ§ï¼Œå› ä¸ºæ¨¡æ‹Ÿé¼ æ ‡åœ¨ç»™å®šæ—¶é—´"
+"åªèƒ½æŒ‰ä¸‹ä¸€ä¸ªæŒ‰é’®ã€‚å°† [TouchScreenButton] 用于触å‘游æˆç§»åŠ¨æˆ–动作的按钮,因为 "
+"[TouchScreenButton] 支æŒå¤šç‚¹è§¦æŽ§ã€‚"
#: doc/classes/Button.xml:25 doc/classes/Dictionary.xml:89
#: doc/classes/GridContainer.xml:12 doc/classes/OS.xml:10
@@ -13595,26 +13777,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr "ç¦ç”¨[Button]时使用的文本[Color]。"
#: doc/classes/Button.xml:77
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/Button.xml:80
msgid "Text [Color] used when the [Button] is being hovered."
msgstr "悬åœ[Button]时使用的文本[Color]。"
-#: doc/classes/Button.xml:80
+#: doc/classes/Button.xml:83
msgid "Text [Color] used when the [Button] is being pressed."
msgstr "正在按下 [Button] 时使用的文本 [Color] 。"
-#: doc/classes/Button.xml:83
+#: doc/classes/Button.xml:86
msgid "[StyleBox] used when the [Button] is being hovered."
msgstr "悬åœ[Button]时使用的[StyleBox]。"
-#: doc/classes/Button.xml:86
+#: doc/classes/Button.xml:89
msgid "The horizontal space between [Button]'s icon and text."
msgstr "[Button]的图标和文本之间的水平间è·ã€‚"
-#: doc/classes/Button.xml:89
+#: doc/classes/Button.xml:92
msgid "Default [StyleBox] for the [Button]."
msgstr "[Button]的默认[StyleBox]。"
-#: doc/classes/Button.xml:92
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr "按下[Button]时使用的[StyleBox]。"
@@ -13644,16 +13833,14 @@ msgid "Returns the current pressed button."
msgstr "返回当å‰æŒ‰ä¸‹çš„按钮。"
#: doc/classes/ButtonGroup.xml:33
-#, fuzzy
msgid "Emitted when one of the buttons of the group is pressed."
-msgstr "当该控制器上的一个按钮被按下时触å‘。"
+msgstr "当该组中的一个按钮被按下时触å‘。"
#: doc/classes/Camera.xml:4
msgid "Camera node, displays from a point of view."
msgstr "相机节点,从一个角度显示。"
#: doc/classes/Camera.xml:7
-#, fuzzy
msgid ""
"Camera is a special node that displays what is visible from its current "
"location. Cameras register themselves in the nearest [Viewport] node (when "
@@ -13663,10 +13850,10 @@ msgid ""
"capabilities to a [Viewport], and, without one, a scene registered in that "
"[Viewport] (or higher viewports) can't be displayed."
msgstr ""
-"[Camera3D]是一个特殊节点,显示从其当å‰ä½ç½®å¯è§çš„内容。相机将自己注册在最近的"
-"[Viewport]节点中(å‡åºåœºæ™¯æ ‘)。æ¯ä¸ªè§†å£åªèƒ½æ¿€æ´»ä¸€ä¸ªç›¸æœºã€‚如果场景树上没有å¯"
-"用的视区,则摄影机将在全局视å£ä¸­æ³¨å†Œã€‚æ¢å¥è¯è¯´ï¼Œç›¸æœºä»…å‘[视å£]æä¾›3D显示功"
-"能,而没有一个相机,则无法显示在[Viewport](或更高视å£ï¼‰ä¸­æ³¨å†Œçš„场景。"
+"相机是一个特殊节点,用于显示从其当å‰ä½ç½®å¯è§çš„内容。相机在最近的 [Viewport] "
+"节点中注册自己(当树上行)。æ¯ä¸ªè§†çª—åªèƒ½æ¿€æ´»ä¸€ä¸ªç›¸æœºã€‚如果在树上没有å¯ç”¨çš„视"
+"窗,相机将在全局视窗中注册。æ¢å¥è¯è¯´ï¼Œç›¸æœºåªæ˜¯ä¸º [Viewport] æä¾›3D显示能力,"
+"如果没有,则无法显示在该 [Viewport] 或更高视窗中注册的场景。"
#: doc/classes/Camera.xml:17
msgid ""
@@ -13678,9 +13865,8 @@ msgstr ""
"[code]true[/code],请求使下一个相机æˆä¸ºå½“å‰ç›¸æœºï¼ˆå¦‚果有)。"
#: doc/classes/Camera.xml:23
-#, fuzzy
msgid "Returns the camera's RID from the [VisualServer]."
-msgstr "从[RenderingServer]中返回相机的RID。"
+msgstr "从[VisualServer]返回相机的RID。"
#: doc/classes/Camera.xml:29
msgid ""
@@ -13689,6 +13875,9 @@ msgid ""
"to the position and orientation of the camera by subclassed cameras such as "
"[ClippedCamera], [InterpolatedCamera] and [ARVRCamera]."
msgstr ""
+"返回相机的å˜æ¢åŠ ä¸Šåž‚ç›´[member v_offset]和水平[member h_offset]çš„å移é‡ï¼›ä»¥åŠ"
+"ç”±å­ç±»ç›¸æœºå¦‚[ClippedCamera]ã€[InterpolatedCamera]å’Œ[ARVRCamera]对相机的ä½ç½®å’Œ"
+"æ–¹å‘åšå‡ºçš„任何其他调整。"
#: doc/classes/Camera.xml:36
msgid ""
@@ -13699,14 +13888,13 @@ msgstr ""
"code],å¦åˆ™è¿”回[code]false[/code]。"
#: doc/classes/Camera.xml:42
-#, fuzzy
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 ""
-"以世界空间为å•ä½ï¼Œä»¥[Plane]数组的形å¼è¿”回相机的平截头体平é¢ï¼Œé¡ºåºä¸ºï¼šè¿‘ã€è¿œã€"
-"å·¦ã€ä¸Šã€å³ã€ä¸‹ã€‚ä¸è¦ä¸Ž [member frustum_offset] 混淆。"
+"以世界空间å•ä½å°†ç›¸æœºçš„视锥平é¢ä½œä¸º [Plane] 数组按以下顺åºè¿”回:nearã€farã€"
+"leftã€topã€rightã€bottom。ä¸è¦ä¸Ž [member frustum_offset] 混淆。"
#: doc/classes/Camera.xml:49
msgid ""
@@ -13736,36 +13924,33 @@ msgstr ""
"å±å¹•å®½åº¦/高度等因素。"
#: doc/classes/Camera.xml:71
-#, fuzzy
msgid ""
"Returns the 3D point in world space 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 ""
-"返回世界空间中的 3D 点,该点在 [Viewport] 矩形中映射到给定 2D å标的平é¢ä¸Šï¼Œ"
-"该平é¢çš„深度为给定 [code]z_depth[/code] çš„è·ç¦»åˆ°åœºæ™¯ä¸­ä¸Žç›¸æœºçš„è·ç¦»ã€‚"
+"返回世界空间中的 3D 点,该点映射到平é¢ä¸Š [Viewport] 矩形中的给定 2D å标,该"
+"å¹³é¢è·ç¦»ç›¸æœºçš„场景为给定的 [code]z_depth[/code] è·ç¦»ã€‚"
#: doc/classes/Camera.xml:78
-#, fuzzy
msgid ""
"Returns a normal vector in world space, 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 ""
-"返回世界空间中的法线å‘é‡ï¼Œå³é€šè¿‡ç›¸æœºæŠ•å½±åœ¨[Viewport]矩形上的一个点的结果。这"
-"对于以(原点,法线)çš„å½¢å¼æŠ•å°„光线以进行物体交汇或选å–很有用。"
+"返回世界空间中的法线å‘é‡ï¼Œå³ç›¸æœºæŠ•å½±åœ¨[Viewport]矩形上投影一个点的结果。这对"
+"于以原点ã€æ³•çº¿ï¼ŒæŠ•å°„光线形å¼ç”¨äºŽå¯¹è±¡ç›¸äº¤æˆ–拾å–很有用。"
#: doc/classes/Camera.xml:85
-#, fuzzy
msgid ""
"Returns a 3D position in world space, 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 ""
-"返回世界空间中的3Dä½ç½®ï¼Œå³é€šè¿‡ç›¸æœºæŠ•å½±åœ¨[Viewport]矩形上的一个点的结果。这对"
-"于以(原点ã€æ³•çº¿)å½¢å¼æŠ•å°„光线以进行物体交汇或选å–很有用。"
+"返回世界空间中的 3D å标,å³ç›¸æœºæŠ•å½±åœ¨ [Viewport] 矩形上投影一个点的结果。这"
+"对于以原点ã€æ³•çº¿ï¼ŒæŠ•å°„光线形å¼ç”¨äºŽå¯¹è±¡ç›¸äº¤æˆ–拾å–很有用。"
#: doc/classes/Camera.xml:93
msgid ""
@@ -13773,16 +13958,15 @@ msgid ""
msgstr "å¯ç”¨æˆ–ç¦ç”¨[member cull_mask]中给定的[code]layer[/code]。"
#: doc/classes/Camera.xml:103
-#, fuzzy
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 ""
-"通过指定 [code]size[/code]ã€[code]offset[/code]ï¼Œä»¥åŠ [code]z_near[/code] å’Œ "
-"[code]z_far[/code] 剪辑平é¢ï¼ˆä»¥ä¸–界空间为å•ä½ï¼‰ï¼Œå°†ç›¸æœºæŠ•å½±è®¾ç½®ä¸º frustum 模"
-"å¼ï¼ˆè¯·å‚阅 [constant PROJECTION_FRUSTUM])。"
+"通过指定 [code]size[/code] 〠[code]offset[/code] 以åŠä»¥ä¸–界空间为å•ä½çš„ "
+"[code]z_near[/code] å’Œ [code]z_far[/code] è£å‰ªå¹³é¢ï¼Œå°†ç›¸æœºæŠ•å½±è®¾ç½®ä¸ºè§†é”¥æ¨¡"
+"å¼ï¼Œå‚阅 [constant PROJECTION_FRUSTUM]。"
#: doc/classes/Camera.xml:112
msgid ""
@@ -13824,6 +14008,17 @@ msgid ""
"unproject_position(global_transform.origin)\n"
"[/codeblock]"
msgstr ""
+"返回[Viewport]矩形中的2Då标,该å标映射到世界空间中给定的3D点。\n"
+"[b]注æ„:[/b]当使用它æ¥å®šä½3D视窗上的GUI元素时,如果3D点在相机åŽé¢ï¼Œè¯·ä½¿ç”¨"
+"[method is_position_behind]æ¥é˜²æ­¢å®ƒä»¬æ˜¾ç¤ºã€‚\n"
+"[codeblock]\n"
+"# 这个代ç å—是继承自Spatial的脚本的一部分。\n"
+"# `control`是对继承自Control的节点的引用。\n"
+"control.visible = not get_viewport().get_camera()."
+"is_position_behind(global_transform.origin)\n"
+"control.rect_position = get_viewport().get_camera()."
+"unproject_position(global_transform.origin)\n"
+"[/codeblock]"
#: doc/classes/Camera.xml:141
msgid ""
@@ -13848,6 +14043,13 @@ msgid ""
"Perspective menu in the top-left corner of the 3D viewport and toggle "
"[b]Enable Doppler[/b]."
msgstr ""
+"如果ä¸æ˜¯[constant DOPPLER_TRACKING_DISABLED],此相机将模拟[url=https://en."
+"wikipedia.org/wiki/Doppler_effect]多普勒效果[/url]的对象在特定"
+"[code]_process[/code]方法中的å˜åŒ–。多普勒效果åªå¯¹[member AudioStreamPlayer3D."
+"doppler_tracking]设置为[constant AudioStreamPlayer3D."
+"DOPPLER_TRACKING_DISABLED]以外的值的[AudioStreamPlayer3D]节点进行模拟。\n"
+"[b]注æ„:[/b]è¦åœ¨ç¼–辑器中切æ¢å¤šæ™®å‹’效果预览,使用三维视窗左上角的é€è§†èœå•ï¼Œå¹¶"
+"切æ¢ä¸º[b]å¯ç”¨å¤šæ™®å‹’[/b]。"
#: doc/classes/Camera.xml:151
msgid "The [Environment] to use for this camera."
@@ -13860,7 +14062,6 @@ msgid ""
msgstr "该相机相对于其本地Zè½´çš„è¿œè£è¾¹ç•Œçš„è·ç¦»ã€‚"
#: doc/classes/Camera.xml:157
-#, fuzzy
msgid ""
"The camera's field of view angle (in degrees). Only applicable in "
"perspective mode. Since [member keep_aspect] locks one axis, [code]fov[/"
@@ -13872,13 +14073,13 @@ msgid ""
"- ~102.45 degrees in a 16:9 viewport\n"
"- ~117.06 degrees in a 21:9 viewport"
msgstr ""
-"相机的视场角(度)。仅适用于é€è§†æ¨¡å¼ã€‚由于[member keep_aspect]é”定一个轴,"
-"[code]fov[/code]设置å¦ä¸€ä¸ªè½´çš„视场角。\n"
-"作为å‚考,默认的垂直视场角值([code]75.0[/code])相当于水平视场角。\n"
-"- 在4:3的视å£ä¸­ï¼Œçº¦91.31度\n"
-"- ~101.67度,在16:10的视å£ä¸­\n"
-"- ~107.51度,在16:9的视å£ä¸­\n"
-"- ~121.63度,在21:9的视å£ä¸­"
+"相机的视野角度,以度为å•ä½ã€‚仅适用于é€è§†æ¨¡å¼ã€‚由于 [member keep_aspect] é”定"
+"一个轴,因此 [code]fov[/code] 设置å¦ä¸€ä¸ªè½´çš„视角。\n"
+"作为å‚考,默认的垂直视野值 ([code]70.0[/code]) 等效于以下水平 FOV:\n"
+"- 在 4:3 视窗中约86.07 度\n"
+"- 在 16:10 视窗中约 96.50 度\n"
+"- 在 16:9 视窗中约102.45 度\n"
+"- 在 21:9 视窗中约117.06 度"
#: doc/classes/Camera.xml:165
msgid ""
@@ -14006,7 +14207,6 @@ msgid "Camera node for 2D scenes."
msgstr "二维场景的相机节点。"
#: doc/classes/Camera2D.xml:7
-#, fuzzy
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 "
@@ -14022,15 +14222,15 @@ msgid ""
"limits. You can use [method get_camera_screen_center] to get the real "
"position."
msgstr ""
-"二维场景的相机节点。它强制å±å¹•ï¼ˆå½“å‰å±‚)跟éšè¿™ä¸ªèŠ‚点滚动。这使得对å¯æ»šåŠ¨åœºæ™¯"
-"进行编程比手动改å˜åŸºäºŽ[CanvasItem]节点的ä½ç½®æ›´å®¹æ˜“(也更快)。\n"
-"这个节点的目的是作为一个简å•çš„帮手,让事情快速进行,å¯èƒ½ä¼šå‘生需è¦æ›´å¤šçš„功能"
-"æ¥æ”¹å˜ç›¸æœºçš„工作方å¼ã€‚è¦åˆ¶ä½œè‡ªå·±çš„自定义相机节点,请继承[Node2D],并通过设置"
-"[Viewport]中的[member Viewport.canvas_transform]æ¥æ”¹å˜ç”»å¸ƒçš„å˜æ¢ï¼ˆæ‚¨å¯ä»¥é€šè¿‡"
-"[method Node.get_viewport]获得当å‰çš„[Viewport])。\n"
-"注æ„,[Camera2D]节点的[code]position[/code]并ä¸ä»£è¡¨å±å¹•çš„实际ä½ç½®ï¼Œå®ƒå¯èƒ½ä¼šå› "
-"为应用的平滑或é™åˆ¶è€Œæœ‰æ‰€ä¸åŒã€‚ä½ å¯ä»¥ä½¿ç”¨[method get_camera_screen_center]æ¥èŽ·"
-"å–真实ä½ç½®ã€‚"
+"用于2D场景的相机节点。它强制å±å¹•ï¼ˆå½“å‰å±‚)跟éšè¯¥èŠ‚点滚动。与手动改å˜åŸºäºŽ "
+"[CanvasItem] 节点的å标相比,这使得对å¯æ»šåŠ¨åœºæ™¯è¿›è¡Œç¼–程更加容易和快æ·ã€‚\n"
+"这个节点旨在æˆä¸ºç®€å•çš„助手,让事情便æ·ï¼Œä½†å¯èƒ½éœ€è¦æ›´å¤šçš„功能æ¥æ”¹å˜ç›¸æœºçš„工作"
+"æ–¹å¼ã€‚è¦åˆ¶ä½œè‡ªå®šä¹‰ç›¸æœºèŠ‚点,则从[Node2D]继承,并通过设置[Viewport]中的"
+"[member Viewport.canvas_transform]æ¥æ”¹å˜ç”»å¸ƒçš„å˜æ¢ï¼ˆä½ å¯ä»¥é€šè¿‡ä½¿ç”¨[method "
+"Node.get_viewport]获得当å‰çš„[Viewport])。\n"
+"请注æ„,[Camera2D]节点的[code]position[/code]并ä¸ä»£è¡¨å±å¹•çš„实际å标,它å¯èƒ½ä¼š"
+"因为应用的平滑或é™åˆ¶è€Œæœ‰æ‰€ä¸åŒã€‚ä½ å¯ä»¥ä½¿ç”¨[method get_camera_screen_center]æ¥"
+"获å–实际å标。"
#: doc/classes/Camera2D.xml:13 doc/classes/TileMap.xml:13
#: doc/classes/TileSet.xml:13
@@ -14086,7 +14286,7 @@ msgstr ""
msgid ""
"Make this the current 2D camera for the scene (viewport and layer), in case "
"there are many cameras in the scene."
-msgstr "使之æˆä¸ºåœºæ™¯ï¼ˆè§†å£å’Œå›¾å±‚)的当å‰2D相机,以防场景中有很多相机。"
+msgstr "使之æˆä¸ºåœºæ™¯ï¼ˆè§†çª—和图层)的当å‰2D相机,以防场景中有很多相机。"
#: doc/classes/Camera2D.xml:70
msgid ""
@@ -14221,6 +14421,10 @@ msgid ""
"without smoothing, even with this setting enabled, invoke [method "
"reset_smoothing]."
msgstr ""
+"如果 [code]true[/code],相机在达到æžé™æ—¶å¹³æ»‘地åœæ­¢ã€‚\n"
+"如果平滑被ç¦ç”¨ï¼Œè¿™å°†ä¸èµ·ä½œç”¨ã€‚\n"
+"[b]注æ„:[/b]è¦ç«‹å³å°†ç›¸æœºçš„ä½ç½®æ›´æ–°åˆ°é™åˆ¶èŒƒå›´å†…而ä¸è¿›è¡Œå¹³æ»‘,å³ä½¿å¯ç”¨äº†æ­¤è®¾"
+"置,也è¦è°ƒç”¨[method reset_smoothing]。"
#: doc/classes/Camera2D.xml:143
msgid ""
@@ -14282,7 +14486,7 @@ 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 ""
-"相机相对于视å£çš„缩放比例。大于[code] Vector2(1,1)[/code]的值会缩å°å†…容,而"
+"相机相对于视窗的缩放比例。大于[code] Vector2(1,1)[/code]的值会缩å°å†…容,而"
"较å°çš„值会起到放大镜的作用。例如,将[code] Vector2(0.5,0.5)[/code]放大2"
"å€ï¼Œç„¶åŽå°†[code] Vector2(4,4)[/code]用于4å€ç¼©å°ã€‚"
@@ -14313,7 +14517,6 @@ msgid ""
msgstr "通过相机æºï¼Œæ‚¨å¯ä»¥è®¿é—®è¿žæŽ¥åˆ°è®¾å¤‡çš„å•ä¸ªç‰©ç†ç›¸æœºã€‚"
#: doc/classes/CameraFeed.xml:7
-#, fuzzy
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 "
@@ -14323,53 +14526,48 @@ msgid ""
"for you if you set the environment to show the camera image in the "
"background."
msgstr ""
-"通过相机æºï¼Œæ‚¨å¯ä»¥è®¿é—®è¿žæŽ¥åˆ°è®¾å¤‡çš„å•ä¸ªç‰©ç†ç›¸æœºã€‚å¯ç”¨åŽï¼ŒGodot 将开始从相机æ•"
-"获帧,然åŽå¯ä»¥ä½¿ç”¨ã€‚å¦è¯·å‚阅 [CameraServer]。\n"
+"通过相机æºï¼Œä½ å¯ä»¥è®¿é—®è¿žæŽ¥åˆ°è®¾å¤‡çš„å•ä¸ªç‰©ç†ç›¸æœºã€‚å¯ç”¨åŽï¼ŒGodot 将开始从相机æ•"
+"获帧,然åŽä½¿ç”¨ã€‚\n"
"[b]注æ„:[/b]很多相机会返回YCbCr图åƒï¼Œè¿™äº›å›¾åƒè¢«åˆ†æˆä¸¤ä¸ªçº¹ç†ï¼Œéœ€è¦åœ¨ç€è‰²å™¨ä¸­"
-"组åˆã€‚如果您将环境设置为在背景中显示相机图åƒï¼ŒGodot 会自动为您执行此æ“作。"
+"组åˆã€‚如果你将环境设置为在背景中显示相机图åƒï¼ŒGodot 会自动为将执行此æ“作。"
#: doc/classes/CameraFeed.xml:16
-#, fuzzy
msgid "Returns the unique ID for this feed."
-msgstr "返回该对等体的IP。"
+msgstr "返回该æºçš„唯一ID。"
#: doc/classes/CameraFeed.xml:22
msgid "Returns the camera's name."
msgstr "返回相机的å称。"
#: doc/classes/CameraFeed.xml:28
-#, fuzzy
msgid "Returns the position of camera on the device."
-msgstr "返回给定ID处的ä½ç½®è¿½è¸ªå™¨ã€‚"
+msgstr "返回设备上的相机ä½ç½®ã€‚"
#: doc/classes/CameraFeed.xml:34
-#, fuzzy
msgid "If [code]true[/code], the feed is active."
-msgstr "如果[code]true[/code],则暂åœè§†é¢‘。"
+msgstr "如果[code]true[/code],则æºæ˜¯æ¿€æ´»çš„。"
#: doc/classes/CameraFeed.xml:37
-#, fuzzy
msgid "The transform applied to the camera's image."
-msgstr "返回应用于该项导航网格的转æ¢ã€‚"
+msgstr "应用于相机图åƒçš„å˜æ¢ã€‚"
#: doc/classes/CameraFeed.xml:42
-#, fuzzy
msgid "No image set for the feed."
-msgstr "没有关于已编辑属性的æ示。"
+msgstr "没有为该æºè®¾ç½®å›¾åƒã€‚"
#: doc/classes/CameraFeed.xml:45
msgid "Feed supplies RGB images."
-msgstr "Feed æä¾› RGB 图åƒã€‚"
+msgstr "æºæä¾›RGB图åƒã€‚"
#: doc/classes/CameraFeed.xml:48
msgid "Feed supplies YCbCr images that need to be converted to RGB."
-msgstr ""
+msgstr "æºæ供的 YCbCr 图åƒéœ€è¦è½¬æ¢æˆ RGB 图åƒã€‚"
#: doc/classes/CameraFeed.xml:51
msgid ""
"Feed supplies separate Y and CbCr images that need to be combined and "
"converted to RGB."
-msgstr ""
+msgstr "æºæä¾›å•ç‹¬çš„Yå’ŒCbCr图åƒï¼Œéœ€è¦åˆå¹¶å¹¶è½¬æ¢ä¸ºRGB。"
#: doc/classes/CameraFeed.xml:54
msgid "Unspecified position."
@@ -14377,42 +14575,37 @@ msgstr "未指定å标。"
#: doc/classes/CameraFeed.xml:57
msgid "Camera is mounted at the front of the device."
-msgstr ""
+msgstr "相机安装在了设备å‰éƒ¨ã€‚"
#: doc/classes/CameraFeed.xml:60
msgid "Camera is mounted at the back of the device."
-msgstr ""
+msgstr "相机安装在了设备åŽéƒ¨ã€‚"
#: doc/classes/CameraServer.xml:4
msgid "Server keeping track of different cameras accessible in Godot."
msgstr "æœåŠ¡å™¨è·Ÿè¸ªGodot中å¯è®¿é—®çš„ä¸åŒæ‘„åƒå¤´ã€‚"
#: doc/classes/CameraServer.xml:7
-#, fuzzy
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."
msgstr ""
-"[CameraServer]跟踪Godot中å¯è®¿é—®çš„ä¸åŒæ‘„åƒå¤´ã€‚这些是外部摄åƒå¤´ï¼Œå¦‚网络摄åƒå¤´æˆ–"
-"手机上的摄åƒå¤´ã€‚\n"
-"值得注æ„的是,它用于为AR模å—æä¾›æ¥è‡ªæ‘„åƒå¤´çš„视频æºã€‚\n"
-"[b]注æ„:[/b]这个类目å‰åªåœ¨macOSå’ŒiOS上实现。在其他平å°ä¸Šï¼Œå°†æ— æ³•ä½¿ç”¨"
-"[CameraFeed]。"
+"[CameraServer]记录了Godot中å¯è®¿é—®çš„ä¸åŒæ‘„åƒæœºã€‚这些是外部摄åƒæœºï¼Œå¦‚网络摄åƒæœº"
+"或手机上的摄åƒæœºã€‚\n"
+"它主è¦ç”¨äºŽä¸ºAR模å—æä¾›æ¥è‡ªæ‘„åƒæœºçš„视频资料。"
#: doc/classes/CameraServer.xml:17
-#, fuzzy
msgid "Adds a camera feed to the camera server."
-msgstr "将相机[code]feed[/code]添加到相机æœåŠ¡å™¨ã€‚"
+msgstr "将相机æºæ·»åŠ åˆ°ç›¸æœºæœåŠ¡ã€‚"
#: doc/classes/CameraServer.xml:23
msgid "Returns an array of [CameraFeed]s."
-msgstr "返回一个[CameraFeed]的数组。"
+msgstr "返回一个 [CameraFeed] 数组。"
#: doc/classes/CameraServer.xml:30
-#, fuzzy
msgid "Returns the [CameraFeed] with this id."
-msgstr "返回此信å·çš„å称。"
+msgstr "返回具有此ID的[CameraFeed]。"
#: doc/classes/CameraServer.xml:36
msgid "Returns the number of [CameraFeed]s registered."
@@ -14423,14 +14616,12 @@ msgid "Removes a [CameraFeed]."
msgstr "移除[CameraFeed]。"
#: doc/classes/CameraServer.xml:51
-#, fuzzy
msgid "Emitted when a [CameraFeed] is added (e.g. webcam is plugged in)."
-msgstr "当添加[CameraFeed]æ—¶å‘出(例如,æ’入了网络摄åƒå¤´ï¼‰ã€‚"
+msgstr "当添加[CameraFeed]时触å‘,例如,æ’入网络摄åƒå¤´ã€‚"
#: doc/classes/CameraServer.xml:57
-#, fuzzy
msgid "Emitted when a [CameraFeed] is removed (e.g. webcam is unplugged)."
-msgstr "当[CameraFeed]被移除时å‘出(例如,网络摄åƒå¤´è¢«æ‹”掉)。"
+msgstr "移除 [CameraFeed] 时触å‘,例如拔掉网络摄åƒå¤´ã€‚"
#: doc/classes/CameraServer.xml:63
msgid "The RGBA camera image."
@@ -14450,7 +14641,7 @@ msgstr "CbCr分é‡ç›¸æœºçš„图åƒã€‚"
#: doc/classes/CameraTexture.xml:4
msgid "Texture provided by a [CameraFeed]."
-msgstr "纹ç†ç”±[CameraFeed]æ供。"
+msgstr "ç”±[CameraFeed]æ供的纹ç†ã€‚"
#: doc/classes/CameraTexture.xml:7
msgid ""
@@ -14569,11 +14760,11 @@ msgid "Draws a colored polygon of any amount of points, convex or concave."
msgstr "绘制任æ„æ•°é‡ç‚¹çš„彩色多边形,凸或凹。"
#: doc/classes/CanvasItem.xml:80
-#, fuzzy
msgid ""
"Draws a line from a 2D point to another, with a given color and width. It "
"can be optionally antialiased."
-msgstr "用给定的颜色和宽度,从一个2D点画一æ¡çº¿åˆ°å¦ä¸€ä¸ªç‚¹ã€‚"
+msgstr ""
+"绘制一æ¡ä»Ž 2D 点到å¦ä¸€ä¸ªç‚¹çš„线,具有给定的颜色和宽度。它å¯ä»¥é€‰æ‹©æŠ—锯齿。"
#: doc/classes/CanvasItem.xml:91
msgid ""
@@ -14588,9 +14779,11 @@ msgid ""
"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
"not implemented and have no effect."
msgstr ""
+"使用uniform [code]color[/code] 绘制多æ¡å¹³è¡Œçº¿ã€‚\n"
+"[b]注:[/b] [code]width[/code] å’Œ [code]antialiased[/code] ç›®å‰æ²¡æœ‰å®žçŽ°ï¼Œæ²¡æœ‰"
+"效果。"
#: doc/classes/CanvasItem.xml:112
-#, fuzzy
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 "
@@ -14598,8 +14791,10 @@ msgid ""
"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are currently "
"not implemented and have no effect."
msgstr ""
-"以统一的[code]width[/code]å’Œé€æ®µç€è‰²çš„æ–¹å¼ç»˜åˆ¶å¤šæ¡å¹³è¡Œçº¿ã€‚分é…给线段的颜色与"
-"[code]points[/code]å’Œ[code]colors[/code]之间的索引相匹é…。"
+"以 uniform çš„ [code]width[/code] å’Œé€æ®µç€è‰²ç»˜åˆ¶å¤šæ¡å¹³è¡Œçº¿ã€‚分é…给线段的颜色"
+"按 [code]points[/code] å’Œ [code]colors[/code] 之间的索引匹é…。\n"
+"[b]注:[/b] [code]width[/code]å’Œ[code]antialiased[/code]ç›®å‰æ²¡æœ‰å®žçŽ°ï¼Œæ²¡æœ‰æ•ˆ"
+"果。"
#: doc/classes/CanvasItem.xml:122
msgid ""
@@ -14614,34 +14809,32 @@ msgid "Draws a polygon of any amount of points, convex or concave."
msgstr "绘制任æ„æ•°é‡çš„点的多边形,凸或凹。"
#: doc/classes/CanvasItem.xml:144
-#, fuzzy
msgid ""
"Draws interconnected line segments with a uniform [code]color[/code] and "
"[code]width[/code] and optional antialiasing."
-msgstr "绘制具有统一[code]colors[/code]和[code]width[/code]的相互连接的线段。"
+msgstr ""
+"以uniform çš„[code]color[/code]å’Œ[code]width[/code]æ¥ç»˜åˆ¶ç›¸äº’连接的线段,å¯é€‰"
+"抗锯齿。"
#: doc/classes/CanvasItem.xml:154
-#, fuzzy
msgid ""
"Draws interconnected line segments with a uniform [code]width[/code], "
"segment-by-segment coloring, and optional antialiasing. Colors assigned to "
"line segments match by index between [code]points[/code] and [code]colors[/"
"code]."
msgstr ""
-"绘制具有统一[code]width[/code]å’Œé€æ®µç€è‰²çš„相互连接的线段。分é…给线段的颜色与"
-"[code]点[/code]å’Œ[code]colors[/code]之间的索引匹é…。"
+"以uniformçš„[code]width[/code]绘制相互连接的线段,é€æ®µç€è‰²ï¼Œå¯é€‰æŠ—锯齿。分é…ç»™"
+"线段的颜色通过[code]points[/code]å’Œ[code]colors[/code]之间的索引进行匹é…。"
#: doc/classes/CanvasItem.xml:166
-#, fuzzy
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 ""
-"绘制一个自定义基元。1点为一个点,2点为一æ¡çº¿ï¼Œ3点为一个三角形,4点为一个四边"
+"绘制自定义基本网格。1点为一个点,2点为一æ¡çº¿ï¼Œ3点为一个三角形,4点为一个四边"
"形。"
#: doc/classes/CanvasItem.xml:177
-#, fuzzy
msgid ""
"Draws a rectangle. If [code]filled[/code] is [code]true[/code], the "
"rectangle will be filled with the [code]color[/code] specified. If "
@@ -14652,11 +14845,12 @@ msgid ""
"[b]Note:[/b] [code]width[/code] and [code]antialiased[/code] are only "
"effective if [code]filled[/code] is [code]false[/code]."
msgstr ""
-"绘制一个矩形。如果[code]fill[/code]是[code]true[/code],则用指定的"
-"[code]color[/code]填充矩形。如果[code]fill[/code]是[code]false[/code],则以指"
-"定的[code]color[/code]å’Œ[code]width[/code]æ¥ç»˜åˆ¶çŸ©å½¢ã€‚\n"
-"[b]注æ„:[/b] [code]width[/code]åªæœ‰åœ¨[code]filled[/code]为[code]false[/code]"
-"æ—¶æ‰æœ‰æ•ˆã€‚"
+"绘制一个矩形。如果[code]filled[/code]是[code]true[/code],矩形将被填充为指定"
+"的[code]color[/code]。如果[code]filled[/code]是[code]false[/code],矩形将以"
+"[code]color[/code]å’Œ[code]width[/code]指定的笔画形å¼ç»˜åˆ¶ã€‚如果"
+"[code]antialiased[/code]是[code]true[/code],线æ¡æŠ—锯齿。\n"
+"[b]注æ„:[/b][code]width[/code]å’Œ[code]antialiased[/code]åªæœ‰åœ¨[code]filled[/"
+"code]是[code]false[/code]æ—¶æ‰æœ‰æ•ˆã€‚"
#: doc/classes/CanvasItem.xml:187
msgid ""
@@ -14671,7 +14865,6 @@ msgid ""
msgstr "设置通过矩阵绘制时的自定义å˜æ¢ã€‚之åŽç»˜åˆ¶çš„任何东西都将被转æ¢ã€‚"
#: doc/classes/CanvasItem.xml:205
-#, fuzzy
msgid ""
"Draws [code]text[/code] using the specified [code]font[/code] at the "
"[code]position[/code] (bottom-left corner using the baseline of the font). "
@@ -14688,14 +14881,14 @@ msgid ""
"[/codeblock]\n"
"See also [method Font.draw]."
msgstr ""
-"在[code]position[/code](左上角)使用指定的[code]font[/code]绘制[code]text[/"
-"code]。文本的颜色将乘以 [code]modulate[/code]。如果 [code]clip_w[/code] 大于"
-"或等于0,如果文本超过指定的宽度,则会被剪切。\n"
-"[b]使用默认项目字体的示例:[/b]。\n"
+"使用指定的[code]font[/code]在[code]position[/code]绘制[code]text[/code](左下"
+"角作为字体的基线)。该文本的颜色将乘以[code]modulate[/code]。如果"
+"[code]clip_w[/code]大于或等于0,文本超过了指定的宽度,将被è£å‰ªã€‚\n"
+"[b]使用项目默认字体的例å­ï¼š[/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"
+"# 如果在ä¸æ–­é‡ç»˜çš„脚本中使用此方法,\n"
+"# 则将`default_font`声明移动到在`_ready()`中赋值的æˆå‘˜å˜é‡ä¸­\n"
+"# 这样Controlåªåˆ›å»ºä¸€æ¬¡ã€‚\n"
"var default_font = Control.new().get_font(\"font\")\n"
"draw_string(default_font, Vector2(64, 64), \"Hello world\")\n"
"[/codeblock]\n"
@@ -14741,9 +14934,8 @@ msgid "Returns the [RID] of the [World2D] canvas where this item is in."
msgstr "返回此项目所在的[World2D]画布的[RID]。"
#: doc/classes/CanvasItem.xml:275
-#, fuzzy
msgid "Returns the canvas item RID used by [VisualServer] for this item."
-msgstr "返回[RenderingServer]为该项目使用的canvas项目RID。"
+msgstr "返回此[VisualServer]项使用的画布项RID。"
#: doc/classes/CanvasItem.xml:281
msgid "Returns the transform matrix of this item's canvas."
@@ -14772,7 +14964,7 @@ msgstr "返回此项目的å˜æ¢çŸ©é˜µã€‚"
#: doc/classes/CanvasItem.xml:317
msgid "Returns the viewport's boundaries as a [Rect2]."
-msgstr "以[Rect2]å½¢å¼è¿”回视å£çš„边界。"
+msgstr "以[Rect2]å½¢å¼è¿”回视窗的边界。"
#: doc/classes/CanvasItem.xml:323
msgid "Returns this item's transform in relation to the viewport."
@@ -14933,6 +15125,8 @@ msgid ""
"or when an action is taking place that may have impacted these boundaries (e."
"g. changing [member Sprite.texture])."
msgstr ""
+"在物体[Rect2]边缘(ä½ç½®æˆ–大å°ï¼‰æ”¹å˜ï¼Œæˆ–有影å“到边缘的æ“作(比如修改[member "
+"Sprite.texture])时触å‘。"
#: doc/classes/CanvasItem.xml:455
msgid "Emitted when the visibility (hidden/visible) changes."
@@ -14968,6 +15162,8 @@ msgid ""
"applicable for render targets with a transparent background. No lighting "
"will be applied."
msgstr ""
+"关闭混åˆæ¨¡å¼ã€‚颜色(包括 alpha)将会å˜åŽŸæ¥çš„æ ·å­ã€‚仅能在渲染é€æ˜ŽèƒŒæ™¯çš„目标使"
+"用。ä¸ä¼šåº”用任何光照。"
#: doc/classes/CanvasItem.xml:479
msgid ""
@@ -15019,16 +15215,15 @@ msgid "The manner in which material reacts to lighting."
msgstr "æ质对照明的å应方å¼ã€‚"
#: doc/classes/CanvasItemMaterial.xml:21
-#, fuzzy
msgid ""
"The number of columns in the spritesheet assigned as [Texture] for a "
"[Particles2D] 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 ""
-"Spritesheet中为[GPUParticles2D]或[CPUParticles2D]分é…为[Texture2D]的列数。\n"
-"[b]注æ„:[/b]仅当[memberparticles_animation]为[code] true [/code]时,此属性æ‰"
-"在编辑器中使用和å¯è§ã€‚"
+"为 [Particles2D] 或 [CPUParticles2D] 分é…为 [Texture] ç²¾çµè¡¨ä¸­çš„列数。\n"
+"[b]注æ„:[/b]这个属性åªæœ‰åœ¨ [member particles_animation] 为 [code]true[/code]"
+"æ—¶æ‰ä¼šè¢«ä½¿ç”¨ï¼Œå¹¶åœ¨ç¼–辑器中å¯è§ã€‚"
#: doc/classes/CanvasItemMaterial.xml:25
msgid ""
@@ -15041,19 +15236,17 @@ msgstr ""
"会在编辑器中使用并å¯è§ã€‚"
#: doc/classes/CanvasItemMaterial.xml:29
-#, fuzzy
msgid ""
"The number of rows in the spritesheet assigned as [Texture] for a "
"[Particles2D] 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 ""
-"Spritesheet中为[GPUParticles2D]或[CPUParticles2D]分é…为[Texture2D]的行数。\n"
+"spritesheet中为[GPUParticles2D]或[CPUParticles2D]分é…为[Texture2D]的行数。\n"
"[b]注æ„:[/b]仅当[member particle_animation]为[code] true [/code]时,此属性æ‰"
"在编辑器中使用和å¯è§ã€‚"
#: doc/classes/CanvasItemMaterial.xml:33
-#, fuzzy
msgid ""
"If [code]true[/code], enable spritesheet-based animation features when "
"assigned to [Particles2D] and [CPUParticles2D] nodes. The [member "
@@ -15062,8 +15255,8 @@ msgid ""
"This property (and other [code]particles_anim_*[/code] properties that "
"depend on it) has no effect on other types of nodes."
msgstr ""
-"如果[code]true[/code],当分é…ç»™[GPUParticles2D]å’Œ[CPUParticles2D]节点时,å¯ç”¨"
-"基于spritesheet的动画功能。[member ParticlesMaterial.anim_speed]或[member "
+"如果为[code]true[/code],当分é…ç»™[GPUParticles2D]å’Œ[CPUParticles2D]节点时,å¯"
+"用基于spritesheet的动画功能。[member ParticlesMaterial.anim_speed]或[member "
"CPUParticles2D.anim_speed]也应设置为正值,æ‰èƒ½æ’­æ”¾åŠ¨ç”»ã€‚\n"
"这个属性(以åŠå…¶ä»–ä¾èµ–于它的[code]particles_anim_*[/code]属性)对其他类型的节"
"点没有影å“。"
@@ -15114,13 +15307,13 @@ msgid ""
"code], uses the default viewport instead."
msgstr ""
"分é…ç»™[CanvasLayer]的自定义[Viewport]节点。如果[code]null[/code],则使用默认"
-"的视å£ã€‚"
+"的视窗。"
#: doc/classes/CanvasLayer.xml:27
msgid ""
"Sets the layer to follow the viewport in order to simulate a pseudo 3D "
"effect."
-msgstr "将图层设置为跟éšè§†å£ï¼Œä»¥æ¨¡æ‹Ÿä¼ª3D效果。"
+msgstr "将图层设置为跟éšè§†çª—,以模拟伪3D效果。"
#: doc/classes/CanvasLayer.xml:30
msgid ""
@@ -15179,6 +15372,8 @@ msgid ""
"[b]Note:[/b] The capsule's total height is equal to [member mid_height] + 2 "
"* [member radius]."
msgstr ""
+"胶囊体中间圆柱体(除了两个åŠçƒä½“的部分)的高度。\n"
+"[b]注æ„:[/b]圆柱体的总高度等于[member mid_height] + 2 * [member radius]。"
#: doc/classes/CapsuleMesh.xml:19
msgid "Number of radial segments on the capsule mesh."
@@ -15281,17 +15476,16 @@ msgid "The color the character will be drawn with."
msgstr "绘制角色所用的颜色。"
#: doc/classes/CharFXTransform.xml:31
-#, fuzzy
msgid ""
"The time elapsed since the [RichTextLabel] was added to the scene tree (in "
"seconds). Time stops when the [RichTextLabel] is paused (see [member Node."
"pause_mode]). Resets when the text in the [RichTextLabel] is changed.\n"
"[b]Note:[/b] Time still passes while the [RichTextLabel] is hidden."
msgstr ""
-"自从[RichTextLabel]添加到场景树以æ¥ç»è¿‡çš„时间(以秒为å•ä½ï¼‰ã€‚除éžé¡¹ç›®"
-"[RichTextLabel]的[member Node.pause_mode]设置为[constant Node."
-"PAUSE_MODE_PROCESS],å¦åˆ™æš‚åœé¡¹ç›®æ—¶ï¼Œæ—¶é—´å°†åœæ­¢ã€‚\n"
-"[b]注æ„:[/b]当[RichTextLabel]被éšè—,时间ä»ç„¶æµé€ã€‚"
+"自[RichTextLabel]被添加到场景树åŽæ‰€ç»è¿‡çš„时间,å•ä½ç§’。时间在[RichTextLabel]"
+"æš‚åœæ—¶åœæ­¢ï¼Œå‚阅[member Node.pause_mode]。当[RichTextLabel]中的文本改å˜æ—¶ï¼Œä¼š"
+"é‡æ–°è®¾ç½®ã€‚\n"
+"[b]注æ„:[/b] 当[RichTextLabel]被éšè—时,时间ä»ä¼šå¢žåŠ ã€‚"
#: doc/classes/CharFXTransform.xml:35
msgid ""
@@ -15339,7 +15533,6 @@ msgid "Binary choice user interface widget. See also [CheckButton]."
msgstr "二元选择(有或无)用户界é¢å°éƒ¨ä»¶ã€‚å¦è¯·å‚阅[CheckButton]。"
#: doc/classes/CheckBox.xml:7
-#, fuzzy
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 "
@@ -15350,10 +15543,11 @@ msgid ""
"See also [BaseButton] which contains common properties and methods "
"associated with this node."
msgstr ""
-"å¤é€‰æ¡†å…许用户进行二元选择(在两个å¯èƒ½çš„选项中åªé€‰æ‹©ä¸€ä¸ªï¼‰ã€‚它的功能与"
-"[CheckButton]类似,但它的外观ä¸åŒã€‚为了éµå¾ªæ—¢å®šçš„UX模å¼ï¼Œå»ºè®®åœ¨åˆ‡æ¢CheckBox对"
-"æŸä»¶äº‹æƒ…有[b]no[/b]ç«‹ç«¿è§å½±çš„效果时使用它。例如,当切æ¢å®ƒåªæœ‰åœ¨æŒ‰ä¸‹ç¡®è®¤æŒ‰é’®åŽ"
-"æ‰ä¼šåšæŸäº‹æ—¶ï¼Œå°±åº”该使用它。"
+"å¤é€‰æ¡†è®©ç”¨æˆ·åšå‡ºäºŒå…ƒé€‰æ‹©ï¼Œå³åœ¨ä¸¤ä¸ªå¯èƒ½çš„选项中åªé€‰æ‹©ä¸€ä¸ªã€‚它在功能上类似于"
+"[CheckButton],但外观ä¸åŒã€‚为了éµå¾ªç”¨æˆ·ä½“验,建议在切æ¢å®ƒå¯¹æŸäº›ä¸œè¥¿[b]没有[/"
+"b]直接影å“时使用CheckBox。例如,当切æ¢å®ƒåªä¼šåœ¨ç¡®è®¤æŒ‰é’®è¢«æŒ‰ä¸‹æ—¶åšä¸€äº›äº‹æƒ…时,"
+"使用它。\n"
+"å‚阅[BaseButton],它包å«äº†ä¸Žè¯¥èŠ‚点相关的常规属性和方法。"
#: doc/classes/CheckBox.xml:22
msgid "The vertical offset used when rendering the check icons (in pixels)."
@@ -15363,86 +15557,103 @@ msgstr "呈现å¤é€‰å›¾æ ‡æ—¶ä½¿ç”¨çš„åž‚ç›´å移é‡ï¼ˆä»¥åƒç´ ä¸ºå•ä½ï¼‰ã€‚
msgid "The check icon to display when the [CheckBox] is checked."
msgstr "选中[CheckBox]时显示的å¤é€‰å›¾æ ‡ã€‚"
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+#, fuzzy
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr "选中并ç¦ç”¨[CheckButton]时显示的图标。"
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr "当[CheckBox]被ç¦ç”¨æ—¶ï¼Œä½œä¸ºèƒŒæ™¯æ˜¾ç¤ºçš„[StyleBox]。"
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr "当[CheckBox]被èšç„¦æ—¶ï¼Œä½œä¸ºèƒŒæ™¯æ˜¾ç¤ºçš„[StyleBox]。"
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr "用于[CheckBox]文本的[Font]。"
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr "[CheckBox]文本的字体颜色。"
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr "[CheckBox]文本被ç¦ç”¨æ—¶çš„字体颜色。"
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr "[CheckBox]文本在悬åœæ—¶çš„字体颜色。"
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr "当[CheckBox]文本被悬åœå’ŒæŒ‰ä¸‹æ—¶çš„字体颜色。"
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr "文本被按下时的字体颜色。"
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr "当[CheckBox]被悬åœæ—¶ä½œä¸ºèƒŒæ™¯æ˜¾ç¤ºçš„[StyleBox]。"
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr "当[CheckBox]被悬åœå’ŒæŒ‰ä¸‹æ—¶ï¼Œä½œä¸ºèƒŒæ™¯æ˜¾ç¤ºçš„[StyleBox]。"
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr "å¤é€‰å›¾æ ‡å’Œæ–‡æœ¬ä¹‹é—´çš„分隔(以åƒç´ ä¸ºå•ä½ï¼‰ã€‚"
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr "[StyleBox]显示为背景。"
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr "按下[CheckBox]时,[StyleBox]显示为背景。"
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr "如果将[CheckBox]é…置为å•é€‰æŒ‰é’®ï¼Œåˆ™é€‰ä¸­[CheckBox]时显示的图标。"
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr "如果将[CheckBox]é…置为å•é€‰æŒ‰é’®ï¼Œåˆ™å–消选中[CheckBox]时显示的图标。"
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr "未选中[CheckBox]时显示的å¤é€‰å›¾æ ‡ã€‚"
+#: doc/classes/CheckBox.xml:86
+#, fuzzy
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr "未选中和ç¦ç”¨[CheckButton]时显示的图标。"
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr "å¯æ£€æŸ¥çš„按钮。å¦è¯·å‚阅[CheckBox]。"
#: doc/classes/CheckButton.xml:7
-#, fuzzy
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 "
@@ -15453,10 +15664,11 @@ msgid ""
"See also [BaseButton] which contains common properties and methods "
"associated with this node."
msgstr ""
-"CheckButton是显示为检查字段的切æ¢æŒ‰é’®ã€‚它在功能上类似于[CheckBox],但是外观ä¸"
-"åŒã€‚è¦éµå¾ªå·²å»ºç«‹çš„UX模å¼ï¼Œå»ºè®®åœ¨åˆ‡æ¢æ—¶å¯¹æŒ‰é’®ä½¿ç”¨[b]immediate[/b]效果时使用"
-"CheckButton。例如,如果切æ¢å®ƒå¯ç”¨/ç¦ç”¨è®¾ç½®è€Œæ— éœ€ç”¨æˆ·æŒ‰ä¸‹ç¡®è®¤æŒ‰é’®ï¼Œåˆ™åº”使用"
-"它。"
+"CheckButton是一个切æ¢æŒ‰é’®ï¼Œæ˜¾ç¤ºä¸ºä¸€ä¸ªå¯é€‰å­—段。它在功能上类似于[CheckBox],但"
+"外观ä¸åŒã€‚为了éµå¾ªç”¨æˆ·ä½“验,建议在切æ¢å®ƒå¯¹æŸäº›ä¸œè¥¿æœ‰[b]直接[/b]å½±å“时使用"
+"CheckButton。例如,如果切æ¢å®ƒå¯ä»¥å¯ç”¨æˆ–ç¦ç”¨è®¾ç½®è€Œä¸éœ€è¦ç”¨æˆ·æŒ‰ä¸‹ç¡®è®¤æŒ‰é’®æ—¶ï¼Œä½¿"
+"用它。\n"
+"å‚阅[BaseButton],它包å«äº†ä¸Žè¯¥èŠ‚点相关的常规属性和方法。"
#: doc/classes/CheckButton.xml:22
msgid "The vertical offset used when rendering the toggle icons (in pixels)."
@@ -15485,49 +15697,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr "[CheckButton]文本在ç¦ç”¨æ—¶çš„字体颜色。"
#: doc/classes/CheckButton.xml:40
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:43
msgid "The [CheckButton] text's font color when it's hovered."
msgstr "悬åœæ—¶[CheckButton]文本的字体颜色。"
-#: doc/classes/CheckButton.xml:43
+#: doc/classes/CheckButton.xml:46
msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr "当[CheckButton]被悬åœå’ŒæŒ‰ä¸‹æ—¶ï¼Œå…¶æ–‡æœ¬çš„字体颜色。"
-#: doc/classes/CheckButton.xml:46
+#: doc/classes/CheckButton.xml:49
msgid "The [CheckButton] text's font color when it's pressed."
msgstr "按下[CheckButton]时文本的字体颜色。"
-#: doc/classes/CheckButton.xml:49
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr "当[CheckButton]被悬åœæ—¶ä½œä¸ºèƒŒæ™¯æ˜¾ç¤ºçš„[StyleBox]。"
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr "当[CheckButton]被悬åœå’ŒæŒ‰ä¸‹æ—¶ä½œä¸ºèƒŒæ™¯æ˜¾ç¤ºçš„[StyleBox]。"
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr "切æ¢å›¾æ ‡å’Œæ–‡æœ¬ä¹‹é—´çš„分隔(以åƒç´ ä¸ºå•ä½ï¼‰ã€‚"
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr "未选中[CheckButton]时显示的图标。"
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr "未选中和ç¦ç”¨[CheckButton]时显示的图标。"
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr "选中[CheckButton]时显示的图标。"
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr "选中并ç¦ç”¨[CheckButton]时显示的图标。"
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr "当[CheckButton]被按下时作为背景显示的[StyleBox]。"
@@ -15576,19 +15795,17 @@ msgid ""
msgstr "返回与该类关è”的类别,以用于文档和资产库。需è¦è°ƒè¯•æ¨¡å¼ã€‚"
#: doc/classes/ClassDB.xml:39
-#, fuzzy
msgid ""
"Returns an array with all the keys in [code]enum[/code] of [code]class[/"
"code] or its ancestry."
msgstr ""
-"返回一个数组,其中带有 [code] class [/code] 的所有整数常é‡æˆ–其祖先的å称。"
+"è¿”å›žä¸€ä¸ªæ•°ç»„ï¼Œå…¶ä¸­åŒ…å« [code]class[/code] 或其父级的 [code]enum[/code] 中的所"
+"有键。"
#: doc/classes/ClassDB.xml:47
-#, fuzzy
msgid ""
"Returns an array with all the enums of [code]class[/code] or its ancestry."
-msgstr ""
-"返回一个数组,其中带有 [code] class [/code] 的所有整数常é‡æˆ–其祖先的å称。"
+msgstr "è¿”å›žä¸€ä¸ªæ•°ç»„ï¼Œå…¶ä¸­åŒ…å« [code]class[/code] 或其父级的所有枚举。"
#: doc/classes/ClassDB.xml:55
msgid ""
@@ -15599,13 +15816,10 @@ msgstr ""
"时,始终返回0。"
#: doc/classes/ClassDB.xml:64
-#, fuzzy
msgid ""
"Returns which enum the integer constant [code]name[/code] of [code]class[/"
"code] or its ancestry belongs to."
-msgstr ""
-"返回[code] class [/code]的整数常é‡[code] name [/code]或其父级的值。找ä¸åˆ°å¸¸é‡"
-"时,始终返回0。"
+msgstr "返回 [code]class[/code] æˆ–å…¶çˆ¶çº§æ‰€å±žçš„æžšä¸¾æ•´æ•°å¸¸é‡ [code]name[/code]。"
#: doc/classes/ClassDB.xml:72
msgid ""
@@ -15615,7 +15829,6 @@ msgstr ""
"返回一个数组,其中带有 [code] class [/code] 的所有整数常é‡æˆ–其祖先的å称。"
#: doc/classes/ClassDB.xml:80
-#, fuzzy
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 "
@@ -15626,11 +15839,13 @@ msgid ""
"[b]Note:[/b] In exported release builds the debug info is not available, so "
"the returned dictionaries will contain only method names."
msgstr ""
-"如果[code] no_inheritance [/code]为[code] false [/code],则返回具有[code] "
-"class [/code]或其父级的所有方法的数组。数组的æ¯ä¸ªå…ƒç´ éƒ½æ˜¯å¸¦æœ‰ä»¥ä¸‹é”®çš„"
-"[Dictionary]:[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]。"
+"如果[code]no_inheritance[/code]是[code]false[/code],返回一个包å«"
+"[code]class[/code]或其父级所有方法的数组。数组的æ¯ä¸ªå…ƒç´ éƒ½æ˜¯ä¸€ä¸ª"
+"[Dictionary],其键值如:[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]。\n"
+"[b]注æ„:[/b]在导出的å‘布版本中,调试信æ¯ä¸å¯ç”¨ï¼Œæ‰€ä»¥è¿”回的字典将åªåŒ…å«æ–¹æ³•å"
+"称。"
#: doc/classes/ClassDB.xml:89
msgid ""
@@ -15670,12 +15885,10 @@ msgstr ""
"[[method class_get_signal]中所述。"
#: doc/classes/ClassDB.xml:122
-#, fuzzy
msgid ""
"Returns whether [code]class[/code] or its ancestry has an enum called "
"[code]name[/code] or not."
-msgstr ""
-"返回[code] class [/code]或其父级是å¦æœ‰ä¸€ä¸ªç§°ä¸º[code] signal [/code]çš„ä¿¡å·ã€‚"
+msgstr "返回[code]class[/code]或其父级是å¦æœ‰ä¸€ä¸ªç§°ä¸º[code]name[/code]çš„ä¿¡å·ã€‚"
#: doc/classes/ClassDB.xml:130
msgid ""
@@ -15734,18 +15947,16 @@ msgid ""
msgstr "返回[code]inherits[/code]是å¦æ˜¯[code] class [/code]的祖先。"
#: doc/classes/ClippedCamera.xml:4
-#, fuzzy
msgid "A [Camera] that includes collision."
-msgstr "包å«ç¢°æ’žçš„[Camera3D]。"
+msgstr "包å«ç¢°æ’žçš„相机 [Camera]。"
#: doc/classes/ClippedCamera.xml:7
-#, fuzzy
msgid ""
"This node extends [Camera] to add collisions with [Area] and/or "
"[PhysicsBody] nodes. The camera cannot move through colliding objects."
msgstr ""
-"该节点扩展了[Camera3D]以添加与[Area3D]和/或[PhysicsBody3D]节点的碰撞。相机无"
-"法在碰撞的物体之间移动。"
+"此节点扩展 [Camera] 以添加与 [Area] å’Œ/或 [PhysicsBody] 节点的碰撞。摄åƒæœºæ— "
+"法穿过碰撞物体。"
#: doc/classes/ClippedCamera.xml:16
msgid ""
@@ -15781,7 +15992,7 @@ msgstr "删除与指定节点的冲çªå¼‚常。"
#: doc/classes/ClippedCamera.xml:57
msgid "Removes a collision exception with the specified [RID]."
-msgstr "删除具有指定[RID]的碰撞异常。"
+msgstr "删除指定[RID]的碰撞异常。"
#: doc/classes/ClippedCamera.xml:65
msgid ""
@@ -15792,14 +16003,12 @@ msgstr ""
"[b]注æ„:[/b]ä½ç´¢å¼•çš„范围是0-19。"
#: doc/classes/ClippedCamera.xml:72
-#, fuzzy
msgid "If [code]true[/code], the camera stops on contact with [Area]s."
-msgstr "如果[code]true[/code],相机与[Area3D]s接触时åœæ­¢ã€‚"
+msgstr "如果[code]true[/code],相机与[Area]s接触时åœæ­¢ã€‚"
#: doc/classes/ClippedCamera.xml:75
-#, fuzzy
msgid "If [code]true[/code], the camera stops on contact with [PhysicsBody]s."
-msgstr "如果[code]true[/code],相机在接触[PhysicsBody3D]æ—¶åœæ­¢ã€‚"
+msgstr "如果[code]true[/code],相机在接触[PhysicsBody]æ—¶åœæ­¢ã€‚"
#: doc/classes/ClippedCamera.xml:78
msgid ""
@@ -15809,6 +16018,10 @@ msgid ""
"masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
+"相机的碰撞é®ç½©ã€‚åªæœ‰åœ¨å¯¹è±¡æœ‰è‡³å°‘一个碰撞层和碰撞这招匹对时æ‰èƒ½è¢«æ£€æµ‹åˆ°ã€‚详细"
+"ä¿¡æ¯è¯·å‚阅文档[url=https://docs.godotengine.org/en/3.4/tutorials/physics/"
+"physics_introduction.html#collision-layers-and-masks]Collision layers and "
+"masks[/url]。"
#: doc/classes/ClippedCamera.xml:81
msgid ""
@@ -15825,7 +16038,6 @@ msgid "Base node for collision objects."
msgstr "碰撞对象的基础节点。"
#: doc/classes/CollisionObject.xml:7
-#, fuzzy
msgid ""
"CollisionObject is the base class for physics objects. It can hold any "
"number of collision [Shape]s. Each shape must be assigned to a [i]shape "
@@ -15833,13 +16045,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是物ç†å¯¹è±¡çš„基类。它å¯ä»¥å®¹çº³ä»»æ„æ•°é‡çš„碰撞[Shape3D]。æ¯ä¸ªå½¢"
-"状必须分é…ç»™[i]shape owner[/i]。 CollisionObject3Då¯ä»¥å…·æœ‰ä»»æ„æ•°é‡çš„形状所有"
-"者。形状所有者ä¸æ˜¯èŠ‚点,也ä¸æ˜¾ç¤ºåœ¨ç¼–辑器中,但是å¯ä»¥ä½¿ç”¨[code] shape_owner _ "
-"* [/code]方法通过代ç è¿›è¡Œè®¿é—®ã€‚"
+"CollisionObject是物ç†å­¦å¯¹è±¡çš„基类。它å¯ä»¥å®¹çº³ä»»ä½•æ•°é‡çš„碰撞形状 [Shape]s。æ¯"
+"个形状必须分é…给一个形状所有者 [i]shape owner[/i]。CollisionObjectå¯ä»¥æœ‰ä»»æ„"
+"æ•°é‡çš„形状所有者。形状所有者ä¸æ˜¯èŠ‚点,也ä¸ä¼šå‡ºçŽ°åœ¨ç¼–辑器中,但是å¯ä»¥é€šè¿‡ä»£ç "
+"使用[code] shape_owner_* [/code]方法进行访问。"
#: doc/classes/CollisionObject.xml:20
-#, fuzzy
msgid ""
"Receives unhandled [InputEvent]s. [code]position[/code] is the location in "
"world space of the mouse pointer on the surface of the shape with index "
@@ -15847,10 +16058,9 @@ msgid ""
"surface at that point. Connect to the [signal input_event] signal to easily "
"pick up these events."
msgstr ""
-"接å—未处ç†çš„[InputEvent]。 [code] click_position [/code]是世界空间中的被å•å‡»"
-"ä½ç½®ï¼Œ[code] click_normal [/code]是从[Shape3D]的被å•å‡»è¡¨é¢å¼€å§‹çš„法线å‘é‡ï¼Œä½"
-"于[code] shape_idx [/code]。连接到[code] input_event [/code]ä¿¡å·å³å¯è½»æ¾æŽ¥æ”¶"
-"这些事件。"
+"接收未处ç†çš„事件 [InputEvent]。 [code]position[/code] 是鼠标指针在具有索引 "
+"[code]shape_idx[/code] 的形状表é¢åœ¨ä¸–界空间中的ä½ç½®ï¼Œ[code]normal[/code] 是该"
+"点表é¢çš„法å‘é‡ã€‚连接到 [signal input_event] ä¿¡å·ä»¥è½»æ¾èŽ·å–这些事件。"
#: doc/classes/CollisionObject.xml:27 doc/classes/CollisionObject2D.xml:25
msgid ""
@@ -15861,18 +16071,18 @@ msgstr ""
"引用。"
#: doc/classes/CollisionObject.xml:34 doc/classes/CollisionObject2D.xml:32
-#, fuzzy
msgid ""
"Returns whether or not the specified [code]bit[/code] of the [member "
"collision_layer] is set."
-msgstr "返回指定的[code] class [/code]是å¦å¯ç”¨ã€‚"
+msgstr ""
+"返回是å¦è®¾ç½®äº†ç¢°æ’žå±‚ [member collision_layer] 的指定ä½[code] bit[/code]。"
#: doc/classes/CollisionObject.xml:41 doc/classes/CollisionObject2D.xml:39
-#, fuzzy
msgid ""
"Returns whether or not the specified [code]bit[/code] of the [member "
"collision_mask] is set."
-msgstr "如果指定碰撞é®ç½©bitä½è¢«è®¾ç½®ï¼Œè¿”回[code]true[/code]。"
+msgstr ""
+"返回是å¦è®¾ç½®äº†ç¢°æ’žæŽ©ç  [member collision_mask] 的指定ä½[code] bit[/code]。"
#: doc/classes/CollisionObject.xml:47 doc/classes/CollisionObject2D.xml:45
msgid "Returns the object's [RID]."
@@ -15901,6 +16111,10 @@ msgid ""
"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
"code] in the the [member collision_layer]."
msgstr ""
+"如果[code]value[/code]为[code]true[/code],则设置[member collision_layer]中指"
+"定的[code]bit[/code]ä½ã€‚\n"
+"如果[code]value[/code]为[code]false[/code],清除[member collision_layer]中指"
+"定的 [code]bit[/code]ä½ã€‚"
#: doc/classes/CollisionObject.xml:84 doc/classes/CollisionObject2D.xml:96
msgid ""
@@ -15909,15 +16123,18 @@ msgid ""
"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
"code] in the the [member collision_mask]."
msgstr ""
+"如果[code]value[/code]为[code]true[/code],则设置[member collision_mask]中指"
+"定的[code]bit[/code]ä½ã€‚\n"
+"如果[code]value[/code]为[code]false[/code],清除[member collision_mask]中指定"
+"çš„ [code]bit[/code]ä½ã€‚"
#: doc/classes/CollisionObject.xml:92 doc/classes/CollisionObject2D.xml:104
msgid "Returns the [code]owner_id[/code] of the given shape."
msgstr "返回指定形状的[code]owner_id[/code]。"
#: doc/classes/CollisionObject.xml:100
-#, fuzzy
msgid "Adds a [Shape] to the shape owner."
-msgstr "给形状所有者添加一个[Shape2D]。"
+msgstr "å‘形状所有者添加形状 [Shape]。"
#: doc/classes/CollisionObject.xml:107 doc/classes/CollisionObject2D.xml:119
msgid "Removes all shapes from the shape owner."
@@ -15928,20 +16145,18 @@ msgid "Returns the parent object of the given shape owner."
msgstr "返回给定形状所有者的父对象。"
#: doc/classes/CollisionObject.xml:122
-#, fuzzy
msgid "Returns the [Shape] with the given id from the given shape owner."
-msgstr "从给定的形状所有者那里返回给定id的[Shape2D]。"
+msgstr "从给定的形状所有者返回具有给定 id 的形状 [Shape]。"
#: doc/classes/CollisionObject.xml:129 doc/classes/CollisionObject2D.xml:141
msgid "Returns the number of shapes the given shape owner contains."
msgstr "返回给定形状所有者包å«çš„形状数é‡ã€‚"
#: doc/classes/CollisionObject.xml:137
-#, fuzzy
msgid ""
"Returns the child index of the [Shape] with the given id from the given "
"shape owner."
-msgstr "从给定的形状所有者那里返回给定idçš„[Shape2D]çš„å­ç´¢å¼•ã€‚"
+msgstr "返回具有给定形状所有者的给定 id 的形状 [Shape] çš„å­ç´¢å¼•ã€‚"
#: doc/classes/CollisionObject.xml:144
msgid "Returns the shape owner's [Transform]."
@@ -15960,7 +16175,6 @@ msgid "Sets the [Transform] of the given shape owner."
msgstr "设置给定形状所有者的[Transform]。"
#: doc/classes/CollisionObject.xml:174
-#, fuzzy
msgid ""
"The physics layers this CollisionObject3D is in. Collision objects can exist "
"in one or more of 32 different layers. See also [member collision_mask].\n"
@@ -15970,12 +16184,14 @@ msgid ""
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
-"区域的物ç†å±‚。å¯ç¢°æ’žçš„物体å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒå±‚中的任何一层。如果物体A在物体B"
-"扫æ的任何一层中,或者物体B在物体A扫æ的任何一层中,则检测到接触。也请å‚阅"
-"[member collision_mask]。"
+"CollisionObject3D 所在的物ç†å±‚。碰撞对象å¯ä»¥å­˜åœ¨äºŽ 32 个ä¸åŒå±‚中的一个或多"
+"个。å¦è§ [member collision_mask]。\n"
+"[b]注æ„:[/b]如果对象A在对象B扫æ的任何层中,或者对象B在对象A扫æ的任何层中,"
+"则检测到接触。有关更多信æ¯ï¼Œè¯·å‚阅文档中的 [url=https://docs.godotengine.org/"
+"en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks] 碰撞层和掩ç [/url]。"
#: doc/classes/CollisionObject.xml:178
-#, fuzzy
msgid ""
"The physics layers this CollisionObject3D scans. Collision objects can scan "
"one or more of 32 different layers. See also [member collision_layer].\n"
@@ -15985,38 +16201,38 @@ msgid ""
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
-"区域的物ç†å±‚。å¯ç¢°æ’žçš„物体å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒå±‚中的任何一层。如果物体A在物体B"
-"扫æ的任何一层中,或者物体B在物体A扫æ的任何一层中,则检测到接触。也请å‚阅"
-"[member collision_mask]。"
+"CollisionObject3D 扫æ的物ç†å±‚。碰撞对象å¯ä»¥æ‰«æ 32 个ä¸åŒå±‚中的一个或多个。"
+"å¦è§ [member collision_layer]]。\n"
+"[b]注æ„:[/b]如果对象A在对象B扫æ的任何层中,或者对象B在对象A扫æ的任何层中,"
+"则检测到接触。有关更多信æ¯ï¼Œè¯·å‚阅文档中的 [url=https://docs.godotengine.org/"
+"en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks] 碰撞层和掩ç [/url]。"
#: doc/classes/CollisionObject.xml:182
-#, fuzzy
msgid ""
"If [code]true[/code], the [CollisionObject] will continue to receive input "
"events as the mouse is dragged across its shapes."
msgstr ""
-"如果[code] true [/code],则当鼠标在其形状上拖动时,[CollisionObject3D]将继续"
-"接收输入事件。"
+"如果[code] true[/code],[CollisionObject] 将在鼠标拖过其形状时继续接收输入事"
+"件。"
#: doc/classes/CollisionObject.xml:185
-#, fuzzy
msgid ""
"If [code]true[/code], the [CollisionObject]'s shapes will respond to "
"[RayCast]s."
-msgstr "如果[code]true[/code],[CollisionObject3D]的形状将å“应于[RayCast3D]。"
+msgstr ""
+"如果[code] true[/code],[CollisionObject] 的形状将对 [RayCast] åšå‡ºå应。"
#: doc/classes/CollisionObject.xml:196
-#, fuzzy
msgid ""
"Emitted when the object receives an unhandled [InputEvent]. [code]position[/"
"code] is the location in world space of the mouse pointer on the surface of "
"the shape with index [code]shape_idx[/code] and [code]normal[/code] is the "
"normal vector of the surface at that point."
msgstr ""
-"接å—未处ç†çš„[InputEvent]。 [code] click_position [/code]是世界空间中的被å•å‡»"
-"ä½ç½®ï¼Œ[code] click_normal [/code]是从[Shape3D]的被å•å‡»è¡¨é¢å¼€å§‹çš„法线å‘é‡ï¼Œä½"
-"于[code] shape_idx [/code]。连接到[code] input_event [/code]ä¿¡å·å³å¯è½»æ¾æŽ¥æ”¶"
-"这些事件。"
+"当对象收到未处ç†çš„ [InputEvent] æ—¶å‘出。 [code]position[/code] 是鼠标指针在具"
+"有索引 [code]shape_idx[/code] 的形状表é¢åœ¨ä¸–界空间中的ä½ç½®ï¼Œ[code]normal[/"
+"code] 是该点表é¢çš„法å‘é‡."
#: doc/classes/CollisionObject.xml:201
msgid "Emitted when the mouse pointer enters any of this object's shapes."
@@ -16111,7 +16327,6 @@ msgid "Sets the [Transform2D] of the given shape owner."
msgstr "设置给定形状所有者的[Transform2D]。"
#: doc/classes/CollisionObject2D.xml:202
-#, fuzzy
msgid ""
"The physics layers this CollisionObject2D is in. Collision objects can exist "
"in one or more of 32 different layers. See also [member collision_mask].\n"
@@ -16121,12 +16336,14 @@ msgid ""
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
-"区域的物ç†å±‚。å¯ç¢°æ’žçš„物体å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒå±‚中的任何一层。如果物体A在物体B"
-"扫æ的任何一层中,或者物体B在物体A扫æ的任何一层中,则检测到接触。也请å‚阅"
-"[member collision_mask]。"
+"这个CollisionObject2D所在的物ç†å±‚。碰撞对象å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒå±‚中的一个或多"
+"个。也è§[member collision_mask]。\n"
+"[b]注æ„:[/b]如果对象A在对象B扫æ的任何层中,或者对象B在对象A扫æ的任何层中,"
+"则检测到接触。更多信æ¯è§æ–‡æ¡£[url=https://docs.godotengine.org/en/latest/"
+"tutorials/physics/physics_introduction.html#collision-layers-and-masks] 碰撞"
+"层和掩ç [/url]。"
#: doc/classes/CollisionObject2D.xml:206
-#, fuzzy
msgid ""
"The physics layers this CollisionObject2D scans. Collision objects can scan "
"one or more of 32 different layers. See also [member collision_layer].\n"
@@ -16136,9 +16353,12 @@ msgid ""
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
-"区域的物ç†å±‚。å¯ç¢°æ’žçš„物体å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒå±‚中的任何一层。如果物体A在物体B"
-"扫æ的任何一层中,或者物体B在物体A扫æ的任何一层中,则检测到接触。也请å‚阅"
-"[member collision_mask]。"
+"这个CollisionObject2D所扫æ的物ç†å±‚。碰撞对象å¯ä»¥æ‰«æ32个ä¸åŒå±‚中的一个或多"
+"个。也è§[member collision_layer]。\n"
+"[b]注æ„:[/b] 如果对象A在对象B扫æ的任何层中,或者对象B在对象A扫æ的任何层"
+"中,就会检测到接触。更多信æ¯è§æ–‡æ¡£[url=https://docs.godotengine.org/en/"
+"latest/tutorials/physics/physics_introduction.html#collision-layers-and-"
+"masks] 碰撞层和掩ç [/url]。"
#: doc/classes/CollisionObject2D.xml:210
msgid ""
@@ -16157,9 +16377,9 @@ msgid ""
"[code]true[/code] and at least one [code]collision_layer[/code] bit to be "
"set. See [method _input_event] for details."
msgstr ""
-"在å‘生输入事件时å‘出。è¦æ±‚[member input_pickable]为[code] true [/code],并且"
-"至少è¦è®¾ç½®ä¸€ä¸ª[code] collision_layer [/code]ä½ã€‚有关详细信æ¯ï¼Œè¯·å‚阅"
-"[method_input_event]。"
+"当输入事件å‘生时å‘出。è¦æ±‚ [member input_pickable]为[code] true[/code],并至"
+"å°‘è¦è®¾ç½®ä¸€ä¸ª[code] collision_layer [/code]ä½ã€‚有关详细信æ¯ï¼Œè¯·å‚阅[method "
+"_input_event]。"
#: doc/classes/CollisionObject2D.xml:224
msgid ""
@@ -16184,7 +16404,6 @@ msgid "Editor-only class for defining a collision polygon in 3D space."
msgstr "ä»…é™ç¼–辑器的类,用于在3D空间中定义碰撞多边形。"
#: doc/classes/CollisionPolygon.xml:7
-#, fuzzy
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 "
@@ -16192,8 +16411,8 @@ msgid ""
"for gameplay. Properties modified during gameplay will have no effect."
msgstr ""
"å…许在选定平é¢ä¸Šç¼–辑碰撞多边形的顶点。也å¯ä»¥è®¾ç½®åž‚直于该平é¢çš„深度。此类仅在"
-"编辑器中å¯ç”¨ã€‚è¿è¡Œæ—¶å®ƒä¸ä¼šå‡ºçŽ°åœ¨åœºæ™¯æ ‘中。为游æˆåˆ›å»ºä¸€ä¸ª[Shape3D]。在游æˆè¿‡ç¨‹"
-"中修改的属性将无效。"
+"编辑器中å¯ç”¨ã€‚它ä¸ä¼šåœ¨è¿è¡Œæ—¶å‡ºçŽ°åœ¨åœºæ™¯æ ‘中。为游æˆåˆ›å»ºä¸€ä¸ªå½¢çŠ¶ [Shape]。在游"
+"æˆè¿‡ç¨‹ä¸­ä¿®æ”¹çš„属性将ä¸èµ·ä½œç”¨ã€‚"
#: doc/classes/CollisionPolygon.xml:15
msgid ""
@@ -16209,7 +16428,7 @@ msgstr "如果[code]true[/code],将ä¸ä¼šäº§ç”Ÿç¢°æ’žã€‚"
msgid ""
"The collision margin for the generated [Shape]. See [member Shape.margin] "
"for more details."
-msgstr ""
+msgstr "生æˆçš„[Shape]的碰撞边。å‚阅[member Shape.margin]获å–更多细节。"
#: doc/classes/CollisionPolygon.xml:24
msgid ""
@@ -16263,14 +16482,13 @@ msgstr ""
"多边形的对撞机æ¥è¯´æ•ˆæžœæ›´å¥½ã€‚"
#: doc/classes/CollisionPolygon2D.xml:27
-#, fuzzy
msgid ""
"The polygon's list of vertices. The final point will be connected to the "
"first. The returned value is a clone of the [PoolVector2Array], not a "
"reference."
msgstr ""
-"多边形的顶点列表。最终点将连接到第一个点。返回的值是[PackedVector2Array]的克"
-"隆,而ä¸æ˜¯å¼•ç”¨ã€‚"
+"多边形的顶点列表。最åŽä¸€ä¸ªç‚¹å°†ä¸Žç¬¬ä¸€ä¸ªç‚¹ç›¸è¿žã€‚返回值是 [PoolVector2Array] çš„"
+"克隆,ä¸æ˜¯å¼•ç”¨ã€‚"
#: doc/classes/CollisionPolygon2D.xml:32
msgid "Collisions will include the polygon and its contained area."
@@ -16285,7 +16503,6 @@ msgid "Node that represents collision shape data in 3D space."
msgstr "表示3D空间中的碰撞形状数æ®çš„节点。"
#: doc/classes/CollisionShape.xml:7
-#, fuzzy
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, "
@@ -16294,10 +16511,10 @@ msgid ""
"only helper to create shapes, use [method CollisionObject."
"shape_owner_get_shape] to get the actual shape."
msgstr ""
-"编辑器功能,用于在3D空间中创建和编辑碰撞形状。您å¯ä»¥ä½¿ç”¨æ­¤èŠ‚点表示å„ç§ç¢°æ’žå½¢"
-"状,例如,将其添加到[Area3D]中以æ供检测形状,或将其添加到[PhysicsBody3D]中以"
-"创建实体。 [b]è¦ç‚¹[/b]:这是一个仅用于编辑器的创建形状的助手,请使用[method "
-"CollisionObject3D.shape_owner_get_shape]获å–实际形状。"
+"用于在 3D 空间中创建和编辑碰撞形状的编辑工具。您å¯ä»¥ä½¿ç”¨æ­¤èŠ‚点表示å„ç§ç¢°æ’žå½¢"
+"状,例如,将其添加到 [Area] 以使其具有检测形状,或将其添加到物ç†ä½“ "
+"[PhysicsBody] 以创建实体对象。[b]é‡è¦ [/b]:这是一个编辑器专用的创建形状的助"
+"手,使用 [method CollisionObject.shape_owner_get_shape] 获å–实际形状。"
#: doc/classes/CollisionShape.xml:10 doc/classes/CollisionShape2D.xml:10
#: doc/classes/Physics2DDirectBodyState.xml:10
@@ -16313,11 +16530,10 @@ msgstr ""
"html"
#: doc/classes/CollisionShape.xml:19
-#, fuzzy
msgid ""
"Sets the collision shape's shape to the addition of all its convexed "
"[MeshInstance] siblings geometry."
-msgstr "设置碰撞形状的形状为其所有凸出的[MeshInstance3D]兄弟å§å¦¹å‡ ä½•å½¢çŠ¶çš„和。"
+msgstr "将碰撞形状的形状设置为其所有凸出的 [MeshInstance] 兄弟几何体的相加。"
#: doc/classes/CollisionShape.xml:26
msgid ""
@@ -16358,11 +16574,12 @@ msgid "https://godotengine.org/asset-library/asset/113"
msgstr "https://godotengine.org/asset-library/asset/113"
#: doc/classes/CollisionShape2D.xml:19
-#, fuzzy
msgid ""
"A disabled collision shape has no effect in the world. This property should "
"be changed with [method Object.set_deferred]."
-msgstr "ç¦ç”¨çš„碰撞形状对世界没有任何影å“。"
+msgstr ""
+"ç¦ç”¨çš„碰撞形状在世界中没有影å“。这个属性应该用 [method Object.set_deferred] "
+"改å˜ã€‚"
#: doc/classes/CollisionShape2D.xml:22
msgid ""
@@ -16448,7 +16665,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/Color.xml:37
-#, fuzzy
msgid ""
"Constructs a color from a 32-bit integer in RGBA format (each byte "
"represents a color channel).\n"
@@ -16456,13 +16672,12 @@ msgid ""
"var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)\n"
"[/codeblock]"
msgstr ""
-"从一个32ä½æ•´æ•°ä¸­æž„造一个颜色(æ¯ä¸ªå­—节代表RGBAé…置文件的一个组æˆéƒ¨åˆ†ï¼‰ã€‚\n"
+"从 RGBA æ ¼å¼çš„ 32 ä½æ•´æ•°æž„造颜色,æ¯ä¸ªå­—节代表一个颜色通é“。\n"
"[codeblock]\n"
-"var c = Color(274) # Equivalent to RGBA(0, 0, 1, 18)\n"
+"var c = Color(274) # Similar to Color(0.0, 0.0, 0.004, 0.07)\n"
"[/codeblock]"
#: doc/classes/Color.xml:49
-#, fuzzy
msgid ""
"Constructs a color from RGB values, typically between 0 and 1. Alpha will be "
"1.\n"
@@ -16470,13 +16685,12 @@ msgid ""
"var color = Color(0.2, 1.0, 0.7) # Similar to Color8(51, 255, 178, 255)\n"
"[/codeblock]"
msgstr ""
-"使用0å’Œ1之间的值从RGBé…置文件中构建颜色。 阿尔法将始终为1。\n"
+"æ ¹æ® RGB 值构造颜色,通常介于 0 å’Œ 1 之间。Alpha 将为 1。\n"
"[codeblock]\n"
-"var c = Color(0.2, 1.0, 0.7) # Equivalent to RGBA(51, 255, 178, 255)\n"
+"var color = Color(0.2, 1.0, 0.7) # Similar to Color8(51, 255, 178, 255)\n"
"[/codeblock]"
#: doc/classes/Color.xml:62
-#, fuzzy
msgid ""
"Constructs a color from RGBA values, typically between 0 and 1.\n"
"[codeblock]\n"
@@ -16484,9 +16698,10 @@ msgid ""
"204)\n"
"[/codeblock]"
msgstr ""
-"使用0å’Œ1之间的值从RGBAé…置文件中构建颜色。\n"
+"æ ¹æ® RGBA 值构造颜色,通常介于 0 å’Œ 1 之间。\n"
"[codeblock]\n"
-"var c = Color(0.2, 1.0, 0.7, 0.8) # Equivalent to RGBA(51, 255, 178, 204)\n"
+"var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to Color8(51, 255, 178, "
+"204)\n"
"[/codeblock]"
#: doc/classes/Color.xml:72
@@ -16556,7 +16771,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/Color.xml:117
-#, fuzzy
msgid ""
"Returns the color's grayscale representation.\n"
"The gray value is calculated as [code](r + g + b) / 3[/code].\n"
@@ -16565,14 +16779,14 @@ msgid ""
"var gray = c.gray() # A value of 0.466667\n"
"[/codeblock]"
msgstr ""
-"返回å色[code](1-r,1-g,1-b,a)[/code]。\n"
+"返回颜色的ç°åº¦è¡¨ç¤ºã€‚\n"
+"ç°åº¦å€¼è®¡ç®—为 [code](r + g + b) / 3[/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"
+"var c = Color(0.2, 0.45, 0.82)\n"
+"var gray = c.gray() # A value of 0.466667\n"
"[/codeblock]"
#: doc/classes/Color.xml:128
-#, fuzzy
msgid ""
"Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code].\n"
"[codeblock]\n"
@@ -16582,8 +16796,8 @@ msgid ""
msgstr ""
"返回å色[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"
+"var color = Color(0.3, 0.4, 0.9)\n"
+"var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)\n"
"[/codeblock]"
#: doc/classes/Color.xml:139
@@ -16611,7 +16825,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/Color.xml:158
-#, fuzzy
msgid ""
"Returns the linear interpolation with another color. The interpolation "
"factor [code]weight[/code] is between 0 and 1.\n"
@@ -16622,15 +16835,15 @@ msgid ""
"0.0)\n"
"[/codeblock]"
msgstr ""
-"返回å¦ä¸€ç§é¢œè‰²çš„线性æ’值。æ’值因å­[code]t[/code]在0å’Œ1之间。\n"
+"返回å¦ä¸€ç§é¢œè‰²çš„线性æ’值。æ’值系数 [code]weight[/code] 介于 0 å’Œ 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"
+"var li_c = c1.linear_interpolate(c2, 0.5) # Equivalent to Color(0.5, 0.5, "
+"0.0)\n"
"[/codeblock]"
#: doc/classes/Color.xml:169
-#, fuzzy
msgid ""
"Returns the color converted to a 32-bit integer in ABGR format (each byte "
"represents a color channel). ABGR is the reversed version of the default "
@@ -16640,15 +16853,14 @@ msgid ""
"print(color.to_abgr32()) # Prints 4281565439\n"
"[/codeblock]"
msgstr ""
-"以 ABGR æ ¼å¼è¿”回颜色的 32 ä½æ•´æ•°ï¼ˆæ¯ä¸ªå­—节代表 ABGR é…置文件的一个组æˆéƒ¨"
-"分)。ABGR是默认格å¼çš„å转版本。\n"
+"返回转æ¢ä¸º ABGR æ ¼å¼çš„ 32 ä½æ•´æ•°çš„颜色,æ¯ä¸ªå­—节代表一个颜色通é“。 ABGR 是默"
+"认格å¼çš„转置版本。\n"
"[codeblock]\n"
-"var c = Color(1, 0.5, 0.2)\n"
-"print(c.to_abgr32()) # Prints 4281565439\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr32()) # Prints 4281565439\n"
"[/codeblock]"
#: doc/classes/Color.xml:179
-#, fuzzy
msgid ""
"Returns the color converted to a 64-bit integer in ABGR format (each word "
"represents a color channel). ABGR is the reversed version of the default "
@@ -16658,15 +16870,14 @@ msgid ""
"print(color.to_abgr64()) # Prints -225178692812801\n"
"[/codeblock]"
msgstr ""
-"以 ABGR æ ¼å¼è¿”回颜色的 64 ä½æ•´æ•°ï¼ˆæ¯ä¸ªå­—代表 ABGR é…置文件的一个组件)。ABGR"
-"是默认格å¼çš„å转版本。\n"
+"返回转æ¢ä¸º ABGR æ ¼å¼çš„ 64 ä½æ•´æ•°çš„颜色,æ¯ä¸ªå­—代表一个颜色通é“。 ABGR 是默认"
+"æ ¼å¼çš„转置版本。\n"
"[codeblock]\n"
-"var c = Color(1, 0.5, 0.2)\n"
-"print(c.to_abgr64()) # Prints -225178692812801\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_abgr64()) # Prints -225178692812801\n"
"[/codeblock]"
#: doc/classes/Color.xml:189
-#, fuzzy
msgid ""
"Returns the color converted to a 32-bit integer in ARGB format (each byte "
"represents a color channel). ARGB is more compatible with DirectX.\n"
@@ -16675,15 +16886,14 @@ msgid ""
"print(color.to_argb32()) # Prints 4294934323\n"
"[/codeblock]"
msgstr ""
-"以ARGBæ ¼å¼è¿”回颜色的32ä½æ•´æ•°ï¼ˆæ¯ä¸ªå­—节代表ARGBé…置文件的一个组æˆéƒ¨åˆ†ï¼‰ã€‚ARGB"
-"与DirectX更兼容。\n"
+"返回转æ¢ä¸º ARGB æ ¼å¼çš„ 32 ä½æ•´æ•°çš„颜色,æ¯ä¸ªå­—节代表一个颜色通é“。 ARGB 与 "
+"DirectX 更加兼容。\n"
"[codeblock]\n"
-"var c = Color(1, 0.5, 0.2)\n"
-"print(c.to_argb32()) # Prints 4294934323\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb32()) # Prints 4294934323\n"
"[/codeblock]"
#: doc/classes/Color.xml:199
-#, fuzzy
msgid ""
"Returns the color converted to a 64-bit integer in ARGB format (each word "
"represents a color channel). ARGB is more compatible with DirectX.\n"
@@ -16692,11 +16902,11 @@ msgid ""
"print(color.to_argb64()) # Prints -2147470541\n"
"[/codeblock]"
msgstr ""
-"以ARGBæ ¼å¼è¿”回颜色的64ä½æ•´æ•°ï¼ˆæ¯ä¸ªå­—代表ARGBé…置文件的一个组æˆéƒ¨åˆ†ï¼‰ã€‚ARGB与"
-"DirectX更兼容。\n"
+"返回转æ¢ä¸º ARGB æ ¼å¼çš„ 64 ä½æ•´æ•°çš„颜色,æ¯ä¸ªå­—代表一个颜色通é“。 ARGB 与 "
+"DirectX 更加兼容。\n"
"[codeblock]\n"
-"var c = Color(1, 0.5, 0.2)\n"
-"print(c.to_argb64()) # Prints -2147470541\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_argb64()) # Prints -2147470541\n"
"[/codeblock]"
#: doc/classes/Color.xml:210
@@ -16721,7 +16931,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/Color.xml:222
-#, fuzzy
msgid ""
"Returns the color converted to a 32-bit integer in RGBA format (each byte "
"represents a color channel). RGBA is Godot's default format.\n"
@@ -16730,15 +16939,14 @@ msgid ""
"print(color.to_rgba32()) # Prints 4286526463\n"
"[/codeblock]"
msgstr ""
-"以RGBAæ ¼å¼è¿”回颜色的32ä½æ•´æ•°ï¼ˆæ¯ä¸ªå­—节代表RGBAé…置文件的一个组æˆéƒ¨åˆ†ï¼‰ã€‚RGBA"
-"是Godot的默认格å¼ã€‚\n"
+"返回转æ¢ä¸º RGBA æ ¼å¼çš„ 32 ä½æ•´æ•°çš„颜色,æ¯ä¸ªå­—节代表一个颜色通é“。 RGBA 是 "
+"Godot 的默认格å¼ã€‚\n"
"[codeblock]\n"
-"var c = Color(1, 0.5, 0.2)\n"
-"print(c.to_rgba32()) # Prints 4286526463\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba32()) # Prints 4286526463\n"
"[/codeblock]"
#: doc/classes/Color.xml:232
-#, fuzzy
msgid ""
"Returns the color converted to a 64-bit integer in RGBA format (each word "
"represents a color channel). RGBA is Godot's default format.\n"
@@ -16747,11 +16955,11 @@ msgid ""
"print(color.to_rgba64()) # Prints -140736629309441\n"
"[/codeblock]"
msgstr ""
-"以RGBAæ ¼å¼è¿”回颜色的64ä½æ•´æ•°ï¼ˆæ¯ä¸ªå­—代表RGBAé…置文件的一个组æˆéƒ¨åˆ†ï¼‰ã€‚RGBA是"
-"Godot的默认格å¼ã€‚\n"
+"返回转æ¢ä¸º RGBA æ ¼å¼çš„ 64 ä½æ•´æ•°çš„颜色,æ¯ä¸ªå­—代表一个颜色通é“。 RGBA 是 "
+"Godot 的默认格å¼ã€‚\n"
"[codeblock]\n"
-"var c = Color(1, 0.5, 0.2)\n"
-"print(c.to_rgba64()) # Prints -140736629309441\n"
+"var color = Color(1, 0.5, 0.2)\n"
+"print(color.to_rgba64()) # Prints -140736629309441\n"
"[/codeblock]"
#: doc/classes/Color.xml:242
@@ -17395,17 +17603,18 @@ msgid ""
"[ColorPickerButton] instead if you need a button that brings up a "
"[ColorPicker] in a pop-up."
msgstr ""
+"显示一个å–色器部件。å¯ä»¥ä»ŽRGB/RGBA彩色空间内选å–一个颜色。\n"
+"[b]注æ„:[/b]这个控件就是å–色器本身。如果你需è¦ä¸€ä¸ªèƒ½å¤Ÿå¼¹å‡ºä¸€ä¸ª[ColorPicker]"
+"窗å£çš„按钮,你å¯ä»¥ä½¿ç”¨ä¸€ä¸ª[ColorPickerButton]æ¥ä»£æ›¿å®ƒã€‚"
#: doc/classes/ColorPicker.xml:18
-#, fuzzy
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 ""
-"将指定的颜色添加到颜色预设列表中。预设的颜色会显示在颜色选择器中,用户å¯ä»¥é€‰"
-"择它们。\n"
-"[b]注æ„:[/b]预设列表仅适用于[i]this[/i]颜色选择器。"
+"将给定的颜色添加到颜色预设列表中。用户将能够选择颜色选择器中颜色预设。\n"
+"[b]注æ„:[/b]预设列表仅适用于[i]这个[/i]颜色选择器。"
#: doc/classes/ColorPicker.xml:26
msgid ""
@@ -17521,6 +17730,11 @@ msgid ""
"preview swatch to be visible. Make sure to set [member Control."
"rect_min_size] to a big enough value to give the button enough space."
msgstr ""
+"å°†[ColorPicker]å°è£…æˆå¯ä»¥é€šè¿‡æŒ‰ä¸€ä¸ªæŒ‰é’®æ¥è¿›è¡Œä½¿ç”¨ã€‚点击按钮å¯ä»¥åˆ‡æ¢å‡ºå¯è§çš„"
+"[ColorPicker]。\n"
+"å¦è¯·å‚阅[BaseButton]。它包括了和这个节点共åŒæ‹¥æœ‰çš„属性和方法。\n"
+"[b]注æ„:[/b]按钮默认状æ€æ—¶å¯èƒ½éžå¸¸çª„,导致颜色预览样本ä¸å¯è§ã€‚ç¡®ä¿å°†[member "
+"Control.rect_min_size]设置的足够大从而给这个按钮足够的空间去显示。"
#: doc/classes/ColorPickerButton.xml:19
msgid ""
@@ -17529,9 +17743,11 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回此节点所切æ¢çš„ [ColorPicker]。\n"
+"[b]警告:[/b] 这是一个必需的内部节点,移除和释放它å¯èƒ½ä¼šå¯¼è‡´å´©æºƒã€‚如果你希望"
+"éšè—它或其所有å­é¡¹ï¼Œè¯·ä½¿ç”¨å…¶ [member CanvasItem.visible] 属性。"
#: doc/classes/ColorPickerButton.xml:26
-#, fuzzy
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 "
@@ -17540,8 +17756,10 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
-"返回控件的[PopupPanel],å…许您连接到弹出信å·ã€‚这使您å¯ä»¥åœ¨æ˜¾ç¤ºæˆ–éšè—"
-"ColorPicker时处ç†äº‹ä»¶ã€‚"
+"返回控件的 [PopupPanel],它å…许你连接到弹出信å·ã€‚è¿™å…许你在显示或éšè— "
+"ColorPicker 时事件处ç†ã€‚\n"
+"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它å¯èƒ½ä¼šå¯¼è‡´å´©æºƒã€‚如果你希望"
+"éšè—它或其任何å­é¡¹ï¼Œè¯·ä½¿ç”¨å…¶ [member CanvasItem.visible] 属性。"
#: doc/classes/ColorPickerButton.xml:36
msgid ""
@@ -17593,26 +17811,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr "ç¦ç”¨[ColorPickerButton]时使用的文本[Color]。"
#: doc/classes/ColorPickerButton.xml:80
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:83
msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr "悬åœ[ColorPickerButton]时使用的文本[Color]。"
-#: doc/classes/ColorPickerButton.xml:83
+#: doc/classes/ColorPickerButton.xml:86
msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr "按下[ColorPickerButton]时使用的文本[Color]。"
-#: doc/classes/ColorPickerButton.xml:86
+#: doc/classes/ColorPickerButton.xml:89
msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr "悬åœ[ColorPickerButton]时使用的[StyleBox]。"
-#: doc/classes/ColorPickerButton.xml:89
+#: doc/classes/ColorPickerButton.xml:92
msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr "[ColorPickerButton]的图标和文本之间的水平间è·ã€‚"
-#: doc/classes/ColorPickerButton.xml:92
+#: doc/classes/ColorPickerButton.xml:95
msgid "Default [StyleBox] for the [ColorPickerButton]."
msgstr "[ColorPickerButton]的默认[StyleBox]。"
-#: doc/classes/ColorPickerButton.xml:95
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr "按下[ColorPickerButton]时使用的[StyleBox]。"
@@ -17625,6 +17850,8 @@ msgid ""
"Displays a rectangle filled with a solid [member color]. If you need to "
"display the border alone, consider using [ReferenceRect] instead."
msgstr ""
+"显示一个用纯色 [member color] 填充的矩形。如果你需è¦å•ç‹¬æ˜¾ç¤ºè¾¹æ¡†ï¼Œè¯·è€ƒè™‘使用 "
+"[ReferenceRect] 代替。"
#: doc/classes/ColorRect.xml:16
msgid ""
@@ -17643,7 +17870,6 @@ msgid "Concave polygon shape."
msgstr "凹é¢å¤šè¾¹å½¢å½¢çŠ¶ã€‚"
#: doc/classes/ConcavePolygonShape.xml:7
-#, fuzzy
msgid ""
"Concave polygon shape resource, which can be set into a [PhysicsBody] or "
"area. This shape is created by feeding a list of triangles.\n"
@@ -17651,11 +17877,11 @@ msgid ""
"work with static [PhysicsBody] nodes like [StaticBody] and will not work "
"with [KinematicBody] or [RigidBody] with a mode other than Static."
msgstr ""
-"凹é¢å¤šè¾¹å½¢èµ„æºï¼Œå¯ä»¥å°†å…¶è®¾ç½®ä¸º[PhysicsBody3D]或区域。通过输入一系列三角形æ¥åˆ›"
-"建此形状。\n"
-"注æ„:[ConcavePolygonShape3D]用于碰撞时,旨在与诸如[StaticBody3D]之类的é™æ€"
-"[PhysicsBody3D]节点一起使用,而ä¸é€‚用于除é™æ€ä»¥å¤–的其他模å¼çš„"
-"[KinematicBody3D]或[RigidBody3D]节点。"
+"凹多边形形状资æºï¼Œå¯è®¾ç½®ä¸º[PhysicsBody]或区域。这个形状是通过æ供一个三角形列"
+"表æ¥åˆ›å»ºçš„。\n"
+"[b]注æ„:[/b] 用于碰撞时,[ConcavePolygonShape] 旨在与é™æ€ [PhysicsBody] 节点"
+"一起使用,如 [StaticBody],并且ä¸é€‚用于具有éžé™æ€æ¨¡å¼çš„ [KinematicBody] 或 "
+"[RigidBody]。"
#: doc/classes/ConcavePolygonShape.xml:17
msgid "Returns the faces (an array of triangles)."
@@ -17695,12 +17921,10 @@ msgid ""
msgstr "组æˆ[ConcavePolygonShape2D]线段的点的数组。"
#: doc/classes/ConeTwistJoint.xml:4
-#, fuzzy
msgid "A twist joint between two 3D PhysicsBodies."
-msgstr "两个3D实体之间的扭曲关节。"
+msgstr "两个 3D PhysicsBodies 之间的扭转关节。"
#: doc/classes/ConeTwistJoint.xml:7
-#, fuzzy
msgid ""
"The joint can rotate the bodies across an axis defined by the local x-axes "
"of the [Joint].\n"
@@ -17709,9 +17933,10 @@ msgid ""
"axes of the Joint in the local space of the two Bodies. See also "
"[Generic6DOFJoint]."
msgstr ""
-"关节å¯ä»¥ä½¿å®žä½“沿由[Joint3D]的局部x轴定义的轴旋转。\n"
-"扭曲轴作为[Joint3D]çš„Xè½´å¯åŠ¨ã€‚\n"
-"身体摆动åŽï¼Œå°†æ‰­æ›²è½´è®¡ç®—为在两个身体的局部空间中的Joint3Dçš„x轴的中间。"
+"关节å¯ä»¥åœ¨ [Joint] 的局部 x 轴定义的轴上旋转物体。\n"
+"扭转轴是以[Joint]的X轴为起始。\n"
+"一旦物体摆动,扭转轴就会被计算为两个物体的局部空间中的关节的X轴的中间ä½ç½®ã€‚å‚"
+"阅[Generic6DOFJoint]。"
#: doc/classes/ConeTwistJoint.xml:30 doc/classes/ConeTwistJoint.xml:62
#: doc/classes/PhysicsServer.xml:1076
@@ -17737,7 +17962,6 @@ msgstr "关节开始扭曲的难易程度。如果太低,则需è¦æ›´å¤šçš„力
#: doc/classes/ConeTwistJoint.xml:40 doc/classes/ConeTwistJoint.xml:52
#: doc/classes/PhysicsServer.xml:1066
-#, fuzzy
msgid ""
"Swing is rotation from side to side, around the axis perpendicular to the "
"twist axis.\n"
@@ -17746,10 +17970,10 @@ msgid ""
"Could be defined as looseness in the [ConeTwistJoint].\n"
"If below 0.05, this behavior is locked."
msgstr ""
-"摆动是围绕垂直于扭曲轴的轴从一侧到å¦ä¸€ä¾§æ—‹è½¬ã€‚\n"
-"摆动跨度定义了沿摆动轴ä¸ä¼šæ ¡æ­£å¤šå°‘旋转。\n"
-"å¯ä»¥åœ¨[ConeTwistJoint3D]中定义为æ¾åŠ¨ã€‚\n"
-"如果低于0.05,则此行为将被é”定。"
+"摆动是围绕垂直于扭转轴的轴线从一边到å¦ä¸€è¾¹çš„旋转。\n"
+"摆动跨度定义了,多少旋转ä¸ä¼šæ²¿ç€æ‘†åŠ¨è½´å¾—到纠正。\n"
+"å¯ä»¥å®šä¹‰[ConeTwistJoint]çš„æ¾åŠ¨æ€§ã€‚\n"
+"如果低于0.05,此行为被é”定。"
#: doc/classes/ConeTwistJoint.xml:46 doc/classes/ConeTwistJoint.xml:58
#: doc/classes/PhysicsServer.xml:1072
@@ -17772,7 +17996,6 @@ msgid "Helper class to handle INI-style files."
msgstr "用于处ç†INIæ ·å¼æ–‡ä»¶çš„Helper类。"
#: doc/classes/ConfigFile.xml:7
-#, fuzzy
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 "
@@ -17838,41 +18061,67 @@ msgid ""
"standardized, Godot's ConfigFile formatting may differ from files written by "
"other programs."
msgstr ""
-"该帮助程åºç±»å¯ç”¨äºŽä½¿ç”¨INIæ ·å¼æ ¼å¼åœ¨æ–‡ä»¶ç³»ç»Ÿä¸Šå­˜å‚¨[Variant]值。存储的值由一个"
-"部分和一个键标识:\n"
+"这个辅助类å¯ä»¥ç”¨æ¥åœ¨æ–‡ä»¶ç³»ç»Ÿä¸­ä½¿ç”¨INI风格æ¥æ ¼å¼åŒ–存储[Variant]值。存储的值由"
+"部分和对应键æ¥è¯†åˆ«ã€‚\n"
"[codeblock]\n"
"[section]\n"
"some_key=42\n"
-"string_example=\"Hello World3D!\"\n"
+"string_example=\"Hello World!\"\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"
+"存储的数æ®å¯ä»¥è¢«ä¿å­˜åˆ°æ–‡ä»¶ä¸­ï¼Œæˆ–从文件中解æžå‡ºæ¥ï¼Œå°½ç®¡ConfigFile对象也å¯ä»¥ç›´"
+"接使用而ä¸éœ€è¦è®¿é—®æ–‡ä»¶ç³»ç»Ÿã€‚\n"
+"下é¢çš„例å­å±•ç¤ºäº†å¦‚何创建一个简å•çš„[ConfigFile]并将其ä¿å­˜åœ¨ç£ç›˜ä¸Šã€‚\n"
"[codeblock]\n"
+"# 创建新的 ConfigFile 对象。\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"
+"\n"
+"# 存储一些值。\n"
+"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
+"config.set_value(\"Player1\", \"best_score\", 10)\n"
+"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
+"config.set_value(\"Player2\", \"best_score\", 9001)\n"
+"\n"
+"# 把它ä¿å­˜åˆ°ä¸€ä¸ªæ–‡ä»¶ä¸­ï¼ˆå¦‚果已ç»å­˜åœ¨åˆ™è¦†ç›–)。\n"
+"config.save(\"user://scores.cfg\")\n"
"[/codeblock]\n"
-"请记ä½ï¼Œéƒ¨åˆ†å’Œå±žæ€§å称ä¸èƒ½åŒ…å«ç©ºæ ¼ã€‚在ä¿å­˜å’ŒåŠ è½½æ—¶ï¼Œç©ºæ ¼åŽçš„所有内容都将被忽"
+"这个例å­æ˜¾ç¤ºäº†å¦‚何加载上述文件。\n"
+"[codeblock]\n"
+"var score_data = {}\n"
+"var config = ConfigFile.new()\n"
+"\n"
+"# 从文件中加载数æ®ã€‚\n"
+"var err = config.load(\"user://scores.cfg\")\n"
+"\n"
+"# 如果文件没有加载,请忽略它。\n"
+"if err != OK:\n"
+" return\n"
+"\n"
+"# é历所有部分。\n"
+"for player in config.get_sections():\n"
+" # å–出æ¯ä¸ªéƒ¨åˆ†çš„æ•°æ®ã€‚\n"
+" var player_name = config.get_value(player, \"player_name\")\n"
+" var player_score = config.get_value(player, \"best_score\")\n"
+" score_data[player_name] = player_score\n"
+"[/codeblock]\n"
+"任何改å˜ConfigFileçš„æ“作,如[method set_value]ã€[method clear]或[method "
+"erase_section],都åªæ”¹å˜å†…存中加载的内容。如果你想把å˜åŒ–写入文件,必须用"
+"[method save]ã€[method save_encrypted]或[method save_encrypted_pass]ä¿å­˜è¿™äº›"
+"å˜åŒ–。\n"
+"请记ä½ï¼Œéƒ¨åˆ†å’Œå±žæ€§å称ä¸èƒ½åŒ…å«ç©ºæ ¼ã€‚空格之åŽçš„内容在ä¿å­˜å’ŒåŠ è½½æ—¶éƒ½ä¼šè¢«å¿½"
"略。\n"
-"ConfigFiles还å¯ä»¥åŒ…å«ä»¥åˆ†å·ï¼ˆ[code]; [/code])开头的手动编写的注释行。解æžæ–‡"
-"件时,这些行将被忽略。请注æ„,ä¿å­˜ConfigFile时,注释将丢失。这对于专用的æœåŠ¡"
-"器é…置文件ä»ç„¶å¾ˆæœ‰ç”¨ï¼Œè¿™äº›æ–‡ä»¶é€šå¸¸åœ¨æ²¡æœ‰æ˜Žç¡®çš„用户æ“作的情况下永远ä¸ä¼šè¢«è¦†"
-"盖。"
+"é…置文件还å¯ä»¥åŒ…å«ä»¥åˆ†å·å¼€å¤´çš„手动编写的注释行([code];[/code])。这些行在解"
+"æžæ–‡ä»¶æ—¶å°†è¢«å¿½ç•¥ã€‚请注æ„,在ä¿å­˜ConfigFile时,注释将会丢失。注释对于专用的æœ"
+"务器é…置文件ä»ç„¶å¾ˆæœ‰ç”¨ï¼Œå› ä¸ºå¦‚果没有明确的用户æ“作,这些文件通常ä¸ä¼šè¢«è¦†"
+"盖。\n"
+"[b]注æ„:[/b] 给予é…置文件扩展å对其格å¼æˆ–行为没有任何影å“。根æ®æƒ¯ä¾‹ï¼Œè¿™é‡Œä½¿"
+"用的是[code].cfg[/code]扩展å,但任何其他扩展å,如[code].ini[/code]也是有效"
+"的。由于[code].cfg[/code]å’Œ[code].ini[/code]都ä¸æ˜¯æ ‡å‡†åŒ–的,Godotçš„ConfigFile"
+"æ ¼å¼å¯èƒ½ä¸Žå…¶ä»–程åºç¼–写的文件有所ä¸åŒã€‚"
#: doc/classes/ConfigFile.xml:59
-#, fuzzy
msgid "Removes the entire contents of the config."
-msgstr "返回图å—的纹ç†å移é‡ã€‚"
+msgstr "删除é…置的全部内容。"
#: doc/classes/ConfigFile.xml:66
msgid ""
@@ -17951,15 +18200,14 @@ msgstr ""
"返回[enum Error]代ç å¸¸é‡ä¹‹ä¸€ï¼ˆæˆåŠŸæ—¶è¿”回[code]OK[/code])。"
#: doc/classes/ConfigFile.xml:144
-#, fuzzy
msgid ""
"Parses 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 ""
-"将传入的字符串解æžä¸ºé…置文件的内容。该字符串被解æžå¹¶åŠ è½½åˆ°è°ƒç”¨è¯¥æ–¹æ³•çš„"
-"ConfigFile对象中。\n"
-"返回[enum Error]代ç å¸¸é‡ä¹‹ä¸€(æˆåŠŸæ—¶è¿”回[code]OK[/code])。"
+"将传递的字符串解æžä¸ºé…置文件的内容。该字符串被解æžå¹¶åŠ è½½åˆ°è°ƒç”¨è¯¥æ–¹æ³•çš„ "
+"ConfigFile 对象中。\n"
+"返回 [enum Error] 常é‡ä¹‹ä¸€ï¼ŒæˆåŠŸæ—¶è¿”回 [code]OK[/code]。"
#: doc/classes/ConfigFile.xml:152
msgid ""
@@ -18032,6 +18280,9 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回å–消按钮。\n"
+"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它å¯èƒ½ä¼šå¯¼è‡´å´©æºƒã€‚如果你希望"
+"éšè—它或其任何å­é¡¹ï¼Œè¯·ä½¿ç”¨å…¶ [member CanvasItem.visible] 属性。"
#: doc/classes/Container.xml:4
msgid "Base node for containers."
@@ -18076,7 +18327,6 @@ msgstr ""
"å°ã€‚"
#: doc/classes/Control.xml:7
-#, fuzzy
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 "
@@ -18111,26 +18361,32 @@ msgid ""
"[method get_icon], [method get_stylebox], and the [code]add_*_override[/"
"code] methods provided by this class."
msgstr ""
-"所有与UI相关的节点的基类。 [Control]具有定义其范围的边界矩形,相对于其父控件"
-"或当å‰è§†å£çš„锚点ä½ç½®ä»¥åŠè¡¨ç¤ºé”šç‚¹å移的边è·ã€‚当节点,它的任何父节点或å±å¹•å°ºå¯¸"
-"更改时,边è·ä¼šè‡ªåŠ¨æ›´æ–°ã€‚\n"
-"有关Godotçš„UI系统,锚点,边è·å’Œå®¹å™¨çš„更多信æ¯ï¼Œè¯·å‚阅手册中的相关教程。è¦æž„建"
-"çµæ´»çš„UI,您需è¦æ··åˆä½¿ç”¨ä»Ž[Control]å’Œ[Container]节点继承的UI元素。\n"
+"所有 UI 相关节点的基类。 [Control] 具有定义其范围的边界矩形ã€ç›¸å¯¹äºŽå…¶çˆ¶æŽ§ä»¶æˆ–"
+"当å‰è§†çª—的锚点ä½ç½®ä»¥åŠè¡¨ç¤ºé”šç‚¹å移的边è·ã€‚ 当节点ã€å…¶ä»»ä½•çˆ¶èŠ‚点或å±å¹•å°ºå¯¸å‘生"
+"å˜åŒ–时,边è·ä¼šè‡ªåŠ¨æ›´æ–°ã€‚\n"
+"更多关于 Godot çš„ UI 系统ã€é”šç‚¹ã€è¾¹è·å’Œå®¹å™¨çš„ä¿¡æ¯ï¼Œè¯·å‚阅手册中的相关教程。 "
+"è¦æž„建çµæ´»çš„ UI,您需è¦æ··åˆä½¿ç”¨ä»Ž [Control] å’Œ [Container] 节点继承的 UI å…ƒ"
+"素。\n"
"[b]用户界é¢èŠ‚点和输入[/b]\n"
-"Godot首先通过调用[method Node._input]将输入事件å‘é€åˆ°åœºæ™¯çš„根节点。 [method "
-"Node._input]将事件从节点树å‘下转å‘到鼠标光标下方或键盘焦点上的节点。为此,它"
-"调用[code] MainLoop._input_event [/code]。\n"
-"[b] FIXME:[/b] DisplayServer拆分和输入é‡æž„åŽä¸å†æœ‰æ•ˆã€‚\n"
-"调用[method accept_event],因此没有其他节点接收该事件。接å—输入åŽï¼Œå°†å¯¹å…¶è¿›è¡Œ"
-"处ç†ï¼Œå› æ­¤[method Node._unhandled_input]å°†ä¸ä¼šå¯¹å…¶è¿›è¡Œå¤„ç†ã€‚\n"
-"键盘焦点中åªèƒ½æœ‰ä¸€ä¸ª[Control]节点。仅焦点所在的节点将接收键盘事件。è¦èŽ·å¾—焦"
-"点,请调用[methodgrap_focus]。当å¦ä¸€ä¸ªèŠ‚点抓ä½[Control]节点或将其éšè—在焦点中"
-"时,该节点将失去焦点。\n"
-"将[member mouse_filter]设置为[constant MOUSE_FILTER_IGNORE],以通知[Control]"
-"节点忽略鼠标或触摸事件。如果将图标放在按钮顶部,则将需è¦å®ƒã€‚\n"
-"[Theme]资æºä¼šæ›´æ”¹æŽ§ä»¶çš„外观。如果更改[Control]节点上的[Theme],它将影å“其所有"
-"å­çº§ã€‚è¦è¦†ç›–æŸäº›ä¸»é¢˜çš„å‚数,请调用[code] add_theme _ * _ override [/code]方法"
-"之一,例如[method add_theme_font_override]。您å¯ä»¥ä½¿ç”¨æ£€æŸ¥å™¨è¦†ç›–主题。"
+"Godot 首先通过调用 [method Node._input] 将输入事件å‘é€åˆ°åœºæ™¯çš„根节点。 "
+"[method Node._input] 将事件沿节点树å‘下转å‘到鼠标光标下或键盘焦点上的节点。 "
+"为此,它调用 [method MainLoop._input_event]。 调用 [method accept_event] 以便"
+"没有其他节点收到该事件。 一旦你接å—一个输入,它就会被处ç†ï¼Œæ‰€ä»¥ [method Node."
+"_unhandled_input] ä¸ä¼šå¤„ç†å®ƒã€‚\n"
+"åªæœ‰ä¸€ä¸ª [Control] 节点å¯ä»¥å¤„于键盘焦点。 åªæœ‰å¤„于焦点的节点æ‰ä¼šæŽ¥æ”¶é”®ç›˜äº‹"
+"件。 è¦èŽ·å¾—焦点,请调用 [method grab_focus]。在å¦ä¸€ä¸ªèŠ‚点获得èšç„¦æ—¶ "
+"[Control] 节点会失去焦点,或者您éšè—焦点中的节点。\n"
+"将 [member mouse_filter] 设置为 [constant MOUSE_FILTER_IGNORE] 以告诉 "
+"[Control] 节点忽略鼠标或触摸事件。 如果您在按钮顶部放置一个图标,您将需è¦"
+"它。\n"
+"[Theme] 资æºæ›´æ”¹æŽ§ä»¶çš„外观。 如果您更改 [Control] 节点上的 [Theme],则会影å“"
+"其所有å­èŠ‚点。 è¦è¦†ç›–æŸäº›ä¸»é¢˜çš„å‚数,请调用 [code]add_*_override[/code] 方法"
+"之一,例如 [method add_font_override]。 您å¯ä»¥ä½¿ç”¨å±žæ€§æ£€æŸ¥å™¨è¦†ç›–主题。\n"
+"[b]注æ„:[/b] 主题相关项 [i]ä¸æ˜¯[/i] [Object] 对象属性。这æ„味ç€ä½ ä¸èƒ½ä½¿ç”¨ "
+"[method Object.get] å’Œ [method Object.set] 访问它们的值。相å,请使用 "
+"[method get_color]ã€[method get_constant]ã€[method get_font]ã€[method "
+"get_icon]ã€[method get_stylebox],以åŠè¿™ä¸ªç±»æ供的 [code]add_*_override[/"
+"code] 方法。"
#: doc/classes/Control.xml:17
msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html"
@@ -18173,7 +18429,6 @@ msgstr ""
"如果未覆盖,则默认为[constant Vector2.ZERO]。"
#: doc/classes/Control.xml:41
-#, fuzzy
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"
@@ -18195,27 +18450,27 @@ msgid ""
"[member rect_clip_content] or [method _clips_input] enabled.\n"
"[b]Note:[/b] Event position is relative to the control origin."
msgstr ""
-"用户è¦å®žçŽ°çš„虚拟方法。使用此方法æ¥å¤„ç†å’ŒæŽ¥å—UI元素上的输入。å‚阅[方法"
+"由用户实现的虚方法。使用此方法处ç†å’ŒæŽ¥å— UI 元素上的输入。å‚阅[method "
"accept_event]。\n"
-"示例:å•å‡»ä¸€ä¸ªæŽ§ä»¶ã€‚\n"
+"例:å•å‡»æŽ§ä»¶ã€‚\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"
-"在以下情况下,该事件ä¸ä¼šè§¦å‘:\n"
-"*在控件外部å•å‡»ï¼ˆè¯·å‚阅[method has_point]);\n"
-"*控件的[member mouse_filter]设置为[constant MOUSE_FILTER_IGNORE];\n"
-"*控件被其顶部的å¦ä¸€ä¸ª[Control]阻塞,该控件没有将[member mouse_filter]设置为"
-"[constant MOUSE_FILTER_IGNORE]ï¼›\n"
-"*控件的父级已将[member mouse_filter]设置为[constant MOUSE_FILTER_STOP]或已接"
-"å—该事件;\n"
-"*它å‘生在父级矩形的外部,并且父级å¯ç”¨äº†[member rect_clip_content]或[method "
-"_clips_input]。"
+"如果出现以下情况,则ä¸ä¼šè§¦å‘该事件:\n"
+"* 在控件外点击(å‚阅[method has_point]);\n"
+"* 控件将 [member mouse_filter] 设置为 [constant MOUSE_FILTER_IGNORE];\n"
+"* 控件被其上的å¦ä¸€ä¸ª [Control] 阻挡,该控件没有将 [member mouse_filter] 设置"
+"为 [constant MOUSE_FILTER_IGNORE];\n"
+"* 控件的父级已将 [member mouse_filter] 设置为 [constant MOUSE_FILTER_STOP] 或"
+"已接å—该事件;\n"
+"* 它å‘生在父级的矩形之外,并且父级已å¯ç”¨ [member rect_clip_content] 或 "
+"[method _clips_input]。\n"
+"[b]注:[/b] 事件å林标相对于控件原点。"
#: doc/classes/Control.xml:62
-#, fuzzy
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. The [code]for_text[/"
@@ -18248,26 +18503,28 @@ msgid ""
" return tooltip\n"
"[/codeblock]"
msgstr ""
-"用户è¦å®žçŽ°çš„虚拟方法。返回一个[Control]节点,该节点应用作工具æ示,而ä¸æ˜¯é»˜è®¤"
-"æ示。使用[code] for_text [/code]å‚æ•°æ¥ç¡®å®šå·¥å…·æ示应包å«çš„文本(å¯èƒ½æ˜¯"
-"[member hint_tooltip]的内容)。\n"
-"返回的节点必须是[Control]类型或Control-derieved类型。它å¯ä»¥å…·æœ‰ä»»ä½•ç±»åž‹çš„å­èŠ‚"
-"点。当工具æ示消失时,它会被释放,因此请确ä¿æ‚¨å§‹ç»ˆæ供一个新实例,而ä¸æ˜¯ä¾‹å¦‚"
-"场景中的节点。当返回[code] null [/code]或éžControl节点时,将使用默认的工具æ"
-"示。\n"
-"[b]注æ„:[/b]工具æ示会缩å°åˆ°æœ€å°å°ºå¯¸ã€‚如果è¦ç¡®ä¿å®ƒæ˜¯å®Œå…¨å¯è§çš„,则å¯èƒ½éœ€è¦å°†"
-"å…¶[member rect_min_size]设置为一些éžé›¶å€¼ã€‚\n"
-"自定义构造的节点的用法示例:\n"
+"由用户实现的虚方法。返回一个 [Control] 节点,该节点应用作工具æ示而ä¸æ˜¯é»˜è®¤èŠ‚"
+"点。 [code]for_text[/code] åŒ…å« [member hint_tooltip] 属性的内容。\n"
+"返回的节点必须是 [Control] 或 Control-derived 类型。它å¯ä»¥æœ‰ä»»ä½•ç±»åž‹çš„å­èŠ‚"
+"点。当工具æ示消失时它会被释放,因此请确ä¿ä½ å§‹ç»ˆæ供一个新实例(如果你想使用"
+"场景树中预先存在的节点,å¯ä»¥å¤åˆ¶å®ƒå¹¶ä¼ é€’å¤åˆ¶çš„实例)。当返回 [code]null[/"
+"code] 或éžæŽ§ä»¶èŠ‚点时,将使用默认工具æ示。\n"
+"返回的节点将作为å­èŠ‚点添加到 [PopupPanel],因此你应该åªæ供该é¢æ¿çš„内容。该 "
+"[PopupPanel] å¯ä»¥ä½¿ç”¨ [method Theme.set_stylebox] 为类型 [code]\"TooltipPanel"
+"\"[/code] 设置主题,å‚阅 [member hint_tooltip] 示例。\n"
+"[b]注æ„:[/b]工具æ示缩å°åˆ°æœ€å°å°ºå¯¸ã€‚如果你想确ä¿å®ƒå®Œå…¨å¯è§ï¼Œéœ€å°†å…¶ [member "
+"rect_min_size] 设置为éžé›¶å€¼ã€‚\n"
+"自定义构建节点的使用示例:\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"
+"自定义场景实例的使用示例:\n"
"[codeblock]\n"
"func _make_custom_tooltip(for_text):\n"
-" var tooltip = preload(\"SomeTooltipScene.tscn\").instance()\n"
+" var tooltip = preload(\"res://SomeTooltipScene.tscn\").instance()\n"
" tooltip.get_node(\"Label\").text = for_text\n"
" return tooltip\n"
"[/codeblock]"
@@ -18298,6 +18555,17 @@ msgid ""
"\"))\n"
"[/codeblock]"
msgstr ""
+"使用指定的 [code]name[/code] 为主题 [Color] 创建本地覆盖项。获å–控件的主题项"
+"时,本地覆盖项始终优先。无法删除覆盖项,但å¯ä»¥ä½¿ç”¨ç›¸åº”的默认值覆盖它。\n"
+"å‚阅[method get_color]。\n"
+"[b]覆盖标签颜色并其åŽé‡ç½®çš„示例:[/b]\n"
+"[codeblock]\n"
+"# 给定å­æ ‡ç­¾èŠ‚点\"MyLabel\",用自定义值覆盖其字体颜色。\n"
+"$MyLabel.add_color_override(\"font_color\", Color(1, 0.5, 0))\n"
+"# é‡ç½®å­æ ‡ç­¾çš„字体颜色。\n"
+"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", \"Label"
+"\"))\n"
+"[/codeblock]"
#: doc/classes/Control.xml:109
msgid ""
@@ -18307,6 +18575,9 @@ msgid ""
"the corresponding default value.\n"
"See also [method get_constant]."
msgstr ""
+"为指定 [code]name[/code] 的主题常é‡åˆ›å»ºæœ¬åœ°è¦†ç›–项。获å–控件的主题项时,本地覆"
+"盖项始终优先。无法删除覆盖项,但å¯ä»¥ä½¿ç”¨ç›¸åº”的默认值覆盖它。\n"
+"å‚阅[method get_constant]。"
#: doc/classes/Control.xml:118
msgid ""
@@ -18316,6 +18587,9 @@ msgid ""
"value.\n"
"See also [method get_font]."
msgstr ""
+"使用指定的 [code]name[/code] 为主题 [Font] 创建本地覆盖项。获å–控件的主题项"
+"时,本地覆盖项始终优先。å¯ä»¥é€šè¿‡ä¸ºå…¶åˆ†é… [code]null[/code] 值æ¥åˆ é™¤è¦†ç›–。\n"
+"å‚阅[method get_font]。"
#: doc/classes/Control.xml:127
msgid ""
@@ -18325,6 +18599,9 @@ msgid ""
"value.\n"
"See also [method get_icon]."
msgstr ""
+"为指定 [code]name[/code] 的主题图标创建本地覆盖项。获å–控件的主题项时,本地覆"
+"盖项始终优先。å¯ä»¥é€šè¿‡ä¸ºå…¶åˆ†é… [code]null[/code] 值æ¥åˆ é™¤è¦†ç›–。\n"
+"å‚阅[method get_icon]。"
#: doc/classes/Control.xml:136
msgid ""
@@ -18333,6 +18610,8 @@ msgid ""
"the control. An override can be removed by assigning it a [code]null[/code] "
"value."
msgstr ""
+"为指定 [code]name[/code] 的主题ç€è‰²å™¨åˆ›å»ºæœ¬åœ°è¦†ç›–项。获å–控件的主题项时,本地"
+"覆盖项始终优先。å¯ä»¥é€šè¿‡ä¸ºå…¶åˆ†é… [code]null[/code] 值æ¥åˆ é™¤è¦†ç›–。"
#: doc/classes/Control.xml:144
msgid ""
@@ -18355,6 +18634,21 @@ msgid ""
"$MyButton.add_stylebox_override(\"normal\", null)\n"
"[/codeblock]"
msgstr ""
+"使用指定的 [code]name[/code] 为主题 [StyleBox] 创建本地覆盖项。获å–控件的主题"
+"项时,本地覆盖项始终优先。å¯ä»¥é€šè¿‡ä¸ºå…¶åˆ†é… [code]null[/code] 值æ¥åˆ é™¤è¦†ç›–。\n"
+"å‚阅[method get_stylebox]。\n"
+"[b]通过å¤åˆ¶æ¥ä¿®æ”¹StyleBox中的属性的示例:[/b]\n"
+"[codeblock]\n"
+"# 下é¢çš„代ç ç‰‡æ®µå‡è®¾å­èŠ‚点 MyButton 分é…了一个 StyleBoxFlat。\n"
+"# 资æºæ˜¯è·¨å®žä¾‹å…±äº«çš„,所以我们需è¦å¤åˆ¶å®ƒ\n"
+"# 以é¿å…修改所有其他按钮的外观。\n"
+"var new_stylebox_normal = $MyButton.get_stylebox(\"normal\").duplicate()\n"
+"new_stylebox_normal.border_width_top = 3\n"
+"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
+"$MyButton.add_stylebox_override(\"normal\", new_stylebox_normal)\n"
+"# 删除样å¼æ¡†è¦†ç›–。\n"
+"$MyButton.add_stylebox_override(\"normal\", null)\n"
+"[/codeblock]"
#: doc/classes/Control.xml:165
msgid ""
@@ -18410,13 +18704,12 @@ msgstr ""
#: doc/classes/Control.xml:193
msgid ""
"Finds the next (below in the tree) [Control] that can receive the focus."
-msgstr ""
+msgstr "找到下一个å¯ä»¥æŽ¥å—焦点的[Control],在树的下方。"
#: doc/classes/Control.xml:199
-#, fuzzy
msgid ""
"Finds the previous (above in the tree) [Control] that can receive the focus."
-msgstr "返回树中的å‰ä¸€ä¸ªTreeItem树项,如果没有,则返回一个空对象。"
+msgstr "找到å¯ä»¥æŽ¥æ”¶ç„¦ç‚¹çš„上一个[Control],在树的上方。"
#: doc/classes/Control.xml:207
msgid ""
@@ -18473,6 +18766,22 @@ msgid ""
" modulate = get_color(\"font_color\", \"Button\")\n"
"[/codeblock]"
msgstr ""
+"如果该 [Theme] 具有指定 [code]name[/code] 和 [code]theme_type[/code] 的颜色"
+"项,则从树中第一个匹é…çš„ [Theme] 返回 [Color]。如果çœç•¥ [code]theme_type[/"
+"code],则使用当å‰æŽ§ä»¶çš„ç±»å作为类型。如果类型是类å,则还会按继承顺åºæ£€æŸ¥å…¶çˆ¶"
+"类。\n"
+"对于当å‰æŽ§ä»¶ï¼Œé¦–先考虑其本地覆盖项,å‚阅 [method add_color_override],然åŽæ˜¯"
+"其分é…çš„ [member theme]。在当å‰æŽ§ä»¶ä¹‹åŽï¼Œè€ƒè™‘æ¯ä¸ªçˆ¶æŽ§ä»¶åŠå…¶åˆ†é…çš„ [member "
+"theme];未分é…[member theme]的控件将被跳过。如果在树中找ä¸åˆ°åŒ¹é…çš„ [Theme],"
+"则使用自定义项目 [Theme]和默认的 [Theme],å‚阅 [member ProjectSettings.gui/"
+"theme/custom]。\n"
+"[codeblock]\n"
+"func _ready():\n"
+" # 获å–为当å‰æŽ§ä»¶ç±»å®šä¹‰çš„字体颜色(如果存在)。\n"
+" modulate = get_color(\"font_color\")\n"
+" # 获å–为 Button 类定义的字体颜色。\n"
+" modulate = get_color(\"font_color\", \"Button\")\n"
+"[/codeblock]"
#: doc/classes/Control.xml:243
msgid ""
@@ -18487,6 +18796,9 @@ msgid ""
"[code]theme_type[/code].\n"
"See [method get_color] for details."
msgstr ""
+"如果该 [Theme] 具有指定 [code]name[/code] å’Œ [code]theme_type[/code] 的常é‡é¡¹"
+"目,则从树中的第一个匹é…çš„ [Theme] 返回常é‡ã€‚\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:259
msgid ""
@@ -18551,6 +18863,9 @@ msgid ""
"code].\n"
"See [method get_color] for details."
msgstr ""
+"如果该 [Theme] 具有指定 [code]name[/code] 和 [code]theme_type[/code] 的字体项"
+"目,则从树中第一个匹é…çš„ [Theme] 返回 [Font]。\n"
+"有关详细信æ¯ï¼Œè¯·å‚阅 [method get_color]。"
#: doc/classes/Control.xml:307
msgid ""
@@ -18567,6 +18882,9 @@ msgid ""
"code].\n"
"See [method get_color] for details."
msgstr ""
+"如果该 [Theme] 具有指定 [code]name[/code] 和 [code]theme_type[/code] 的图标项"
+"目,则从树中第一个匹é…çš„ [Theme] 返回图标。\n"
+"有关详细信æ¯ï¼Œè¯·å‚阅 [method get_color]。"
#: doc/classes/Control.xml:323
msgid ""
@@ -18609,6 +18927,9 @@ msgid ""
"[code]theme_type[/code].\n"
"See [method get_color] for details."
msgstr ""
+"如果该 [Theme] 具有指定 [code]name[/code] å’Œ [code]theme_type[/code] çš„æ ·å¼æ¡†"
+"项目,则从树中第一个匹é…çš„ [Theme] 返回 [StyleBox]。\n"
+"有关详细信æ¯ï¼Œè¯·å‚阅 [method get_color]。"
#: doc/classes/Control.xml:368
msgid ""
@@ -18616,6 +18937,9 @@ msgid ""
"[Theme] has a valid [member Theme.default_font] value.\n"
"See [method get_color] for details."
msgstr ""
+"如果 [Theme] 具有有效的 [member Theme.default_font] 值,则从树中第一个匹é…çš„ "
+"[Theme] 返回默认字体。\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:376
msgid ""
@@ -18650,46 +18974,46 @@ msgid ""
msgstr "从å¦ä¸€ä¸ªæŽ§ä»¶ä¸­çªƒå–焦点,并æˆä¸ºç„¦ç‚¹æŽ§ä»¶ï¼ˆè¯·å‚阅[member focus_mode])。"
#: doc/classes/Control.xml:400
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
"has a color item with the specified [code]name[/code] and [code]theme_type[/"
"code].\n"
"See [method get_color] for details."
msgstr ""
-"如果å¯ä»¥å®žä¾‹åŒ–指定[code]class[/code]中的对象,则返回[code] true [/code],å¦åˆ™"
-"返回[code] false [/code]。"
+"如果树中存在匹é…çš„ [Theme] 且具有指定 [code]name[/code] å’Œ [code]theme_type[/"
+"code] 的颜色项,则返回 [code]true[/code]。\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:408
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a local override for a theme [Color] "
"with the specified [code]name[/code] in this [Control] node.\n"
"See [method add_color_override]."
msgstr ""
-"如果给定[code]name[/code]的[Color]在这个[Control]节点中具有有效的覆盖,则返回"
-"[code]true[/code]。"
+"如果在此 [Control] 节点中具有指定 [code]name[/code] 的主题颜色 [Color] 的本地"
+"覆盖项,则返回 [code]true[/code]。\n"
+"å‚阅 [method add_color_override]。"
#: doc/classes/Control.xml:417
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
"has a constant item with the specified [code]name[/code] and "
"[code]theme_type[/code].\n"
"See [method get_color] for details."
msgstr ""
-"如果å¯ä»¥å®žä¾‹åŒ–指定[code]class[/code]中的对象,则返回[code] true [/code],å¦åˆ™"
-"返回[code] false [/code]。"
+"如果树中存在匹é…çš„ [Theme] 且具有指定 [code]name[/code] å’Œ [code]theme_type[/"
+"code] 的常é‡é¡¹ç›®ï¼Œåˆ™è¿”回 [code]true[/code]。\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:425
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a local override for a theme constant "
"with the specified [code]name[/code] in this [Control] node.\n"
"See [method add_constant_override]."
msgstr ""
-"如果由å称 [code]name[/code] 指定的设置存在,则返回 [code]true[/code],å¦åˆ™è¿”"
-"回 [code]false[/code]。"
+"如果此 [Control] 节点中具有指定 [code]name[/code] 的主题常é‡å­˜åœ¨æœ¬åœ°è¦†ç›–项,"
+"则返回 [code]true[/code]。\n"
+"å‚阅 [method add_constant_override]。"
#: doc/classes/Control.xml:432
msgid ""
@@ -18699,46 +19023,46 @@ msgstr ""
"如果这是当å‰çš„焦点控件,则返回[code] true [/code]。å‚阅[member focus_mode]。"
#: doc/classes/Control.xml:440
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
"has a font item with the specified [code]name[/code] and [code]theme_type[/"
"code].\n"
"See [method get_color] for details."
msgstr ""
-"如果å¯ä»¥å®žä¾‹åŒ–指定[code]class[/code]中的对象,则返回[code] true [/code],å¦åˆ™"
-"返回[code] false [/code]。"
+"如果树中存在匹é…çš„ [Theme] 且具有指定 [code]name[/code] å’Œ [code]theme_type[/"
+"code] 的字体项目,则返回 [code]true[/code]。\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:448
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a local override for a theme [Font] "
"with the specified [code]name[/code] in this [Control] node.\n"
"See [method add_font_override]."
msgstr ""
-"如果由å称 [code]name[/code] 指定的设置存在,则返回 [code]true[/code],å¦åˆ™è¿”"
-"回 [code]false[/code]。"
+"如果在此 [Control] 节点中具有指定 [code]name[/code] 的主题 [Font] 的本地覆盖"
+"项目,则返回 [code]true[/code]。\n"
+"å‚阅[method add_font_override]。"
#: doc/classes/Control.xml:457
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
"has an icon item with the specified [code]name[/code] and [code]theme_type[/"
"code].\n"
"See [method get_color] for details."
msgstr ""
-"如果å¯ä»¥å®žä¾‹åŒ–指定[code]class[/code]中的对象,则返回[code] true [/code],å¦åˆ™"
-"返回[code] false [/code]。"
+"如果树中存在匹é…çš„ [Theme] 且具有指定 [code]name[/code] å’Œ [code]theme_type[/"
+"code] 的图标项目,则返回 [code]true[/code]。\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:465
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a local override for a theme icon with "
"the specified [code]name[/code] in this [Control] node.\n"
"See [method add_icon_override]."
msgstr ""
-"如果由å称 [code]name[/code] 指定的设置存在,则返回 [code]true[/code],å¦åˆ™è¿”"
-"回 [code]false[/code]。"
+"如果此 [Control] 节点中具有指定 [code]name[/code] 的主题图标存在本地覆盖项,"
+"则返回 [code]true[/code]。\n"
+"å‚阅 [method add_icon_override]。"
#: doc/classes/Control.xml:473
msgid ""
@@ -18755,35 +19079,35 @@ msgstr ""
"has_point(point)[/code]。"
#: doc/classes/Control.xml:482
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a local override for a theme shader "
"with the specified [code]name[/code] in this [Control] node.\n"
"See [method add_shader_override]."
msgstr ""
-"如果由å称 [code]name[/code] 指定的设置存在,则返回 [code]true[/code],å¦åˆ™è¿”"
-"回 [code]false[/code]。"
+"如果此 [Control] 节点中具有指定 [code]name[/code] 的主题ç€è‰²å™¨å­˜åœ¨æœ¬åœ°è¦†ç›–"
+"项,则返回 [code]true[/code]。\n"
+"å‚阅[method add_shader_override]。"
#: doc/classes/Control.xml:491
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that "
"has a stylebox item with the specified [code]name[/code] and "
"[code]theme_type[/code].\n"
"See [method get_color] for details."
msgstr ""
-"如果å¯ä»¥å®žä¾‹åŒ–指定[code]class[/code]中的对象,则返回[code] true [/code],å¦åˆ™"
-"返回[code] false [/code]。"
+"如果树中存在匹é…çš„ [Theme] 且具有指定 [code]name[/code] å’Œ [code]theme_type[/"
+"code] çš„æ ·å¼æ¡†é¡¹ç›®ï¼Œåˆ™è¿”回 [code]true[/code]。\n"
+"有关详细信æ¯ï¼Œå‚阅 [method get_color]。"
#: doc/classes/Control.xml:499
-#, fuzzy
msgid ""
"Returns [code]true[/code] if there is a local override for a theme "
"[StyleBox] with the specified [code]name[/code] in this [Control] node.\n"
"See [method add_stylebox_override]."
msgstr ""
-"如果具有给定[code]name[/code]的[StyleBox]在此[Control]节点中具有有效的覆盖,"
-"则返回[code] true [/code]。"
+"如果在此 [Control] 节点中具有指定 [code]name[/code] 的主题 [StyleBox] 的本地"
+"覆盖项,则返回 [code]true[/code]。\n"
+"å‚阅 [method add_stylebox_override]。"
#: doc/classes/Control.xml:506
msgid ""
@@ -18844,7 +19168,6 @@ msgstr ""
"set_margins_preset]。"
#: doc/classes/Control.xml:551
-#, fuzzy
msgid ""
"Sets the anchors to a [code]preset[/code] from [enum Control.LayoutPreset] "
"enum. This is the code equivalent to using the Layout menu in the 2D "
@@ -18852,9 +19175,9 @@ msgid ""
"If [code]keep_margins[/code] is [code]true[/code], control's position will "
"also be updated."
msgstr ""
-"将锚设置为 [code] preset [/code] 从 [enum Control.LayoutPreset] 列举。这相当"
-"于在 2D 编辑器中使用布局èœå•ã€‚\n"
-"如果 [code]keep_margins[/code] 是[code]true[/code],控制的ä½ç½®ä¹Ÿå°†æ›´æ–°ã€‚"
+"将锚点设置为 [enum Control.LayoutPreset] 枚举中的 [code]preset[/code]。这是等"
+"效于在 2D 编辑器中使用布局èœå•çš„ç¼–ç ã€‚\n"
+"如果 [code]keep_margins[/code] 是 [code]true[/code],控件的ä½ç½®ä¹Ÿä¼šæ›´æ–°ã€‚"
#: doc/classes/Control.xml:559
msgid ""
@@ -18918,7 +19241,6 @@ msgstr ""
"[/codeblock]"
#: doc/classes/Control.xml:594
-#, fuzzy
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 "
@@ -18937,13 +19259,14 @@ msgid ""
" return color\n"
"[/codeblock]"
msgstr ""
-"在鼠标指针处显示给定的控件。调用此方法的好时机在[method get_drag_data]中。该"
-"控件一定ä¸èƒ½åœ¨åœºæ™¯æ ‘中。\n"
+"在鼠标指针处显示指定的控件。调用此方法好的时机,是在 [method get_drag_data] "
+"中。控件ä¸å¾—ä½äºŽåœºæ™¯æ ‘当中。你ä¸åº”该释放控件,也ä¸åº”该在拖动æŒç»­æ—¶é—´ç»“æŸä¿ç•™"
+"对控件的引用。拖拽结æŸåŽä¼šè‡ªåŠ¨åˆ é™¤ã€‚\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"
+" # 使用ä¸åœ¨æ ‘中的控件\n"
" var cpb = ColorPickerButton.new()\n"
" cpb.color = color\n"
" cpb.rect_size = Vector2(50, 50)\n"
@@ -18989,7 +19312,6 @@ msgstr ""
"margin_right]和[member margin_top]的设置方法。"
#: doc/classes/Control.xml:646
-#, fuzzy
msgid ""
"Sets the margins to a [code]preset[/code] from [enum Control.LayoutPreset] "
"enum. This is the code equivalent to using the Layout menu in the 2D "
@@ -19001,12 +19323,12 @@ msgid ""
"Use parameter [code]margin[/code] to determine the gap between the [Control] "
"and the edges."
msgstr ""
-"å°†[enum Control.LayoutPreset]枚举的边è·è®¾ç½®ä¸º[code]preset[/code]。这等效于在"
-"2D编辑器中使用“布局â€èœå•çš„代ç ã€‚\n"
-"å°†å‚æ•°[code] resize_mode [/code]与[enum Control.LayoutPresetMode]中的常é‡ä¸€èµ·"
-"使用,å¯ä»¥æ›´å¥½åœ°ç¡®å®š[Control]的结果大å°ã€‚如果将æ’定大å°ä¸Žæ›´æ”¹å¤§å°çš„预设一起使"
-"用,例如[code] PRESET_LEFT_WIDE [/code]。\n"
-"使用å‚æ•°[code] margin [/code]确定[Control]和边缘之间的间隙。"
+"从 [enum Control.LayoutPreset] 枚举将边è·è®¾ç½®ä¸º [code]preset[/code]。这是等效"
+"于在 2D 编辑器中使用布局èœå•çš„ç¼–ç ã€‚\n"
+"使用å‚æ•° [code]resize_mode[/code] å’Œ [enum Control.LayoutPresetMode] 中的常é‡"
+"æ¥æ›´å¥½åœ°ç¡®å®š [Control] 的最终大å°ã€‚如果与更改大å°çš„预设一起使用,则常规大å°å°†"
+"被忽略,例如[code]PRESET_LEFT_WIDE[/code]。\n"
+"使用å‚æ•° [code]margin[/code] 确定 [Control] 和边缘之间的间隙。"
#: doc/classes/Control.xml:656
msgid ""
@@ -19042,14 +19364,19 @@ msgid ""
"If [code]exclusive[/code] is [code]true[/code], other controls will not "
"receive input and clicking outside this control will not close it."
msgstr ""
+"模æ€æ˜¾ç¤ºæŽ§ä»¶ã€‚控件必须是一个å­çª—å£ã€‚模æ€æŽ§ä»¶æ•èŽ·è¾“入信å·ï¼Œç›´åˆ°å…³é—­æˆ–访问它们"
+"之外的区域。当模æ€æŽ§ä»¶å¤±åŽ»ç„¦ç‚¹æˆ–按下 ESC 键时,会自动éšè—。模æ€æŽ§ä»¶å¹¿æ³›ç”¨äºŽå¼¹"
+"出对è¯æ¡†å’Œèœå•ã€‚\n"
+"如果 [code]exclusive[/code] 为 [code]true[/code],则其他控件将ä¸ä¼šæŽ¥æ”¶è¾“入,"
+"并且在此控件外å•å‡»ä¸ä¼šå…³é—­å®ƒã€‚"
#: doc/classes/Control.xml:688
msgid ""
"Moves the mouse cursor to [code]to_position[/code], relative to [member "
"rect_position] of this [Control]."
msgstr ""
-"将鼠标光标移动到[code]to_position[/code],相对于这个[控件]的[member "
-"rect_position]。"
+"将鼠标光标移动到 [code]to_position[/code],相对于这个控件 [Control] 的 "
+"[member rect_position]。"
#: doc/classes/Control.xml:694
msgid ""
@@ -19082,14 +19409,13 @@ msgstr ""
"更改å³è¾¹è·çš„æ›´æ–°æ–¹å¼ã€‚为了方便起è§ï¼Œå¯ä»¥ä½¿ç”¨[enum Anchor]常é‡ä¹‹ä¸€ã€‚"
#: doc/classes/Control.xml:703
-#, fuzzy
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 ""
-"将节点的顶部边缘锚定到其父控件的原点,中心或末端。它更改了节点移动或更改大å°"
-"时上边è·çš„æ›´æ–°æ–¹å¼ã€‚为了方便起è§ï¼Œå¯ä»¥ä½¿ç”¨[enum Anchor]常é‡ä¹‹ä¸€ã€‚"
+"锚定节点的顶部边缘到原点ã€ä¸­å¿ƒæˆ–其父控件的末端。当节点移动或改å˜å¤§å°æ—¶ï¼Œå®ƒå¯"
+"以改å˜é¡¶è¾¹çš„æ›´æ–°æ–¹å¼ã€‚为了便æ·ï¼Œä½ å¯ä»¥ä½¿ç”¨[enum Anchor]常数之一。"
#: doc/classes/Control.xml:706
msgid ""
@@ -19126,7 +19452,6 @@ msgstr ""
"最接近的[Control]。"
#: doc/classes/Control.xml:715
-#, fuzzy
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 "
@@ -19134,10 +19459,10 @@ 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 ""
-"告诉Godot,默认情况下,如果用户按下键盘上的å‘å³ç®­å¤´æˆ–游æˆæ‰‹æŸ„上的å‘å³ç®­å¤´ï¼Œåˆ™"
-"应将焦点对准哪个节点。您å¯ä»¥é€šè¿‡ç¼–辑[code] ui_right [/code]输入æ“作æ¥æ›´æ”¹é”®ã€‚"
-"该节点必须是[Control]。如果未设置此属性,则Godot会将焦点放在该控件底部最接近"
-"的[Control]。"
+"告诉Godot,如果用户按键盘上的å³é”®æˆ–默认的游æˆæ‰‹æŸ„上的å³é”®ï¼Œå®ƒåº”该把键盘焦点给"
+"哪个节点。你å¯ä»¥é€šè¿‡ç¼–辑[code]ui_right[/code]输入动作æ¥æ”¹å˜è¿™ä¸ªé”®ã€‚该节点必须"
+"是一个[Control]。如果没有设置这个属性,Godot将把焦点交给离这个节点底部最近的"
+"[Control]。"
#: doc/classes/Control.xml:718
msgid ""
@@ -19153,7 +19478,6 @@ msgstr ""
"接近的[Control]。"
#: doc/classes/Control.xml:721
-#, fuzzy
msgid ""
"Tells Godot which node it should give keyboard focus to if the user presses "
"Tab on a keyboard by default. You can change the key by editing the "
@@ -19161,12 +19485,11 @@ msgid ""
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
-"告诉Godot,如果用户默认情况下按键盘上的[kbd] Tab [/kbd],则应将焦点对准键盘上"
-"的哪个节点。您å¯ä»¥é€šè¿‡ç¼–辑[code] ui_focus_next [/code]输入æ“作æ¥æ›´æ”¹é”®ã€‚\n"
-"如果未设置此属性,则Godot将基于场景树中的周围节点选择“best guessâ€ã€‚"
+"告诉Godot,如果用户默认按键盘上的Tab键,它应该把键盘焦点给哪个节点。你å¯ä»¥é€š"
+"过编辑[code]ui_focus_next[/code]输入动作æ¥æ”¹å˜è¿™ä¸ªé”®ã€‚\n"
+"如果这个属性没有设置,Godot会根æ®åœºæ™¯æ ‘中的周围节点选择一个 \"最佳猜测\"。"
#: doc/classes/Control.xml:725
-#, fuzzy
msgid ""
"Tells Godot which node it should give keyboard focus to if the user presses "
"Shift+Tab on a keyboard by default. You can change the key by editing the "
@@ -19174,9 +19497,9 @@ msgid ""
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
-"告诉Godot,如果用户默认情况下按键盘上的[kbd] Shift + Tab [/kbd],则应将焦点对"
-"准哪个节点。您å¯ä»¥é€šè¿‡ç¼–辑[code] ui_focus_prev [/code]输入æ“作æ¥æ›´æ”¹é”®ã€‚\n"
-"如果未设置此属性,则Godot将基于场景树中的周围节点选择“best guessâ€ã€‚"
+"告诉Godot,如果用户按键盘上的Shift+Tab键,它应该把键盘焦点给哪个节点,这是默"
+"认。你å¯ä»¥é€šè¿‡ç¼–辑[code]ui_focus_prev[/code]输入动作æ¥æ”¹å˜è¿™ä¸ªé”®ã€‚\n"
+"如果没有设置这个属性,Godot会根æ®åœºæ™¯æ ‘中的周围节点选择一个 \"最佳猜测\"。"
#: doc/classes/Control.xml:729
msgid ""
@@ -19218,6 +19541,22 @@ msgid ""
"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
"[/codeblock]"
msgstr ""
+"改å˜å·¥å…·æ示的文本。当用户的鼠标光标在这个控件上åœç•™ç‰‡åˆ»ï¼Œå·¥å…·æ示就会出现,"
+"å‰æ是[member mouse_filter]属性éž[constant MOUSE_FILTER_IGNORE]。你å¯ä»¥ç”¨é¡¹ç›®"
+"设置中的[code]gui/timers/tooltip_delay_sec[/code]选项改å˜å·¥å…·æ示出现的时"
+"间。\n"
+"工具æ示的弹出将使用默认的实现,或者你å¯ä»¥é€šè¿‡è¦†ç›–[method "
+"_make_custom_tooltip]æ供一个自定义的实现。默认的工具æ示包括一个[PopupPanel]"
+"å’Œ[Label],其主题属性å¯ä»¥é€šè¿‡[code]\"TooltipPanel\"[/code]å’Œ"
+"[code]\"TooltipLabel\"[/code]方法分别进行自定义。如:\n"
+"[codeblock]\n"
+"var style_box = StyleBoxFlat.new()\n"
+"style_box.set_bg_color(Color(1, 1, 0))\n"
+"style_box.set_border_width_all(2)\n"
+"# 我们在这里å‡è®¾`theme`属性已ç»è¢«äº‹å…ˆåˆ†é…了一个自定义的Theme。\n"
+"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
+"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
+"[/codeblock]"
#: doc/classes/Control.xml:747
msgid ""
@@ -19226,6 +19565,9 @@ msgid ""
"handling. The viewport first hides the modal and after marks the input as "
"handled."
msgstr ""
+"å¯ç”¨å½“你关闭控件模æ€æ—¶ï¼Œè¾“入是å¦ä¼ æ’­ã€‚\n"
+"如果[code]false[/code],在视窗输入事件处ç†æ—¶åœæ­¢äº‹ä»¶å¤„ç†ã€‚视窗首先éšè—模æ€ï¼Œ"
+"之åŽå°†è¾“入标记为已处ç†ã€‚"
#: doc/classes/Control.xml:751
msgid ""
@@ -19352,7 +19694,6 @@ msgstr ""
"çš„ä½ç½®ã€‚"
#: doc/classes/Control.xml:792
-#, fuzzy
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 "
@@ -19369,17 +19710,17 @@ msgid ""
"[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member "
"rect_scale] property."
msgstr ""
-"节点相对于其[member rect_size]的比例。更改此属性以围绕其[member "
-"rect_pivot_offset]缩放节点。控件的[member hint_tooltip]也会根æ®æ­¤å€¼è¿›è¡Œç¼©"
-"放。\n"
-"[b]注æ„:[/b]此属性主è¦ç”¨äºŽåŠ¨ç”»ç›®çš„。缩放控件时,控件内的文本将看起æ¥åƒç´ åŒ–或"
-"模糊。è¦åœ¨æ‚¨çš„项目中支æŒå¤šç§åˆ†è¾¨çŽ‡ï¼Œè¯·ä½¿ç”¨[url = https://docs.godotengine."
-"org/zh_CN/latest/tutorials/viewports/multiple_resolutions."
-"html]documentation[/ url]中所述的适当视å£æ‹‰ä¼¸æ¨¡å¼åˆ†åˆ«ç¼©æ”¾æŽ§ä»¶ã€‚\n"
-"[b]注æ„:[/b]如果控制节点是[Container]节点的å­çº§ï¼Œåˆ™åœ¨åœºæ™¯è¢«å®žä¾‹åŒ–时,比例将"
-"é‡ç½®ä¸º[code] Vector2(1, 1)[/code]。è¦è®¾ç½®æŽ§ä»¶çš„缩放比例,请使用[code] yield "
-"(get_tree(), \"idle_frame\")[/code]等待一帧,然åŽè®¾ç½®å…¶[member rect_scale]属"
-"性。"
+"节点的缩放,相对于其[member rect_size]。改å˜è¿™ä¸ªå±žæ€§å¯ä»¥ä½¿èŠ‚点围绕它的"
+"[member rect_pivot_offset]缩放。控件的[member hint_tooltip]也将根æ®è¿™ä¸ªå€¼è¿›è¡Œ"
+"缩放。\n"
+"[b]注æ„:[/b] 这个属性主è¦ç”¨äºŽåŠ¨ç”»ç”¨é€”。当控件被缩放时,控件内的文本将看起æ¥"
+"是åƒç´ åŒ–或模糊的。è¦åœ¨ä½ çš„项目支æŒå¤šç§åˆ†è¾¨çŽ‡ï¼Œè¯·ä½¿ç”¨[url=https://docs."
+"godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions.html]文档[/"
+"url]中æè¿°çš„åˆé€‚的视窗拉伸模å¼ï¼Œè€Œä¸æ˜¯å•ç‹¬ç¼©æ”¾æŽ§ä»¶ã€‚\n"
+"[b]注æ„:[/b] 如果控件节点是[Container]节点的一个å­èŠ‚点,当场景实例化时,缩放"
+"将被é‡ç½®ä¸º[code]Vector2(1, 1)[/code]。è¦åœ¨å®žä¾‹åŒ–时设置控件的缩放,使用"
+"[code]yield(get_tree(), \"idle_frame\")[/code]等待一帧,然åŽè®¾ç½®å…¶[member "
+"rect_scale]属性。"
#: doc/classes/Control.xml:797
msgid ""
@@ -19440,9 +19781,8 @@ msgid "Emitted when the node's minimum size changes."
msgstr "当节点的最å°å¤§å°æ›´æ”¹æ—¶å‘出。"
#: doc/classes/Control.xml:836
-#, fuzzy
msgid "Emitted when a modal [Control] is closed. See [method show_modal]."
-msgstr "按下自定义按钮时å‘出。 å‚阅[方法add_button]。"
+msgstr "当模æ€æŽ§ä»¶[Control]被关闭时触å‘。å‚阅[method show_modal]。"
#: doc/classes/Control.xml:841
msgid ""
@@ -19453,6 +19793,11 @@ msgid ""
"at least until the mouse is moved to reach the parent's [code]Rect[/code] "
"area."
msgstr ""
+"当鼠标进入控件的[code]Rect[/code]区域时触å‘,åªè¦å…¶[member mouse_filter]å…许"
+"事件到达。\n"
+"[b]注æ„:[/b] 如果鼠标在进入父控件的[code]Rect[/code]区域之å‰è¿›å…¥å­[Control]"
+"节点,在鼠标移动到父控件的[code]Rect[/code]区域之å‰ï¼Œä¸ä¼šå‘出[signal "
+"mouse_entered]。"
#: doc/classes/Control.xml:847
msgid ""
@@ -19462,6 +19807,10 @@ msgid ""
"child [Control] node, even if the mouse cursor is still inside the parent's "
"[code]Rect[/code] area."
msgstr ""
+"当鼠标离开控件的[code]Rect[/code]区域时触å‘,åªè¦å…¶[member mouse_filter]å…许"
+"事件到达。\n"
+"[b]注æ„:[/b] 如果鼠标进入一个å­[Control]节点,å³ä½¿é¼ æ ‡å…‰æ ‡ä»ç„¶åœ¨çˆ¶"
+"[code]Rect[/code]区域内,[signal mouse_exited]也将触å‘。"
#: doc/classes/Control.xml:853
msgid "Emitted when the control changes size."
@@ -19514,18 +19863,17 @@ msgid "Sent when the node loses focus."
msgstr "当节点失去焦点时å‘é€ã€‚"
#: doc/classes/Control.xml:888
-#, fuzzy
msgid ""
"Sent when the node's [member theme] changes, right before Godot redraws the "
"control. Happens when you call one of the [code]add_*_override[/code] "
"methods."
msgstr ""
-"当节点的[member theme]更改时å‘é€ï¼Œå°±åœ¨Godoté‡ç”»æŽ§ä»¶ä¹‹å‰ã€‚调用[code] "
-"add_theme _ * _ override [/code]方法之一时å‘生。"
+"当节点的 [member theme] 改å˜æ—¶ï¼Œå°±åœ¨Godoté‡ç»˜æŽ§ä»¶ä¹‹å‰å‘é€ã€‚当你调用"
+"[code]add_*_override[/code]方法之一时å‘生。"
#: doc/classes/Control.xml:891
msgid "Sent when an open modal dialog closes. See [method show_modal]."
-msgstr ""
+msgstr "当一个打开的模æ€å¯¹è¯æ¡†å…³é—­æ—¶å‘é€ã€‚å‚阅[method show_modal]。"
#: doc/classes/Control.xml:894
msgid ""
@@ -19970,10 +20318,9 @@ msgid "Convex polygon shape for 3D physics."
msgstr "用于3D物ç†çš„凸多边形形状。"
#: doc/classes/ConvexPolygonShape.xml:7
-#, fuzzy
msgid ""
"Convex polygon shape resource, which can be added to a [PhysicsBody] or area."
-msgstr "凸多边形形状资æºï¼Œå¯ä»¥å°†å…¶æ·»åŠ åˆ°[PhysicsBody3D]或区域中。"
+msgstr "凸多边形形状资æºï¼Œå¯ä»¥æ·»åŠ åˆ°[PhysicsBody]或area区域。"
#: doc/classes/ConvexPolygonShape.xml:16
msgid "The list of 3D points forming the convex polygon shape."
@@ -20002,14 +20349,13 @@ msgstr ""
"以加快碰撞检测的速度。"
#: doc/classes/ConvexPolygonShape2D.xml:17
-#, fuzzy
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 Geometry.convex_hull_2d] for details."
msgstr ""
-"基于æ供的点集,这将使用凸包算法创建并分é…[member points]属性。删除所有ä¸éœ€è¦"
-"的点。有关详细信æ¯ï¼Œè¯·å‚阅[method Geometry2D.convex_hull]。"
+"基于所æ供点的集åˆï¼Œä½¿ç”¨å‡¸åŒ…ç®—æ³•åˆ›å»ºå’Œåˆ†é… [member points]属性。删除所有ä¸éœ€"
+"è¦çš„点。å‚阅[method Geometry.convex_hull_2d]。"
#: doc/classes/ConvexPolygonShape2D.xml:23
msgid ""
@@ -20022,7 +20368,6 @@ msgid "CPU-based 3D particle emitter."
msgstr "基于CPUçš„3Dç²’å­å‘射器。"
#: doc/classes/CPUParticles.xml:7
-#, fuzzy
msgid ""
"CPU-based 3D particle node used to create a variety of particle systems and "
"effects.\n"
@@ -20032,16 +20377,15 @@ msgid ""
"and doesn't need to be configured by the user."
msgstr ""
"基于CPUçš„3Dç²’å­èŠ‚点,用于创建å„ç§ç²’å­ç³»ç»Ÿå’Œæ•ˆæžœã€‚\n"
-"å¦è¯·å‚阅[GPUParticles3D],它æ供与硬件加速相åŒçš„功能,但å¯èƒ½æ— æ³•åœ¨è¾ƒæ—§çš„设备"
-"上è¿è¡Œã€‚"
+"å‚阅[Particles],它是以硬件加速æ供相åŒçš„功能,但å¯èƒ½æ— æ³•åœ¨æ—§è®¾å¤‡ä¸Šè¿è¡Œã€‚\n"
+"[b]注æ„:[/b] 与[Particles]ä¸åŒï¼Œå…¶å¯è§æ€§çŸ©å½¢æ˜¯å³æ—¶ç”Ÿæˆçš„,ä¸éœ€è¦ç”¨æˆ·é…置。"
#: doc/classes/CPUParticles.xml:18
-#, fuzzy
msgid ""
"Sets this node's properties to match a given [Particles] node with an "
"assigned [ParticlesMaterial]."
msgstr ""
-"设置此节点的属性,以使给定的[GPUParticles2D]节点与分é…çš„[ParticlesMaterial]匹"
+"设置此节点的属性,以将给定的 [Particles] 节点与指定的 [ParticlesMaterial] 匹"
"é…。"
#: doc/classes/CPUParticles.xml:25 doc/classes/CPUParticles2D.xml:26
@@ -20092,6 +20436,9 @@ msgid ""
"therefore removing all particles that were already emitted before changing "
"[member amount]."
msgstr ""
+"在一个å‘射周期内排放的粒å­æ•°ï¼ˆå¯¹åº”于[member lifetime])。\n"
+"[b]注æ„:[/b]改å˜[member amount]å°†é‡ç½®ç²’å­å‘射,因此,在改å˜[member amount]之"
+"å‰å·²ç»æŽ’放的所有粒å­å°†è¢«ç§»é™¤ã€‚"
#: doc/classes/CPUParticles.xml:94 doc/classes/CPUParticles2D.xml:95
msgid "Initial rotation applied to each particle, in degrees."
@@ -20150,22 +20497,21 @@ msgid "Animation speed randomness ratio."
msgstr "动画速度éšæœºçŽ‡ã€‚"
#: doc/classes/CPUParticles.xml:130
-#, fuzzy
msgid ""
"Each particle's initial color. To have particle display color in a "
"[SpatialMaterial] make sure to set [member SpatialMaterial."
"vertex_color_use_as_albedo] to [code]true[/code]."
msgstr ""
-"æ¯ä¸ªç²’å­çš„åˆå§‹é¢œè‰²ã€‚如果[GPUParticles2D]çš„[code]texture[/code]被定义,它将乘"
-"以这个颜色。è¦è®©ç²’å­åœ¨[BaseMaterial3D]中显示颜色,请确ä¿è®¾ç½®[member "
-"BaseMaterial3D]。vertex_color_use_as_albedo] [code]true[/code]。"
+"æ¯ä¸ªç²’å­çš„åˆå§‹é¢œè‰²ã€‚为了让粒å­åœ¨[SpatialMaterial]中显示颜色,请确ä¿å°†[member "
+"SpatialMaterial.vertex_color_use_as_albedo]设置为[code]true[/code]。"
#: doc/classes/CPUParticles.xml:133 doc/classes/ParticlesMaterial.xml:118
-#, fuzzy
msgid ""
"Each particle's color will vary along this [GradientTexture] over its "
"lifetime (multiplied with [member color])."
-msgstr "æ¯ä¸ªç²’å­çš„颜色将沿ç€è¿™ä¸ª[GradientTexture]å˜åŒ–。"
+msgstr ""
+"æ¯ä¸ªç²’å­çš„颜色将在其生命周期内éšç€è¿™ä¸ª[GradientTexture]å˜åŒ–,å³ä¸Ž[member "
+"color]相乘。"
#: doc/classes/CPUParticles.xml:136 doc/classes/CPUParticles2D.xml:137
#: doc/classes/ParticlesMaterial.xml:121
@@ -20221,32 +20567,28 @@ msgstr ""
"EMISSION_SHAPE_DIRECTED_POINTS]时产生粒å­çš„åˆå§‹ä½ç½®ã€‚"
#: doc/classes/CPUParticles.xml:163
-#, fuzzy
msgid ""
"The axis for the ring shaped emitter when using [constant "
"EMISSION_SHAPE_RING]."
-msgstr "设置使用[constant EMISSION_SHAPE_DIRECTED_POINTS]时粒å­å‘å°„çš„æ–¹å‘。"
+msgstr "使用[constant EMISSION_SHAPE_RING]时,环形å‘射器的轴。"
#: doc/classes/CPUParticles.xml:166
-#, fuzzy
msgid ""
"The height for the ring shaped emitter when using [constant "
"EMISSION_SHAPE_RING]."
-msgstr "设置使用[constant EMISSION_SHAPE_DIRECTED_POINTS]时粒å­å‘å°„çš„æ–¹å‘。"
+msgstr "使用[constant EMISSION_SHAPE_RING]时,环形å‘射器的高度。"
#: doc/classes/CPUParticles.xml:169
-#, fuzzy
msgid ""
"The inner radius for the ring shaped emitter when using [constant "
"EMISSION_SHAPE_RING]."
-msgstr "设置使用[constant EMISSION_SHAPE_DIRECTED_POINTS]时粒å­å‘å°„çš„æ–¹å‘。"
+msgstr "使用[constant EMISSION_SHAPE_RING]时,环形å‘射器的内åŠå¾„。"
#: doc/classes/CPUParticles.xml:172
-#, fuzzy
msgid ""
"The radius for the ring shaped emitter when using [constant "
"EMISSION_SHAPE_RING]."
-msgstr "设置使用[constant EMISSION_SHAPE_DIRECTED_POINTS]时粒å­å‘å°„çš„æ–¹å‘。"
+msgstr "使用[constant EMISSION_SHAPE_RING]时,环形å‘射器的åŠå¾„。"
#: doc/classes/CPUParticles.xml:175 doc/classes/CPUParticles2D.xml:164
msgid ""
@@ -20347,9 +20689,8 @@ msgstr "åˆå§‹é€Ÿåº¦éšæœºçŽ‡ã€‚"
#: doc/classes/CPUParticles.xml:223 doc/classes/CPUParticles2D.xml:203
#: doc/classes/Particles.xml:81 doc/classes/Particles2D.xml:52
-#, fuzzy
msgid "The amount of time each particle will exist (in seconds)."
-msgstr "æ¯ä¸ªç²’å­å°†å­˜åœ¨çš„时间é‡ã€‚"
+msgstr "æ¯ä¸ªç²’å­å­˜åœ¨çš„时间,以秒为å•ä½ã€‚"
#: doc/classes/CPUParticles.xml:226 doc/classes/CPUParticles2D.xml:206
#: doc/classes/ParticlesMaterial.xml:196
@@ -20656,9 +20997,8 @@ msgstr ""
"调制。"
#: doc/classes/CPUParticles.xml:373 doc/classes/ParticlesMaterial.xml:325
-#, fuzzy
msgid "Particles will be emitted in a ring or cylinder."
-msgstr "ç²’å­å°†åœ¨çŸ©å½¢åŒºåŸŸå†…å‘射。"
+msgstr "ç²’å­å°†ä»¥çŽ¯å½¢æˆ–圆柱的形å¼å‘射出æ¥ã€‚"
#: doc/classes/CPUParticles.xml:376 doc/classes/CPUParticles2D.xml:353
#: doc/classes/ParticlesMaterial.xml:328
@@ -20670,7 +21010,6 @@ msgid "CPU-based 2D particle emitter."
msgstr "基于CPUçš„2Dç²’å­å‘射器。"
#: doc/classes/CPUParticles2D.xml:7
-#, fuzzy
msgid ""
"CPU-based 2D particle node used to create a variety of particle systems and "
"effects.\n"
@@ -20680,8 +21019,8 @@ msgid ""
"fly and doesn't need to be configured by the user."
msgstr ""
"基于CPUçš„2Dç²’å­èŠ‚点,用于创建å„ç§ç²’å­ç³»ç»Ÿå’Œæ•ˆæžœã€‚\n"
-"å¦è¯·å‚阅[GPUParticles2D],它æ供与硬件加速相åŒçš„功能,但å¯èƒ½æ— æ³•åœ¨è¾ƒæ—§çš„设备"
-"上è¿è¡Œã€‚"
+"å‚阅[Particles2D],它通过硬件加速æ供相åŒçš„功能,但å¯èƒ½æ— æ³•åœ¨æ—§è®¾å¤‡ä¸Šè¿è¡Œã€‚\n"
+"[b]注æ„:[/b] 其与[Particles2D]ä¸åŒï¼Œå¯è§æ€§çŸ©å½¢æ˜¯å³æ—¶ç”Ÿæˆçš„,ä¸éœ€è¦ç”¨æˆ·é…置。"
#: doc/classes/CPUParticles2D.xml:12 doc/classes/Particles2D.xml:14
msgid ""
@@ -20690,13 +21029,12 @@ msgstr ""
"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html"
#: doc/classes/CPUParticles2D.xml:19
-#, fuzzy
msgid ""
"Sets this node's properties to match a given [Particles2D] node with an "
"assigned [ParticlesMaterial]."
msgstr ""
-"设置此节点的属性,以使给定的[GPUParticles2D]节点与分é…çš„[ParticlesMaterial]匹"
-"é…。"
+"设置此节点的属性,以将给定的 [Particles2D] 节点与指定的 [ParticlesMaterial] "
+"匹é…。"
#: doc/classes/CPUParticles2D.xml:131
msgid ""
@@ -20705,11 +21043,10 @@ msgid ""
msgstr "æ¯ä¸ªç²’å­çš„åˆå§‹é¢œè‰²ã€‚如果定义了[member 纹ç†],它将乘以该颜色。"
#: doc/classes/CPUParticles2D.xml:134
-#, fuzzy
msgid ""
"Each particle's color will vary along this [Gradient] (multiplied with "
"[member color])."
-msgstr "æ¯ä¸ªç²’å­çš„颜色将沿ç€è¿™ä¸ª[GradientTexture]å˜åŒ–。"
+msgstr "æ¯ä¸ªç²’å­çš„颜色将éšç€è¿™ä¸ª[Gradient]å˜åŒ–,å³ä¸Ž[member color]相乘。"
#: doc/classes/CPUParticles2D.xml:161
msgid ""
@@ -20871,35 +21208,35 @@ msgid ""
"string-comparison-with-double-hmac-strategy]this blog post[/url] for more "
"information."
msgstr ""
+"比较两个[PoolByteArray]是å¦ç›¸ç­‰ï¼Œè€Œä¸æ³„露时间信æ¯ï¼Œä»¥é˜²æ­¢è®¡æ—¶æ”»å‡»ã€‚\n"
+"更多信æ¯å‚阅[url=https://paragonie.com/blog/2015/11/preventing-timing-"
+"attacks-on-string-comparison-with-double-hmac-strategy]这篇åšæ–‡[/url]。"
#: doc/classes/Crypto.xml:56
-#, fuzzy
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 ""
-"用æ供的ç§æœ‰[code]key[/code]解密给定的[code]ciphertext[/code]。\n"
-"[b]注[/b]:å¯æŽ¥å—的密文的最大大å°å—密钥大å°é™åˆ¶ã€‚"
+"用æ供的ç§äºº[code]key[/code]解密给定的[code]ciphertext[/code]。\n"
+"[b]注æ„:[/b]所接å—的密ç æ–‡æœ¬çš„最大尺寸å—到密钥大å°é™åˆ¶ã€‚"
#: doc/classes/Crypto.xml:65
-#, fuzzy
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 ""
-"使用æ供的公共[code]key[/code]对给定的[code]plaintext[/code]进行加密。\n"
-"[b]注[/b]:å¯æŽ¥å—的明文的最大大å°å—密钥大å°é™åˆ¶ã€‚"
+"用æ供的公钥 [code]key[/code] 加密给定的[code]plaintext[/code]。\n"
+"[b]注æ„:[/b]接å—的明文的最大尺寸å—到密钥大å°çš„é™åˆ¶ã€‚"
#: doc/classes/Crypto.xml:73
-#, fuzzy
msgid ""
"Generates a [PoolByteArray] of cryptographically secure random bytes with "
"given [code]size[/code]."
-msgstr "生æˆå…·æœ‰ç»™å®š[code]size[/code]的加密安全éšæœºå­—节的[PackedByteArray]。"
+msgstr "生æˆå…·æœ‰ç»™å®š [code]size[/code] 的加密安全éšæœºå­—节的 [PoolByteArray]。"
#: doc/classes/Crypto.xml:80
msgid ""
@@ -20953,6 +21290,11 @@ msgid ""
"Currently, only [constant HashingContext.HASH_SHA256] and [constant "
"HashingContext.HASH_SHA1] are supported."
msgstr ""
+"使用 [code]key[/code] ç”Ÿæˆ [code]msg[/code] çš„ [url=https://en.wikipedia.org/"
+"wiki/HMAC]HMAC[/url] 摘è¦ã€‚ [code]hash_type[/code] å‚数是用于内部和外部哈希的"
+"哈希算法。\n"
+"ç›®å‰ä»…æ”¯æŒ [constant HashingContext.HASH_SHA256] å’Œ [constant HashingContext."
+"HASH_SHA1]。"
#: doc/classes/Crypto.xml:117
msgid ""
@@ -20997,17 +21339,16 @@ msgstr ""
"如果此CryptoKey仅具有公共部分,而没有ç§æœ‰éƒ¨åˆ†ï¼Œåˆ™è¿”回[code] true [/code]。"
#: doc/classes/CryptoKey.xml:25
-#, fuzzy
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 be a \"*.pub\" file if "
"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
-"从[code]path[/code]加载密钥。如果[code] public_only [/code]为[code] true [/"
-"code],则仅会加载公共密钥。\n"
-"[b]注释[/b]:如果[code] public_only [/code]为[code] true [/code],则[code] "
-"path [/code]应为“ * .pubâ€æ–‡ä»¶ï¼Œå¦åˆ™ä¸ºâ€œ * .keyâ€æ–‡ä»¶ã€‚"
+"从[code]path[/code]加载一个密钥。如果[code]public_only[/code]是[code]true[/"
+"code],将åªåŠ è½½å…¬é’¥ã€‚\n"
+"[b]注æ„:[/b] 如果[code]public_only[/code]是[code]true[/code],[code]path[/"
+"code]应该是一个 \"*.pub \" 文件,å¦åˆ™æ˜¯ \"*.key \" 文件。"
#: doc/classes/CryptoKey.xml:34
msgid ""
@@ -21018,17 +21359,16 @@ msgstr ""
"true [/code],则仅会加载公共密钥。"
#: doc/classes/CryptoKey.xml:42
-#, fuzzy
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 be a \"*.pub\" file if "
"[code]public_only[/code] is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
-"将密钥ä¿å­˜åˆ°ç»™å®šçš„[code]path[/code]。如果[code] public_only [/code]为[code] "
-"true [/code],则仅会ä¿å­˜å…¬é’¥ã€‚\n"
-"[b]注æ„[/b]:如果[code] public_only [/code]为[code] true [/code],则[code] "
-"path [/code]应为“ * .pubâ€æ–‡ä»¶ï¼Œå¦åˆ™ä¸ºâ€œ * .keyâ€æ–‡ä»¶ã€‚"
+"将密钥ä¿å­˜åˆ°ç»™å®šçš„ [code]path[/code]。如果 [code]public_only[/code] 为 "
+"[code]true[/code],则åªä¼šä¿å­˜å…¬é’¥ã€‚\n"
+"[b]注æ„:[/b]如果[code]public_only[/code]是[code]true[/code],则[code]path[/"
+"code]应该是一个\"*.pub\"文件,å¦åˆ™æ˜¯\"*.key\"文件。"
#: doc/classes/CryptoKey.xml:50
msgid ""
@@ -21067,7 +21407,6 @@ msgid "A CSG node that allows you to combine other CSG modifiers."
msgstr "一个CSG节点,å…许您组åˆå…¶ä»–CSG修改器。"
#: modules/csg/doc_classes/CSGCombiner.xml:7
-#, fuzzy
msgid ""
"For complex arrangements of shapes, it is sometimes needed to add structure "
"to your CSG nodes. The CSGCombiner node allows you to create this structure. "
@@ -21078,10 +21417,11 @@ msgid ""
"then do an operation that takes the two end results as its input to create "
"the final shape."
msgstr ""
-"对于å¤æ‚的形状排列,有时需è¦å°†ç»“构添加到CSG节点。 CSGCombiner3D节点å…许您创建"
-"此结构。节点å°è£…å…¶å­èŠ‚点的CSGæ“作结果。以此方å¼ï¼Œå¯ä»¥å¯¹ä½œä¸ºä¸€ä¸ªCSGCombiner3D"
-"节点的å­ä»£çš„一组形状进行æ“作,对作为第二CSGCombiner3D节点的å­ä»£çš„第二组形状进"
-"行一组å•ç‹¬æ“作,然åŽè¿›è¡Œä»¥ä¸‹æ“作:将两个最终结果作为输入以创建最终形状。"
+"对于å¤æ‚的形状排列,有时需è¦å‘CSG节点添加结构体。CSGCombiner节点å…许你创建这"
+"ç§ç»“构体。该节点å°è£…了其å­èŠ‚点的CSGæ“作的结果。通过这ç§æ–¹å¼ï¼Œå¯ä»¥å¯¹ä½œä¸ºä¸€ä¸ª"
+"CSGCombiner节点的å­èŠ‚点的一组形状进行æ“作,并对作为第二个CSGCombiner节点的å­"
+"节点的第二组形状进行å•ç‹¬çš„æ“作,然åŽè¿›è¡Œæ“作,将两个最终结果作为其输入æ¥åˆ›å»º"
+"最终形状。"
#: modules/csg/doc_classes/CSGCylinder.xml:4
msgid "A CSG Cylinder shape."
@@ -21124,7 +21464,7 @@ msgid ""
"will have a flat shaded look."
msgstr ""
"如果[code] true [/code],则将圆柱体的法线设置为具有平滑效果,使圆柱体看起æ¥æ˜¯"
-"圆形的。如果[code]false[/code],则圆柱体将具有平å¦çš„阴影外观。"
+"圆形的。如果[code]false[/code],则圆柱体将具有平å¦çš„阴影表现。"
#: modules/csg/doc_classes/CSGMesh.xml:4
msgid "A CSG Mesh shape that uses a mesh resource."
@@ -21152,6 +21492,10 @@ msgid ""
"If a flat shader is required, ensure that all faces' vertex normals are "
"parallel."
msgstr ""
+"用æ¥ä½œä¸ºCSG形状的[Mesh]资æºã€‚\n"
+"[b]注æ„:[/b] 当使用[ArrayMesh]时,除éžéœ€è¦ä¸€ä¸ªå¹³é¢ç€è‰²å™¨ï¼Œå¦åˆ™è¦é¿å…使用顶点"
+"法线的网格。默认情况下,CSGMesh会忽略网格的顶点法线,并使用é¢çš„法线计算平整的"
+"ç€è‰²å™¨ã€‚如果需è¦ä½¿ç”¨å¹³é¢ç€è‰²å™¨ï¼Œè¯·ç¡®ä¿æ‰€æœ‰é¢çš„顶点法线是平行的。"
#: modules/csg/doc_classes/CSGPolygon.xml:4
msgid "Extrudes a 2D polygon shape to create a 3D mesh."
@@ -21161,13 +21505,12 @@ msgstr "拉伸2D多边形形状以创建3D网格。"
msgid ""
"An array of 2D points is extruded to quickly and easily create a variety of "
"3D meshes."
-msgstr ""
+msgstr "挤出一组 2D 点以快速创建å„ç§ 3D 网格。"
#: modules/csg/doc_classes/CSGPolygon.xml:15
-#, fuzzy
msgid ""
"When [member mode] is [constant MODE_DEPTH], the depth of the extrusion."
-msgstr "[member mode]为[constant MODE_DEPTH]时的挤出深度。"
+msgstr "当[member mode]为[constant MODE_DEPTH]时,挤出的深度。"
#: modules/csg/doc_classes/CSGPolygon.xml:18
msgid ""
@@ -21176,10 +21519,13 @@ msgid ""
"V around the outline of the [member polygon]), the bottom-left quarter to "
"the front end face, and the bottom-right quarter to the back end face."
msgstr ""
+"用于生æˆçš„网格的æ质。UVå°†æ质的上åŠéƒ¨åˆ†æ˜ å°„到挤出的形状,å³U沿挤出物的长度,"
+"V围绕 [member polygon]的轮廓,左下角的四分之一映射到å‰ç«¯é¢ï¼Œå³ä¸‹è§’的四分之一"
+"映射到åŽç«¯é¢ã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:21
msgid "The [member mode] used to extrude the [member polygon]."
-msgstr ""
+msgstr "用于挤出 [member polygon] 的 [member mode] 。"
#: modules/csg/doc_classes/CSGPolygon.xml:24
msgid ""
@@ -21188,12 +21534,15 @@ msgid ""
"shape. If [code]false[/code] the top half of the material is repeated every "
"step of the extrusion."
msgstr ""
+"当 [member mode] 为[constant MODE_PATH]时,默认情况下, [member material]的上"
+"åŠéƒ¨åˆ†ä¼šæ²¿ç€æŒ¤å‡ºå½¢çŠ¶çš„整个长度被拉伸。如果[code]false[/code],挤出的æ¯ä¸€æ­¥éƒ½"
+"会é‡å¤æ质的上åŠéƒ¨åˆ†ã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:27
msgid ""
"When [member mode] is [constant MODE_PATH], the path interval or ratio of "
"path points to extrusions."
-msgstr ""
+msgstr "当[member mode] 为[constant MODE_PATH]时,路径间隔或路径点比例挤出。"
#: modules/csg/doc_classes/CSGPolygon.xml:30
msgid ""
@@ -21201,6 +21550,8 @@ msgid ""
"interval should be by distance ([constant PATH_INTERVAL_DISTANCE]) or "
"subdivision fractions ([constant PATH_INTERVAL_SUBDIVIDE])."
msgstr ""
+"当 [member mode] 为 [constant MODE_PATH] 时,这将确定间隔是按è·ç¦»ï¼ˆ[constant "
+"PATH_INTERVAL_DISTANCE])还是细分分数([constant PATH_INTERVAL_SUBDIVIDE])。"
#: modules/csg/doc_classes/CSGPolygon.xml:33
msgid ""
@@ -21208,6 +21559,8 @@ msgid ""
"the path are joined, by adding an extrusion between the last and first "
"points of the path."
msgstr ""
+"当 [member mode] 为 [constant MODE_PATH] 时,如果 [code]true[/code] 路径的两"
+"端会被连接起æ¥ï¼Œåœ¨è·¯å¾„的最åŽä¸€ä¸ªç‚¹å’Œç¬¬ä¸€ä¸ªç‚¹ä¹‹é—´æ·»åŠ æŒ¤å‡ºã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:36
msgid ""
@@ -21215,24 +21568,33 @@ msgid ""
"[Transform] of the [CSGPolygon] is used as the starting point for the "
"extrusions, not the [Transform] of the [member path_node]."
msgstr ""
+"当[member mode]为[constant MODE_PATH]时,如果[code]true[/code],则使用"
+"[CSGPolygon]çš„[Transform]作为挤出的起点,而ä¸æ˜¯[member path_node]çš„"
+"[Transform]。"
#: modules/csg/doc_classes/CSGPolygon.xml:39
msgid ""
"When [member mode] is [constant MODE_PATH], the location of the [Path] "
"object used to extrude the [member polygon]."
msgstr ""
+"[member mode] 为[constant MODE_PATH]时,用于挤出 [member polygon] 的 [Path] "
+"对象的å标。"
#: modules/csg/doc_classes/CSGPolygon.xml:42
msgid ""
"When [member mode] is [constant MODE_PATH], the [enum PathRotation] method "
"used to rotate the [member polygon] as it is extruded."
msgstr ""
+"当 [member mode] 为 [constant MODE_PATH] 时,[enum PathRotation] 方法用于在挤"
+"出时旋转[member polygon]。"
#: modules/csg/doc_classes/CSGPolygon.xml:45
msgid ""
"When [member mode] is [constant MODE_PATH], extrusions that are less than "
"this angle, will be merged together to reduce polygon count."
msgstr ""
+"当 [member mode] 为 [constant MODE_PATH] 时,å°äºŽæ­¤è§’度的挤出将åˆå¹¶åœ¨ä¸€èµ·ä»¥å‡"
+"少多边形数é‡ã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:48
msgid ""
@@ -21240,45 +21602,43 @@ msgid ""
"path, in meters, the texture coordinates will tile. When set to 0, texture "
"coordinates will match geometry exactly with no tiling."
msgstr ""
+"当[member mode] 为[constant MODE_PATH] 时,这是纹ç†å标沿ç€è·¯å¾„çš„è·ç¦»ï¼Œä»¥ç±³ä¸º"
+"å•ä½ï¼Œå°†è¿›è¡Œå¹³é“ºã€‚当设置为0时,纹ç†å标将与几何图形完全匹é…,没有平铺。"
#: modules/csg/doc_classes/CSGPolygon.xml:51
-#, fuzzy
msgid "The point array that defines the 2D polygon that is extruded."
-msgstr "点数组定义了我们将è¦æ‹‰ä¼¸çš„形状。"
+msgstr "定义挤出的二维多边形的点数组。"
#: modules/csg/doc_classes/CSGPolygon.xml:54
-#, fuzzy
msgid "If [code]true[/code], applies smooth shading to the extrusions."
-msgstr "如果[code]true[/code],éšè—指定索引的行。"
+msgstr "如果[code]true[/code],则对挤出应用平滑ç€è‰²ã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:57
msgid ""
"When [member mode] is [constant MODE_SPIN], the total number of degrees the "
"[member polygon] is rotated when extruding."
msgstr ""
+"当[member mode]为[constant MODE_SPIN],[member polygon]在挤出时旋转的总度数。"
#: modules/csg/doc_classes/CSGPolygon.xml:60
-#, fuzzy
msgid ""
"When [member mode] is [constant MODE_SPIN], the number of extrusions made."
-msgstr "[member mode]为[constant MODE_SPIN]时的挤出次数。"
+msgstr "[member mode] 为 [constant MODE_SPIN] 时,挤出的次数。"
#: modules/csg/doc_classes/CSGPolygon.xml:65
msgid "The [member polygon] shape is extruded along the negative Z axis."
-msgstr ""
+msgstr "[member polygon] 形状沿负 Z 轴挤出。"
#: modules/csg/doc_classes/CSGPolygon.xml:68
-#, fuzzy
msgid ""
"The [member polygon] shape is extruded by rotating it around the Y axis."
-msgstr "通过绕轴旋转Shape3Då¯ä»¥å°†å…¶æ‹‰ä¼¸ã€‚"
+msgstr "[member polygon]形状通过围绕Y轴旋转æ¥æŒ¤å‡ºã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:71
-#, fuzzy
msgid ""
"The [member polygon] shape is extruded along the [Path] specified in [member "
"path_node]."
-msgstr "Shape3D沿由[member path_node]中设置的[Shape3D]设置的路径拉伸。"
+msgstr "[member polygon] 形状沿 [member path_node] 中指定的 [Path] 挤出。"
#: modules/csg/doc_classes/CSGPolygon.xml:74
msgid ""
@@ -21286,6 +21646,8 @@ msgid ""
"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
"ensure viable shapes."
msgstr ""
+"[member polygon] 多边形的形状ä¸ä¼šè¢«æ—‹è½¬ã€‚\n"
+"[b]注æ„:[/b]è¦æ±‚路径的Zåæ ‡ä¸æ–­å‡å°‘,以确ä¿å¯è¡Œçš„形状。"
#: modules/csg/doc_classes/CSGPolygon.xml:78
msgid ""
@@ -21294,13 +21656,14 @@ msgid ""
"[b]Note:[/b] Requires the path's Z coordinates to continually decrease to "
"ensure viable shapes."
msgstr ""
+"[member polygon] 多边形的形状沿路径旋转,但ä¸ç»•è·¯å¾„轴旋转。\n"
+"[b]注æ„:[/b] 需è¦è·¯å¾„çš„ Z åæ ‡ä¸æ–­å‡å°ä»¥ç¡®ä¿å¯è¡Œçš„形状。"
#: modules/csg/doc_classes/CSGPolygon.xml:82
-#, fuzzy
msgid ""
"The [member polygon] shape follows the path and its rotations around the "
"path axis."
-msgstr "绕X轴旋转时所能产生的最大力。"
+msgstr "[member polygon] 多边形的形状跟éšè·¯å¾„åŠå…¶å›´ç»•è·¯å¾„轴的旋转。"
#: modules/csg/doc_classes/CSGPolygon.xml:85
msgid ""
@@ -21308,12 +21671,16 @@ msgid ""
"will determine the distance, in meters, each interval of the path will "
"extrude."
msgstr ""
+"当 [member mode] 被设置为路径[constant MODE_PATH] 时,[member path_interval] "
+"将决定路径的æ¯ä¸ªé—´éš”将被挤出的è·ç¦»ï¼Œå•ä½ä¸ºç±³ã€‚"
#: modules/csg/doc_classes/CSGPolygon.xml:88
msgid ""
"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
"will subdivide the polygons along the path."
msgstr ""
+"当 [member mode] 被设置为路径 [constant MODE_PATH]时,[member path_interval] "
+"将沿ç€è·¯å¾„细分多边形。"
#: modules/csg/doc_classes/CSGPrimitive.xml:4
msgid "Base class for CSG primitives."
@@ -21384,7 +21751,6 @@ msgstr ""
"å‡è¢«å¿½ç•¥ã€‚"
#: modules/csg/doc_classes/CSGShape.xml:60
-#, fuzzy
msgid ""
"The physics layers this area is in.\n"
"Collidable objects can exist in any of 32 different layers. These layers "
@@ -21398,11 +21764,13 @@ msgid ""
"documentation for more information."
msgstr ""
"这个区域所处的物ç†å±‚。\n"
-"å¯ç¢°æ’žçš„物体å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒçš„层中的任何一个。这些层的工作方å¼å°±åƒä¸€ä¸ªæ ‡ç­¾"
-"系统,而ä¸æ˜¯å¯è§†åŒ–的。一个å¯ç¢°æ’žå¯¹è±¡å¯ä»¥ä½¿ç”¨è¿™äº›å±‚æ¥é€‰æ‹©å®ƒå¯ä»¥ä¸Žå“ªäº›å¯¹è±¡ç¢°"
-"撞,使用 collision_mask 属性。\n"
-"如果对象A在对象B扫æ的任何一个图层中,或者对象B在对象A扫æ的任何一个图层中,"
-"那么就会检测到一个接触。"
+"å¯ç¢°æ’žçš„物体å¯ä»¥å­˜åœ¨äºŽ32个ä¸åŒå±‚中的任何一个。这些层的工作就åƒä¸€ä¸ªæ ‡ç­¾ç³»ç»Ÿï¼Œ"
+"而ä¸æ˜¯å¯è§†åŒ–的。一个å¯ç¢°æ’žç‰©ä½“å¯ä»¥ä½¿ç”¨è¿™äº›å±‚æ¥é€‰æ‹©å®ƒå¯ä»¥ä¸Žå“ªäº›ç‰©ä½“碰撞,使用 "
+"collision_mask 属性。\n"
+"如果对象A在对象B所扫æ的任何层中,或者对象B在对象A所扫æ的任何层中,就会检测"
+"到接触。详è§æ–‡æ¡£ä¸­çš„[url=https://docs.godotengine.org/en/3.4/tutorials/"
+"physics/physics_introduction.html#collision-layers-and-masks]碰撞层和掩ç [/"
+"url]。"
#: modules/csg/doc_classes/CSGShape.xml:65
msgid ""
@@ -21411,6 +21779,9 @@ msgid ""
"html#collision-layers-and-masks]Collision layers and masks[/url] in the "
"documentation for more information."
msgstr ""
+"æ­¤ CSG 形状将è¦æ‰«æ碰撞的物ç†å±‚。有关更多信æ¯ï¼Œè¯·å‚阅文档中的 [url=https://"
+"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction."
+"html#collision-layers-and-masks]碰撞层和掩ç [/url]。"
#: modules/csg/doc_classes/CSGShape.xml:68
msgid ""
@@ -21484,7 +21855,7 @@ msgid ""
"have a flat shaded look."
msgstr ""
"如果[code] true [/code],则将圆柱体的法线设置为具有平滑效果,使圆柱体看起æ¥æ˜¯"
-"圆形的。如果[code]false[/code],则圆柱体将具有平å¦çš„阴影外观。"
+"圆形的。如果[code]false[/code],则圆柱体将具有平å¦çš„阴影表现。"
#: modules/csg/doc_classes/CSGTorus.xml:4
msgid "A CSG Torus shape."
@@ -21521,7 +21892,7 @@ msgid ""
"have a flat shaded look."
msgstr ""
"如果[code] true [/code]设置圆环的法线以æ供平滑效果,则使圆环看起æ¥æ˜¯åœ†å½¢çš„。"
-"如果[code]false[/code],则圆环将具有平å¦çš„阴影外观。"
+"如果[code]false[/code],则圆环将具有平å¦çš„阴影表现。"
#: modules/mono/doc_classes/CSharpScript.xml:4
msgid ""
@@ -21562,47 +21933,47 @@ msgid ""
"to make an object look as if it's reflecting its surroundings. This usually "
"delivers much better performance than other reflection methods."
msgstr ""
+"通常用于伪造åå°„çš„ 6 é¢ 3D 纹ç†ã€‚它å¯ç”¨äºŽä½¿å¯¹è±¡çœ‹èµ·æ¥å¥½åƒåœ¨å射其周围环境。这"
+"通常比其他å射方法æ供更好的性能。"
#: doc/classes/CubeMap.xml:15
msgid "Returns the [CubeMap]'s height."
msgstr "返回[CubeMap]的高度。"
#: doc/classes/CubeMap.xml:22
-#, fuzzy
msgid ""
"Returns an [Image] for a side of the [CubeMap] using one of the [enum Side] "
"constants."
-msgstr "使用[enum BodyMode]常é‡ä¹‹ä¸€è®¾ç½®body模å¼ã€‚"
+msgstr "使用 [enum Side] 边常数之一返回 [CubeMap] 的一个侧é¢å›¾åƒ [Image]。"
#: doc/classes/CubeMap.xml:28
msgid "Returns the [CubeMap]'s width."
msgstr "返回[CubeMap]的宽度。"
#: doc/classes/CubeMap.xml:36
-#, fuzzy
msgid ""
"Sets an [Image] for a side of the [CubeMap] using one of the [enum Side] "
"constants."
-msgstr "使用[enum BodyMode]常é‡ä¹‹ä¸€è®¾ç½®body模å¼ã€‚"
+msgstr ""
+"为 [CubeMap] çš„ä¸€ä¸ªè¾¹è®¾ç½®å›¾åƒ [Image],使用枚举边 [enum Side]常数之一。"
#: doc/classes/CubeMap.xml:42
-#, fuzzy
msgid ""
"The render flags for the [CubeMap]. See the [enum Flags] constants for "
"details."
-msgstr ""
-"选项å¡å®¹å™¨ä¸­æ‰€æœ‰é€‰é¡¹å¡çš„对é½æ–¹å¼ã€‚有关详细信æ¯ï¼Œè¯·å‚阅 [enum TabAlign] 常é‡ã€‚"
+msgstr "[CubeMap] 的渲染标志。有关详细信æ¯ï¼Œè¯·å‚阅 [enum Flags] 常é‡ã€‚"
#: doc/classes/CubeMap.xml:45
msgid ""
"The lossy storage quality of the [CubeMap] if the storage mode is set to "
"[constant STORAGE_COMPRESS_LOSSY]."
msgstr ""
+"如果存储模å¼è®¾ç½®ä¸º [constant STORAGE_COMPRESS_LOSSY],则 [CubeMap] 为有æŸå­˜å‚¨"
+"è´¨é‡ã€‚"
#: doc/classes/CubeMap.xml:48
-#, fuzzy
msgid "The [CubeMap]'s storage mode. See [enum Storage] constants."
-msgstr "Camera2D的锚点。å‚阅[enum AnchorMode]常é‡ã€‚"
+msgstr "[CubeMap] 的存储模å¼ã€‚å‚阅 [enum AnchorMode] 常é‡ã€‚"
#: doc/classes/CubeMap.xml:53
msgid "Store the [CubeMap] without any compression."
@@ -21610,46 +21981,41 @@ msgstr "存储[CubeMap]而ä¸è¿›è¡Œä»»ä½•åŽ‹ç¼©ã€‚"
#: doc/classes/CubeMap.xml:56
msgid "Store the [CubeMap] with strong compression that reduces image quality."
-msgstr ""
+msgstr "以é™ä½Žå›¾åƒè´¨é‡çš„强压缩方å¼å­˜å‚¨ [CubeMap]。"
#: doc/classes/CubeMap.xml:59
msgid ""
"Store the [CubeMap] with moderate compression that doesn't reduce image "
"quality."
-msgstr ""
+msgstr "以ä¸é™ä½Žå›¾åƒè´¨é‡çš„适度压缩方å¼å­˜å‚¨ [CubeMap]。"
#: doc/classes/CubeMap.xml:62
-#, fuzzy
msgid "Identifier for the left face of the [CubeMap]."
-msgstr "å转网格的é¢ã€‚"
+msgstr "[CubeMap] å·¦é¢çš„标识符。"
#: doc/classes/CubeMap.xml:65
-#, fuzzy
msgid "Identifier for the right face of the [CubeMap]."
-msgstr "å转网格的é¢ã€‚"
+msgstr "[CubeMap] å³é¢çš„标识符。"
#: doc/classes/CubeMap.xml:68
msgid "Identifier for the bottom face of the [CubeMap]."
-msgstr ""
+msgstr "[CubeMap] 底é¢çš„标识符。"
#: doc/classes/CubeMap.xml:71
-#, fuzzy
msgid "Identifier for the top face of the [CubeMap]."
-msgstr "å转网格的é¢ã€‚"
+msgstr "[CubeMap] 顶é¢çš„标识符。"
#: doc/classes/CubeMap.xml:74
-#, fuzzy
msgid "Identifier for the front face of the [CubeMap]."
-msgstr "å转网格的é¢ã€‚"
+msgstr "[CubeMap] æ­£é¢çš„标识符。"
#: doc/classes/CubeMap.xml:77
-#, fuzzy
msgid "Identifier for the back face of the [CubeMap]."
-msgstr "å转网格的é¢ã€‚"
+msgstr "[CubeMap] 背é¢çš„标识符。"
#: doc/classes/CubeMap.xml:80
msgid "Generate mipmaps, to enable smooth zooming out of the texture."
-msgstr ""
+msgstr "ç”Ÿæˆ mipmap,以实现纹ç†çš„平滑缩放。"
#: doc/classes/CubeMap.xml:83
msgid "Repeat (instead of clamp to edge)."
@@ -21657,18 +22023,17 @@ msgstr "é‡å¤ï¼ˆè€Œä¸æ˜¯é™åˆ¶åˆ°è¾¹ç¼˜ï¼‰ã€‚"
#: doc/classes/CubeMap.xml:86
msgid "Turn on magnifying filter, to enable smooth zooming in of the texture."
-msgstr ""
+msgstr "打开放大滤镜,使纹ç†å¹³æ»‘放大。"
#: doc/classes/CubeMap.xml:89
msgid "Default flags. Generate mipmaps, repeat, and filter are enabled."
-msgstr ""
+msgstr "默认标志。å¯ç”¨ç”Ÿæˆ mipmapã€é‡å¤å’Œæ»¤é•œã€‚"
#: doc/classes/CubeMesh.xml:4
msgid "Generate an axis-aligned cuboid [PrimitiveMesh]."
msgstr "生æˆä¸Žè½´å¯¹é½çš„长方体[PrimitiveMesh]。"
#: doc/classes/CubeMesh.xml:7
-#, fuzzy
msgid ""
"Generate an axis-aligned cuboid [PrimitiveMesh].\n"
"The cube's UV layout is arranged in a 3×2 layout that allows texturing each "
@@ -21679,9 +22044,13 @@ msgid ""
"this, increase [member subdivide_depth], [member subdivide_height] and "
"[member subdivide_width] until you no longer notice UV jittering."
msgstr ""
-"生æˆä¸Žè½´å¯¹é½çš„长方体[PrimitiveMesh]。\n"
-"多维数æ®é›†çš„UV布局以3×2布局进行排列,从而å¯ä»¥åˆ†åˆ«çº¹ç†åŒ–æ¯ä¸ªé¢ã€‚è¦åœ¨æ‰€æœ‰é¢ä¸Šåº”"
-"用相åŒçš„纹ç†ï¼Œè¯·å°†æ质的UV属性更改为[code] Vector3(3,2,1)[/code]。"
+"生æˆä¸€ä¸ªè½´å¯¹é½çš„立方体[PrimitiveMesh]。\n"
+"这个立方体的UV布局是以3×2çš„æ–¹å¼æŽ’列的,å¯ä»¥å¯¹æ¯ä¸ªé¢å•ç‹¬è¿›è¡Œçº¹ç†å¤„ç†ã€‚è¦åœ¨æ‰€æœ‰"
+"çš„é¢ä¸Šåº”用相åŒçš„纹ç†ï¼Œå°†æ质的UV属性改为 [code]Vector3(3, 2, 1)[/code]。\n"
+"[b]注æ„:[/b]å½“ä½¿ç”¨ä¸€ä¸ªå¤§çš„çº¹ç† [CubeMesh]时(例如作为地æ¿ï¼‰ï¼Œä½ å¯èƒ½ä¼šé‡åˆ°UV"
+"抖动的问题,这å–决于相机的角度。为了解决这个问题,增加细分深度 [member "
+"subdivide_depth]ã€[member subdivide_height] 细分高度和细分宽带 [member "
+"subdivide_width],直到你ä¸å†æ³¨æ„到UV抖动。"
#: doc/classes/CubeMesh.xml:17
msgid "Size of the cuboid mesh."
@@ -21701,7 +22070,7 @@ msgstr "沿Xè½´æ’入的é¢å¤–边缘环的数é‡ã€‚"
#: doc/classes/CullInstance.xml:4
msgid "Parent of all nodes that can be culled by the Portal system."
-msgstr ""
+msgstr "所有å¯ä»¥è¢«Portalå…¥å£ç³»ç»Ÿå‰”除的节点的父节点。"
#: doc/classes/CullInstance.xml:7
msgid ""
@@ -21724,6 +22093,18 @@ msgid ""
"Objects that are not [code]Static[/code] or [code]Dynamic[/code] can be "
"freely created and deleted during the lifetime of the game level."
msgstr ""
+"为å¯ä»¥è¢«[Portal]系统剔除的节点æ供通用功能。\n"
+"[code]Static[/code]å’Œ[code]Dynamic[/code]对象是系统中最有效的管ç†å¯¹è±¡ï¼Œä½†æœ‰ä¸€"
+"些注æ„事项。当使用[RoomManager] [code]rooms_convert[/code]函数转æ¢[Room]时,"
+"它们最åˆåº”该存在,并且其寿命应该与游æˆçº§åˆ«ç›¸åŒï¼Œä¹Ÿå°±æ˜¯è¯´ï¼Œåœ¨ä½ è°ƒç”¨"
+"[RoomManager]çš„[code]rooms_clear[/code]之å‰ä¸€ç›´å­˜åœ¨ã€‚虽然你ä¸åº”该在游æˆè¿‡ç¨‹ä¸­"
+"创建或删除这些对象,但å¯ä»¥ç”¨æ ‡å‡†çš„[code]hide[/code]å’Œ[code]show[/code]命令管"
+"ç†å®ƒä»¬çš„å¯è§æ€§ã€‚\n"
+"å¦ä¸€æ–¹é¢ï¼Œ[code]Roaming[/code]对象需è¦é¢å¤–的处ç†æ¥è·Ÿè¸ªå®ƒä»¬åœ¨å“ªä¸ª[Room]中。这"
+"使它们能够有效地被剔除,无论其ä½ç½®ã€‚\n"
+"[code]Global[/code]对象ä¸è¢«å…¥å£ç³»ç»Ÿå‰”除,åªä½¿ç”¨è§†å›¾è§†é”¥å‰”除。\n"
+"ä¸æ˜¯[code]Static[/code]或[code]Dynamic[/code]的对象å¯ä»¥åœ¨æ¸¸æˆå…³å¡çš„生命周期内"
+"自由创建和删除。"
#: doc/classes/CullInstance.xml:19
msgid ""
@@ -21735,6 +22116,11 @@ msgid ""
"This can be used to control autoplacement of building exteriors in an outer "
"[RoomGroup]."
msgstr ""
+"当设置为[code]0[/code]时,[CullInstance]将被自动放置在具有最高优先级的[Room]"
+"中。\n"
+"当设置为[code]0[/code]以外的值时,系统将å°è¯•åœ¨å…·æœ‰[code]autoplace_priority[/"
+"code]çš„[Room]中自动放置,如果它存在的è¯ã€‚\n"
+"è¿™å¯ä»¥ç”¨æ¥æŽ§åˆ¶å»ºç­‘外é¢çš„在外部[RoomGroup]的自动放置。"
#: doc/classes/CullInstance.xml:24
msgid ""
@@ -21746,12 +22132,16 @@ msgid ""
"[code]PORTAL_MODE_STATIC[/code] or [code]PORTAL_MODE_DYNAMIC[/code], and for "
"[Portal]s."
msgstr ""
+"当没有为 [Room] 明确指定手动边界时,凸形边界将根æ®æˆ¿é—´å†…对象的几何形状进行估"
+"算。此设置确定对象的几何形状是å¦åŒ…å«åœ¨æ­¤æˆ¿é—´è¾¹ç•Œä¼°ç®—之中。\n"
+"[b]注æ„:[/b]此设置仅在对象设置为[code]PORTAL_MODE_STATIC[/code]或"
+"[code]PORTAL_MODE_DYNAMIC[/code]时有相,并且适用于[Portal]。"
#: doc/classes/CullInstance.xml:28
msgid ""
"When using [Room]s and [Portal]s, this specifies how the [CullInstance] is "
"processed in the system."
-msgstr ""
+msgstr "当使用[Room]å’Œ[Portal]时,这规定了[CullInstance]在系统中的处ç†æ–¹å¼ã€‚"
#: doc/classes/CullInstance.xml:33
msgid ""
@@ -21763,6 +22153,11 @@ msgid ""
"data has been invalidated. You will need to reconvert the rooms using the "
"[RoomManager] to activate the system again."
msgstr ""
+"用于[b]ä¸ä¼šç§»åŠ¨[/b]çš„[Room]内的实例--例如,墙å£ã€åœ°æ¿ã€‚\n"
+"[b]注æ„:[/b] 如果你在房间图形加载å³è½¬æ¢çš„时候,试图删除一个"
+"[code]PORTAL_MODE_STATIC[/code]实例,它将å¸è½½æˆ¿é—´å›¾å½¢å¹¶åœç”¨å…¥å£å‰”除。这是因为"
+"[b]房间图形[/b]çš„æ•°æ®å·²ç»å¤±æ•ˆã€‚你将需è¦ä½¿ç”¨[RoomManager]é‡æ–°è½¬æ¢æˆ¿é—´ä»¥å†æ¬¡æ¿€"
+"活系统。"
#: doc/classes/CullInstance.xml:37
msgid ""
@@ -21774,22 +22169,27 @@ msgid ""
"data has been invalidated. You will need to reconvert the rooms using the "
"[RoomManager] to activate the system again."
msgstr ""
+"用于房间内会移动但 [b] ä¸ä¼šæ”¹å˜æˆ¿é—´ [/b] 的实例 - 例如移动平å°ã€‚\n"
+"[b]注æ„:[/b] 如果在加载å³è½¬æ¢æˆ¿é—´å›¾å½¢æ—¶å°è¯•åˆ é™¤ [code]PORTAL_MODE_DYNAMIC[/"
+"code] 实例,它将å¸è½½æˆ¿é—´å›¾å½¢å¹¶åœç”¨å…¥å£å‰”除。这是因为[b]房间图形[/b]æ•°æ®å·²ç»å¤±"
+"效。将需è¦ä½¿ç”¨ [RoomManager] é‡æ–°è½¬æ¢æˆ¿é—´ä»¥å†æ¬¡æ¿€æ´»ç³»ç»Ÿã€‚"
#: doc/classes/CullInstance.xml:41
msgid "Use for instances that will move [b]between[/b] [Room]s - e.g. players."
-msgstr ""
+msgstr "用于在 [Room] [b]之间 [/b] 移动的实例 - 例如玩家。"
#: doc/classes/CullInstance.xml:44
msgid ""
"Use for instances that will be frustum culled only - e.g. first person "
"weapon, debug."
-msgstr ""
+msgstr "用于åªä¼šè¢«è§†é”¥å‰”除的实例 - 例如第一人称武器,调试。"
#: doc/classes/CullInstance.xml:47
msgid ""
"Use for instances that will not be shown at all - e.g. [b]manual room "
"bounds[/b] (specified by prefix [i]'Bound_'[/i])."
msgstr ""
+"用于根本ä¸ä¼šæ˜¾ç¤ºçš„实例 - 例如[b]手动房间边界[/b],由å‰ç¼€[i]'Bound_'[/i]指定。"
#: doc/classes/Curve.xml:4
msgid "A mathematic curve."
@@ -21992,9 +22392,8 @@ msgstr ""
"它应该是足够近似的。"
#: doc/classes/Curve2D.xml:39
-#, fuzzy
msgid "Returns the cache of points as a [PoolVector2Array]."
-msgstr "以[PackedVector2Array]çš„å½¢å¼è¿”回点的缓存。"
+msgstr "以[PoolVector2Array]çš„å½¢å¼è¿”回缓存的点。"
#: doc/classes/Curve2D.xml:46
msgid ""
@@ -22007,36 +22406,35 @@ msgstr ""
"[code]to_point[/code] 必须在这æ¡æ›²çº¿çš„局部空间中。"
#: doc/classes/Curve2D.xml:54 doc/classes/Curve3D.xml:67
-#, fuzzy
msgid ""
"Returns the closest baked 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 ""
-"返回è·ç¦» [code]to_point[/code] 最近的点 (在曲线的局部空间)。\n"
-"[code]to_point[/code] 必须在这æ¡æ›²çº¿çš„局部空间中。"
+"返回最接近 [code]to_point[/code] 并烘焙好的点(在曲线的局部空间)。\n"
+"[code]to_point[/code] 必须是在这个曲线的局部空间。"
#: doc/classes/Curve2D.xml:68
-#, fuzzy
msgid ""
"Returns the position of the control point leading to the vertex [code]idx[/"
"code]. The returned position is relative 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 ""
-"返回指å‘顶点[code]idx[/code]的控制点的ä½ç½®ã€‚如果索引超出边界,函数会å‘控制å°"
-"å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ï¼Œå¹¶è¿”回[code](0,0)[/code]。"
+"返回指å‘顶点[code] idx [/code]的控制点ä½ç½®ã€‚返回的ä½ç½®æ˜¯ç›¸å¯¹äºŽé¡¶ç‚¹[code] idx "
+"[/code]的。如果索引超出了范围,函数会å‘控制å°å‘é€ä¸€æ¡é”™è¯¯ï¼Œå¹¶è¿”回[code] (0, "
+"0)[/code]。"
#: doc/classes/Curve2D.xml:75
-#, fuzzy
msgid ""
"Returns the position of the control point leading out of the vertex "
"[code]idx[/code]. The returned position is relative 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 ""
-"返回指å‘顶点[code]idx[/code]的控制点的ä½ç½®ã€‚如果索引超出边界,函数会å‘控制å°"
-"å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ï¼Œå¹¶è¿”回[code](0,0)[/code]。"
+"返回从顶点[code] idx [/code]引出的控制点ä½ç½®ã€‚返回的ä½ç½®æ˜¯ç›¸å¯¹äºŽé¡¶ç‚¹ [code] "
+"idx[/code]。如果索引越界,函数会å‘控制å°å‘é€é”™è¯¯ï¼Œå¹¶è¿”回 [code](0, 0)[/"
+"code]。"
#: doc/classes/Curve2D.xml:82
msgid ""
@@ -22102,24 +22500,22 @@ msgstr ""
"错误信æ¯ã€‚"
#: doc/classes/Curve2D.xml:123 doc/classes/Curve3D.xml:153
-#, fuzzy
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. The position is relative to the vertex."
msgstr ""
-"设置通往顶点 [code]idx[/code] 的控制点的ä½ç½®ã€‚如果索引超出范围,函数会å‘控制"
-"å°å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ã€‚"
+"设置通往顶点 [code]idx[/code] 的控制点ä½ç½®ã€‚如果索引超出范围,函数会å‘控制å°"
+"å‘é€é”™è¯¯ä¿¡æ¯ã€‚"
#: doc/classes/Curve2D.xml:131 doc/classes/Curve3D.xml:161
-#, fuzzy
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. The position is relative to the vertex."
msgstr ""
-"设置从顶点[code]idx[/code]引出的控制点的ä½ç½®ã€‚如果索引超出范围,函数会å‘控制"
-"å°å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ã€‚"
+"设置从顶点[code]idx[/code]引出的控制点ä½ç½®ã€‚如果索引超出范围,该函数会å‘控制"
+"å°å‘é€é”™è¯¯ã€‚ä½ç½®æ˜¯ç›¸å¯¹äºŽé¡¶ç‚¹çš„。"
#: doc/classes/Curve2D.xml:139 doc/classes/Curve3D.xml:169
msgid ""
@@ -22171,35 +22567,31 @@ msgid "Describes a Bézier curve in 3D space."
msgstr "æ述二维空间的è´å…¹å°”曲线。"
#: doc/classes/Curve3D.xml:7
-#, fuzzy
msgid ""
"This class describes a Bézier curve in 3D space. It is mainly used to give a "
"shape to a [Path], 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 ""
-"该类æ述了二维空间中的è´å…¹å°”曲线。它主è¦ç”¨äºŽç»™[Path2D]一个形状,但也å¯ä»¥æ‰‹åŠ¨"
-"采样用于其他目的。\n"
-"它ä¿ç•™äº†æ²¿æ›²çº¿çš„预计算点的缓存,以加快进一步的计算。"
+"该类æ述了三维空间中的è´å¡žå°”曲线。它主è¦ç”¨äºŽç»™ [Path] æ供一个形状,但也å¯ä»¥"
+"为其他目的手动å–样。\n"
+"它沿曲线ä¿ç•™äº†ä¸€ä¸ªé¢„先计算好的点缓存,以加快进一步的计算。"
#: doc/classes/Curve3D.xml:39
-#, fuzzy
msgid "Returns the cache of points as a [PoolVector3Array]."
-msgstr "以[PackedVector2Array]çš„å½¢å¼è¿”回点的缓存。"
+msgstr "以 [PoolVector3Array] çš„å½¢å¼è¿”回缓存的点。"
#: doc/classes/Curve3D.xml:45
-#, fuzzy
msgid "Returns the cache of tilts as a [PoolRealArray]."
-msgstr "以[PackedFloat32Array]çš„å½¢å¼è¿”回倾斜的缓存。"
+msgstr "以 [PoolRealArray] çš„å½¢å¼è¿”回倾斜的缓存。"
#: doc/classes/Curve3D.xml:51
-#, fuzzy
msgid ""
"Returns the cache of up vectors as a [PoolVector3Array].\n"
"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
msgstr ""
-"返回作为[PackedVector3Array]çš„upå‘é‡ç¼“存。\n"
-"如果[member up_vector_enabled]为[code]false[/code],则缓存为空。"
+"以 [PoolVector3Array] çš„å½¢å¼è¿”回å‘上å‘é‡çš„缓存。\n"
+"如果 [member up_vector_enabled] 是 [code]false[/code],缓存将是空的。"
#: doc/classes/Curve3D.xml:59
msgid ""
@@ -22213,26 +22605,26 @@ msgstr ""
"[code]to_point[/code] 必须在这æ¡æ›²çº¿çš„局部空间中。"
#: doc/classes/Curve3D.xml:81
-#, fuzzy
msgid ""
"Returns the position of the control point leading to the vertex [code]idx[/"
"code]. The returned position is relative 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 ""
-"返回从顶点[code]idx[/code]引出的控制点的ä½ç½®ã€‚如果索引超出边界,函数å‘控制å°"
-"å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ï¼Œå¹¶è¿”回[code](0,0,0)[/code]。"
+"返回通往顶点 [code]idx[/code] 的控制点的ä½ç½®ã€‚返回的ä½ç½®æ˜¯ç›¸å¯¹äºŽé¡¶ç‚¹ "
+"[code]idx[/code]的。如果索引超出了范围,函数会å‘控制å°å‘é€ä¸€ä¸ªé”™è¯¯ï¼Œå¹¶è¿”回 "
+"[code](0, 0, 0)[/code]。"
#: doc/classes/Curve3D.xml:88
-#, fuzzy
msgid ""
"Returns the position of the control point leading out of the vertex "
"[code]idx[/code]. The returned position is relative 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 ""
-"返回从顶点[code]idx[/code]引出的控制点的ä½ç½®ã€‚如果索引超出边界,函数å‘控制å°"
-"å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ï¼Œå¹¶è¿”回[code](0,0,0)[/code]。"
+"返回从顶点 [code]idx[/code] 伸出的控制点的ä½ç½®ã€‚返回的ä½ç½®æ˜¯ç›¸å¯¹äºŽé¡¶ç‚¹ "
+"[code]idx[/code] 的。如果索引超出了范围,函数会å‘控制å°å‘é€ä¸€ä¸ªé”™è¯¯ï¼Œå¹¶è¿”回 "
+"[code](0, 0, 0)[/code]。"
#: doc/classes/Curve3D.xml:95
msgid ""
@@ -22240,8 +22632,8 @@ msgid ""
"bounds, the function sends an error to the console, and returns [code](0, 0, "
"0)[/code]."
msgstr ""
-"返回顶点的ä½ç½®[code]idx[/code]。如果索引超出边界,函数会å‘控制å°å‘é€ä¸€ä¸ªé”™è¯¯"
-"ä¿¡æ¯ï¼Œå¹¶è¿”回[code](0,0,0)[/code]。"
+"返回顶点的ä½ç½® [code]idx[/code]。如果索引超出边界,函数会å‘控制å°å‘é€ä¸€ä¸ªé”™è¯¯"
+"ä¿¡æ¯ï¼Œå¹¶è¿”回 [code](0,0,0)[/code]。"
#: doc/classes/Curve3D.xml:102
msgid ""
@@ -22272,7 +22664,6 @@ msgstr ""
"[/code]。"
#: doc/classes/Curve3D.xml:119
-#, fuzzy
msgid ""
"Returns a point within the curve at position [code]offset[/code], where "
"[code]offset[/code] is measured as a distance in 3D units along the curve.\n"
@@ -22283,12 +22674,12 @@ msgid ""
"Cubic interpolation tends to follow the curves better, but linear is faster "
"(and often, precise enough)."
msgstr ""
-"返回曲线中ä½äºŽ [code]offset[/code] ä½ç½®çš„一个点,其中 [code]offset[/code] 是"
-"沿曲线的åƒç´ è·ç¦»ã€‚\n"
-"为此,它找到 [code]offset[/code] 所在的两个缓存点,然åŽå¯¹å…¶è¿›è¡Œæ’值。如果将 "
-"[code]cubic[/code] 设置为 [code]true[/code] 则为立方æ’值,如果设置为 [code] "
-"false[/code] 则为线性æ’值。\n"
-"立方内æ’往往能更好地跟éšæ›²çº¿ï¼Œä½†çº¿æ€§å†…æ’速度更快(而且通常足够精确)。"
+"返回曲线中 [code]offset[/code] å移ä½ç½®çš„一个点,其中 [code]offset[/code] 以"
+"沿曲线的 3D å•ä½è·ç¦»æµ‹é‡ã€‚\n"
+"为了åšåˆ°è¿™ä¸€ç‚¹ï¼Œå®ƒæ‰¾åˆ° [code]offset[/code] 所在的两个缓存点,然åŽè¿›è¡Œå†…æ’值。"
+"如果 [code]cubic[/code] 被设置为[code]true[/code],这个æ’值是立方的,如果设置"
+"为 [code]false[/code],则是线性的。\n"
+"立体æ’值倾å‘于更好地éµå¾ªæ›²çº¿ï¼Œä½†çº¿æ€§æ’值更快(而且通常足够精确)。"
#: doc/classes/Curve3D.xml:129
msgid ""
@@ -22310,7 +22701,6 @@ msgstr ""
"code]。"
#: doc/classes/Curve3D.xml:177
-#, fuzzy
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"
@@ -22318,10 +22708,10 @@ msgid ""
"the path would have. In the case of a curve controlling a [PathFollow], this "
"tilt is an offset over the natural tilt the [PathFollow] calculates."
msgstr ""
-"设置 [code]idx[/code] 点的倾斜角,å•ä½ä¸ºå¼§åº¦ã€‚如果索引超出范围,函数会å‘控制"
-"å°å‘é€ä¸€ä¸ªé”™è¯¯ä¿¡æ¯ã€‚\n"
-"倾斜度控制ç€æ²¿ç€è·¯å¾„上移动的物体的视线轴的旋转。如果是控制 [PathFollow3D] çš„"
-"曲线,这个倾斜度是 [PathFollow3D] 计算的自然倾斜度的å移。"
+"以弧度为å•ä½è®¾ç½®ç‚¹ [code]idx[/code] 的倾斜角度。如果索引超出范围,该函数会å‘"
+"控制å°å‘é€é”™è¯¯ã€‚\n"
+"倾斜控制ç€æ²¿è·¯å¾„移动的对象沿观察轴的旋转。在控制 [PathFollow] 的曲线的情况"
+"下,此倾斜是对 [PathFollow] 计算的自然倾斜的å移。"
#: doc/classes/Curve3D.xml:195
msgid ""
@@ -22336,7 +22726,6 @@ msgstr ""
"的点越多,å ç”¨çš„内存也越多,所以使用时è¦æ³¨æ„。"
#: doc/classes/Curve3D.xml:198
-#, fuzzy
msgid ""
"If [code]true[/code], the curve will bake up vectors used for orientation. "
"This is used when [member PathFollow.rotation_mode] is set to [constant "
@@ -22369,20 +22758,21 @@ msgid "Class representing a cylindrical [PrimitiveMesh]."
msgstr "表示圆柱形[PrimitiveMesh]的类。"
#: doc/classes/CylinderMesh.xml:7
-#, fuzzy
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 [code]0.0[/code]."
msgstr ""
-"表示圆柱形[PrimitiveMesh]的类。该类å¯ä»¥é€šè¿‡è®¾ç½®[member top_radius]或[member "
-"bottom_radius]属性为0.0æ¥åˆ›å»ºåœ†é”¥ä½“。"
+"表示圆柱形[PrimitiveMesh]的类。通过将[member top_radius]或[member "
+"bottom_radius]属性设置为[code]0.0[/code],这个类å¯ä»¥ç”¨æ¥åˆ›å»ºåœ†é”¥ä½“。"
#: doc/classes/CylinderMesh.xml:15
msgid ""
"Bottom radius of the cylinder. If set to [code]0.0[/code], the bottom faces "
"will not be generated, resulting in a conic shape."
msgstr ""
+"圆柱体的底部åŠå¾„。如果设置为[code]0.0[/code],而ä¸ä¼šç”Ÿæˆåº•é¢ï¼Œä»Žè€Œå½¢æˆåœ†é”¥"
+"体。"
#: doc/classes/CylinderMesh.xml:18
msgid "Full height of the cylinder."
@@ -22393,6 +22783,7 @@ msgid ""
"Number of radial segments on the cylinder. Higher values result in a more "
"detailed cylinder/cone at the cost of performance."
msgstr ""
+"圆柱体上的径å‘段数。更高的值会生æˆæ›´ç»†è‡´çš„圆柱体或圆锥体,但以性能为代价。"
#: doc/classes/CylinderMesh.xml:24
msgid ""
@@ -22404,12 +22795,18 @@ msgid ""
"altering the vertex data using a shader or procedural mesh tool, [member "
"rings] should be kept to its default value."
msgstr ""
+"沿圆柱体的高度的边缘环的数é‡ã€‚除éžä½¿ç”¨ç€è‰²å™¨æˆ–程åºç½‘格工具æ¥æ›´æ”¹é¡¶ç‚¹æ•°æ®ï¼Œå¦"
+"则更改 [member rings] ä¸ä¼šå½±å“显示,[member rings] 应ä¿æŒå…¶é»˜è®¤å€¼ã€‚较高的值会"
+"产生更多的细分,这å¯ç”¨äºŽä½¿ç”¨ç€è‰²å™¨æˆ–程åºç½‘格工具创建更平滑的显示效果,但以性"
+"能为代价。"
#: doc/classes/CylinderMesh.xml:27
msgid ""
"Top radius of the cylinder. If set to [code]0.0[/code], the top faces will "
"not be generated, resulting in a conic shape."
msgstr ""
+"圆柱体的顶部åŠå¾„。如果设置为 [code]0.0[/code],则ä¸ä¼šç”Ÿæˆé¡¶éƒ¨é¢ï¼Œå½¢æˆåœ†é”¥å½¢"
+"状。"
#: doc/classes/CylinderShape.xml:4 doc/classes/CylinderShape.xml:7
msgid "Cylinder shape for collisions."
@@ -22472,7 +22869,6 @@ msgid "Dictionary type."
msgstr "字典类型。"
#: doc/classes/Dictionary.xml:7
-#, fuzzy
msgid ""
"Dictionary type. Associative container which contains values referenced by "
"unique keys. Dictionaries are composed of pairs of keys (which must be "
@@ -22579,58 +22975,64 @@ msgid ""
"another value after it was initialized."
msgstr ""
"字典类型。关è”容器,包å«ç”±å”¯ä¸€é”®å¼•ç”¨çš„值。字典由键(必须是唯一的)和值对组"
-"æˆã€‚当添加元素时,字典将ä¿ç•™æ’入顺åºï¼Œå³ä½¿åœ¨æ‰“å°å­—典时å¯èƒ½ä¸ä¼šå映出æ¥ã€‚在其"
-"他编程语言中,这ç§æ•°æ®ç»“构有时被称为哈希图或关è”数组。\n"
-"您å¯ä»¥é€šè¿‡åœ¨å¤§æ‹¬å·[code]{}[/code]中放置一个以逗å·åˆ†éš”çš„[code]key: value[/"
-"code]对的列表æ¥å®šä¹‰ä¸€ä¸ªå­—典。\n"
-"ä¸æ”¯æŒåœ¨è¿­ä»£å…ƒç´ [b]时擦除元素[/b],并且会导致未定义的行为。\n"
+"æˆã€‚\n"
+"当添加元素时,字典将ä¿ç•™æ’入顺åºï¼Œå³ä½¿åœ¨æ‰“å°å­—典时å¯èƒ½ä¸ä¼šå映出æ¥ã€‚\n"
+"在其他编程语言中,这ç§æ•°æ®ç»“构有时被称为哈希图或关è”数组。\n"
+"您å¯ä»¥é€šè¿‡åœ¨å¤§æ‹¬å·[code]{}[/code]中放置一个以逗å·åˆ†éš”çš„ [code]key: value[/"
+"code] 对的列表æ¥å®šä¹‰ä¸€ä¸ªå­—典。\n"
+"[b]ä¸æ”¯æŒ[/b] 在迭代元素时擦除元素,这会导致ä¸æ˜Žç¡®çš„行为。\n"
"[b]注æ„:[/b] 字典总是通过引用传递的。è¦èŽ·å¾—一个å¯ä»¥ç‹¬ç«‹äºŽåŽŸå§‹å­—典进行修改的字"
-"典副本,请使用[方法 duplicate]。\n"
+"典副本,请使用 [method duplicate]。\n"
"创建一个字典。\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"
+"var my_dict = {} # 创建一个空字典\n"
+"\n"
+"var dict_variable_key = \"Another key name\"\n"
+"var dict_variable_value = \"value2\"\n"
+"var another_dict = {\n"
+" \"Some key name\": \"value1\",\n"
+" dict_variable_key: dict_variable_value,\n"
+"}\n"
+"\n"
+"var points_dict = {\"White\": 50, \"Yellow\": 75, \"Orange\": 100}\n"
+"\n"
+"# å¯æ›¿ä»£çš„Lua-风格语法。\n"
+"# 键并ä¸éœ€è¦åŠ å¼•å·ï¼Œä½†åªæœ‰å­—符常é‡å‚数能被用作键å。\n"
+"# 并且,键å必须以字æ¯æˆ–下划线开头。\n"
+"# 这里,some_key是一个字符串,ä¸æ˜¯å˜é‡ï¼\n"
+"another_dict = {\n"
+" some_key = 42,\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"
+"ä½ å¯ä»¥é€šè¿‡å¼•ç”¨åˆé€‚çš„é”®æ¥è®¿é—®ä¸€ä¸ªå­—典。在上方的示例中,"
+"[code]points_dir[\"White\"][/code] 会返回 [code]50[/code]。你也å¯ä»¥å†™æˆ "
+"[code]points_dir.White[/code],效果都是相åŒçš„。但是如果你需è¦è®¿é—®çš„é”®ä¸æ˜¯ä¸€ä¸ª"
+"固定的字符串(比如数字或å˜é‡ï¼‰æ—¶ï¼Œä½ éœ€è¦ä½¿ç”¨æ–¹æ‹¬å·ã€‚\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"
+" # 这里我们ä¸èƒ½ä½¿ç”¨ç‚¹ï¼Œå› ä¸ºâ€˜my_color’是个å˜é‡ã€‚\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"
+"在上方的代ç ä¸­ï¼Œ[code]points[/code] 会被赋值为 [code]my_color[/code]中选å–çš„"
+"颜色。\n"
+"å­—å…¸å¯ä»¥å®¹çº³æ›´åŠ å¤æ‚çš„æ•°æ®ï¼š\n"
"[codeblock]\n"
-"my_dir = {\"First Array\": [1, 2, 3, 4]} # Assigns an Array to a String "
-"key.\n"
+"my_dir = {\"First Array\": [1, 2, 3, 4]} # 将一个数组分é…给一个字符串键。\n"
"[/codeblock]\n"
-"To add a key to an existing dictionary, access it like an existing key and "
-"assign to it:\n"
+"如果想è¦ç»™å­—典添加一个键,å¯ä»¥åƒè®¿é—®å·²æœ‰çš„键一样:\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"
+"points_dir[\"Blue\"] = 150 # 添加键\"Blue\",并将其数值设定为150\n"
"[/codeblock]\n"
-"Finally, dictionaries can contain different types of keys and values in the "
-"same dictionary:\n"
+"最终,åŒä¸€ä¸ªå­—典内å¯ä»¥å®¹çº³ä¸åŒç±»åž‹çš„键和值:\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"
+"# 这是一个åˆæ³•çš„字典。\n"
+"# 使用`my_dir.sub_dir.sub_key`或`my_dir[\"sub_dir\"][\"sub_key\"]`æ¥è®¿é—®ä¸‹æ–¹"
+"的字符串\"Nested value\"。\n"
+"# æ ¹æ®ä½ ä¸åŒçš„需求å¯ä»¥ä¿®æ”¹ç´¢å¼•æ ·å¼ã€‚\n"
"var my_dir = {\n"
" \"String Key\": 5,\n"
" 4: [1, 2, 3],\n"
@@ -22638,29 +23040,31 @@ msgstr ""
" \"sub_dir\": {\"sub_key\": \"Nested value\"},\n"
"}\n"
"[/codeblock]\n"
-"[b]Note:[/b] Unlike [Array]s, you can't compare dictionaries directly:\n"
+"[b]注æ„:[/b] 和数组ä¸åŒçš„是,你ä¸èƒ½ç›´æŽ¥è¿›è¡Œå­—典对比:\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"
+" print(array1 == array2) # 会输出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"
+" print(dir1 == dir2) # ä¸ä¼šè¾“出true。\n"
"[/codeblock]\n"
-"You need to first calculate the dictionary's hash with [method hash] before "
-"you can compare them:\n"
+"想è¦å¯¹æ¯”字典,首先需è¦ç”¨ [method hash] 计算字典哈希。\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]"
+" print(dir1.hash() == dir2.hash()) # 会输出true。\n"
+"[/codeblock]\n"
+"[b]注æ„:[/b]当使用 [code]const[/code] æ¥å£°æ˜Žä¸€ä¸ªå­—典时,字典本身ä¾ç„¶å¯ä»¥é€šè¿‡"
+"定义键的数值æ¥è¿›è¡Œä¿®æ”¹ã€‚使用 [code]const[/code] åªèƒ½é˜²æ­¢åœ¨å®ƒåˆå§‹åŒ–完æˆåŽè¢«ç»™"
+"予å¦ä¸€ä¸ªæ•°å€¼ã€‚"
#: doc/classes/Dictionary.xml:87
msgid ""
@@ -22688,15 +23092,15 @@ msgid "Returns [code]true[/code] if the dictionary is empty."
msgstr "如果字典为空,返回[code]true[/code]。"
#: doc/classes/Dictionary.xml:114
-#, fuzzy
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.\n"
"[b]Note:[/b] Don't erase elements while iterating over the dictionary. You "
"can iterate over the [method keys] array instead."
msgstr ""
-"按键擦除字典中的键/值对。如果给定的键存在于字典中,返回 [code]true[/code],å¦"
-"则返回 [code]false[/code]。é历字典时ä¸æ“¦é™¤å…ƒç´ ã€‚"
+"ä¾æ®key擦除字典的键值对。如果指定的 key 存在于字典中,返回 [code]true[/"
+"code] ,å¦åˆ™è¿”回 [code]false[/code] 。\n"
+"[b]注æ„:[/b] 在迭代字典时ä¸è¦æ“¦é™¤å…ƒç´ ã€‚å¯ä»¥è¿­ä»£ [method keys] 数组。"
#: doc/classes/Dictionary.xml:123
msgid ""
@@ -22732,11 +23136,10 @@ msgstr ""
"算符一样)也会评估为[code]true[/code]。"
#: doc/classes/Dictionary.xml:144
-#, fuzzy
msgid ""
"Returns [code]true[/code] if the dictionary has all the keys in the given "
"array."
-msgstr "如果字典中的所有键都在给定的数组中,返回[code]true[/code]。"
+msgstr "如果字典具有给定数组中的所有键,则返回 [code]true[/code] 。"
#: doc/classes/Dictionary.xml:150
msgid ""
@@ -22767,9 +23170,8 @@ msgid "Returns the list of keys in the [Dictionary]."
msgstr "返回[Dictionary]中的键列表。"
#: doc/classes/Dictionary.xml:169
-#, fuzzy
msgid "Returns the number of keys in the dictionary."
-msgstr "返回目录里文件的数é‡ã€‚"
+msgstr "返回字典中键的数é‡ã€‚"
#: doc/classes/Dictionary.xml:175
msgid "Returns the list of values in the [Dictionary]."
@@ -22777,10 +23179,9 @@ msgstr "返回[Dictionary]中的值列表。"
#: doc/classes/DirectionalLight.xml:4
msgid "Directional light from a distance, as from the Sun."
-msgstr "æ¥è‡ªè¿œå¤„的定å‘å…‰æºï¼Œå¦‚æ¥è‡ªå¤ªé˜³çš„光。"
+msgstr "æ¥è‡ªè¿œå¤„的平行光æºï¼Œå¦‚æ¥è‡ªå¤ªé˜³çš„光。"
#: doc/classes/DirectionalLight.xml:7
-#, fuzzy
msgid ""
"A directional light is a type of [Light] node that models an infinite number "
"of parallel rays covering the entire scene. It is used for lights with "
@@ -22788,9 +23189,9 @@ msgid ""
"or moonlight. The worldspace location of the DirectionalLight transform "
"(origin) is ignored. Only the basis is used to determine light direction."
msgstr ""
-"æ–¹å‘ç¯æ˜¯ä¸€ç§[Light3D]节点,它å¯ä»¥æ¨¡æ‹Ÿè¦†ç›–整个场景的无é™æ•°é‡çš„平行光线。它用于"
-"离场景较远的具有强烈强度的ç¯å…‰ï¼Œä»¥æ¨¡æ‹Ÿå¤ªé˜³å…‰æˆ–月光。DirectionalLight3Då˜æ¢"
-"(原点)的世界空间ä½ç½®è¢«å¿½ç•¥ã€‚åªæœ‰åŸºç¡€è¢«ç”¨æ¥ç¡®å®šå…‰çš„æ–¹å‘。"
+"平行光是[Light]节点的一ç§ç±»åž‹ï¼Œå®ƒå¯ä»¥æ¨¡æ‹Ÿå‡ºè¦†ç›–整个场景的无é™å¤šçš„平行光线。它"
+"用于离场景很远的具有强烈强度的ç¯å…‰ï¼Œä»¥æ¨¡æ‹Ÿå¤ªé˜³å…‰æˆ–月光。DirectionalLightå˜æ¢"
+"的世界空间å标原点被忽略。åªæœ‰åŸºç‚¹è¢«ç”¨æ¥ç¡®å®šå…‰çº¿æ–¹å‘。"
#: doc/classes/DirectionalLight.xml:10 doc/classes/Light.xml:10
#: doc/classes/OmniLight.xml:11 doc/classes/SpotLight.xml:11
@@ -22804,6 +23205,8 @@ msgid ""
"Amount of extra bias for shadow splits that are far away. If self-shadowing "
"occurs only on the splits far away, increasing this value can fix them."
msgstr ""
+"远处阴影分裂的é¢å¤–åç½®é‡ã€‚如果自身阴影åªäº§ç”Ÿè¿œå¤„的分裂,增加这个值å¯ä»¥ä¿®å¤å®ƒ"
+"们。"
#: doc/classes/DirectionalLight.xml:19
msgid ""
@@ -22830,7 +23233,7 @@ msgstr "ç¯å…‰çš„阴影渲染算法。å‚阅[enum ShadowMode]。"
msgid ""
"Can be used to fix special cases of self shadowing when objects are "
"perpendicular to the light."
-msgstr ""
+msgstr "当物体垂直于光线时,å¯ç”¨äºŽä¿®å¤è‡ªèº«é˜´å½±çš„特殊情况。"
#: doc/classes/DirectionalLight.xml:34
msgid ""
@@ -22910,7 +23313,6 @@ msgid "Type used to handle the filesystem."
msgstr "用于处ç†æ–‡ä»¶ç³»ç»Ÿçš„类型。"
#: 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"
@@ -22939,11 +23341,14 @@ msgid ""
" print(\"An error occurred when trying to access the path.\")\n"
"[/codeblock]"
msgstr ""
-"目录类型。它用于管ç†ç›®å½•åŠå…¶å†…容(ä¸é™äºŽé¡¹ç›®æ–‡ä»¶å¤¹ï¼‰ã€‚\n"
-"当创建一个新的[目录]时,必须使用[方法open]显å¼æ‰“开它,然åŽæ‰èƒ½ä½¿ç”¨å¤§å¤šæ•°æ–¹"
-"法。然而,[method file_exists]å’Œ[method dir_exists]å¯ä»¥åœ¨ä¸æ‰“开目录的情况下使"
-"用。如果是这样,它们使用的是相对于[code]res://[/code]的路径。\n"
-"下é¢æ˜¯ä¸€ä¸ªå…³äºŽå¦‚何é历一个目录中的文件的例å­ã€‚\n"
+"目录类型。它用于管ç†ç›®å½•åŠå…¶å†…容,县ä¸é™äºŽé¡¹ç›®æ–‡ä»¶å¤¹ã€‚\n"
+"创建新的[Directory]目录时,其默认打开的目录为[code]res://[/code]。这在将æ¥å¯"
+"能会改å˜ï¼Œå› æ­¤å»ºè®®å§‹ç»ˆä½¿ç”¨ [method open] æ¥åˆå§‹åŒ–您è¦æ“作的 [Directory],并进"
+"行显å¼çš„错误检查。\n"
+"[b]注æ„:[/b] 导入了很多资æºç±»åž‹ï¼Œä¾‹å¦‚纹ç†æˆ–声音文件,它们的æºèµ„产ä¸ä¼šåŒ…å«åœ¨"
+"导出的游æˆä¸­ï¼Œå› ä¸ºå¯¼å‡ºæ—¶åªä½¿ç”¨å¯¼å…¥çš„版本内容。使用 [ResourceLoader] 访问导入"
+"的资æºã€‚\n"
+"下é¢æ˜¯ä¸€ä¸ªå…³äºŽå¦‚何é历目录文件的示例:\n"
"[codeblock]\n"
"func dir_contents(path):\n"
" var dir = Directory.new()\n"
@@ -23003,22 +23408,18 @@ msgstr ""
"code]被认为是目录)。"
#: doc/classes/Directory.xml:58
-#, fuzzy
msgid ""
"Returns whether the target directory exists. The argument can be relative to "
"the current directory, or an absolute path."
msgstr ""
-"返回目标目录是å¦å­˜åœ¨ã€‚该å‚æ•°å¯ä»¥ç›¸å¯¹äºŽå½“å‰ç›®å½•ï¼Œä¹Ÿå¯ä»¥æ˜¯ç»å¯¹è·¯å¾„。\n"
-"如果未打开[Directory],则该路径是相对于[code] res:// [/code]的。"
+"返回目标目录是å¦å­˜åœ¨ã€‚å‚æ•°å¯ä»¥æ˜¯ç›¸å¯¹äºŽå½“å‰ç›®å½•çš„路径,也å¯ä»¥æ˜¯ç»å¯¹è·¯å¾„。"
#: doc/classes/Directory.xml:65
-#, fuzzy
msgid ""
"Returns whether the target file exists. The argument can be relative to the "
"current directory, or an absolute path."
msgstr ""
-"返回目标文件是å¦å­˜åœ¨ã€‚å‚æ•°å¯ä»¥æ˜¯å½“å‰ç›®å½•çš„相对路径,也å¯ä»¥æ˜¯ç»å¯¹è·¯å¾„。\n"
-"如果 [Directory] 没有打开,则路径是相对于 [code]res://[/code] 。"
+"返回目标文件是å¦å­˜åœ¨ã€‚å‚æ•°å¯ä»¥æ˜¯ç›¸å¯¹äºŽå½“å‰ç›®å½•çš„路径,也å¯ä»¥æ˜¯ç»å¯¹è·¯å¾„。"
#: doc/classes/Directory.xml:71
msgid ""
@@ -23037,14 +23438,13 @@ msgstr ""
"动器的å称。"
#: doc/classes/Directory.xml:84
-#, fuzzy
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 exist, the method returns an empty String."
msgstr ""
-"在Windows上,返回作为å‚数传递的驱动器(分区)的å称(例如[code]C:[/code])。"
-"在其他平å°ä¸Šï¼Œæˆ–者如果请求的驱动器ä¸å­˜åœ¨ï¼Œè¯¥æ–¹æ³•è¿”回一个空字符串。"
+"在Windows上,返回作为å‚数传递的驱动器å³åˆ†åŒºçš„å称,例如,[code]C:[/code]。在"
+"其他平å°ä¸Šï¼Œå¦‚果请求的驱动器ä¸å­˜åœ¨ï¼Œè¯¥æ–¹æ³•è¿”回一个空的字符串。"
#: doc/classes/Directory.xml:90
msgid ""
@@ -23080,7 +23480,6 @@ msgstr ""
"该方法返回0或-1。"
#: doc/classes/Directory.xml:111
-#, fuzzy
msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the currently opened stream if needed. "
@@ -23091,20 +23490,19 @@ msgid ""
"If [code]skip_hidden[/code] is [code]true[/code], hidden files are filtered "
"out."
msgstr ""
-"使用[method get_next]函数åˆå§‹åŒ–用于列出所有文件和目录的æµï¼Œå¹¶åœ¨éœ€è¦æ—¶å…³é—­å½“å‰"
-"打开的æµã€‚处ç†å®ŒæµåŽï¼Œé€šå¸¸åº”使用[method list_dir_end]将其关闭。\n"
-"如果[code] skip_navigational [/code]is[code]true[/code],那么[code].[/code]和"
-"[code] .. [/code]被过滤掉。\n"
-"如果[code] skip_hidden [/code]为[code]true[/code],则éšè—文件将被过滤掉。"
+"åˆå§‹åŒ–用于列出所有文件和目录的æµï¼Œä½¿ç”¨ [method get_next] 函数,如果需è¦ï¼Œå¯å…³"
+"闭当å‰æ‰“开的æµã€‚一旦æµè¢«å¤„ç†å®Œæ¯•ï¼Œé€šå¸¸åº”该用 [method list_dir_end] 关闭。\n"
+"如果 [code]skip_navigational[/code] 是 [code]true[/code],过滤 [code].[/"
+"code] 和 [code]..[/code]。\n"
+"如果 [code]skip_hidden[/code] 是 [code]true[/code],过滤éšè—文件。"
#: doc/classes/Directory.xml:119
-#, fuzzy
msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it "
"has been fully processed with [method get_next] does not matter)."
msgstr ""
-"关闭用[method list_dir_begin]打开的当å‰æµ(是å¦å·²è¢«[method get_next]完全处ç†å¹¶"
-"ä¸é‡è¦)。"
+"关闭用[method list_dir_begin]打开的当å‰æµï¼Œå¹¶ä¸å…³æ³¨æ˜¯å¦å·²ç»ç”¨[method "
+"get_next]完æˆå¤„ç†ã€‚"
#: doc/classes/Directory.xml:126
msgid ""
@@ -23156,7 +23554,6 @@ msgstr ""
"返回[enum Error]代ç å¸¸é‡ä¹‹ä¸€(æˆåŠŸæ—¶è¿”回[code]OK[/code])。"
#: doc/classes/Directory.xml:159
-#, fuzzy
msgid ""
"Renames (move) the [code]from[/code] file or directory to the [code]to[/"
"code] destination. Both arguments should be paths to files or directories, "
@@ -23164,9 +23561,10 @@ msgid ""
"is not access-protected, it will be overwritten.\n"
"Returns one of the [enum Error] code constants ([code]OK[/code] on success)."
msgstr ""
-"å°†[code]from[/code]文件é‡å‘½å(移动)到[code]to[/code]目的地。两个å‚数都应该"
-"是相对或ç»å¯¹æ–‡ä»¶çš„路径。如果目标文件存在并且没有访问ä¿æŠ¤ï¼Œå®ƒå°†è¢«è¦†ç›–。\n"
-"返回[enum Error]代ç å¸¸é‡ä¹‹ä¸€(æˆåŠŸæ—¶è¿”回[code]OK[/code])。"
+"å°† [code]from[/code] 文件或目录é‡å‘½å且移动到 [code]to[/code] 目标。两个å‚æ•°"
+"都应该是文件或目录的相对路径或ç»å¯¹è·¯å¾„。如果目标文件或目录存在且ä¸å—访问ä¿"
+"护,它将被覆盖。\n"
+"返回 [enum Error] 代ç å¸¸é‡ä¹‹ä¸€ï¼ŒæˆåŠŸæ—¶è¿”回 [code]OK[/code]。"
#: doc/classes/DTLSServer.xml:4
msgid "Helper class to implement a DTLS server."
@@ -23309,7 +23707,6 @@ msgstr ""
"ä¾›è¯ä¹¦çš„åŒæ—¶æä¾›é¢å¤–çš„ CA è¯ä¹¦æ¯ã€‚"
#: doc/classes/DTLSServer.xml:77
-#, fuzzy
msgid ""
"Try to initiate the DTLS handshake with the given [code]udp_peer[/code] "
"which must be already connected (see [method PacketPeerUDP."
@@ -23318,9 +23715,9 @@ msgid ""
"[constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of "
"the new connections will be invalid due to cookie exchange."
msgstr ""
-"å°è¯•ä¸Žç»™å®šçš„ [code]udp_peer[/code] å¯åŠ¨ DTLS æ¡æ‰‹ï¼Œè¯¥ peer 必须已ç»è¿žæŽ¥ï¼ˆå‚"
-"阅 [method PacketPeerUDP.connect_to_host])。\n"
-"[b]注æ„[/b]。你必须检查返回的PacketPeerUDP的状æ€æ˜¯å¦ä¸º[常é‡PacketPeerDTLS."
+"å°è¯•ä¸Žç»™å®šçš„[code]udp_peer[/code]å¯åŠ¨DTLSæ¡æ‰‹ï¼Œè¯¥peer必须已ç»è¿žæŽ¥ï¼Œå‚阅"
+"[method PacketPeerUDP.connect_to_host]。\n"
+"[b]注æ„:[/b] 你必须检查返回PacketPeerUDP的状æ€æ˜¯å¦ä¸º[constant PacketPeerDTLS."
"STATUS_HANDSHAKING],因为正常情况下,50%的新连接会因为cookie交æ¢è€Œæ— æ•ˆã€‚"
#: doc/classes/DynamicFont.xml:4
@@ -23328,7 +23725,6 @@ msgid "DynamicFont renders vector font files at runtime."
msgstr "DynamicFont在è¿è¡Œæ—¶æ¸²æŸ“矢é‡å­—体文件。"
#: doc/classes/DynamicFont.xml:7
-#, fuzzy
msgid ""
"DynamicFont renders vector font files dynamically at runtime instead of "
"using a prerendered texture atlas like [BitmapFont]. This trades the faster "
@@ -23355,21 +23751,24 @@ msgid ""
"In FontForge, use [b]File > Generate Fonts[/b], click [b]Options[/b], choose "
"the desired features then generate the font."
msgstr ""
-"DynamicFont在è¿è¡Œæ—¶åŠ¨æ€åœ°æ¸²æŸ“矢é‡å­—体文件,如TTF或OTF,而ä¸æ˜¯åƒ[BitmapFont]é‚£"
-"样使用预先渲染的纹ç†å›¾é›†ã€‚这是以[BitmapFont]更快的加载时间æ¥æ¢å–在è¿è¡Œæ—¶æ”¹å˜"
-"字体å‚数的效果如大å°å’Œé—´è·ã€‚[DynamicFontData]引用字体文件路径。DynamicFont还"
-"支æŒå®šä¹‰ä¸€ä¸ªæˆ–多个备用字体,当显示主字体ä¸æ”¯æŒçš„字符时,将使用这些字体。\n"
-"DynamicFont使用[url=https://www.freetype.org/]FreeType[/url]库进行光栅化。\n"
+"DynamicFont在è¿è¡Œæ—¶åŠ¨æ€æ¸²æŸ“矢é‡å­—体文件,而ä¸æ˜¯åƒ[BitmapFont]那样使用预渲染的"
+"纹ç†å›¾é›†ã€‚使用[BitmapFont]加载时间更快,在è¿è¡Œæ—¶å¯æ”¹å˜å­—体å‚数,如大å°å’Œé—´"
+"è·ã€‚[DynamicFontData]引用字体文件路径。DynamicFont还支æŒå®šä¹‰ä¸€ä¸ªæˆ–多个备用字"
+"体,这些字体将在主字体ä¸æ”¯æŒæ˜¾ç¤ºçš„字符时使用。\n"
+"DynamicFont使用[url=https://www.freetype.org/]FreeType[/url]库进行光栅化处"
+"ç†ã€‚支æŒçš„æ ¼å¼æœ‰TrueType([code].ttf[/code])ã€OpenType([code].otf[/code])"
+"å’ŒWeb Open Font Format 1([code].woff[/code])。而[i]ä¸æ”¯æŒ[/i]Web Open Font "
+"Format 2([code].woff2[/code])。\n"
"[codeblock]\n"
"var dynamic_font = DynamicFont.new()\n"
"dynamic_font.font_data = load(\"res://BarlowCondensed-Bold.ttf\")\n"
-"Dynamic_font.size = 64\n"
+"dynamic_font.size = 64\n"
"$\"Label\".set(\"custom_fonts/font\", dynamic_font)\n"
"[/codeblock]\n"
-"[b]注æ„:[/b] DynamicFont 还ä¸æ”¯æŒä»Žå³åˆ°å·¦æŽ’版ã€è¿žå­—ã€æ–‡æœ¬å¡‘å½¢ã€å¯å˜å­—体和å¯"
-"选字体功能等功能。如果你想把å¯é€‰å­—体功能 \"烘焙\" 到TTF字体文件中,å¯ä»¥ä½¿ç”¨"
-"[url=https://fontforge.org/]FontForge[/url]æ¥å®žçŽ°ã€‚在FontForge中,使用[b]文件"
-">生æˆå­—体[/b],点击[b]选项[/b],选择所需的特å¾ï¼Œç„¶åŽç”Ÿæˆå­—体。"
+"[b]注æ„:[/b] DynamicFont还ä¸æ”¯æŒè¯¸å¦‚å­—è·ã€ä»Žå³åˆ°å·¦çš„排版ã€è¿žæŽ¥è¯ã€æ–‡æœ¬å˜å½¢ã€"
+"å¯å˜å­—体和å¯é€‰å­—体等功能。如果你想把å¯é€‰çš„字体功能 \"烘焙\" 进一个TTF字体文"
+"件,å¯ä½¿ç”¨[url=https://fontforge.org/]FontForge[/url]。在FontForge中,使用[b]"
+"文件>生æˆå­—体[/b],点击[b]选项[/b],选择需è¦çš„功能,然åŽç”Ÿæˆå­—体。"
#: doc/classes/DynamicFont.xml:25
msgid "Adds a fallback font."
@@ -23424,6 +23823,8 @@ msgid ""
"This can be a negative number to make the distance between characters "
"smaller."
msgstr ""
+"æ¯ä¸ªå­—符的é¢å¤–é—´è·ï¼Œå•ä½ä¸ºåƒç´ ã€‚\n"
+"è¿™å¯ä»¥æ˜¯è´Ÿæ•°ï¼Œä½¿å­—符之间的è·ç¦»æ›´å°ã€‚"
#: doc/classes/DynamicFont.xml:88
msgid ""
@@ -23431,6 +23832,8 @@ msgid ""
"extra_spacing_char]) in pixels.\n"
"This can be a negative number to make the distance between words smaller."
msgstr ""
+"空格字符的é¢å¤–é—´è·ï¼Œå•ä½æ˜¯åƒç´ ï¼Œé™¤äº†[member extra_spacing_char]。\n"
+"è¿™å¯ä»¥æ˜¯è´Ÿæ•°ï¼Œä½¿å­—符之间的è·ç¦»æ›´å°ã€‚"
#: doc/classes/DynamicFont.xml:92
msgid "Extra spacing at the top in pixels."
@@ -23469,6 +23872,9 @@ msgid ""
"control whose size changes over time, unless a pixel art aesthetic is "
"desired."
msgstr ""
+"如果[code]true[/code],将使用过滤功能。如果字体过度采样被ç¦ç”¨æˆ–无效,这将使字"
+"体在缩放时å˜å¾—模糊,而éžåƒç´ åŒ–。当在尺寸éšæ—¶å˜åŒ–的控件中使用字体时,建议å¯ç”¨"
+"这个功能,除éžæ˜¯åƒç´ è®¾è®¡ã€‚"
#: doc/classes/DynamicFont.xml:111
msgid ""
@@ -23476,6 +23882,8 @@ msgid ""
"appearance when downscaling it if font oversampling is disabled or "
"ineffective."
msgstr ""
+"如果[code]true[/code],则使用mipmapping。如果字体过度采样被ç¦ç”¨æˆ–无效,å¯æ”¹å–„"
+"字体缩å°æ—¶çš„表现。"
#: doc/classes/DynamicFont.xml:116
msgid "Spacing at the top."
@@ -23532,9 +23940,8 @@ msgid "Use the default font hinting mode (crisper but less smooth)."
msgstr "使用默认的字体æ示模å¼ï¼ˆæ›´æ¸…晰但ä¸å¤ªæµç•…)。"
#: doc/classes/EditorExportPlugin.xml:4
-#, fuzzy
msgid "A script that is executed when exporting the project."
-msgstr "导出项目时执行的脚本。"
+msgstr "在导出项目时执行的脚本。"
#: doc/classes/EditorExportPlugin.xml:7
msgid ""
@@ -23544,6 +23951,9 @@ msgid ""
"called at the beginning of the export process and then [method _export_file] "
"is called for each exported file."
msgstr ""
+"æ¯å½“用户导出项目时,会自动激活编辑器的导出æ’件。其最常用在确定哪些文件被包å«"
+"到导出的项目中。对于æ¯ä¸ªæ’件,在导出过程开始时调用[method _export_begin],然"
+"åŽè°ƒç”¨æ¯ä¸ªå¯¼å‡ºæ–‡ä»¶çš„[method _export_file]。"
#: doc/classes/EditorExportPlugin.xml:19
msgid ""
@@ -23554,6 +23964,10 @@ msgid ""
"exported project. [code]flags[/code] is only used when running a runnable "
"profile, e.g. when using native run on Android."
msgstr ""
+"由用户é‡å†™çš„虚方法。在导出开始时它被调用,并æ供关于导出的所有信æ¯ã€‚"
+"[code]features[/code] 是导出的特性列表,[code]is_debug[/code] 是[code]true[/"
+"code] 用于调试构建,[code]path[/code] 是导出项目的目标路径。[code]flags[/"
+"code]åªè¿è¡Œåœ¨å¯è¿è¡Œé…置时使用,例如在Android上使用本地è¿è¡Œã€‚"
#: doc/classes/EditorExportPlugin.xml:25
msgid ""
@@ -23571,6 +23985,10 @@ msgid ""
"Calling [method skip] inside this callback will make the file not included "
"in the export."
msgstr ""
+"由用户é‡å†™çš„虚拟方法。æ¯ä¸ªå¯¼å‡ºçš„文件调用它,并æä¾›å¯ç”¨äºŽè¯†åˆ«æ–‡ä»¶çš„å‚数。"
+"[code]path[/code] 是文件的路径,[code]type[/code] 是文件所代表的 [Resource] "
+"类型(例如[PackedScene]),[code]features[/code] 是导出的特å¾åˆ—表。\n"
+"在这个回调中调用 [method skip] 将使该文件ä¸åŒ…括在导出中。"
#: doc/classes/EditorExportPlugin.xml:44
msgid ""
@@ -23579,19 +23997,22 @@ msgid ""
"the file. If [code]remap[/code] is [code]true[/code], file will not be "
"exported, but instead remapped to the given [code]path[/code]."
msgstr ""
+"添加一个è¦å¯¼å‡ºçš„自定义文件。[code]path[/code] 是å¯ç”¨äºŽåŠ è½½æ–‡ä»¶çš„虚拟路径,"
+"[code]file [/code] 是文件的二进制数æ®ã€‚如果 [code]remap[/code] 是 [code] "
+"true [/code],则文件将ä¸ä¼šå¯¼å‡ºï¼Œè€Œæ˜¯é‡æ–°æ˜ å°„到给定的 [code]path [/code]。"
#: doc/classes/EditorExportPlugin.xml:51
-#, fuzzy
msgid ""
"Adds an iOS bundle file from the given [code]path[/code] to the exported "
"project."
-msgstr "将一个è¯ä¹¦ä¿å­˜åˆ°ç»™å®šçš„[code]path[/code],应是一个 \"*.crt \"文件。"
+msgstr "从给定的 [code]path[/code] 添加一个iOSæ†ç»‘文件到导出的项目。"
#: doc/classes/EditorExportPlugin.xml:58
msgid ""
"Adds a C++ code to the iOS export. The final code is created from the code "
"appended by each active export plugin."
msgstr ""
+"å°†C++代ç æ·»åŠ åˆ°iOS导出中。最终的代ç æ˜¯ç”±æ¯ä¸ªæ¿€æ´»çš„导出æ’件附加的代ç åˆ›å»ºçš„。"
#: doc/classes/EditorExportPlugin.xml:65
msgid ""
@@ -23602,39 +24023,41 @@ msgid ""
"This method should not be used for System libraries as they are already "
"present on the device."
msgstr ""
+"在iOSçš„Xcode项目中链接阶段添加动æ€åº“(*.dylib, *.framework),并将其嵌入到生"
+"æˆçš„二进制文件中。\n"
+"[b]注æ„:[/b] 对于é™æ€åº“(*.a)的工作方å¼ä¸Ž[method add_ios_framework]相åŒã€‚\n"
+"这个方法ä¸åº”用于系统库,因为它们已ç»åœ¨è®¾å¤‡ä¸Šå­˜åœ¨ã€‚"
#: doc/classes/EditorExportPlugin.xml:74
msgid ""
"Adds a static library (*.a) or dynamic library (*.dylib, *.framework) to "
"Linking Phase in iOS's Xcode project."
msgstr ""
+"在iOSçš„Xcode项目中链接阶段添加é™æ€åº“(*.a)或动æ€åº“(*.dylib,*.framework)。"
#: doc/classes/EditorExportPlugin.xml:81
-#, fuzzy
msgid "Adds linker flags for the iOS export."
-msgstr "在标签堆中添加一个æ¢è¡Œæ ‡ç­¾ã€‚"
+msgstr "为 iOS 导出添加链接器标志。"
#: doc/classes/EditorExportPlugin.xml:88
msgid "Adds content for iOS Property List files."
msgstr "为iOS属性列表文件添加内容。"
#: doc/classes/EditorExportPlugin.xml:95
-#, fuzzy
msgid "Adds a static lib from the given [code]path[/code] to the iOS project."
-msgstr "将一个è¯ä¹¦ä¿å­˜åˆ°ç»™å®šçš„[code]path[/code],应是一个 \"*.crt \"文件。"
+msgstr "从给定的[code]path[/code]添加é™æ€åº“到iOS项目。"
#: doc/classes/EditorExportPlugin.xml:103
-#, fuzzy
msgid ""
"Adds a shared object with the given [code]tags[/code] and destination "
"[code]path[/code]."
-msgstr "添加具有指定[code]path[/code]和[code]weights[/code]的骨骼."
+msgstr "添加指定 [code]tags[/code] 和目标 [code]path[/code] 的共享对象。"
#: doc/classes/EditorExportPlugin.xml:109
msgid ""
"To be called inside [method _export_file]. Skips the current file, so it's "
"not included in the export."
-msgstr ""
+msgstr "在[method _export_file]中调用。跳过当å‰æ–‡ä»¶ï¼Œå› æ­¤å®ƒä¸åŒ…括在导出中。"
#: doc/classes/EditorFeatureProfile.xml:4
msgid ""
@@ -23837,6 +24260,9 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回用于显示文件系统的[code]VBoxContainer[/code]。\n"
+"[b]警告:[/b] 这是一个必需的内部节点,移除和释放它å¯èƒ½ä¼šå¯¼è‡´å´©æºƒã€‚如果你想éš"
+"è—它或它的任何å­èŠ‚点,请使用 [member CanvasItem.visible] 属性。"
#: doc/classes/EditorFileDialog.xml:35
msgid ""
@@ -23881,7 +24307,7 @@ msgstr "[EditorFileDialog]å‘用户显示资æºçš„视图格å¼ã€‚"
#: doc/classes/EditorFileDialog.xml:60
msgid ""
"The purpose of the [EditorFileDialog], which defines the allowed behaviors."
-msgstr ""
+msgstr "[EditorFileDialog] 的用途,它定义了å…许的行为。"
#: doc/classes/EditorFileDialog.xml:64
msgid ""
@@ -23977,6 +24403,8 @@ msgid ""
"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
msgstr ""
+"返回文件的资æºç±»åž‹ï¼Œç»™å®šå®Œæ•´è·¯å¾„。这将返回字符串,如[code]\"Resource\"[/code]"
+"或[code]\"GDScript\"[/code],[i]ä¸æ˜¯[/i]文件扩展å,如[code]\".gd\"[/code]。"
#: doc/classes/EditorFileSystem.xml:23
msgid "Gets the root directory object."
@@ -24017,9 +24445,8 @@ msgid "Emitted if the filesystem changed."
msgstr "在文件系统更改的时候触å‘。"
#: doc/classes/EditorFileSystem.xml:80
-#, fuzzy
msgid "Emitted if a resource is reimported."
-msgstr "当资æºè¢«é‡æ–°å¯¼å…¥æ—¶ï¼Œè§¦å‘该信å·ã€‚"
+msgstr "é‡æ–°å¯¼å…¥èµ„æºæ—¶è§¦å‘。"
#: doc/classes/EditorFileSystem.xml:86
msgid ""
@@ -24098,6 +24525,9 @@ msgid ""
"returns a string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/"
"code], [i]not[/i] a file extension such as [code]\".gd\"[/code]."
msgstr ""
+"返回索引[code]idx[/code]处文件的资æºç±»åž‹ã€‚这将返回字符串,如[code]\"Resource"
+"\"[/code]或[code]\"GDScript\"[/code],[i]ä¸æ˜¯[/i]文件扩展å,如[code]\".gd"
+"\"[/code]。"
#: doc/classes/EditorFileSystemDirectory.xml:77
msgid "Returns the name of this directory."
@@ -24143,7 +24573,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -24187,15 +24618,16 @@ msgid ""
" return ResourceSaver.save(filename, mesh)\n"
"[/codeblock]"
msgstr ""
-"EditorImportPluginsæ供了一ç§æ‰©å±•ç¼–辑器资æºå¯¼å…¥åŠŸèƒ½çš„方法。使用它们从自定义文"
-"件中导入资æºï¼Œæˆ–æ供编辑器现有导入器的替代方案。用[method EditorPlugin."
+"EditorImportPluginsæ供了一ç§æ‰©å±•ç¼–辑器资æºå¯¼å…¥åŠŸèƒ½çš„方法。使用它们æ¥å¯¼å…¥è‡ªå®š"
+"义文件资æºï¼Œæˆ–者æˆä¸ºç¼–辑器现有导入器的替代å“。用[method EditorPlugin."
"add_import_plugin]注册你的[EditorPlugin]。\n"
-"EditorImportPlugins通过与特定的文件扩展å和资æºç±»åž‹å…³è”æ¥å·¥ä½œã€‚å‚阅[method "
-"get_recognized_extensions]å’Œ[method get_resource_type]。它们å¯ä»¥é€‰æ‹©æ€§åœ°æŒ‡å®š"
-"一些影å“导入过程的导入预设。EditorImportPlugins负责创建资æºå¹¶å°†å…¶ä¿å­˜åœ¨"
-"[code].import[/code]目录下。\n"
-"下é¢æ˜¯ä¸€ä¸ªä»Žæ‰©å±•å为\".special \"或\".spec \"的文件导入[Mesh]çš„"
-"EditorImportPlugin示例。\n"
+"EditorImportPlugins通过与特定的文件扩展å和资æºç±»åž‹ç›¸å…³è”æ¥å·¥ä½œã€‚å‚阅 "
+"[method get_recognized_extensions] å’Œ [method get_resource_type]。它们å¯ä»¥é€‰"
+"择性地指定一些影å“导入过程的导入预置。EditorImportPlugins负责创建资æºå¹¶å°†å…¶ä¿"
+"存在[code].import[/code]目录中,å‚阅[member ProjectSettings.application/"
+"config/project_data_dir_name]。\n"
+"下é¢æ˜¯ä¸€ä¸ªEditorImportPlugin的例å­ï¼Œå®ƒä»Žæ‰©å±•å为\".special \"或\".spec \"çš„æ–‡"
+"件中导入一个[Mesh]:\n"
"[codeblock]\n"
"tool\n"
"extends EditorImportPlugin\n"
@@ -24204,7 +24636,7 @@ msgstr ""
" return \"my.special.plugin\"\n"
"\n"
"func get_visible_name():\n"
-" return \"Special Mesh Importer\"\n"
+" return \"Special Mesh\"\n"
"\n"
"func get_recognized_extensions():\n"
" return [\"special\", \"spec\"]\n"
@@ -24234,8 +24666,7 @@ msgstr ""
"reader\n"
"\n"
" var filename = save_path + \".\" + get_save_extension()\n"
-" ResourceSaver.save(filename, mesh)\n"
-" return OK\n"
+" return ResourceSaver.save(filename, mesh)\n"
"[/codeblock]"
#: doc/classes/EditorImportPlugin.xml:51 doc/classes/ResourceImporter.xml:10
@@ -24258,7 +24689,6 @@ msgstr ""
"选), [code]hint_string[/code](å¯é€‰), [code]use[/code](å¯é€‰)。"
#: doc/classes/EditorImportPlugin.xml:64
-#, fuzzy
msgid ""
"Gets the order of this importer to be run when importing resources. "
"Importers with [i]lower[/i] import orders will be called first, and higher "
@@ -24267,8 +24697,10 @@ msgid ""
"code] unless overridden by a specific importer. See [enum ResourceImporter."
"ImportOrder] for some predefined values."
msgstr ""
-"获å–导入资æºæ—¶è¯¥å¯¼å…¥å™¨çš„è¿è¡Œé¡ºåºã€‚更高的值将在更晚被调用。使用该值å¯ç¡®ä¿å¯¼å…¥"
-"器在已导入ä¾èµ–关系åŽè¿è¡Œã€‚"
+"获å–该导入器在导入资æºæ—¶çš„è¿è¡Œé¡ºåºã€‚具有[i]较低[/i]导入顺åºçš„导入器将被首先调"
+"用,较高值的将被其åŽè°ƒç”¨ã€‚使用这个æ¥ç¡®ä¿å¯¼å…¥å™¨åœ¨ä¾èµ–项已ç»è¢«å¯¼å…¥åŽæ‰§è¡Œã€‚默认"
+"的导入顺åºæ˜¯ [code]0[/code],除éžè¢«æŒ‡å®šçš„导入器é‡å†™ã€‚å‚阅 [enum "
+"ResourceImporter.ImportOrder] 了解相关预定义的值。"
#: doc/classes/EditorImportPlugin.xml:70
msgid "Gets the unique name of the importer."
@@ -24347,14 +24779,18 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
-msgstr "获å–用于将此资æºä¿å­˜åœ¨ [code].import[/code] 目录中的扩展å。"
+"use_hidden_project_data_directory])."
+msgstr ""
+"获å–用于在[code].import[/code]目录中ä¿å­˜æ­¤èµ„æºçš„扩展å,å‚阅[member "
+"ProjectSettings.application/config/project_data_dir_name]。"
#: doc/classes/EditorImportPlugin.xml:130
msgid ""
"Gets the name to display in the import window. You should choose this name "
"as a continuation to \"Import as\", e.g. \"Import as Special Mesh\"."
msgstr ""
+"获å–在导入窗å£ä¸­æ˜¾ç¤ºçš„å称。你应该选择这个å字作为 \"Import as\" 的延续,例"
+"如 \"Import as Special Mesh\"。"
#: doc/classes/EditorImportPlugin.xml:141
msgid ""
@@ -24375,7 +24811,6 @@ msgid "A tab used to edit properties of the selected node."
msgstr "用于编辑所选节点的属性的选项å¡ã€‚"
#: doc/classes/EditorInspector.xml:7
-#, fuzzy
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, "
@@ -24385,8 +24820,8 @@ msgid ""
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_inspector]."
msgstr ""
-"编辑器检查器默认ä½äºŽç¼–辑器的å³ä¾§ã€‚它是用æ¥ç¼–辑所选节点的属性的。例如,你å¯ä»¥"
-"选择一个节点,如Sprite2D,然åŽé€šè¿‡æ£€æŸ¥å™¨å·¥å…·ç¼–辑它的å˜æ¢ã€‚编辑器检查器是游æˆ"
+"编辑器检查器默认ä½äºŽç¼–辑器的å³ä¾§ã€‚用æ¥ç¼–辑所选节点的属性。例如,你å¯ä»¥é€‰æ‹©ä¸€"
+"个节点,如[Sprite],然åŽé€šè¿‡æ£€æŸ¥å™¨å·¥å…·ç¼–辑其transformå˜æ¢ã€‚编辑器检查器是游æˆ"
"å¼€å‘工作æµç¨‹ä¸­çš„一个é‡è¦å·¥å…·ã€‚\n"
"[b]注æ„:[/b] 这个类ä¸åº”该被直接实例化。而是,使用[method EditorInterface."
"get_inspector]访问å•ä¾‹ã€‚"
@@ -24454,7 +24889,6 @@ msgid "Plugin for adding custom property editors on inspector."
msgstr "用于在检查器上添加自定义属性编辑器的æ’件。"
#: doc/classes/EditorInspectorPlugin.xml:7
-#, fuzzy
msgid ""
"These plugins allow adding custom property editors to [EditorInspector].\n"
"Plugins are registered via [method EditorPlugin.add_inspector_plugin].\n"
@@ -24468,15 +24902,15 @@ msgid ""
"Finally, [method parse_end] will be called.\n"
"On each of these calls, the \"add\" functions can be called."
msgstr ""
-"该æ’件å…许在[EditorInspector]中添加自定义属性编辑器。\n"
-"æ’件通过[Object EditorPlugin.add_inspector_plugin]方法注册。\n"
-"当编辑对象时,调用[Object can_handle]函数,如果支æŒå¯¹è±¡ç±»åž‹ï¼Œå¿…须返回"
+"该æ’件å…许å‘[EditorInspector]添加自定义属性编辑器。\n"
+"æ’件通过[method EditorPlugin.add_inspector_plugin]注册。\n"
+"当一个对象被编辑时,[method can_handle]函数被调用,如果支æŒå¯¹è±¡ç±»åž‹ï¼Œå¿…须返回"
"[code]true[/code]。\n"
-"如果支æŒï¼Œå°†è°ƒç”¨[Object parse_begin]函数,å…许在类的开头放置自定义控件。\n"
-"éšåŽï¼Œ[Object parse_category]å’Œ[Object parse_property]将被æ¯ä¸ªç±»åˆ«å’Œå±žæ€§è¢«è°ƒ"
-"用。它们也æ供了å‘检查器添加自定义控件的功能。\n"
-"最åŽï¼Œ[Object parse_end]将被调用。\n"
-"在æ¯ä¸ªè°ƒç”¨ä¸­ï¼Œéƒ½å¯ä»¥è°ƒç”¨â€œaddâ€å‡½æ•°ã€‚"
+"如果支æŒï¼Œå‡½æ•°[method parse_begin]将被调用,å…许在类的开头放置自定义控件。\n"
+"éšåŽï¼Œè°ƒç”¨æ¯ä¸ªç±»åž‹å’Œå±žæ€§[method parse_category]å’Œ[method parse_property]。其"
+"也æ供了å‘检查器添加自定义控件的能力。\n"
+"最åŽï¼Œè°ƒç”¨[method parse_end]。\n"
+"在这些调用中,æ¯ä¸€ä¸ªéƒ½å¯ä»¥è°ƒç”¨ \"add\"函数。"
#: doc/classes/EditorInspectorPlugin.xml:16
msgid ""
@@ -24487,23 +24921,23 @@ msgstr ""
"inspector_plugins.html"
#: doc/classes/EditorInspectorPlugin.xml:23
-#, fuzzy
msgid "Adds a custom control, which is not necessarily a property editor."
-msgstr "添加一个自定义控件,ä¸ä¸€å®šæ˜¯å±žæ€§ç¼–辑器。"
+msgstr "添加自定义控件,它ä¸ä¸€å®šæ˜¯å±žæ€§ç¼–辑器。"
#: doc/classes/EditorInspectorPlugin.xml:31
-#, fuzzy
msgid ""
"Adds a property editor for an individual property. The [code]editor[/code] "
"control must extend [EditorProperty]."
-msgstr "添加一个属性编辑器,这个必须继承[EditorProperty]。"
+msgstr ""
+"为å•ç‹¬çš„属性添加属性编辑器。[code]editor[/code]控件必须扩展[EditorProperty]。"
#: doc/classes/EditorInspectorPlugin.xml:40
-#, fuzzy
msgid ""
"Adds an editor that allows modifying multiple properties. The [code]editor[/"
"code] control must extend [EditorProperty]."
-msgstr "添加一个å…许修改多个属性的编辑器,它必须继承[EditorProperty]。"
+msgstr ""
+"添加一个编辑器,å…许修改多个属性。[code]editor[/code]控件必须扩展"
+"[EditorProperty]。"
#: doc/classes/EditorInspectorPlugin.xml:47
msgid "Returns [code]true[/code] if this object can be handled by this plugin."
@@ -24550,7 +24984,7 @@ msgstr ""
"新)加载场景,渲染网格预览,检查和编辑资æºå’Œå¯¹è±¡ã€‚它å…许自定义窗å£ï¼Œä¿å­˜å’Œ"
"(é‡æ–°ï¼‰åŠ è½½åœºæ™¯ï¼Œæ¸²æŸ“网格预览,检查和编辑资æºå’Œå¯¹è±¡ï¼Œå¹¶æ供对"
"[EditorSettings]ã€[EditorFileSystem]ã€[EditorResourcePreview]ã€"
-"[ScriptEditor]ã€ç¼–辑器视å£å’Œåœºæ™¯ä¿¡æ¯çš„访问。\n"
+"[ScriptEditor]ã€ç¼–辑器视窗和场景信æ¯çš„访问。\n"
"[b]注æ„:[/b]这个类ä¸åº”该直接实例化。相å,使用[method EditorPlugin."
"get_editor_interface]访问å•ä¾‹ã€‚"
@@ -24558,14 +24992,13 @@ msgstr ""
msgid ""
"Edits the given [Node]. The node will be also selected if it's inside the "
"scene tree."
-msgstr ""
+msgstr "编辑给定的[Node]。如果该节点在场景树内,将被选中。"
#: doc/classes/EditorInterface.xml:24
msgid "Edits the given [Resource]."
msgstr "编辑给定的[Resource]。"
#: doc/classes/EditorInterface.xml:30
-#, fuzzy
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 "
@@ -24573,8 +25006,9 @@ msgid ""
"[b]Warning:[/b] Removing and freeing this node will render the editor "
"useless and may cause a crash."
msgstr ""
-"返回Godot编辑器窗å£çš„主容器。例如,您å¯ä»¥ç”¨å®ƒæ¥èŽ·å–容器的大å°ï¼Œå¹¶æ®æ­¤æ”¾ç½®æ‚¨çš„"
-"控件。"
+"返回Godot编辑器窗å£çš„主容器。例如,你å¯ä»¥ç”¨å®ƒæ¥æ£€ç´¢å®¹å™¨çš„大å°å¹¶ç›¸åº”地放置你的"
+"控件。\n"
+"[b]警告:[/b] 删除和释放这个节点将使编辑器失效,并å¯èƒ½å¯¼è‡´å´©æºƒã€‚"
#: doc/classes/EditorInterface.xml:37
msgid "Returns the current path being viewed in the [FileSystemDock]."
@@ -24593,13 +25027,17 @@ msgid ""
"code] and [code]interface/editor/custom_display_scale[/code] editor "
"settings. Editor must be restarted for changes to be properly applied."
msgstr ""
+"返回编辑器用户UI的实际比例,[code]1.0[/code]比例为100%。这å¯ä»¥ç”¨æ¥è°ƒæ•´ç”±æ’件"
+"添加的用户UIçš„ä½ç½®å’Œå°ºå¯¸ã€‚\n"
+"[b]注æ„:[/b]这个值是通过[code]interface/editor/display_scale[/code]å’Œ"
+"[code]interface/editor/custom_display_scale[/code]编辑器设置项æ¥è®¾ç½®ã€‚编辑器"
+"å¿…é¡»é‡æ–°å¯åŠ¨æ‰èƒ½æ­£ç¡®åº”用这些å˜åŒ–。"
#: doc/classes/EditorInterface.xml:56
msgid "Returns the editor's [EditorSettings] instance."
msgstr "返回编辑器的[EditorSettings]实例。"
#: doc/classes/EditorInterface.xml:62
-#, fuzzy
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 "
@@ -24607,8 +25045,10 @@ msgid ""
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
-"返回主编辑器控件。将其作为主å±å¹•çš„父å±å¹•ã€‚\n"
-"[b]注æ„:[/b] 这将返回包å«æ•´ä¸ªç¼–辑器的主编辑器控件,而ä¸æ˜¯å…·ä½“çš„2D或3D视窗。"
+"返回主编辑器控件。将其作为主å±å¹•çš„父控件。\n"
+"[b]注æ„:[/b] 这将返回包å«æ•´ä¸ªç¼–辑器的主编辑器控件,而ä¸æ˜¯å…·ä½“çš„ 2D或 3D视"
+"窗。\n"
+"[b]警告:[/b] 删除和释放这个节点将使编辑器的一部分失去作用,并å¯èƒ½å¯¼è‡´å´©æºƒã€‚"
#: doc/classes/EditorInterface.xml:70
msgid ""
@@ -24616,6 +25056,8 @@ msgid ""
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
+"返回编辑器的文件系统é¢æ¿ [FileSystemDock] 实例。\n"
+"[b]警告:[/b] 移除和释放此节点将使编辑器的一部分失去作用,并å¯èƒ½å¯¼è‡´å´©æºƒã€‚"
#: doc/classes/EditorInterface.xml:77
msgid ""
@@ -24623,6 +25065,8 @@ msgid ""
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
+"返回编辑器的属性检查器 [EditorInspector]实例。\n"
+"[b]警告:[/b] 删除和释放这个节点将使编辑器的一部分失去作用,并å¯èƒ½å¯¼è‡´å´©æºƒã€‚"
#: doc/classes/EditorInterface.xml:84
msgid "Returns an [Array] with the file paths of the currently opened scenes."
@@ -24648,6 +25092,8 @@ msgid ""
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
+"返回编辑器的脚本编辑器 [ScriptEditor] 实例。\n"
+"[b]警告:[/b] 删除和释放这个节点将使编辑器的一部分失去作用,并å¯èƒ½å¯¼è‡´å´©æºƒã€‚"
#: doc/classes/EditorInterface.xml:115
msgid ""
@@ -24664,12 +25110,14 @@ msgid "Returns the editor's [EditorSelection] instance."
msgstr "返回编辑器的[EditorSelection]实例。"
#: doc/classes/EditorInterface.xml:130
-#, fuzzy
msgid ""
"Shows the given property on the given [code]object[/code] in the editor's "
"Inspector dock. If [code]inspector_only[/code] is [code]true[/code], plugins "
"will not attempt to edit [code]object[/code]."
-msgstr "在编辑器的检查起é¢æ¿ä¸­æ˜¾ç¤ºç»™å®š[code]object[/code]的属性。"
+msgstr ""
+"在编辑器的属性检查器中显示给定对象 [code]object[/code] 的给定属性。如果 "
+"[code]inspector_only[/code] = [code]true[/code],æ’件将ä¸ä¼šå°è¯•ç¼–辑对象 "
+"[code]object[/code]。"
#: doc/classes/EditorInterface.xml:136
msgid ""
@@ -24688,10 +25136,9 @@ msgstr ""
"其目录å称一致。"
#: doc/classes/EditorInterface.xml:151
-#, fuzzy
msgid ""
"Returns mesh previews rendered at the given size as an [Array] of [Texture]s."
-msgstr "以[Texture2D]的数组[Array]å½¢å¼è¿”回以给定尺寸渲染的网格预览。"
+msgstr "返回 [Array] 数组包å«ç»™å®šå°ºå¯¸æ¸²æŸ“的网格预览图[Texture]。"
#: doc/classes/EditorInterface.xml:158
msgid "Opens the scene at the given path."
@@ -24832,7 +25279,6 @@ msgstr ""
"用[method Node.queue_free]释放它。"
#: doc/classes/EditorPlugin.xml:56
-#, fuzzy
msgid ""
"Adds a custom type, which will appear in the list of nodes or resources. An "
"icon can be optionally passed.\n"
@@ -24845,12 +25291,12 @@ msgid ""
"During run-time, this will be a simple object with a script so this function "
"does not need to be called then."
msgstr ""
-"添加自定义类型,该类型将出现在节点或资æºåˆ—表中。å¯ä»¥é€‰æ‹©ä¼ é€’图标。\n"
-"选择给定的节点或资æºåŽï¼Œå°†å®žä¾‹åŒ–基本类型(例如“ Node3Dâ€ï¼Œâ€œ Controlâ€ï¼Œâ€œ "
-"Resourceâ€ï¼‰ï¼Œç„¶åŽå°†è„šæœ¬åŠ è½½å¹¶è®¾ç½®ä¸ºæ­¤å¯¹è±¡ã€‚\n"
-"您å¯ä»¥ä½¿ç”¨è™šæ‹Ÿæ–¹æ³•[method handles]通过检查脚本或使用[code] is [/code]关键字æ¥"
-"检查是å¦æ­£åœ¨ç¼–辑您的自定义对象。\n"
-"在è¿è¡Œæ—¶ï¼Œè¿™å°†æ˜¯å¸¦æœ‰è„šæœ¬çš„简å•å¯¹è±¡ï¼Œå› æ­¤æ— éœ€å†è°ƒç”¨æ­¤å‡½æ•°ã€‚"
+"添加一个自定义类型,它将出现在节点或资æºçš„列表中。å¯ä»¥é€‰æ‹©æŒ‡å®šä¸€ä¸ªå›¾æ ‡ã€‚\n"
+"当给定的节点或资æºè¢«é€‰ä¸­æ—¶ï¼ŒåŸºæœ¬ç±»åž‹å°†è¢«å®žä¾‹åŒ–ï¼ˆå³ \"Spatial\"ã€\"Control"
+"\"ã€\"Resource\"),然åŽè„šæœ¬å°†è¢«åŠ è½½å¹¶è®¾ç½®ä¸ºè¿™ä¸ªå¯¹è±¡ã€‚\n"
+"ä½ å¯ä»¥ä½¿ç”¨è™šæ‹Ÿæ–¹æ³• [method handles] 通过检查脚本或使用 [code]is[/code] 关键字"
+"æ¥æ£€æŸ¥æ˜¯å¦æ­£åœ¨ç¼–辑自定义对象。\n"
+"在è¿è¡Œæ—¶ï¼Œè¿™å°†æ˜¯ä¸€ä¸ªå¸¦æœ‰è„šæœ¬çš„简å•å¯¹è±¡ï¼Œå› æ­¤ä¸éœ€è¦è°ƒç”¨æ­¤å‡½æ•°ã€‚"
#: doc/classes/EditorPlugin.xml:66
msgid ""
@@ -24858,6 +25304,9 @@ msgid ""
"tasks when the project is being exported.\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
+"注册一个新的编辑器导出æ’件 [EditorExportPlugin]。导出æ’件是用æ¥åœ¨é¡¹ç›®è¢«å¯¼å‡ºæ—¶"
+"执行任务的。\n"
+"å‚è§ [method add_inspector_plugin],了解如何注册一个æ’件的例å­ã€‚"
#: doc/classes/EditorPlugin.xml:74
msgid ""
@@ -24867,6 +25316,11 @@ msgid ""
"add_scene_import_plugin] instead.\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
+"注册一个新的编辑器导入æ’件 [EditorImportPlugin]。导入æ’件用于导入自定义和ä¸æ”¯"
+"æŒçš„资产,作为一个自定义的 [Resource] 资æºç±»åž‹ã€‚\n"
+"[b]注æ„:[/b] 如果你想导入自定义的 3D 资产格å¼ï¼Œè¯·ä½¿ç”¨ [method "
+"add_scene_import_plugin] 代替。\n"
+"å‚è§ [method add_inspector_plugin] 以了解如何注册一个æ’件的例å­ã€‚"
#: doc/classes/EditorPlugin.xml:83
msgid ""
@@ -24888,12 +25342,30 @@ msgid ""
" remove_inspector_plugin(inspector_plugin)\n"
"[/codeblock]"
msgstr ""
+"注册一个新的编辑器属性检查器æ’件[EditorInspectorPlugin]。检查器æ’件用于扩展 "
+"[EditorInspector] 并为你的对象属性æ供自定义é…置工具。\n"
+"[b]注æ„:[/b] 当你的 [EditorPlugin] 被ç¦ç”¨æ—¶ï¼Œä¸€å®šè¦ä½¿ç”¨ [method "
+"remove_inspector_plugin] æ¥åˆ é™¤æ³¨å†Œçš„ [EditorInspectorPlugin],以防止泄æ¼å’Œå‡º"
+"现æ„外行为。\n"
+"[codeblock]\n"
+"const MyInspectorPlugin = preload(\"res://addons/your_addon/path/to/your/"
+"script.gd\")\n"
+"var inspector_plugin = MyInspectorPlugin.new()\n"
+"\n"
+"func _enter_tree():\n"
+" add_inspector_plugin( inspector_plugin)\n"
+"\n"
+"func _exit_tree():\n"
+" remove_inspector_plugin(inspector_plugin)\n"
+"[/codeblock]"
#: doc/classes/EditorPlugin.xml:101
msgid ""
"Registers a new [EditorSceneImporter]. Scene importers are used to import "
"custom 3D asset formats as scenes."
msgstr ""
+"注册一个新的场景导入器 [EditorSceneImporter]。场景导入器是用æ¥å¯¼å…¥è‡ªå®šä¹‰çš„三"
+"维资产格å¼ä½œä¸ºåœºæ™¯ã€‚"
#: doc/classes/EditorPlugin.xml:108
msgid ""
@@ -24901,6 +25373,9 @@ msgid ""
"custom gizmos to the 3D preview viewport for a [Spatial].\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
+"注册一个新的空间辅助器æ’件 [EditorSpatialGizmoPlugin]。Gizmoæ’件用于为 "
+"[Spatial] 的 3D预览视窗添加自定义的 gizmos。\n"
+"å‚è§ [method add_inspector_plugin] 以了解如何注册一个æ’件的例å­ã€‚"
#: doc/classes/EditorPlugin.xml:119
msgid ""
@@ -24942,6 +25417,10 @@ msgid ""
"code], the project will not run. The run is aborted immediately, so this "
"also prevents all other plugins' [method build] methods from running."
msgstr ""
+"这个方法在编辑器å³å°†è¿è¡Œé¡¹ç›®æ—¶è¢«è°ƒç”¨ã€‚然åŽï¼Œè¯¥æ’件å¯ä»¥åœ¨é¡¹ç›®è¿è¡Œå‰æ‰§è¡Œæ‰€éœ€çš„"
+"æ“作。\n"
+"这个方法必须返回一个布尔值。如果这个方法返回 [code]false[/code],项目将ä¸ä¼šè¿"
+"行。è¿è¡Œè¢«ç«‹å³ä¸­æ­¢ï¼Œæ‰€ä»¥è¿™ä¹Ÿä¼šé˜»æ­¢æ‰€æœ‰å…¶ä»–æ’件的[method build] 方法è¿è¡Œã€‚"
#: doc/classes/EditorPlugin.xml:147
msgid ""
@@ -24990,6 +25469,21 @@ msgid ""
" return false\n"
"[/codeblock]"
msgstr ""
+"当2D编辑器的视窗被更新时,由引擎调用。使用 [code]overlay[/code] [Control] 进"
+"行绘制。你å¯ä»¥é€šè¿‡è°ƒç”¨ [method update_overlays] 手动更新视窗。\n"
+"[codeblock]\n"
+"func forward_canvas_draw_over_viewport(overlay):\n"
+" # 在光标ä½ç½®ç”»ä¸€ä¸ªåœ†ã€‚\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64, Color."
+"white)\n"
+"\n"
+"func forward_canvas_gui_input(event):\n"
+" if event is InputEventMouseMotion:\n"
+" # 当光标被移动时,é‡ç»˜è§†çª—。\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
#: doc/classes/EditorPlugin.xml:192
msgid ""
@@ -24999,6 +25493,10 @@ msgid ""
"You need to enable calling of this method by using [method "
"set_force_draw_over_forwarding_enabled]."
msgstr ""
+"这个方法和 [method forward_canvas_draw_over_viewport] 一样,åªæ˜¯å®ƒåœ¨æ‰€æœ‰ä¸œè¥¿"
+"的上é¢ç»˜åˆ¶ã€‚当你需è¦ä¸€ä¸ªé¢å¤–的层显示在其他东西上é¢æ—¶ï¼Œè¿™ä¸ªæ–¹æ³•å¾ˆæœ‰ç”¨ã€‚\n"
+"你需è¦é€šè¿‡ä½¿ç”¨ [method set_force_draw_over_forwarding_enabled] æ¥æ¿€æ´»è¿™ä¸ªæ–¹æ³•"
+"的调用。"
#: doc/classes/EditorPlugin.xml:200
msgid ""
@@ -25024,7 +25522,7 @@ msgid ""
" return forward\n"
"[/codeblock]"
msgstr ""
-"当当å‰ç¼–辑场景中有一个根节点时被调用,[method handles]实现,在2D视å£ä¸­å‘生按"
+"当当å‰ç¼–辑场景中有一个根节点时被调用,[method handles]实现,在2D视窗中å‘生按"
"键输入[InputEvent]。拦截按键输入[InputEvent],如果[code]return true[/code] "
"[EditorPlugin]消耗键值[code]event[/code],å¦åˆ™å°†é”®å€¼[code]event[/code]转å‘ç»™"
"其他Editor类。例å­:\n"
@@ -25063,6 +25561,21 @@ msgid ""
" return false\n"
"[/codeblock]"
msgstr ""
+"当3D编辑器的视窗被更新时,由引擎调用。使用 [code]overlay[/code] 控件 "
+"[Control] 进行绘制。你å¯ä»¥é€šè¿‡è°ƒç”¨ [method update_overlays] 更新覆盖手动更新"
+"视窗。\n"
+"[codeblock]\n"
+"func forward_spatial_draw_over_viewport(overlay):\n"
+" # 在光标ä½ç½®ç”»ä¸€ä¸ªåœ†ã€‚\n"
+" overlay.draw_circle(overlay.get_local_mouse_position(), 64)\n"
+"\n"
+"func forward_spatial_gui_input(camera, event):\n"
+" if event is InputEventMouseMotion:\n"
+" # 当光标被移动时,é‡ç»˜è§†çª—。\n"
+" update_overlays()\n"
+" return true\n"
+" return false\n"
+"[/codeblock]"
#: doc/classes/EditorPlugin.xml:241
msgid ""
@@ -25072,6 +25585,10 @@ msgid ""
"You need to enable calling of this method by using [method "
"set_force_draw_over_forwarding_enabled]."
msgstr ""
+"这个方法和 [method forward_spatial_draw_over_viewport] 一样,åªæ˜¯å®ƒåœ¨æ‰€æœ‰ä¸œè¥¿"
+"的上é¢ç»˜åˆ¶ã€‚当你需è¦ä¸€ä¸ªé¢å¤–的层显示在其他东西上é¢æ—¶ï¼Œè¿™ä¸ªæ–¹æ³•å¾ˆæœ‰ç”¨ã€‚\n"
+"你需è¦é€šè¿‡ä½¿ç”¨ [method set_force_draw_over_forwarding_enabled] æ¥æ¿€æ´»è¿™ä¸ªæ–¹æ³•"
+"的调用。"
#: doc/classes/EditorPlugin.xml:250
msgid ""
@@ -25097,7 +25614,7 @@ msgid ""
" return forward\n"
"[/codeblock]"
msgstr ""
-"在当å‰ç¼–辑的场景中存在根节点时调用,实现[方法å¥æŸ„]并在3D视å£ä¸­å‘生按键输入"
+"在当å‰ç¼–辑的场景中存在根节点时调用,实现[方法å¥æŸ„]并在3D视窗中å‘生按键输入"
"[InputEvent]。拦截按键输入[InputEvent],如果[code]return true [/code],则"
"[EditorPlugin]会使用键值[code]event[/code],å¦åˆ™å°†é”®å€¼[code]event[/code]转å‘"
"到其他Editor类。例å­ï¼š\n"
@@ -25135,7 +25652,6 @@ msgstr ""
"返回[EditorInterface]对象,该对象使您å¯ä»¥æŽ§åˆ¶Godot编辑器的窗å£åŠå…¶åŠŸèƒ½ã€‚"
#: doc/classes/EditorPlugin.xml:283
-#, fuzzy
msgid ""
"Override this method in your plugin to return a [Texture] in order to give "
"it an icon.\n"
@@ -25152,15 +25668,15 @@ msgid ""
"\"EditorIcons\")\n"
"[/codeblock]"
msgstr ""
-"在æ’件中é‡å†™æ­¤æ–¹æ³•ä»¥è¿”回[Texture2D]以为其æ供图标。\n"
-"对于主å±å¹•æ’件,它显示在å±å¹•é¡¶éƒ¨ï¼Œåœ¨â€œ 2Dâ€ï¼Œâ€œ 3Dâ€ï¼Œâ€œè„šæœ¬â€å’Œâ€œ AssetLibâ€æŒ‰é’®çš„å³"
-"侧。\n"
-"ç†æƒ³æƒ…况下,æ’件图标应为白色,é€æ˜ŽèƒŒæ™¯ï¼Œå¤§å°ä¸º16x16åƒç´ ã€‚\n"
+"在你的æ’ä»¶ä¸­è¦†ç›–è¿™ä¸ªæ–¹æ³•ï¼Œè¿”å›žä¸€ä¸ªçº¹ç† [Texture],以便给它一个图标。\n"
+"对于主界é¢çš„æ’件,它出现在å±å¹•çš„顶部,在 \"2D\"ã€\"3D\"ã€\"Script \"å’Œ "
+"\"AssetLib \"按钮的å³è¾¹ã€‚\n"
+"ç†æƒ³æƒ…况下,æ’件的图标应该是é€æ˜ŽèƒŒæ™¯çš„白色,尺寸为16x16åƒç´ ã€‚\n"
"[codeblock]\n"
"func get_plugin_icon():\n"
-" # You can use a custom icon:\n"
+" # ä½ å¯ä»¥ä½¿ç”¨ä¸€ä¸ªè‡ªå®šä¹‰çš„图标。\n"
" return preload(\"res://addons/my_plugin/my_plugin_icon.svg\")\n"
-" # Or use a built-in icon:\n"
+" # 或者使用一个内置的图标。\n"
" return get_editor_interface().get_base_control().get_icon(\"Node\", "
"\"EditorIcons\")\n"
"[/codeblock]"
@@ -25177,15 +25693,15 @@ msgstr ""
"侧。"
#: doc/classes/EditorPlugin.xml:305
-#, fuzzy
msgid ""
"Gets the Editor's dialogue used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
-"获å–用于制作脚本的编辑器对è¯æ¡†ã€‚\n"
-"[b]注æ„:[/b]用户å¯ä»¥åœ¨ä½¿ç”¨å‰å¯¹å…¶è¿›è¡Œé…置。"
+"获å–用于创建脚本的编辑器对è¯æ¡†ã€‚\n"
+"[b]注æ„:[/b] 用户å¯ä»¥åœ¨ä½¿ç”¨å‰å¯¹å…¶è¿›è¡Œé…置。\n"
+"[b]警告:[/b] 移除和释放这个节点将使编辑器的一部分失去作用,并å¯èƒ½å¯¼è‡´å´©æºƒã€‚"
#: doc/classes/EditorPlugin.xml:313
msgid ""
@@ -25241,9 +25757,8 @@ msgid "Minimizes the bottom panel."
msgstr "最å°åŒ–底部é¢æ¿ã€‚"
#: doc/classes/EditorPlugin.xml:352
-#, fuzzy
msgid "Makes a specific item in the bottom panel visible."
-msgstr "将特定资æºç±»åž‹ä¿å­˜åˆ°æ–‡ä»¶ã€‚"
+msgstr "使底部é¢æ¿ä¸­çš„一个特定项目å¯è§ã€‚"
#: doc/classes/EditorPlugin.xml:359
msgid ""
@@ -25283,33 +25798,28 @@ msgstr "从扩展é¢æ¿ä¸­åˆ é™¤æŽ§ä»¶ã€‚您必须手动[method Node.queue_free]
#: doc/classes/EditorPlugin.xml:402
msgid "Removes a custom type added by [method add_custom_type]."
-msgstr "删除由[method add_custom_type]添加的自定义类型。"
+msgstr "删除由 [method add_custom_type] 添加的自定义类型。"
#: doc/classes/EditorPlugin.xml:409
-#, fuzzy
msgid "Removes an export plugin registered by [method add_export_plugin]."
-msgstr "删除由[method add_custom_type]添加的自定义类型。"
+msgstr "删除由 [method add_export_plugin] 注册的导出æ’件。"
#: doc/classes/EditorPlugin.xml:416
-#, fuzzy
msgid "Removes an import plugin registered by [method add_import_plugin]."
-msgstr "删除由[method add_custom_type]添加的自定义类型。"
+msgstr "删除由 [method add_import_plugin] 注册的导入æ’件。"
#: doc/classes/EditorPlugin.xml:423
-#, fuzzy
msgid "Removes an inspector plugin registered by [method add_import_plugin]"
-msgstr "删除由[method add_custom_type]添加的自定义类型。"
+msgstr "删除由 [method add_import_plugin] 注册的检查器æ’件"
#: doc/classes/EditorPlugin.xml:430
-#, fuzzy
msgid ""
"Removes a scene importer registered by [method add_scene_import_plugin]."
-msgstr "删除由[method add_custom_type]添加的自定义类型。"
+msgstr "删除由 [method add_scene_import_plugin] 注册的场景导入器。"
#: doc/classes/EditorPlugin.xml:437
-#, fuzzy
msgid "Removes a gizmo plugin registered by [method add_spatial_gizmo_plugin]."
-msgstr "删除由[method add_custom_type]添加的自定义类型。"
+msgstr "删除由 [method add_spatial_gizmo_plugin] 注册的控制器æ’件。"
#: doc/classes/EditorPlugin.xml:444
msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]."
@@ -25330,6 +25840,9 @@ msgid ""
"editor when their viewports are updated. You need to call this method only "
"once and it will work permanently for this plugin."
msgstr ""
+"å¯ç”¨2D编辑器的 [method forward_canvas_force_draw_over_viewport] å’Œ3D编辑器的 "
+"[method forward_spatial_force_draw_over_viewport] 在其视窗更新时的调用。你åª"
+"需è¦è°ƒç”¨è¿™ä¸ªæ–¹æ³•ä¸€æ¬¡ï¼Œå®ƒå°±ä¼šå¯¹è¿™ä¸ªæ’件永久起作用。"
#: doc/classes/EditorPlugin.xml:462
msgid ""
@@ -25357,6 +25870,11 @@ msgid ""
"forward_spatial_draw_over_viewport] and [method "
"forward_spatial_force_draw_over_viewport] to be called."
msgstr ""
+"更新 2D 和 3D 编辑器视窗的覆盖层。导致方法 [method "
+"forward_canvas_draw_over_viewport]ã€[method "
+"forward_canvas_force_draw_over_viewport]ã€[method "
+"forward_spatial_draw_over_viewport] 和 [method "
+"forward_spatial_force_draw_over_viewport] 被调用。"
#: doc/classes/EditorPlugin.xml:490
msgid ""
@@ -25432,13 +25950,15 @@ msgstr ""
#: doc/classes/EditorProperty.xml:44
msgid "Must be implemented to provide a custom tooltip to the property editor."
-msgstr ""
+msgstr "必须实现为属性编辑器æ供一个自定义工具æ示。"
#: doc/classes/EditorProperty.xml:51
msgid ""
"Puts the [code]editor[/code] control below the property label. The control "
"must be previously added using [method Node.add_child]."
msgstr ""
+"å°† [code]editor[/code] 编辑器控件放在属性标签的下é¢ã€‚该控件必须事先用 "
+"[method Node.add_child] 添加。"
#: doc/classes/EditorProperty.xml:57
msgid "When this virtual function is called, you must update your editor."
@@ -25456,14 +25976,13 @@ msgid ""
msgstr "在检查é¢æ¿ä½¿ç”¨ï¼Œå½“属性为å¯é€‰ä¸­æ—¶ï¼Œè®¾ç½®å±žæ€§ä¸º[code]true[/code]。"
#: doc/classes/EditorProperty.xml:69
-#, fuzzy
msgid ""
"Used by the inspector, set to [code]true[/code] when the property is drawn "
"with the editor theme's warning color. This is used for editable children's "
"properties."
msgstr ""
-"在检查é¢æ¿ä½¿ç”¨ï¼Œå½“属性必须用错误颜色绘制时,设置为[code]true[/code]。这用于å¯"
-"编辑的å­å±žæ€§ã€‚"
+"由检查器使用,当属性用编辑器主题的警告颜色ç€è‰²æ—¶ï¼Œè®¾ç½®ä¸º[code]true[/code]。这"
+"用于å¯ç¼–辑的å­èŠ‚点的属性。"
#: doc/classes/EditorProperty.xml:72
msgid ""
@@ -25523,7 +26042,7 @@ msgstr "选择时触å‘。内部使用。"
#: doc/classes/EditorResourcePicker.xml:4
msgid "Godot editor's control for selecting [Resource] type properties."
-msgstr ""
+msgstr "Godot 编辑器用于选择 [Resource] 类型属性的控件。"
#: doc/classes/EditorResourcePicker.xml:7
msgid ""
@@ -25534,6 +26053,11 @@ msgid ""
"[b]Note:[/b] This [Control] does not include any editor for the resource, as "
"editing is controlled by the Inspector dock itself or sub-Inspectors."
msgstr ""
+"æ­¤ [Control] 节点用于编辑器的属性检查器以å…许编辑 [Resource] 类型属性。它æä¾›"
+"了创建ã€åŠ è½½ã€ä¿å­˜å’Œè½¬æ¢èµ„æºçš„选项。å¯ä»¥ä¸Ž [EditorInspectorPlugin] 检查器æ’件"
+"一起使用以é‡æ–°åˆ›å»ºç›¸åŒçš„行为。\n"
+"[b]注æ„:[/b]这个 [Control] ä¸åŒ…括资æºçš„任何编辑器,因为编辑是由属性检查器本"
+"身或å­æ£€æŸ¥å™¨æŽ§åˆ¶çš„。"
#: doc/classes/EditorResourcePicker.xml:32
msgid ""
@@ -25541,12 +26065,16 @@ msgid ""
"[member base_type]. If the [member base_type] is empty, an empty list is "
"returned."
msgstr ""
+"返回一个与 [member base_type] 对应的所有å…许的类型和å­ç±»åž‹çš„列表。如果 "
+"[member base_type] 是空,将返回一个空的列表。"
#: doc/classes/EditorResourcePicker.xml:46
msgid ""
"This virtual method can be implemented to handle context menu items not "
"handled by default. See [method set_create_options]."
msgstr ""
+"此虚拟方法å¯ä»¥å®žçŽ°å¤„ç†é»˜è®¤æœªå¤„ç†çš„上下文èœå•é¡¹ç›®ã€‚å‚è§ [method "
+"set_create_options]。"
#: doc/classes/EditorResourcePicker.xml:53
msgid ""
@@ -25557,44 +26085,51 @@ msgid ""
"[b]Note:[/b] Implement [method handle_menu_selected] to handle these custom "
"items."
msgstr ""
+"在更新 [EditorResourcePicker] 的上下文èœå•æ—¶è°ƒç”¨è¿™ä¸ªè™šæ‹Ÿæ–¹æ³•ã€‚实现这个方法å¯"
+"以用你自己的选项覆盖 \"新建... \"项目。[code]menu_node[/code] 是对 "
+"[PopupMenu] èœå•å¼¹çª—节点的引用。\n"
+"[b]注æ„:[/b] 实现 [method handle_menu_selected] æ¥å¤„ç†è¿™äº›è‡ªå®šä¹‰é¡¹ç›®ã€‚"
#: doc/classes/EditorResourcePicker.xml:61
msgid ""
"Sets the toggle mode state for the main button. Works only if [member "
"toggle_mode] is set to [code]true[/code]."
msgstr ""
+"设置主按钮的切æ¢æ¨¡å¼çŠ¶æ€ã€‚åªæœ‰å½“ [member toggle_mode] 被设置为 [code]true[/"
+"code] æ—¶æ‰èµ·ä½œç”¨ã€‚"
#: doc/classes/EditorResourcePicker.xml:67
msgid ""
"The base type of allowed resource types. Can be a comma-separated list of "
"several options."
-msgstr ""
+msgstr "å…许资æºç±»åž‹çš„基本类型。å¯ä»¥æ˜¯å‡ ä¸ªé€‰é¡¹çš„逗å·åˆ†ç¦»åˆ—表。"
#: doc/classes/EditorResourcePicker.xml:70
-#, fuzzy
msgid "If [code]true[/code], the value can be selected and edited."
-msgstr "如果[code]true[/code],物体å¯ä»¥è¢«å…‰çº¿æŽ¢æµ‹åˆ°ã€‚"
+msgstr "如果 [code]true[/code],则å¯ä»¥é€‰æ‹©å’Œç¼–辑该值。"
#: doc/classes/EditorResourcePicker.xml:73
-#, fuzzy
msgid "The edited resource value."
-msgstr "è¦ä½¿ç”¨çš„[NavigationMesh]资æºã€‚"
+msgstr "已编辑的资æºå€¼ã€‚"
#: doc/classes/EditorResourcePicker.xml:76
msgid ""
"If [code]true[/code], the main button with the resource preview works in the "
"toggle mode. Use [method set_toggle_pressed] to manually set the state."
msgstr ""
+"如果 [code]true[/code],带有资æºé¢„览的主按钮在切æ¢æ¨¡å¼ä¸‹å·¥ä½œã€‚使用 [method "
+"set_toggle_pressed] æ¥æ‰‹åŠ¨è®¾ç½®çŠ¶æ€ã€‚"
#: doc/classes/EditorResourcePicker.xml:83
-#, fuzzy
msgid "Emitted when the value of the edited resource was changed."
-msgstr "æ¯å½“资æºå‘生å˜åŒ–时就会å‘出。"
+msgstr "当正在编辑的资æºæ”¹å˜å€¼æ—¶å‘出。"
-#: doc/classes/EditorResourcePicker.xml:89
-#, fuzzy
-msgid "Emitted when the resource value was set and user clicked to edit it."
-msgstr "在检查器中选择资æºæ—¶è§¦å‘。"
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
+msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
msgid "Helper to generate previews of resources or files."
@@ -25633,6 +26168,13 @@ msgid ""
"[code]receiver_func[/code] will still be called, but the preview will be "
"null."
msgstr ""
+"å°†æ­£åœ¨ç¼–è¾‘çš„èµ„æº [code]resource[/code] 排队进行预览。一旦预览准备好了,接收"
+"器 [code]receiver[/code] 的 [code]receiver_func[/code] 将被调用。"
+"[code]receiver_func[/code] 必须接å—以下四个å‚数。[String] path, [Texture] "
+"preview, [Texture] thumbnail_preview, [Variant] userdata。[code]userdata[/"
+"code] å¯ä»¥æ˜¯ä»»ä½•ä¸œè¥¿ï¼Œå¹¶å°†åœ¨ [code]receiver_func[/code] 被调用时返回。\n"
+"[b]注æ„:[/b]如果无法创建预览,[code]receiver_func[/code] ä»å°†è¢«è°ƒç”¨ï¼Œä½†é¢„览"
+"将为空。"
#: doc/classes/EditorResourcePreview.xml:45
msgid ""
@@ -25646,6 +26188,14 @@ msgid ""
"[code]receiver_func[/code] will still be called, but the preview will be "
"null."
msgstr ""
+"å°†ä½äºŽè·¯å¾„ [code]path [/code] 的资æºæ–‡ä»¶æŽ’队以进行预览。预览准备好åŽï¼Œå°†è°ƒç”¨"
+"接收器 [code]receiver [/code] 的 [code]receiver_func [/code] 。"
+"[code]receiver_func[/code] 必须带有以下四个å‚数:[String] path, [Texture] "
+"preview, [Texture] thumbnail_preview, [Variant] userdataã€‚ç”¨æˆ·æ•°æ® "
+"[code]userdata[/code] å¯ä»¥æ˜¯ä»»ä½•ä¸œè¥¿ï¼Œå¹¶å°†åœ¨è°ƒç”¨ [code]receiver_func[/code] "
+"返回。\n"
+"[b]注æ„:[/b] 如果无法创建预览,则ä»å°†è°ƒç”¨ [code]receiver_func [/code],但预"
+"览将无效。"
#: doc/classes/EditorResourcePreview.xml:53
msgid "Removes a custom preview generator."
@@ -25703,8 +26253,8 @@ msgid ""
"Care must be taken because this function is always called from a thread (not "
"the main thread)."
msgstr ""
-"直接从具有指定大å°çš„路径生æˆé¢„览。实现此æ“作是å¯é€‰çš„,因为默认代ç å°†åŠ è½½å¹¶è°ƒ"
-"用[method generate]。\n"
+"直接从指定大å°çš„路径生æˆé¢„览。实现此æ“作是å¯é€‰çš„,因为默认代ç å°†åŠ è½½å¹¶è°ƒç”¨"
+"[method generate]。\n"
"返回空纹ç†æ˜¯å¤±è´¥çš„好方法,并让å¦ä¸€ä¸ªç”Ÿæˆå™¨è´Ÿè´£ã€‚\n"
"注æ„!,因为始终从线程(而ä¸æ˜¯ä¸»çº¿ç¨‹ï¼‰è°ƒç”¨æ­¤å‡½æ•°ã€‚"
@@ -25734,7 +26284,6 @@ msgid "FBX 3D asset importer."
msgstr "FBX 3D资产导入器。"
#: modules/fbx/doc_classes/EditorSceneImporterFBX.xml:7
-#, fuzzy
msgid ""
"This is an FBX 3D asset importer with full support for most FBX features.\n"
"If exporting a FBX scene from Autodesk Maya, use these FBX export settings:\n"
@@ -25761,30 +26310,29 @@ msgid ""
"- Binary format in FBX 2017\n"
"[/codeblock]"
msgstr ""
-"这是一个基于[url=http://assimp.org/]Assimp[/url]çš„FBX 3D资æºå¯¼å…¥å™¨ã€‚它目å‰æœ‰"
-"许多已知的é™åˆ¶ï¼Œå¹¶ä¸”对é™æ€ç½‘格效果最好。大多数动画网格无法正确导入。\n"
-"如果从 Autodesk Maya 导出 FBX 场景,请使用这些 FBX 导出设置。\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"
+"这是一个FBX 3D资产导入器,完全支æŒå¤§å¤šæ•°FBX功能。\n"
+"如果从Autodesk Maya导出一个FBX场景,请使用这些FBX导出设置:\n"
+"[codeblock]\n"
+"- Smoothing Groups 平滑化组\n"
+"- Smooth Mesh 平滑网格\n"
+"- Triangluate 三角(用于具有混åˆå½¢çŠ¶çš„网格)\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) å¯ä»¥å‹¾é€‰"
+"嵌入媒介(将纹ç†åµŒå…¥åˆ°å¯¼å‡ºçš„FBX文件中)。\n"
+" - 注æ„,当导入嵌入媒介时,纹ç†å’Œç½‘格将是一个å•ä¸€çš„ä¸å¯æ›´æ”¹çš„文件。\n"
+" - 如果纹ç†å‘生了å˜åŒ–,你将ä¸å¾—ä¸é‡æ–°å¯¼å‡ºç„¶åŽé‡æ–°å¯¼å…¥FBX。\n"
+"- Units: Centimeters å•ä½ï¼šåˆ†ç±³\n"
+"- Up Axis: Y 上轴:Y\n"
+"-Binary format in FBX 2017 二进制格å¼ä¸º2017 FBX\n"
"[/codeblock]"
#: doc/classes/EditorScenePostImport.xml:4
@@ -25869,7 +26417,6 @@ msgid "Base script that can be used to add extension functions to the editor."
msgstr "å¯ç”¨äºŽä¸ºç¼–辑器添加扩展功能的基础脚本。"
#: doc/classes/EditorScript.xml:7
-#, fuzzy
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 "
@@ -25889,20 +26436,21 @@ msgid ""
"is visible in the console window started with the Editor (stdout) instead of "
"the usual Godot [b]Output[/b] dock."
msgstr ""
-"å¯ä»¥é€šè¿‡è„šæœ¬ç¼–辑器的[b] File> Run [/b]èœå•é€‰é¡¹ï¼ˆæˆ–通过按[kbd] Ctrl + Shift + "
-"X [/kbd])æ¥æ‰§è¡Œæ‰©å±•æ­¤ç±»å¹¶å®žçŽ°å…¶[method _run]方法的脚本。这对于将自定义的编辑"
-"器内功能添加到Godot很有用。对于更å¤æ‚的添加,请考虑改为使用[EditorPlugin]。\n"
-"[b]注æ„:[/b]扩展脚本需è¦å¯ç”¨[code]tool[/code]模å¼ã€‚\n"
+"扩展该类并实现其 [method _run] 方法的脚本å¯ä»¥åœ¨ç¼–辑器è¿è¡Œæ—¶é€šè¿‡è„šæœ¬ç¼–辑器的 "
+"[b]File > Run[/b] èœå•é€‰é¡¹ï¼ˆæˆ–按 [code]Ctrl+Shift+X[/code]ï¼‰æ‰§è¡Œã€‚è¿™å¯¹äºŽå‘ "
+"Godot添加自定义的编辑内功能很有用。对于更å¤æ‚的添加,å¯ä»¥è€ƒè™‘使用 "
+"[EditorPlugin] 代替。\n"
+"[b]注æ„:[/b] 扩展脚本需è¦å¯ç”¨ [code]tool[/code] 工具模å¼ã€‚\n"
"[b]示例脚本:[/b]\n"
-"[codeblock]\n"
+"[codeeblock]\n"
"tool\n"
"extends EditorScript\n"
"\n"
"func _run():\n"
" print(\"Hello from the Godot Editor!\")\n"
"[/codeblock]\n"
-"[b]注æ„:[/b]该脚本在编辑器上下文中è¿è¡Œï¼Œè¿™æ„味ç€è¾“出在以编辑器(stdout)开始"
-"的控制å°çª—å£ä¸­å¯è§ï¼Œè€Œä¸æ˜¯é€šå¸¸çš„Godot [b] Output [/b]åœé æ ã€‚"
+"[b]注æ„:[/b] 脚本在编辑器上下文中è¿è¡Œï¼Œè¿™æ„味ç€è¾“出在与编辑器一起å¯åŠ¨çš„控制"
+"å°çª—å£ï¼ˆstdout),而ä¸æ˜¯é€šå¸¸çš„ Godot [b]输出[/b]é¢æ¿ 。"
#: doc/classes/EditorScript.xml:25
msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
@@ -25929,6 +26477,7 @@ msgid ""
"Godot editor's control for selecting the [code]script[/code] property of a "
"[Node]."
msgstr ""
+"Godot 编辑器的控件,用于选择节点 [Node] 的脚本 [code] script [/code] 属性。"
#: doc/classes/EditorScriptPicker.xml:7
msgid ""
@@ -25941,10 +26490,16 @@ msgid ""
"[b]Note:[/b] You must set the [member script_owner] for the custom context "
"menu items to work."
msgstr ""
+"与 [EditorResourcePicker] 类似,这个 [Control] 节点在编辑器的检查器é¢æ¿ä¸­ä½¿"
+"用,但åªç”¨äºŽç¼–辑 [Node] çš„ [code]script[/code] 属性。创建包å«æ‰€æœ‰å¯èƒ½å­ç±»åž‹çš„"
+"新资æºçš„默认选项 被替æ¢ä¸ºæ‰“开“附加节点脚本â€å¯¹è¯æ¡†çš„专用按钮。å¯ä»¥ä¸Ž "
+"[EditorInspectorPlugin] 一起使用以é‡æ–°åˆ›å»ºç›¸åŒçš„行为。\n"
+"[b]注æ„:[/b] 你必须设置 [member script_owner] æ‰èƒ½è®©è‡ªå®šä¹‰çš„上下文èœå•é¡¹å‘挥"
+"作用。"
#: doc/classes/EditorScriptPicker.xml:16
msgid "The owner [Node] of the script property that holds the edited resource."
-msgstr ""
+msgstr "æŒæœ‰è¢«ç¼–辑资æºçš„脚本属性的所有者 [Node]。"
#: doc/classes/EditorSelection.xml:4
msgid "Manages the SceneTree selection in the editor."
@@ -25967,6 +26522,9 @@ msgid ""
"inspector. If you want to edit a node, use [method EditorInterface."
"edit_node]."
msgstr ""
+"将一个节点添加到选择中。\n"
+"[b]注æ„:[/b]新选择的节点ä¸ä¼šåœ¨æ£€æŸ¥å™¨ä¸­è‡ªåŠ¨è¢«ç¼–辑。如果你想编辑一个节点,请使"
+"用 [method EditorInterface.edit_node]。"
#: doc/classes/EditorSelection.xml:24
msgid "Clear the selection."
@@ -26213,19 +26771,17 @@ msgstr ""
"é…ç½®å˜åŒ–时更新逻辑。"
#: doc/classes/EditorSpatialGizmo.xml:4
-#, fuzzy
msgid "Custom gizmo for editing Spatial objects."
-msgstr "用于编辑Node3D对象的自定义å°å·¥å…·ã€‚"
+msgstr "用于编辑空间对象的自定义å°å·¥å…·ã€‚"
#: doc/classes/EditorSpatialGizmo.xml:7
-#, fuzzy
msgid ""
"Custom gizmo that is used for providing custom visualization and editing "
"(handles) for 3D Spatial objects. See [EditorSpatialGizmoPlugin] for more "
"information."
msgstr ""
-"自定义å°å·¥å…·ï¼Œç”¨äºŽä¸ºNode3D对象æ供自定义å¯è§†åŒ–和编辑(å¥æŸ„)。更多信æ¯è¯·å‚阅"
-"[EditorNode3DGizmoPlugin]。"
+"自定义å°å·¥å…·ï¼Œç”¨äºŽä¸º 3D Spatial 对象æ供自定义å¯è§†åŒ–和编辑(手柄)。更多信æ¯"
+"请å‚阅 [EditorNode3DGizmoPlugin]。"
#: doc/classes/EditorSpatialGizmo.xml:16
msgid ""
@@ -26316,18 +26872,16 @@ msgstr ""
"撤销动作。"
#: doc/classes/EditorSpatialGizmo.xml:100
-#, fuzzy
msgid ""
"Returns the [EditorSpatialGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorSpatialGizmoPlugin.get_material]."
msgstr ""
-"返回拥有此gezmo的[EditorNode3DGizmoPlugin]。使用[method "
-"EditorNode3DGizmoPlugin.get_material]检索æ质很有用。"
+"返回拥有此å°å·¥å…·çš„ [EditorSpatialGizmoPlugin] 。使用 [method "
+"EditorSpatialGizmoPlugin.get_material] 检索æ料很有用。"
#: doc/classes/EditorSpatialGizmo.xml:106
-#, fuzzy
msgid "Returns the Spatial node associated with this gizmo."
-msgstr "返回与此å°å·¥å…·ç›¸å…³è”çš„Node3D节点。"
+msgstr "返回与此å°å·¥å…·ç›¸å…³è”çš„ Spatial 节点。"
#: doc/classes/EditorSpatialGizmo.xml:113
msgid ""
@@ -26337,24 +26891,23 @@ msgstr ""
"如果鼠标悬åœç´¢å¼•ä¸º [code]index[/code] çš„å¥æŸ„高亮,则返回[code]true[/code]。"
#: doc/classes/EditorSpatialGizmo.xml:119
-#, fuzzy
msgid ""
"This function is called when the [Spatial] this gizmo refers to changes (the "
"[method Spatial.update_gizmo] is called)."
msgstr ""
-"当[Node3D]这个工具所指的å˜åŒ–时([method Node3D.update_gizmo]函数被调用)。"
+"当这个工具所指 [Spatial] çš„å˜åŒ–时([method Node3D.update_gizmo] 函数被调"
+"用)。"
#: doc/classes/EditorSpatialGizmo.xml:128
-#, fuzzy
msgid ""
"This function is used when the user drags a gizmo handle (previously added "
"with [method add_handles]) in screen coordinates.\n"
"The [Camera] is also provided so screen coordinates can be converted to "
"raycasts."
msgstr ""
-"当用户在å±å¹•å标中拖动工具å¥æŸ„(之å‰ç”¨[method add_handles]添加的)时,使用该"
-"函数。\n"
-"还æ供了[Camera3D],这样å±å¹•å标就å¯ä»¥è½¬æ¢ä¸ºå°„线广播。"
+"当用户在å±å¹•å标中拖动一个 gizmo 工具手柄时(之å‰ç”¨ [method add_handles] 添加"
+"的),就会使用这个函数。\n"
+"还æ供了相机 [Camera],以便将å±å¹•å标转æ¢ä¸ºå°„线投影。"
#: doc/classes/EditorSpatialGizmo.xml:136
msgid ""
@@ -26365,28 +26918,26 @@ msgstr ""
"[code]false[/code],将显示它。"
#: doc/classes/EditorSpatialGizmo.xml:143
-#, fuzzy
msgid ""
"Sets the reference [Spatial] node for the gizmo. [code]node[/code] must "
"inherit from [Spatial]."
-msgstr "设置工具的å‚考[Node3D]节点。 [code] node [/code]必须继承自[Node3D]。"
+msgstr ""
+"设置工具的å‚考 [Spatial] 节点。 [code] node [/code]必须继承自 [Spatial]。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:4
-#, fuzzy
msgid "Used by the editor to define Spatial gizmo types."
-msgstr "编辑器使用它æ¥å®šä¹‰Node3D 工具类型。"
+msgstr "由编辑部用于定义空间å°å·¥å…·çš„类型。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:7
-#, fuzzy
msgid ""
"EditorSpatialGizmoPlugin allows you to define a new type of Gizmo. There are "
"two main ways to do so: extending [EditorSpatialGizmoPlugin] for the simpler "
"gizmos, or creating a new [EditorSpatialGizmo] type. See the tutorial in the "
"documentation for more info."
msgstr ""
-"EditorNode3DGizmoPluginå…许您定义一ç§æ–°çš„辅助工具类型。这样åšçš„主è¦æ–¹æ³•æœ‰ä¸¤"
-"ç§ï¼šæ‰©å±•[EditorNode3DGizmoPlugin]以获得更简å•çš„Gizmos,或创建新的"
-"[EditorNode3DGizmo]类型。有关更多信æ¯ï¼Œè¯·å‚阅文档中的教程。"
+"EditorSpatialGizmoPlugin å…许您定义一ç§æ–°çš„辅助工具类型。这样åšçš„主è¦æ–¹æ³•æœ‰ä¸¤"
+"ç§ï¼šæ‰©å±• [EditorSpatialGizmoPlugin] 以获得更简å•çš„Gizmos,或创建新的 "
+"[EditorSpatialGizmoPlugin] 类型。有关更多信æ¯ï¼Œè¯·å‚阅文档中的教程。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:10
msgid ""
@@ -26418,17 +26969,15 @@ msgid ""
msgstr "é‡å†™æ­¤æ–¹æ³•ä»¥æ交Gizmoå¥æŸ„。调用此æ’件的活动辅助工具。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:41
-#, fuzzy
msgid ""
"Override this method to return a custom [EditorSpatialGizmo] for the spatial "
"nodes of your choice, return [code]null[/code] for the rest of nodes. See "
"also [method has_gizmo]."
msgstr ""
-"é‡å†™æ­¤æ–¹æ³•å¯ä¸ºæ‚¨é€‰æ‹©çš„空间节点返回自定义[EditorNode3DGizmo],为其余节点返回"
-"[code] null [/code]。å¦è¯·å‚阅[method has_gizmo]。"
+"é‡å†™æ­¤æ–¹æ³•å¯ä¸ºæ‚¨é€‰æ‹©çš„空间节点返回自定义 [EditorSpatialGizmo],为其余节点返"
+"回 [code]null[/code]。å¦è¯·å‚阅 [method has_gizmo]。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:50
-#, fuzzy
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 "
@@ -26436,33 +26985,33 @@ msgid ""
"Should not be overridden.\n"
"You can optionally provide a texture to use instead of the default icon."
msgstr ""
-"创建具有其å˜ä½“(选定和/或å¯ç¼–辑)的å¥æŸ„æ质,并将其添加到内部æ质列表中。然åŽ"
-"å¯ä»¥ä½¿ç”¨[method get_material]访问它们,并在[method EditorNode3DGizmo."
-"add_handles]中使用它们。ä¸åº”该被覆盖。"
+"创建一个手柄ææ–™åŠå…¶variants (选定的和/或å¯ç¼–辑的),并将它们添加到内部ææ–™"
+"列表。然åŽå¯ä»¥ç”¨ [method get_material] 访问它们,并在 [method "
+"EditorSpatialGizmo.add_handles] 中使用。ä¸åº”该被é‡å†™ã€‚\n"
+"ä½ å¯ä»¥é€‰æ‹©æ€§åœ°æ供一个纹ç†æ¥ä»£æ›¿é»˜è®¤çš„图标。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:61
-#, fuzzy
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 EditorSpatialGizmo."
"add_unscaled_billboard]. Should not be overridden."
msgstr ""
-"创建一个图标æè´¨åŠå…¶å˜ä½“,注,选定的和/或å¯ç¼–辑的,并将它们添加到内部æ质列"
-"表。然åŽå¯ä»¥ç”¨[method get_material]访问它们,并在[method EditorNode3DGizmo."
-"add_unscaled_billboard]中使用。ä¸åº”该被é‡å†™ã€‚"
+"创建一个图标ææ–™åŠå…¶variants (选定的和/或å¯ç¼–辑的),并将它们添加到内部ææ–™"
+"列表。然åŽå¯ä»¥ç”¨ [method get_material] 访问它们,并在 [method "
+"EditorSpatialGizmo.add_unscaled_billboard] 中使用。ä¸åº”该被é‡å†™ã€‚"
#: doc/classes/EditorSpatialGizmoPlugin.xml:72
-#, fuzzy
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 EditorSpatialGizmo.add_mesh] and "
"[method EditorSpatialGizmo.add_lines]. Should not be overridden."
msgstr ""
-"创建具有其å˜ä½“(选定和/或å¯ç¼–辑)的无阴影æ质,并将其添加到内部æ质列表中。然"
-"åŽå¯ä»¥ä½¿ç”¨[method get_material]访问它们,并在[method EditorNode3DGizmo."
-"add_mesh]å’Œ[method EditorNode3DGizmo.add_lines]中使用它们。ä¸åº”该被覆盖。"
+"创建一个没有阴影的ææ–™åŠå…¶variants (选定的和/或å¯ç¼–辑的),并将它们添加到内"
+"部æ料列表。然åŽå¯ä»¥ç”¨ [method get_material] 访问它们,并在 [method "
+"EditorSpatialGizmo.add_mesh] 和 [method EditorSpatialGizmo.add_lines] 中使"
+"用。ä¸åº”该被é‡å†™ã€‚"
#: doc/classes/EditorSpatialGizmoPlugin.xml:80
msgid ""
@@ -26477,14 +27026,13 @@ msgid ""
msgstr "从Gizmo获å–å¥æŸ„的实际值。调用此æ’件的活动工具。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:96
-#, fuzzy
msgid ""
"Gets material from the internal list of materials. If an "
"[EditorSpatialGizmo] is provided, it will try to get the corresponding "
"variant (selected and/or editable)."
msgstr ""
-"从内部物料清å•ä¸­èŽ·å–æ质。如果æ供了[EditorNode3DGizmo],它将å°è¯•èŽ·å–相应的å˜"
-"体(已选择/或å¯ç¼–辑)。"
+"从内部æ料列表中获å–æ料。如果æ供了一个 [EditorSpatialGizmo] ,它将å°è¯•èŽ·å–"
+"相应的variant (选定的和/或å¯ç¼–辑的)。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:102
msgid ""
@@ -26507,16 +27055,16 @@ msgstr ""
"[code] 0 [/code],这æ„味ç€è‡ªå®šä¹‰æŽ§ä»¶å°†è‡ªåŠ¨è¦†ç›–内置控件。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:116
-#, fuzzy
msgid ""
"Override this method to define which Spatial nodes have a gizmo from this "
"plugin. Whenever a [Spatial] node is added to a scene this method is called, "
"if it returns [code]true[/code] the node gets a generic [EditorSpatialGizmo] "
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
-"é‡å†™æ­¤æ–¹æ³•ï¼Œä»¥å®šä¹‰è¯¥æ’件中哪些Node3D节点具有Gizmo。æ¯å½“å°†[Node3D]节点添加到场"
-"景时,都会调用此方法,如果它返回[code] true [/code],则该节点将获得分é…的通用"
-"[EditorNode3DGizmo]并将其添加到此æ’件的活动工具列表中。"
+"覆盖这个方法æ¥å®šä¹‰å“ªäº›ç©ºé—´èŠ‚点有这个æ’件的 gizmo。æ¯å½“一个 [Spatial] 节点被添"
+"加到一个场景中时,这个方法就会被调用,如果它返回 [code]true[/code],该节点就"
+"会被分é…一个通用的 [EditorSpatialGizmo],并被添加到这个æ’件的激活 Gizmos列表"
+"中。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:124
msgid ""
@@ -26525,11 +27073,10 @@ msgid ""
msgstr "获å–å¥æŸ„是å¦é«˜äº®æ˜¾ç¤ºã€‚调用此æ’件的活动工具。"
#: doc/classes/EditorSpatialGizmoPlugin.xml:130
-#, fuzzy
msgid ""
"Override this method to define whether a Spatial with this gizmo should be "
"selectable even when the gizmo is hidden."
-msgstr "é‡å†™æ­¤æ–¹æ³•ä»¥å®šä¹‰æ˜¯å¦åº”选择具有此工具的Node3D(å³ä½¿å·¥å…·å·²éšè—)。"
+msgstr "覆盖此方法,以定义具有此工具的空间是å¦åº”该在工具被éšè—时也å¯ä»¥è¢«é€‰æ‹©ã€‚"
#: doc/classes/EditorSpatialGizmoPlugin.xml:137
msgid ""
@@ -26544,9 +27091,8 @@ msgid ""
msgstr "æ›´æ–°å¥æŸ„åŽæ›´æ–°å…¶å€¼ã€‚调用此æ’件的活动工具。"
#: doc/classes/EditorSpinSlider.xml:4
-#, fuzzy
msgid "Godot editor's control for editing numeric values."
-msgstr "Godot编辑器的脚本编辑器。"
+msgstr "Godot编辑器用于编辑数值的控件。"
#: doc/classes/EditorSpinSlider.xml:7
msgid ""
@@ -26554,6 +27100,8 @@ msgid ""
"of numeric values. Can be used with [EditorInspectorPlugin] to recreate the "
"same behavior."
msgstr ""
+"这个 [Control] 节点在编辑器的检查器é¢æ¿ä¸­ä½¿ç”¨ï¼Œå…许编辑数值。å¯ä»¥ä¸Ž "
+"[EditorInspectorPlugin] 一起使用,以é‡æ–°åˆ›å»ºç›¸åŒçš„行为。"
#: doc/classes/EditorVCSInterface.xml:4
msgid ""
@@ -26621,7 +27169,6 @@ msgstr ""
"- [code]\"offset\"[/code]存储自第一个上下文行内容以æ¥è¡Œå˜åŒ–çš„å移é‡ã€‚"
#: doc/classes/EditorVCSInterface.xml:36
-#, fuzzy
msgid ""
"Returns a [Dictionary] containing the path of the detected file change "
"mapped to an integer signifying what kind of change the corresponding file "
@@ -26634,14 +27181,14 @@ msgid ""
"- [code]3[/code]: Deleted\n"
"- [code]4[/code]: Typechanged"
msgstr ""
-"返回一个[Dictionary],其中包å«æ£€æµ‹åˆ°çš„文件å˜åŒ–的路径,并将其映射为一个整数,"
-"表示相应文件ç»åŽ†äº†ä»€ä¹ˆæ ·çš„å˜åŒ–。\n"
-"以下整数值被用æ¥è¡¨ç¤ºæ£€æµ‹åˆ°çš„文件是。\n"
-"- [code]0[/code]:新到VCS工作目录的文件\n"
-"- [code]1[/code]:修改åŽ\n"
-"- [code]2[/code]:é‡æ–°å‘½å\n"
-"- [code]3[/code]:已删除\n"
-"- [code]4[/code]:类型已改å˜"
+"返回一个 [Dictionary],包å«æ£€æµ‹åˆ°çš„更改文件的路径,映射到一个整数,该整数表示"
+"相应文件更改的状æ€ã€‚\n"
+"以下整数值用于表示检测到的文件是:\n"
+"- [code]0[/code]:新的 VCS 工作目录\n"
+"- [code]1[/code]:修改\n"
+"- [code]2[/code]:é‡å‘½å\n"
+"- [code]3[/code]:删除\n"
+"- [code]4[/code]:类型改å˜"
#: doc/classes/EditorVCSInterface.xml:48
msgid "Returns the project name of the VCS working directory."
@@ -26769,7 +27316,6 @@ msgstr ""
"[code]copyright[/code], [code]license[/code]}"
#: doc/classes/Engine.xml:33
-#, fuzzy
msgid ""
"Returns a Dictionary of Arrays of donor names.\n"
"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
@@ -26777,21 +27323,22 @@ msgid ""
"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
"code], [code]bronze_donors[/code]}"
msgstr ""
-"返回æ助者å称数组的字典。\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]}"
+"返回æ赠者姓å数组的字典。\n"
+"{[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]}"
#: doc/classes/Engine.xml:40
-#, fuzzy
msgid ""
"Returns the total number of frames drawn. On headless platforms, or if the "
"render loop is disabled with [code]--disable-render-loop[/code] via command "
"line, [method get_frames_drawn] always returns [code]0[/code]. See [method "
"get_idle_frames]."
msgstr ""
-"返回绘制的总帧数。如果通过命令行使用[code]--disable-render-loop[/code]ç¦ç”¨æ¸²"
-"染循环,则返回[code]0[/code]。å‚阅[method get_idle_frames]。"
+"返回绘制的总帧数。在精简平å°ä¸Šï¼Œæˆ–者如果通过命令行使用 [code]--disable-"
+"render-loop[/code] ç¦ç”¨æ¸²æŸ“循环,[method get_frames_drawn] 总是返回 [code]0[/"
+"code]。å‚阅[method get_idle_frames]。"
#: doc/classes/Engine.xml:46
msgid "Returns the frames per second of the running game."
@@ -26812,6 +27359,16 @@ msgid ""
"here.\n"
"[/codeblock]"
msgstr ""
+"返回自引擎åˆå§‹åŒ–以æ¥çš„总帧数,在æ¯ä¸ª[b]空闲帧[/b]都会进行,无论渲染循环是å¦è¢«"
+"å¯ç”¨ã€‚å‚阅[method get_frames_drawn]å’Œ[method get_physics_frames]。\n"
+"[method get_idle_frames]å¯ä»¥ç”¨æ¥å‡å°‘è¿è¡Œé«˜æ¶ˆè€—逻辑的次数,而ä¸éœ€è¦ä¾é "
+"[Timer]。\n"
+"[codeblock]\n"
+"func _process(_delta):\n"
+" if Engine.get_idle_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 idle (render) frames "
+"here.\n"
+"[/codeblock]"
#: doc/classes/Engine.xml:64
msgid ""
@@ -26840,6 +27397,15 @@ msgid ""
" pass # Run expensive logic only once every 2 physics frames here.\n"
"[/codeblock]"
msgstr ""
+"返回自引擎åˆå§‹åŒ–以æ¥é€šè¿‡çš„总帧数,该帧数在æ¯ä¸ª[b]物ç†å¸§[/b]上进行。å‚阅"
+"[method get_idle_frames]。\n"
+"[method get_physics_frames]å¯ä»¥ç”¨æ¥å‡å°‘è¿è¡Œé«˜æ¶ˆè€—逻辑的次数,而ä¸éœ€è¦ä¾é "
+"[Timer]。\n"
+"[codeblock]\n"
+"func _physics_process(_delta):\n"
+" if Engine.get_physics_frames() % 2 == 0:\n"
+" pass # Run expensive logic only once every 2 physics frames here.\n"
+"[/codeblock]"
#: doc/classes/Engine.xml:94
msgid ""
@@ -26849,12 +27415,12 @@ msgid ""
msgstr "返回渲染框架时当å‰ç‰©ç†æ»´æ ‡è®°ä¸­çš„分数。这å¯ç”¨äºŽå®žçŽ°å›ºå®šçš„时间步æ’值。"
#: doc/classes/Engine.xml:101
-#, fuzzy
msgid ""
"Returns a global singleton with given [code]name[/code]. Often used for "
"plugins, e.g. [code]GodotPayment[/code] on Android."
msgstr ""
-"返回具有给定[code]name[/code]的全局å•ä¾‹ã€‚通常用于æ’件,例如GodotPayments。"
+"返回具有给定[code]name[/code]的全局å•ä¾‹ã€‚通常用于æ’件,例如Android上的"
+"[code]GodotPayment[/code]。"
#: doc/classes/Engine.xml:107
msgid ""
@@ -26947,6 +27513,22 @@ msgid ""
"the editor and when running the project from the editor, but it will "
"evaluate to [code]false[/code] when the code is run from an exported project."
msgstr ""
+"如果[code]true[/code],则表示该脚本目å‰æ­£åœ¨ç¼–辑器内è¿è¡Œã€‚这对[code]tool[/"
+"code]脚本很有用,å¯ä»¥æœ‰æ¡ä»¶ç»˜åˆ¶ç¼–辑器助手,或者防止在编辑器中æ„外地è¿è¡Œä¼šå½±å“"
+"场景状æ€çš„ \"游æˆ\" 代ç ã€‚\n"
+"[codeblock]\n"
+"if Engine.editor_hint:\n"
+" draw_gizmos()\n"
+"else:\n"
+" simulate_physics()\n"
+"[/codeblock]\n"
+"更多信æ¯è¯·å‚阅文档中[url=https://docs.godotengine.org/en/3.4/tutorials/misc/"
+"running_code_in_the_editor.html]在编辑器中è¿è¡Œä»£ç [/url]。\n"
+"[b]注æ„:[/b]è¦æ£€æµ‹è„šæœ¬æ˜¯å¦ä»Žç¼–辑器[i]构建[/i]中è¿è¡Œï¼ˆä¾‹å¦‚按[code]F5[/code]"
+"时),请使用带有[code]\"editor\"[/code]å‚æ•°çš„[method OS.has_feature]代替。"
+"[code]OS.has_feature(\"editor\")[/code]当代ç åœ¨ç¼–辑器中è¿è¡Œå’Œä»Žç¼–辑器中è¿è¡Œé¡¹"
+"目时都会评估为[code]true[/code],但当代ç ä»Žå¯¼å‡ºçš„项目中è¿è¡Œæ—¶å®ƒä¼šè¯„估为"
+"[code]false[/code]。"
#: doc/classes/Engine.xml:153
msgid ""
@@ -26964,7 +27546,6 @@ msgstr ""
"入更çµæ•æˆ–解决隧é“问题,但请记ä½ï¼Œè¿™æ ·åšä¼šå¢žåŠ CPU的使用。"
#: doc/classes/Engine.xml:156
-#, fuzzy
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 "
@@ -26977,10 +27558,12 @@ msgid ""
"solution, the physics jitter fix should be disabled by setting [member "
"physics_jitter_fix] to [code]0[/code]."
msgstr ""
-"控制物ç†æ—¶é’Ÿä¸Žå®žæ—¶åŒæ­¥çš„程度。为0或更少,则是åŒæ­¥çš„。这样的值建议用于网络游"
-"æˆï¼Œå› ä¸ºæ—¶é’ŸåŒæ­¥å¾ˆé‡è¦ã€‚较高的数值会导致游æˆä¸­çš„时钟和真实时钟有较大的å差,"
-"但å…许平滑帧率抖动。默认值0.5对大多数人æ¥è¯´åº”该是没有问题的;高于2的值å¯èƒ½ä¼š"
-"导致游æˆå¯¹æŽ‰å¸§çš„å应有明显的延迟,ä¸å»ºè®®ä½¿ç”¨ã€‚"
+"控制物ç†æ—¶é’Ÿä¸Žå®žæ—¶åŒæ­¥ç¨‹åº¦ã€‚如果是0或更少,时钟是åŒæ­¥çš„。这样的值建议用于网络"
+"游æˆï¼Œå› ä¸ºæ—¶é’Ÿçš„åŒæ­¥æ€§å¾ˆé‡è¦ã€‚较高的值会导致游æˆä¸­çš„时钟和真实时钟之间的åå·®"
+"较大,但å¯ä»¥å¹³æ»‘帧速率的抖动。默认值0.5对大多数人æ¥è¯´åº”该是良好的;超过2的值"
+"å¯èƒ½å¯¼è‡´æ¸¸æˆå¯¹æŽ‰å¸§çš„å应有明显的延迟,因此ä¸æŽ¨è使用。\n"
+"[b]注æ„:[/b]为了获得最佳效果,当使用自定义物ç†æ’值这ç§è§£å†³æ–¹æ¡ˆæ—¶ï¼Œåº”通过将"
+"[member physics_jitter_fix]设置为[code]0[/code]æ¥ç¦ç”¨ç‰©ç†æŠ–动修å¤ã€‚"
#: doc/classes/Engine.xml:160
msgid ""
@@ -26996,6 +27579,14 @@ msgid ""
"[b]Note:[/b] This property does not impact the editor's Errors tab when "
"running a project from the editor."
msgstr ""
+"如果[code]false[/code],åœæ­¢æ‰“å°é”™è¯¯å’Œè­¦å‘Šä¿¡æ¯åˆ°æŽ§åˆ¶å°å’Œç¼–辑器输出日志。这å¯"
+"以用æ¥åœ¨å•å…ƒæµ‹è¯•å¥—件è¿è¡ŒæœŸé—´éšè—错误和警告信æ¯ã€‚这个属性等åŒäºŽ[member "
+"ProjectSettings.application/run/disable_stderr]项目设置。\n"
+"[b]警告:[/b] 如果你在项目的任æ„ä½ç½®å°†å…¶è®¾ç½®ä¸º[code]false[/code],é‡è¦çš„错误信"
+"æ¯å¯èƒ½ä¼šè¢«éšè—,å³ä½¿å®ƒä»¬æ˜¯ç”±å…¶ä»–脚本触å‘。如果在[code]@tool[/code]脚本中把这"
+"个设置为[code]false[/code],这也会影å“到编辑器本身。在确ä¿é”™è¯¯ä¿¡æ¯è¢«å¯ç”¨ä¹‹"
+"å‰ï¼Œ[i]ä¸[/i]报告错误(默认情况下)。\n"
+"[b]注æ„:[/b]当从编辑器è¿è¡Œä¸€ä¸ªé¡¹ç›®æ—¶ï¼Œè¿™ä¸ªå±žæ€§ä¸å½±å“编辑器的错误选项å¡ã€‚"
#: doc/classes/Engine.xml:165
msgid ""
@@ -27021,7 +27612,6 @@ msgid ""
msgstr "用于定义多个渲染选项的环境节点(如[WorldEnvironment])的资æºã€‚"
#: doc/classes/Environment.xml:7
-#, fuzzy
msgid ""
"Resource for environment nodes (like [WorldEnvironment]) that define "
"multiple environment operations (such as background [Sky] or [Color], "
@@ -27037,13 +27627,17 @@ msgid ""
"framebuffer_allocation], or for specific Viewports via the [member Viewport."
"usage] property."
msgstr ""
-"环境节点(如[WorldEnvironment])的资æºï¼Œè¿™äº›èŠ‚点定义了多个环境æ“作(如背景"
-"[Sky]或[Color]ã€çŽ¯å¢ƒå…‰ã€é›¾ã€æ™¯æ·±...)。这些å‚数会影å“场景的最终渲染。这些æ“作"
-"的顺åºæ˜¯\n"
-"- 景深 模糊\n"
+"环境节点(如 [WorldEnvironment])的资æºï¼Œè¿™äº›èŠ‚点定义了多个环境æ“作(如背景 "
+"[Sky] 或 [Color]ã€çŽ¯å¢ƒå…‰ã€é›¾ã€æ™¯æ·±â€¦â€¦ï¼‰ã€‚这些å‚数会影å“场景的最终渲染。这些æ“"
+"作的顺åºæ˜¯ï¼š\n"
+"- 景深模糊\n"
"- 辉光\n"
-"- 色调地图(自动æ›å…‰\n"
-"- 调整数"
+"- 色调映射(自动æ›å…‰ï¼‰\n"
+"- 调整\n"
+"这些效果仅在 [Viewport] 的预期使用方法为“3Dâ€æˆ–者“3D Without Effectsâ€æ—¶ç”Ÿæ•ˆã€‚"
+"根视窗的预期使用方法å¯ä»¥é€šè¿‡ [member ProjectSettings.rendering/quality/"
+"intended_usage/framebuffer_allocation] 调整,其它视窗通过 [member Viewport."
+"usage] 调整。"
#: doc/classes/Environment.xml:15 doc/classes/WorldEnvironment.xml:12
msgid ""
@@ -27092,14 +27686,13 @@ msgstr ""
"æ‰æœ‰æ•ˆã€‚"
#: doc/classes/Environment.xml:43
-#, fuzzy
msgid ""
"Applies the provided [Texture] resource to affect the global color aspect of "
"the rendered scene. Effective only if [code]adjustment_enabled[/code] is "
"[code]true[/code]."
msgstr ""
-"应用所æ供的 [Texture2D] 资æºæ¥å½±å“渲染场景的全局颜色。åªæœ‰å½“"
-"[code]adjusting_enabled[/code]是[code]true[/code]æ—¶æ‰æœ‰æ•ˆã€‚"
+"应用所æ供的[Texture]资æºæ¥å½±å“渲染场景的全局颜色表现。åªæœ‰åœ¨"
+"[code]adjustment_enabled[/code]为[code]true[/code]æ—¶æ‰æœ‰æ•ˆã€‚"
#: doc/classes/Environment.xml:46
msgid ""
@@ -27182,7 +27775,7 @@ msgstr "自动æ›å…‰æ•ˆæžœçš„速度。影å“相机执行自动æ›å…‰æ‰€éœ€çš„æ—¶
#: doc/classes/Environment.xml:79
msgid "The ID of the camera feed to show in the background."
-msgstr "在背景中显示的相机信å·çš„ID。"
+msgstr "在背景中显示的相机æºçš„ID。"
#: doc/classes/Environment.xml:82
msgid ""
@@ -27191,12 +27784,12 @@ msgid ""
msgstr "è¦æ˜¾ç¤ºçš„最大图层ID。åªæœ‰åœ¨ä½¿ç”¨ [constant BG_CANVAS] 背景模å¼æ—¶æœ‰æ•ˆã€‚"
#: doc/classes/Environment.xml:85
-#, fuzzy
msgid ""
"The [Color] displayed for clear areas of the scene. Only effective when "
"using the [constant BG_COLOR] or [constant BG_COLOR_SKY] background modes)."
msgstr ""
-"场景中清晰区域显示的[Color]。åªæœ‰åœ¨ä½¿ç”¨ [constant BG_COLOR] 背景模å¼æ—¶æœ‰æ•ˆã€‚"
+"场景中清除区域显示的[Color]。仅在使用[constant BG_COLOR]或[constant "
+"BG_COLOR_SKY]背景模å¼æ—¶æœ‰æ•ˆã€‚"
#: doc/classes/Environment.xml:88
msgid "The power of the light emitted by the background."
@@ -27207,34 +27800,28 @@ msgid "The background mode. See [enum BGMode] for possible values."
msgstr "背景模å¼ã€‚请å‚阅[enum BGMode]了解å¯èƒ½çš„值。"
#: doc/classes/Environment.xml:94
-#, fuzzy
msgid "The [Sky] resource defined as background."
-msgstr "使用天空资æºä½œä¸ºèƒŒæ™¯ã€‚"
+msgstr "[Sky] 天空资æºå®šä¹‰ä¸ºèƒŒæ™¯ã€‚"
#: doc/classes/Environment.xml:97
-#, fuzzy
msgid "The [Sky] resource's custom field of view."
-msgstr "用于此[Environment]çš„[天空]资æºã€‚"
+msgstr "[Sky] 天空资æºçš„自定义视野。"
#: doc/classes/Environment.xml:100
-#, fuzzy
msgid "The [Sky] resource's rotation expressed as a [Basis]."
-msgstr "[Mesh]资æºç”¨ä½œCSG形状。"
+msgstr "以[Basis]表示的[Sky]天空资æºçš„旋转。"
#: doc/classes/Environment.xml:103
-#, fuzzy
msgid "The [Sky] resource's rotation expressed as Euler angles in radians."
-msgstr "贴图的旋转(以弧度为å•ä½)."
+msgstr "[Sky] 资æºæ—‹è½¬çš„欧拉角,以弧度å•ä½ã€‚"
#: doc/classes/Environment.xml:106
-#, fuzzy
msgid "The [Sky] resource's rotation expressed as Euler angles in degrees."
-msgstr "贴图的旋转(以度数为å•ä½)."
+msgstr "[Sky] 天空资æºæ—‹è½¬çš„欧拉角,å•ä½ä¸ºåº¦ã€‚"
#: doc/classes/Environment.xml:109
-#, fuzzy
msgid "The amount of far blur for the depth-of-field effect."
-msgstr "效果中的声音数é‡ã€‚"
+msgstr "用于景深效果的远处模糊数é‡ã€‚"
#: doc/classes/Environment.xml:112
msgid ""
@@ -27242,24 +27829,24 @@ msgid ""
msgstr "远景模糊效果影å“渲染的è·ç¦»ã€‚"
#: doc/classes/Environment.xml:115
-#, fuzzy
msgid "If [code]true[/code], enables the depth-of-field far blur effect."
-msgstr "如果为[code]true[/code],å¯ç”¨æŒ‡å®šçš„flag。"
+msgstr "如果[code]true[/code],å¯ç”¨æ™¯æ·±è¿œæ™¯æ¨¡ç³Šæ•ˆæžœã€‚"
#: doc/classes/Environment.xml:118
msgid ""
"The depth-of-field far blur's quality. Higher values can mitigate the "
"visible banding effect seen at higher strengths, but are much slower."
msgstr ""
+"景深远处模糊的质é‡ã€‚较高的数值å¯ä»¥å‡è½»åœ¨è¾ƒé«˜å¼ºåº¦ä¸‹çœ‹åˆ°çš„å¯è§å¸¦çŠ¶æ•ˆåº”,但速度"
+"è¦æ…¢å¾—多。"
#: doc/classes/Environment.xml:121
msgid "The length of the transition between the no-blur area and far blur."
msgstr "无模糊区域和远模糊区域之间的过渡长度。"
#: doc/classes/Environment.xml:124
-#, fuzzy
msgid "The amount of near blur for the depth-of-field effect."
-msgstr "效果中的声音数é‡ã€‚"
+msgstr "用于景深效果的近似模糊的数é‡ã€‚"
#: doc/classes/Environment.xml:127
msgid ""
@@ -27267,15 +27854,16 @@ msgid ""
msgstr "近似模糊效果影å“渲染的地方与相机的è·ç¦»ã€‚"
#: doc/classes/Environment.xml:130
-#, fuzzy
msgid "If [code]true[/code], enables the depth-of-field near blur effect."
-msgstr "如果为[code]true[/code],å¯ç”¨æŒ‡å®šçš„flag。"
+msgstr "如果[code]true[/code],å¯ç”¨æ™¯æ·±è¿‘模糊效果。"
#: doc/classes/Environment.xml:133
msgid ""
"The depth-of-field near blur's quality. Higher values can mitigate the "
"visible banding effect seen at higher strengths, but are much slower."
msgstr ""
+"景深近模糊的质é‡ã€‚较高的数值å¯ä»¥å‡è½»åœ¨è¾ƒé«˜å¼ºåº¦ä¸‹çœ‹åˆ°çš„å¯è§å¸¦çŠ¶æ•ˆåº”,但速度è¦"
+"慢得多。"
#: doc/classes/Environment.xml:136
msgid "The length of the transition between the near blur and no-blur area."
@@ -27305,13 +27893,12 @@ msgstr ""
"机)。"
#: doc/classes/Environment.xml:151
-#, fuzzy
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 Camera.far] value."
msgstr ""
-"雾的深度与相机的è·ç¦»ã€‚如果此值被设置为0,则等于当å‰ç›¸æœºçš„[member Camera3D."
-"far]值。"
+"雾的深度终点与摄åƒæœºçš„è·ç¦»ã€‚如果此值被设置为0,则等于当å‰æ‘„åƒæœºçš„[member "
+"Camera.far]值。"
#: doc/classes/Environment.xml:154
msgid ""
@@ -27358,14 +27945,13 @@ msgstr ""
"示。å¦åˆ™ï¼Œå°†ä»Žä¸‹å¾€ä¸Šæ˜¾ç¤ºã€‚"
#: doc/classes/Environment.xml:169
-#, fuzzy
msgid ""
"The intensity of the depth fog color transition when looking towards the "
"sun. The sun's direction is determined automatically using the "
"DirectionalLight node in the scene."
msgstr ""
-"å‘太阳方å‘看去时,深度雾色过渡的强度。使用场景中的 DirectionalLight3D 节点自"
-"动确定太阳的方å‘。"
+"æœç€å¤ªé˜³çœ‹æ—¶ï¼Œæ·±åº¦é›¾é¢œè‰²è¿‡æ¸¡çš„强度。太阳的方å‘是通过场景中的平行光节点自动确"
+"定的。"
#: doc/classes/Environment.xml:172
msgid "The depth fog's [Color] when looking towards the sun."
@@ -27392,6 +27978,9 @@ msgid ""
"[b]Note:[/b] When using the GLES2 renderer, this is only available if the "
"GPU supports the [code]GL_EXT_gpu_shader4[/code] extension."
msgstr ""
+"以牺牲性能为代价,消除由更高级别采样产生的å—状效应。\n"
+"[b]注æ„:[/b] 使用 GLES2渲染器时,åªæœ‰GPUæ”¯æŒ [code]GL_EXT_gpu_shader4[/"
+"code] 扩展时æ‰å¯ç”¨ã€‚"
#: doc/classes/Environment.xml:185
msgid "The glow blending mode."
@@ -27438,6 +28027,9 @@ msgid ""
"stable during movement. However, it is very expensive and makes the glow "
"post process take twice as long."
msgstr ""
+"在辉光的下采样过程中获å–更多的样本。这å¯ä»¥ç¡®ä¿è¾‰å…‰æ•æ‰åˆ°å•ä¸ªåƒç´ ï¼Œä½¿è¾‰å…‰åœ¨ç§»"
+"动过程中看起æ¥æ›´å¹³æ»‘ã€æ›´ç¨³å®šã€‚然而,它éžå¸¸åƒæ€§èƒ½ï¼Œä½¿è¾‰å…‰çš„åŽæœŸå¤„ç†éœ€è¦ä¸¤å€çš„"
+"时间。"
#: doc/classes/Environment.xml:206
msgid ""
@@ -27519,11 +28111,10 @@ msgid ""
msgstr "å±å¹•ç©ºé—´å射的最大步数。数值越高,速度越慢。"
#: doc/classes/Environment.xml:248
-#, fuzzy
msgid ""
"If [code]true[/code], screen-space reflections will take the material "
"roughness into account."
-msgstr "如果[code]true[/code],查询将考虑[Area2D]。"
+msgstr "如果 [code]true[/code],å±å¹•ç©ºé—´å射将考虑æ质粗糙度。"
#: doc/classes/Environment.xml:251
msgid ""
@@ -27549,9 +28140,8 @@ msgid ""
msgstr "å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡è´¨é‡ã€‚å¯èƒ½çš„值请å‚阅[enum SSAOBlur]。"
#: doc/classes/Environment.xml:260
-#, fuzzy
msgid "The screen-space ambient occlusion color."
-msgstr "å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡è¾¹ç¼˜é”度。"
+msgstr "å±å¹•ç©ºé—´çŽ¯å¢ƒå…‰é®è”½é¢œè‰²ã€‚"
#: doc/classes/Environment.xml:263
msgid "The screen-space ambient occlusion edge sharpness."
@@ -27579,11 +28169,10 @@ msgid ""
msgstr "主è¦çš„å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡å¼ºåº¦ã€‚å‚阅[member ssao_radius]。"
#: doc/classes/Environment.xml:272
-#, fuzzy
msgid ""
"The secondary screen-space ambient occlusion intensity. See also [member "
"ssao_radius2]."
-msgstr "主è¦çš„å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡å¼ºåº¦ã€‚å‚阅[member ssao_radius]。"
+msgstr "主è¦çš„å±å¹•ç©ºé—´çŽ¯å¢ƒå…‰é®æŒ¡å¼ºåº¦ã€‚å‚阅 [member ssao_radius]。"
#: doc/classes/Environment.xml:275
msgid ""
@@ -27601,6 +28190,8 @@ msgid ""
"The screen-space ambient occlusion quality. Higher qualities will make "
"better use of small objects for ambient occlusion, but are slower."
msgstr ""
+"å±å¹•ç©ºé—´çš„环境é®è”½è´¨é‡ã€‚更高的质é‡å°†æ›´å¥½åœ°åˆ©ç”¨å°ç‰©ä½“进行环境é®è”½ï¼Œä½†é€Ÿåº¦è¾ƒ"
+"慢。"
#: doc/classes/Environment.xml:281
msgid "The primary screen-space ambient occlusion radius."
@@ -27613,6 +28204,8 @@ msgid ""
"occlusion effect which can be used to improve the effect's appearance (at "
"the cost of performance)."
msgstr ""
+"次è¦å±å¹•ç©ºé—´çŽ¯å¢ƒé®è”½åŠå¾„。如果设置为高于[code]0[/code]的值,则å¯ç”¨æ¬¡è¦å±å¹•ç©º"
+"间的环境é®è”½æ•ˆæžœï¼Œå¯ä»¥ç”¨æ¥æ”¹å–„效果表现,但以性能为代价。"
#: doc/classes/Environment.xml:287
msgid "The default exposure used for tonemapping."
@@ -27669,6 +28262,9 @@ msgid ""
"BG_SKY] and should be preferred in scenes where reflections can be visible, "
"but the sky itself never is (e.g. top-down camera)."
msgstr ""
+"使用自定义的é€æ˜Žé¢œè‰²æ¸…除背景,并å…许定义天空的阴影和å射。这ç§æ¨¡å¼æ¯”"
+"[constant BG_SKY]ç¨å¿«ï¼Œåº”是在å¯ä»¥çœ‹åˆ°å射,但天空本身ä¸å¯è§çš„场景中的首选,例"
+"如,自上而下的相机。"
#: doc/classes/Environment.xml:313
msgid "Displays a [CanvasLayer] in the background."
@@ -27676,7 +28272,7 @@ msgstr "在背景中显示[CanvasLayer]。"
#: doc/classes/Environment.xml:316
msgid "Displays a camera feed in the background."
-msgstr "在背景中显示相机信å·ã€‚"
+msgstr "在背景中显示相机æºã€‚"
#: doc/classes/Environment.xml:319
msgid "Represents the size of the [enum BGMode] enum."
@@ -27727,11 +28323,12 @@ msgid "Filmic tonemapper operator."
msgstr "胶片色调映射器è¿ç®—符。"
#: doc/classes/Environment.xml:343
-#, fuzzy
msgid ""
"Academy Color Encoding System tonemapper operator. Performs an aproximation "
"of the ACES tonemapping curve."
-msgstr "ACES 映射è¿ç®—符。"
+msgstr ""
+"Academy Color Encoding System(学院色彩编ç ç³»ç»Ÿï¼‰è‰²è°ƒæ˜ å°„è¿ç®—器。对ACES色调映"
+"射曲线进行近似计算。"
#: doc/classes/Environment.xml:346
msgid ""
@@ -27742,6 +28339,10 @@ msgid ""
"will eventually become white if the light is bright enough to saturate the "
"camera sensor."
msgstr ""
+"高质é‡çš„Academy Color Encoding System学院色彩编ç ç³»ç»Ÿè‰²è°ƒæ˜ å°„è¿ç®—器,符åˆè¡Œä¸š"
+"标准。执行更精确的物ç†æ›²çº¿æ‹Ÿåˆï¼Œæ›´å¥½åœ°æ¨¡æ‹Ÿå…‰çº¿åœ¨çŽ°å®žä¸–界中的工作方å¼ã€‚光线和"
+"å‘å…‰æ料的颜色会éšç€å‘光能é‡çš„增加而å˜æµ…,如果光线足够亮,足以使相机传感器饱"
+"和,最终会å˜æˆç™½è‰²ã€‚"
#: doc/classes/Environment.xml:349
msgid "Low depth-of-field blur quality (fastest)."
@@ -27768,24 +28369,20 @@ msgid "2×2 blur for the screen-space ambient occlusion effect."
msgstr "2×2模糊的å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœã€‚"
#: doc/classes/Environment.xml:367
-#, fuzzy
msgid "3×3 blur for the screen-space ambient occlusion effect (slowest)."
-msgstr "å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœä¸æ¨¡ç³Šï¼ˆæœ€å¿«ï¼‰ã€‚"
+msgstr "3×3模糊的å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœï¼ˆæœ€æ…¢ï¼‰ã€‚"
#: doc/classes/Environment.xml:370
-#, fuzzy
msgid "Low quality for the screen-space ambient occlusion effect (fastest)."
-msgstr "å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœä¸æ¨¡ç³Šï¼ˆæœ€å¿«ï¼‰ã€‚"
+msgstr "低质é‡çš„å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœï¼ˆæœ€å¿«ï¼‰ã€‚"
#: doc/classes/Environment.xml:373
-#, fuzzy
msgid "Low quality for the screen-space ambient occlusion effect."
-msgstr "1×1模糊的å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœã€‚"
+msgstr "低质é‡çš„å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœã€‚"
#: doc/classes/Environment.xml:376
-#, fuzzy
msgid "Low quality for the screen-space ambient occlusion effect (slowest)."
-msgstr "å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœä¸æ¨¡ç³Šï¼ˆæœ€å¿«ï¼‰ã€‚"
+msgstr "低质é‡çš„å±å¹•ç©ºé—´çŽ¯å¢ƒé®æŒ¡æ•ˆæžœï¼ˆæœ€æ…¢ï¼‰ã€‚"
#: doc/classes/Expression.xml:4
msgid "A class that stores an expression you can execute."
@@ -27880,11 +28477,14 @@ msgid ""
"OES_EGL_image_external.txt]OES_EGL_image_external[/url].\n"
"[b]Note:[/b] This is only supported for Android platforms."
msgstr ""
+"å¯ç”¨å¯¹OpenGL ES外部纹ç†æ‰©å±•çš„支æŒï¼Œå¦‚[url=https://www.khronos.org/registry/"
+"OpenGL/extensions/OES/OES_EGL_image_external.txt]OES_EGL_image_external[/url]"
+"所定义。\n"
+"[b]注æ„:[/b] è¿™åªæ”¯æŒAndroidå¹³å°ã€‚"
#: doc/classes/ExternalTexture.xml:16
-#, fuzzy
msgid "Returns the external texture name."
-msgstr "返回图å—的纹ç†ã€‚"
+msgstr "返回外部纹ç†å称。"
#: doc/classes/ExternalTexture.xml:23
msgid "External texture size."
@@ -27895,7 +28495,6 @@ msgid "Type to handle file reading and writing operations."
msgstr "用于处ç†æ–‡ä»¶è¯»å†™æ“作的类型。"
#: 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 "
@@ -27929,8 +28528,8 @@ msgid ""
"process will be killed. You can work around this by calling [method flush] "
"at regular intervals."
msgstr ""
-"文件类型。这是用æ¥å°†æ•°æ®æ°¸ä¹…地存储到用户设备的文件系统中,并从中读å–。例如,"
-"è¿™å¯ä»¥ç”¨æ¥å­˜å‚¨æ¸¸æˆä¿å­˜æ•°æ®æˆ–玩家é…置文件。\n"
+"文件类型。这用æ¥å°†æ•°æ®æ°¸ä¹…存储到用户设备的文件系统中,并å¯ä»Žä¸­è¯»å–。例如,这"
+"å¯ä»¥ç”¨æ¥å­˜å‚¨æ¸¸æˆä¿å­˜æ•°æ®æˆ–玩家é…置文件。\n"
"下é¢æ˜¯ä¸€ä¸ªå…³äºŽå¦‚何写入和读出文件的例å­ã€‚\n"
"[codeblock]\n"
"func save(content):\n"
@@ -27946,9 +28545,15 @@ msgstr ""
" file.close()\n"
" return content\n"
"[/codeblock]\n"
-"在上é¢çš„例å­ä¸­ï¼Œæ–‡ä»¶å°†è¢«ä¿å­˜åœ¨[url=https://docs.godotengine.org/zh_CN/latest/"
-"tutorials/io/data_paths.html]user://save_game.dat[/url]文件中指定的用户数æ®æ–‡"
-"件夹中。"
+"在上é¢çš„例å­ä¸­ï¼Œæ–‡ä»¶å°†è¢«ä¿å­˜åœ¨[url=https://docs.godotengine.org/en/3.4/"
+"tutorials/io/data_paths.html]æ•°æ®è·¯å¾„[/url]文件中指定的用户数æ®æ–‡ä»¶å¤¹ä¸­ã€‚\n"
+"[b]注æ„:[/b] è¦åœ¨å¯¼å‡ºåŽè®¿é—®é¡¹ç›®èµ„æºï¼Œå»ºè®®ä½¿ç”¨[ResourceLoader]而ä¸æ˜¯"
+"[File]API,因为有些文件被转æ¢ä¸ºå¼•æ“Žç‰¹å®šçš„æ ¼å¼ï¼Œå…¶åŽŸå§‹æºæ–‡ä»¶å¯èƒ½ä¸å­˜åœ¨äºŽå¯¼å‡ºçš„"
+"PCK包中。\n"
+"[b]注æ„:[/b]åªæœ‰åœ¨è¿›ç¨‹ \"正常\" 退出时,例如通过点击窗å£ç®¡ç†å™¨çš„关闭按钮或按"
+"[b]Alt + F4[/b],文件æ‰ä¼šè‡ªåŠ¨å…³é—­ã€‚如果你在项目è¿è¡Œæ—¶æŒ‰[b]F8[/b]åœæ­¢é¡¹ç›®æ‰§"
+"行,文件将ä¸ä¼šè¢«å…³é—­ï¼Œå› ä¸ºæ¸¸æˆè¿›ç¨‹å°†è¢«æ€æ­»ã€‚ä½ å¯ä»¥é€šè¿‡å®šæœŸè°ƒç”¨[method flush]"
+"æ¥è§£å†³è¿™ä¸ªé—®é¢˜ã€‚"
#: doc/classes/File.xml:35
msgid ""
@@ -27956,6 +28561,8 @@ msgid ""
"operations. Use [method flush] to persist the data to disk without closing "
"the file."
msgstr ""
+"关闭当å‰æ‰“开的文件,并阻止åŽç»­çš„读/写æ“作。使用[method flush]将数æ®æŒä¹…化到ç£"
+"盘,而ä¸å…³é—­æ–‡ä»¶ã€‚"
#: doc/classes/File.xml:41
msgid ""
@@ -27969,9 +28576,15 @@ msgid ""
" # Read data\n"
"[/codeblock]"
msgstr ""
+"如果文件光标已ç»è¯»åˆ°äº†æ–‡ä»¶çš„末端,返回[code]true[/code]。\n"
+"[b]注æ„:[/b][code]ef_reached() == false[/code] ä¸èƒ½ç”¨æ¥æ£€æŸ¥æ˜¯å¦æœ‰æ›´å¤šçš„æ•°æ®"
+"å¯ç”¨ã€‚è¦åœ¨æœ‰æ›´å¤šæ•°æ®å¯ç”¨æ—¶è¿›è¡Œå¾ªçŽ¯ï¼Œè¯·ä½¿ç”¨:\n"
+"[codeblock]\n"
+"while file.get_position() < file.get_len():\n"
+" # Read data\n"
+"[/codeblock]"
#: doc/classes/File.xml:53
-#, fuzzy
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 "
@@ -27980,12 +28593,9 @@ msgid ""
"alternative approach that takes resource remapping into account."
msgstr ""
"如果文件存在于给定的路径中,返回[code]true[/code]。\n"
-"[b]注æ„:[/b]许多资æºç±»åž‹è¢«å¯¼å…¥ï¼ˆä¾‹å¦‚纹ç†æˆ–声音文件),它们的æºèµ„产将ä¸åŒ…括在"
-"导出的游æˆä¸­ï¼Œå› ä¸ºåªä½¿ç”¨å¯¼å…¥çš„版本(在[code]res://.import[/code]文件夹)。为"
-"了检查这些资æºæ˜¯å¦å­˜åœ¨ï¼ŒåŒæ—¶è€ƒè™‘到é‡æ–°æ˜ å°„到它们的导入ä½ç½®ï¼Œä½¿ç”¨[method "
-"ResourceLoader.exists]。通常,当你在编辑器中开å‘时,对导入的资æºä½¿ç”¨"
-"[code]File.file_exists[/code]会起作用(æºèµ„产在[code]res://[/code]中存在,但"
-"在导出时失败)。"
+"[b]注æ„:[/b]许多资æºç±»åž‹å¯¼å…¥åŽï¼Œä¾‹å¦‚纹ç†æˆ–声音文件,其æºèµ„产ä¸ä¼šåŒ…å«åœ¨å¯¼å‡ºçš„"
+"游æˆä¸­ï¼Œå› ä¸ºåªä½¿ç”¨å¯¼å…¥çš„版本。有关考虑资æºé‡æ–°æ˜ å°„的替代方法,å‚阅[method "
+"ResourceLoader.existence]。"
#: doc/classes/File.xml:60
msgid ""
@@ -27997,6 +28607,11 @@ msgid ""
"[b]Note:[/b] Only call [method flush] when you actually need it. Otherwise, "
"it will decrease performance due to constant disk writes."
msgstr ""
+"将文件的缓冲区写入ç£ç›˜ã€‚关闭文件时会自动执行刷新。这æ„味ç€æ‚¨ä¸éœ€è¦åœ¨ä½¿ç”¨ "
+"[method close] 关闭文件之å‰æ‰‹åŠ¨è°ƒç”¨ [method flush]。尽管如此,å³ä½¿é¡¹ç›®å´©æºƒè€Œ"
+"ä¸æ˜¯æ­£å¸¸å…³é—­ï¼Œè°ƒç”¨ [method flush] ä»å¯ç”¨äºŽç¡®ä¿æ•°æ®å®‰å…¨ã€‚\n"
+"[b]注æ„:[/b]åªæœ‰åœ¨ä½ çœŸæ­£éœ€è¦çš„时候æ‰è°ƒç”¨ [method flush]。å¦åˆ™ï¼Œå®ƒä¼šç”±äºŽä¸æ–­"
+"çš„ç£ç›˜å†™å…¥è€Œé™ä½Žæ€§èƒ½ã€‚"
#: doc/classes/File.xml:67
msgid ""
@@ -28039,9 +28654,8 @@ msgstr ""
"文本将被转为UTF-8ç¼–ç ã€‚"
#: doc/classes/File.xml:99
-#, fuzzy
msgid "Returns next [code]len[/code] bytes of the file as a [PoolByteArray]."
-msgstr "返回下一个文件的[code]len[/code]字节长度,类型为[PackedByteArray]。"
+msgstr "将文件的下一个 [code]len[/code] 长度字节作为 [PoolByteArray] 返回。"
#: doc/classes/File.xml:106
msgid ""
@@ -28065,6 +28679,20 @@ msgid ""
"[code]\"\"[/code] for each quotation mark that needs to be interpreted as "
"such instead of the end of a text value."
msgstr ""
+"以 CSV(逗å·åˆ†éš”值)格å¼è¿”回文件的下一个值。您å¯ä»¥ä¼ é€’ä¸åŒçš„分隔符 "
+"[code]delim[/code] 以使用默认 [code]\",\"[/code](逗å·ï¼‰ä»¥å¤–的其他分隔符。此"
+"分隔符必须为一个字符长,并且ä¸èƒ½æ˜¯åŒå¼•å·ã€‚\n"
+"文本被解释为 UTF-8 ç¼–ç ã€‚如果文本值包å«åˆ†éš”符,则必须用åŒå¼•å·æ‹¬èµ·æ¥ã€‚文本值中"
+"çš„åŒå¼•å·å¯ä»¥é€šè¿‡å°†å®ƒä»¬çš„出现次数加å€æ¥è½¬ä¹‰ã€‚\n"
+"例如,以下 CSV 行是有效的,æ¯è¡Œå°†è¢«æ­£ç¡®è§£æžä¸ºä¸¤ä¸ªå­—符串:\n"
+"[codeblock]\n"
+"Alice,\"Hello, Bob!\"\n"
+"Bob,Alice! What a surprise!\n"
+"Alice,\"I thought you'd reply with \"\"Hello, world\"\".\"\n"
+"[/codeblock]\n"
+"请注æ„第二行如何çœç•¥å°é—­å¼•å·ï¼Œå› ä¸ºå®ƒä¸åŒ…å«åˆ†éš”符。然而它 [i]å¯ä»¥[/i] 很好地使"
+"用引å·ï¼Œå®ƒåªæ˜¯ä¸ºäº†æ¼”示目的而没有编写。第三行必须使用 [code]\"\"[/code] æ¥è¡¨ç¤º"
+"æ¯ä¸ªéœ€è¦è¢«è§£é‡Šä¸ºå¼•å·çš„引å·ï¼Œè€Œä¸æ˜¯æ–‡æœ¬å€¼çš„结æŸã€‚"
#: doc/classes/File.xml:120
msgid "Returns the next 64 bits from the file as a floating-point number."
@@ -28169,6 +28797,10 @@ msgid ""
"Godot, not third-party compression formats. See [url=https://github.com/"
"godotengine/godot/issues/28999]GitHub issue #28999[/url] for a workaround."
msgstr ""
+"打开压缩文件进行读å–或写入。\n"
+"[b]注æ„:[/b] [method open_compressed] åªèƒ½è¯»å–Godotä¿å­˜çš„文件,ä¸èƒ½è¯»å–第三"
+"方压缩格å¼ã€‚有关解决方法,请å‚阅 [url=https://github.com/godotengine/godot/"
+"issues/28999] GitHub 问题 #28999[/url]。"
#: doc/classes/File.xml:238
msgid ""
@@ -28296,7 +28928,6 @@ msgid "Stores the given array of bytes in the file."
msgstr "在文件中存储给定的字节数组。"
#: doc/classes/File.xml:331
-#, fuzzy
msgid ""
"Store the given [PoolStringArray] in the file as a line formatted in the CSV "
"(Comma-Separated Values) format. You can pass a different delimiter "
@@ -28304,10 +28935,10 @@ msgid ""
"This delimiter must be one-character long.\n"
"Text will be encoded as UTF-8."
msgstr ""
-"将给定的[PackedStringArray]存储为以CSV(逗å·åˆ†éš”值)格å¼è®¾ç½®çš„行。您å¯ä»¥ä¼ é€’"
-"其他定界符[code] delim [/code]以使用默认的[code]“,†[/code](逗å·ï¼‰ä»¥å¤–的符"
-"å·ã€‚该定界符必须为一个字符长。\n"
-"文本将被转为UTF-8ç¼–ç ã€‚"
+"将给定的 [PoolStringArray] 作为CSV(逗å·åˆ†éš”值)格å¼çš„行存储在文件中。您å¯ä»¥"
+"传递ä¸åŒçš„分隔符 [code]delim[/code] 以使用默认 [code]\",\"[/code](逗å·ï¼‰ä»¥å¤–"
+"的其他分隔符。此分隔符的长度必须为一个字符。\n"
+"文本将被编ç ä¸º UTF-8。"
#: doc/classes/File.xml:339
msgid "Stores a floating-point number as 64 bits in the file."
@@ -28322,6 +28953,8 @@ msgid ""
"Appends [code]line[/code] to the file followed by a line return character "
"([code]\\n[/code]), encoding the text as UTF-8."
msgstr ""
+"å°† [code]line[/code] 附加到文件åŽè·Ÿä¸€ä¸ªè¡Œè¿”回字符 ([code]\\n[/code]),将文本"
+"ç¼–ç ä¸º UTF-8。"
#: doc/classes/File.xml:360
msgid ""
@@ -28340,7 +28973,7 @@ msgstr "将浮点数存储在文件中。"
msgid ""
"Appends [code]string[/code] to the file without a line return, encoding the "
"text as UTF-8."
-msgstr ""
+msgstr "å°† [code]string[/code] 附加到文件而ä¸è¿”回行,将文本编ç ä¸º UTF-8。"
#: doc/classes/File.xml:383
msgid ""
@@ -28355,6 +28988,13 @@ msgid ""
"_get_property_list]. See [enum PropertyUsageFlags] for the possible usage "
"flags."
msgstr ""
+"在文件中存储任何 Variant å˜é‡å€¼ã€‚如果 [code]full_objects[/code] 是 "
+"[code]true[/code],则å…许编ç å¯¹è±¡ï¼ˆå¹¶ä¸”å¯èƒ½åŒ…å«ä»£ç ï¼‰ã€‚\n"
+"[b]注æ„:[/b] 并éžæ‰€æœ‰å±žæ€§éƒ½åŒ…括在内。åªæœ‰ä½¿ç”¨ [constant "
+"PROPERTY_USAGE_STORAGE] 标志集é…置的属性æ‰ä¼šè¢«åºåˆ—化。您å¯ä»¥é€šè¿‡è¦†ç›–类中的 "
+"[method Object._get_property_list] 方法å‘属性添加新的使用标志。您还å¯ä»¥é€šè¿‡è°ƒ"
+"用 [method Object._get_property_list] æ¥æ£€æŸ¥å±žæ€§ä½¿ç”¨æ˜¯å¦‚何é…置的。有关å¯èƒ½çš„"
+"使用标志,请å‚阅 [enum PropertyUsageFlags]。"
#: doc/classes/File.xml:390
msgid ""
@@ -28369,35 +29009,41 @@ msgid ""
"the file. Therefore, you must set [member endian_swap] [i]after[/i] opening "
"the file, not before."
msgstr ""
+"如果 [code]true[/code],则使用 big-endian [url=https://en.wikipedia.org/wiki/"
+"Endianness]endianness[/url] 读å–文件。如果 [code]false[/code],则文件以 "
+"little-endian 字节åºè¯»å–。如果有疑问,请将其ä¿ç•™ä¸º [code]false[/code],因为大"
+"多数文件都是以å°ç«¯å­—节åºç¼–写的。\n"
+"[b]注æ„:[/b] [member endian_swap] åªæ˜¯æ–‡ä»¶æ ¼å¼ï¼Œä¸ŽCPU类型无关。 CPU 字节åºä¸"
+"会影å“写入文件的默认字节åºã€‚\n"
+"[b]注æ„:[/b]æ¯å½“您打开文件时,它总是é‡ç½®ä¸º [code]false[/code]。因此,必须在 "
+"[i]打开文件之åŽ[/i] 设置 [member endian_swap],而ä¸æ˜¯ä¹‹å‰ã€‚"
#: doc/classes/File.xml:397
-#, fuzzy
msgid ""
"Opens the file for read operations. The cursor is positioned at the "
"beginning of the file."
-msgstr "将文件的读/写光标改å˜åˆ°æŒ‡å®šçš„ä½ç½®ï¼ˆä»Žæ–‡ä»¶å¼€å§‹çš„字节数)。"
+msgstr "打开文件进行读å–æ“作。光标ä½äºŽæ–‡ä»¶çš„开头。"
#: doc/classes/File.xml:400
-#, fuzzy
msgid ""
"Opens the file for write operations. The file is created if it does not "
"exist, and truncated if it does."
-msgstr "为写入,打开文件。如果文件ä¸å­˜åœ¨ï¼Œå°±åˆ›å»ºæ–‡ä»¶ï¼›å¦‚果文件存在,截断文件。"
+msgstr "打开文件进行写æ“作。如果文件ä¸å­˜åœ¨ï¼Œåˆ™åˆ›å»ºè¯¥æ–‡ä»¶ï¼Œå¦‚果存在则截断。"
#: doc/classes/File.xml:403
-#, fuzzy
msgid ""
"Opens the file for read and write operations. Does not truncate the file. "
"The cursor is positioned at the beginning of the file."
-msgstr "打开文件进行读写æ“作。ä¸æˆªæ–­æ–‡ä»¶ã€‚"
+msgstr "打开文件用于读写æ“作。ä¸æˆªæ–­æ–‡ä»¶ã€‚光标ä½äºŽæ–‡ä»¶çš„开头。"
#: doc/classes/File.xml:406
-#, fuzzy
msgid ""
"Opens the file for read and write operations. The file is created if it does "
"not exist, and truncated if it does. The cursor is positioned at the "
"beginning of the file."
-msgstr "写入或读å–打开文件。如果文件ä¸å­˜åœ¨ï¼Œåˆ™åˆ›å»ºæ–‡ä»¶ï¼›å¦‚果存在,就打开文件。"
+msgstr ""
+"打开文件进行读写æ“作。如果文件ä¸å­˜åœ¨ï¼Œåˆ™åˆ›å»ºè¯¥æ–‡ä»¶ï¼Œå¦‚果存在则截断。光标ä½äºŽ"
+"文件的开头。"
#: doc/classes/File.xml:409
msgid "Uses the [url=http://fastlz.org/]FastLZ[/url] compression method."
@@ -28424,7 +29070,6 @@ msgid "Dialog for selecting files or directories in the filesystem."
msgstr "用于选择文件系统中的文件或目录的对è¯æ¡†ã€‚"
#: doc/classes/FileDialog.xml:7
-#, fuzzy
msgid ""
"FileDialog is a preset dialog used to choose files and directories in the "
"filesystem. It supports filter masks. The FileDialog automatically sets its "
@@ -28432,9 +29077,9 @@ msgid ""
"title, disable this by setting [member mode_overrides_title] to [code]false[/"
"code]."
msgstr ""
-"FileDialog是一个预设的对è¯æ¡†ï¼Œç”¨äºŽé€‰æ‹©æ–‡ä»¶ç³»ç»Ÿä¸­çš„文件和目录。它支æŒè¿‡æ»¤æŽ©"
-"ç ã€‚FileDialog会根æ®[member file_mode]自动设置其窗å£æ ‡é¢˜ã€‚如果你想使用一个自"
-"定义的标题,通过设置[member mode_overrides_title]为[code]false[/code]æ¥ç¦ç”¨ã€‚"
+"FileDialog 是用于在文件系统中选择文件和目录的预设对è¯æ¡†ã€‚它支æŒè¿‡æ»¤å™¨æŽ©ç ã€‚æ–‡"
+"件对è¯æ¡†ä¼šæ ¹æ® [member mode] 自动设置其窗å£æ ‡é¢˜ã€‚如果您è¦ä½¿ç”¨è‡ªå®šä¹‰æ ‡é¢˜ï¼Œè¯·"
+"å°† [member mode_overrides_title] 设置为 [code] false[/code] æ¥ç¦ç”¨æ­¤æ ‡é¢˜ã€‚"
#: doc/classes/FileDialog.xml:16
msgid ""
@@ -28461,6 +29106,9 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回所选文件的 LineEdit。\n"
+"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它å¯èƒ½ä¼šå¯¼è‡´å´©æºƒã€‚如果您希望"
+"éšè—它或其任何å­é¡¹ï¼Œè¯·ä½¿ç”¨å®ƒä»¬çš„ [member CanvasItem.visible] 属性。"
#: doc/classes/FileDialog.xml:41
msgid ""
@@ -28470,6 +29118,9 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"返回对è¯æ¡†çš„垂直框容器,å¯ä»¥å‘其中添加自定义控件。\n"
+"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它å¯èƒ½ä¼šå¯¼è‡´å´©æºƒã€‚如果您希望"
+"éšè—它或其任何å­é¡¹ï¼Œè¯·ä½¿ç”¨å®ƒä»¬çš„ [member CanvasItem.visible] 属性。"
#: doc/classes/FileDialog.xml:48
msgid "Invalidate and update the current dialog content list."
@@ -28483,6 +29134,10 @@ msgid ""
"[url=https://github.com/godotengine/godot-proposals/issues/1123]godot-"
"proposals#1123[/url]."
msgstr ""
+"文件系统的访问范围。è§æžšä¸¾ [code]Access[/code] 常数。\n"
+"[b]警告:[/b] ç›®å‰ï¼Œåœ¨æ²™ç›’环境下,如HTML5构建或沙盒的macOS应用程åºï¼Œ"
+"FileDialog ä¸èƒ½è®¿é—®ä¸»æœºæ–‡ä»¶ç³»ç»Ÿã€‚å‚è§ [url=https://github.com/godotengine/"
+"godot-proposals/issues/1123]godot-proposals#1123 [/url]。"
#: doc/classes/FileDialog.xml:58
msgid "The current working directory of the file dialog."
@@ -28497,33 +29152,30 @@ msgid "The currently selected file path of the file dialog."
msgstr "当å‰é€‰æ‹©çš„文件对è¯æ¡†çš„文件路径。"
#: doc/classes/FileDialog.xml:68
-#, fuzzy
msgid ""
"The available file type filters. For example, this shows only [code].png[/"
"code] and [code].gd[/code] files: [code]set_filters(PoolStringArray([\"*."
"png ; PNG Images\",\"*.gd ; GDScript Files\"]))[/code]."
msgstr ""
-"å¯ç”¨çš„文件类型过滤器。例如,这åªæ˜¾ç¤º[code].png[/code]å’Œ[code].gd[/code]文件。"
-"[code]set_filters(PackedStringArray([\"*.png ; PNG Images\", \"*.gd ; "
-"GDScript Files\"])[/code]。"
+"å¯ç”¨çš„文件类型过滤器。例如,这仅显示 [code].png[/code] å’Œ [code].gd[/code] æ–‡"
+"件: [code]set_filters(PoolStringArray([\"*.png ; PNG Images\", \"*.gd ; "
+"GDScript Files\" ]))[/code]。"
#: doc/classes/FileDialog.xml:71
-#, fuzzy
msgid ""
"The dialog's open or save mode, which affects the selection behavior. See "
"enum [code]Mode[/code] constants."
-msgstr "对è¯æ¡†çš„打开或ä¿å­˜æ¨¡å¼ï¼Œå½±å“选择行为。å‚阅[enum FileMode]。"
+msgstr ""
+"对è¯æ¡†çš„打开或ä¿å­˜æ¨¡å¼ï¼Œè¿™ä¼šå½±å“选择行为。请å‚阅枚举 [code]Mode[/code] 常é‡ã€‚"
#: doc/classes/FileDialog.xml:74
-#, fuzzy
msgid ""
"If [code]true[/code], changing the [code]Mode[/code] property will set the "
"window title accordingly (e.g. setting mode to [constant MODE_OPEN_FILE] "
"will change the window title to \"Open a File\")."
msgstr ""
-"如果[code]true[/code],改å˜[code]Mode[/code]属性将相应地设置窗å£æ ‡é¢˜ï¼ˆä¾‹å¦‚,"
-"将模å¼è®¾ç½®ä¸º[constant FILE_MODE_OPEN_FILE]将改å˜çª—å£æ ‡é¢˜ä¸º \"打开一个文件"
-"\")。"
+"如果 [code]true[/code],更改 [code]Mode[/code] 属性将相应地设置窗å£æ ‡é¢˜ï¼ˆä¾‹"
+"如,将模å¼è®¾ç½®ä¸º [constant MODE_OPEN_FILE] 会将窗å£æ ‡é¢˜æ›´æ”¹ä¸ºâ€œæ‰“开文件â€ï¼‰ã€‚"
#: doc/classes/FileDialog.xml:77
msgid "If [code]true[/code], the dialog will show hidden files."
@@ -28636,6 +29288,16 @@ msgid ""
"the [method @GDScript.is_equal_approx] and [method @GDScript.is_zero_approx] "
"methods instead of [code]==[/code] to compare [float] values for equality."
msgstr ""
+"[float] 内置类型是一个64ä½åŒç²¾åº¦æµ®ç‚¹æ•°ï¼Œç›¸å½“于C++中的 [code]double[/code]。这"
+"个类型有14个å¯é çš„å°æ•°ä½ç²¾åº¦ã€‚[float] 类型å¯ä»¥å­˜å‚¨åœ¨[Variant] 中,它是引擎使"
+"用的通用类型。[float] 的最大值约为 [code]1.79769e308[/code],最å°å€¼çº¦ä¸º "
+"[code]-1.79769e308[/code]。\n"
+"引擎中的大多数方法和属性都使用32ä½å•ç²¾åº¦æµ®ç‚¹æ•°æ¥ä»£æ›¿ï¼Œç›¸å½“于C++中的 "
+"[code]float[/code],它有6ä½å¯é çš„å°æ•°ä½ç²¾åº¦ã€‚对于 [Vector2] å’Œ [Vector3] 这样"
+"çš„æ•°æ®ç»“构,Godot使用32ä½æµ®ç‚¹æ•°ã€‚\n"
+"使用 [float] 类型所åšçš„æ•°å­¦è¿ç®—ä¸èƒ½ä¿è¯ç²¾ç¡®æˆ–确定,而且ç»å¸¸ä¼šäº§ç”Ÿå°çš„错误。你"
+"通常应该使用 [method @GDScript.is_equal_approx] 和 [method @GDScript."
+"is_zero_approx] 方法而ä¸æ˜¯ [code]==[/code] æ¥æ¯”较[ float] 值是å¦ç›¸ç­‰ã€‚"
#: doc/classes/float.xml:12
msgid "https://en.wikipedia.org/wiki/Double-precision_floating-point_format"
@@ -28698,6 +29360,18 @@ msgid ""
"emoji) are [i]not[/i] supported on Windows. They will display as unknown "
"characters instead. This will be resolved in Godot 4.0."
msgstr ""
+"字体包å«ä¸€ä¸ªä¸Ž Unicode 兼容的字符集,以åŠç”¨å¯å˜å®½åº¦(width)ã€ä¸Šå‡(ascent)ã€ä¸‹"
+"é™(descent) å’Œ 字符间è·(kerning)绘制的能力。关于从TTF文件(或其他字体格å¼ï¼‰åˆ›"
+"建字体,请å‚è§ç¼–辑器对字体的支æŒã€‚\n"
+"[b]注æ„:[/b] 如果一个 [DynamicFont] ä¸åŒ…å«å­—符串中使用的字符,如果该字符在 "
+"[DynamicFont] 中å¯ç”¨çš„è¯ï¼Œå°†ç”¨ä»£ç ç‚¹ [code]0xfffd[/code] 替æ¢è¯¥å­—符。如果这个"
+"替æ¢å­—符在动æ€å­—体中ä¸å¯ç”¨ï¼Œè¯¥å­—符将被éšè—,而ä¸åœ¨å­—符串中显示任何替æ¢å­—"
+"符。\n"
+"[b]注æ„:[/b]如果 [BitmapFont] ä¸åŒ…å«å­—符串中使用的字符,有关的字符将被éšè—,"
+"而ä¸åœ¨å­—符串中显示任何替æ¢å­—符。\n"
+"[b]注æ„:[/b] [code]0xffff[/code] 之åŽçš„ Unicode 字符(如大多数表情符å·ï¼‰åœ¨"
+"Windows上ä¸è¢« [i]支æŒ[/i]。它们将显示为未知字符。这个问题将在Godot 4.0中解"
+"决。"
#: doc/classes/Font.xml:24
msgid ""
@@ -28732,12 +29406,13 @@ msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr "返回字体的上å‡å¹…度(超出基线的åƒç´ æ•°ï¼‰ã€‚"
#: doc/classes/Font.xml:51
-#, fuzzy
msgid ""
"Returns the size of a character, optionally taking kerning into account if "
"the next character is provided. Note that the height returned is the font "
"height (see [method get_height]) and has no relation to the glyph height."
-msgstr "返回一个字符的大å°ï¼Œå¦‚æžœæ供了下一个字符,则å¯é€‰æ‹©è€ƒè™‘字符的间è·ã€‚"
+msgstr ""
+"返回一个字符的大å°ï¼Œå¦‚æžœæ供了下一个字符,å¯ä»¥é€‰æ‹©å°†å­—è·è€ƒè™‘在内。注æ„,返回"
+"çš„é«˜åº¦æ˜¯å­—ä½“é«˜åº¦ï¼ˆè§ [method get_height]),与字形高度没有关系。"
#: doc/classes/Font.xml:57
msgid "Returns the font descent (number of pixels below the baseline)."
@@ -28753,6 +29428,8 @@ msgid ""
"that the height returned is the font height (see [method get_height]) and "
"has no relation to the string."
msgstr ""
+"返回一个字符串的大å°ï¼Œå¹¶è€ƒè™‘到字符间è·å’Œæå‰é‡ã€‚注æ„,返回的高度是字体高度"
+"ï¼ˆè§ [method get_height]),与字符串没有关系。"
#: doc/classes/Font.xml:78
msgid ""
@@ -28791,24 +29468,23 @@ msgstr ""
"和调用给定对象中的一个函数的引用。"
#: doc/classes/FuncRef.xml:16
-#, fuzzy
msgid ""
"Calls the referenced function previously set in [member function] or [method "
"@GDScript.funcref]."
msgstr ""
-"调用之å‰ç”±[method set_function]或[method @GDScript.funcref]设置的å‚考函数。"
+"调用以å‰è®¾ç½®åœ¨ [member function] 或 [method @GDScript. funcref] 中的引用函"
+"数。"
#: doc/classes/FuncRef.xml:23
-#, fuzzy
msgid ""
"Calls the referenced function previously set in [member 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 ""
-"调用先å‰ç”±[method set_function]或[method @GDScript.funcref]设置的å‚考函数。与"
-"[method call_func]ä¸åŒï¼Œè¿™ä¸ªæ–¹æ³•ä¸æ”¯æŒå¯å˜çš„å‚æ•°æ•°é‡ï¼Œè€Œæ˜¯æ‰€æœ‰çš„å‚数都通过一"
-"个[Array]æ¥ä¼ é€’。"
+"调用先å‰åœ¨ [member function] 或 [method @GDScript.funcref] 中设置的引用函数。"
+"与 [method call_func] 相å,此方法ä¸æ”¯æŒå¯å˜æ•°é‡çš„å‚数,但希望所有å‚数都通过"
+"å•ä¸ªæ•°ç»„å½¢å¼ [Array] 传递。"
#: doc/classes/FuncRef.xml:29
msgid "Returns whether the object still exists and has the function assigned."
@@ -28824,9 +29500,8 @@ msgstr ""
"[Vector2]或[Dictionary]这样的内置类型。"
#: doc/classes/FuncRef.xml:42
-#, fuzzy
msgid "The name of the referenced function."
-msgstr "获å–当å‰åŠ¨ä½œçš„å称。"
+msgstr "被引用函数的å称。"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:4
msgid ""
@@ -28834,16 +29509,15 @@ msgid ""
msgstr "一个包å«å‡½æ•°æˆ–脚本类的外部库,å¯ä»¥åœ¨Godot中使用。"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:7
-#, fuzzy
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 [ARVRInterfaceGDNative]. The library must be compiled for each "
"platform and architecture that the project will run on."
msgstr ""
-"GDNative库å¯ä»¥å®žçŽ°[NativeScript],用[GDNative]类调用的全局函数,或通过"
-"[XRInterfaceGDNative]等接å£å®žçŽ°ä½Žçº§åˆ«çš„引擎扩展。该库必须为项目将è¦è¿è¡Œçš„æ¯ä¸ª"
-"å¹³å°å’Œæž¶æž„进行编译。"
+"GDNative 库å¯ä»¥å®žçŽ° [NativeScript]ã€ç”¨ [GDNative] 类调用的全局函数或通过 "
+"[ARVRInterfaceGDNative] 等接å£å®žçŽ°çš„低级引擎扩展。该库必须为项目将è¦è¿è¡Œçš„æ¯"
+"个平å°å’Œæž¶æž„进行编译。"
#: modules/gdnative/doc_classes/GDNativeLibrary.xml:10
msgid ""
@@ -28984,16 +29658,15 @@ msgid "State of a function call after yielding."
msgstr "一个函数在调用åŽå¤±æ•ˆçš„状æ€ã€‚"
#: 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 "
"function call can then be resumed later by calling [method resume] on this "
"state object."
msgstr ""
-"修正。从4.0版的GDScripté‡å†™å¼€å§‹ï¼Œæ–‡æ¡£å·²ç»è¿‡æ—¶äº†ã€‚\n"
-"在一个函数中调用[code]yield[/code]会使该函数失效并将其当å‰çŠ¶æ€ä½œä¸ºè¯¥ç±»åž‹çš„对"
-"象返回。之åŽå¯ä»¥é€šè¿‡å¯¹è¿™ä¸ªçŠ¶æ€å¯¹è±¡è°ƒç”¨[method resume]æ¥æ¢å¤è¢«å¤±æ•ˆçš„函数调用。"
+"在函数中调用 [method @GDScript.yield] 将导致该函数作为此类型的对象让步并返回"
+"其当å‰çŠ¶æ€ã€‚然åŽå¯ä»¥é€šè¿‡åœ¨æ­¤çŠ¶æ€å¯¹è±¡ä¸Šè°ƒç”¨ [method resume] æ¥ä½¿è®©æ­¥çš„函数æ¢å¤"
+"调用。"
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:16
msgid ""
@@ -29012,7 +29685,6 @@ msgstr ""
"å¤ï¼Œä½ å¯ä»¥ä½¿ç”¨è¿™ä¸ªã€‚"
#: modules/gdscript/doc_classes/GDScriptFunctionState.xml:24
-#, fuzzy
msgid ""
"Resume execution of the yielded function call.\n"
"If handed an argument, return the argument from the [method @GDScript.yield] "
@@ -29021,10 +29693,10 @@ msgid ""
"This function returns what the resumed function call returns, possibly "
"another function state if yielded again."
msgstr ""
-"继续执行失效的函数调用。\n"
-"如果交出一个å‚数,则返回被交出的函数调用中的[code]yield[/code]调用的å‚数。你"
-"å¯ä»¥ä¼ é€’例如一个[Array]æ¥ä¼ é€’多个å‚数。\n"
-"这个函数返回被æ¢å¤çš„函数调用所返回的东西,如果å†æ¬¡å¤±æ•ˆï¼Œå¯èƒ½æ˜¯å¦ä¸€ä¸ªå‡½æ•°çŠ¶"
+"继续执行让步的函数调用。\n"
+"如果传递了一个å‚数,则从产生的函数调用中的 [method @GDScript.yield] 调用返回"
+"å‚数。你å¯ä»¥é€šè¿‡ä¾‹å¦‚一个 [Array] æ¥å¤„ç†å¤šä¸ªå‚数。 \n"
+"此函数返回接续的函数调用åŽè¿”回的内容,如果å†æ¬¡æ¢å¤è°ƒç”¨ï¼Œå¯èƒ½æ˜¯å¦ä¸€ä¸ªå‡½æ•°çŠ¶"
"æ€ã€‚"
#: doc/classes/Generic6DOFJoint.xml:4
@@ -29459,19 +30131,17 @@ msgid "Represents the size of the [enum Flag] enum."
msgstr "表示[enum Flag]枚举的大å°ã€‚"
#: doc/classes/Geometry.xml:4
-#, fuzzy
msgid "Helper node to calculate generic geometry operations."
-msgstr "帮助节点用于计算二维空间中的通用几何æ“作。"
+msgstr "用于计算通用几何æ“作的辅助节点。"
#: doc/classes/Geometry.xml:7
-#, fuzzy
msgid ""
"Geometry provides users with a set of helper functions to create geometric "
"shapes, compute intersections between shapes, and process various other "
"geometric operations."
msgstr ""
-"Geometry2D为用户æ供了一组辅助函数,用于创建几何图形,计算图形之间的交点,以"
-"åŠå¤„ç†å…¶ä»–å„ç§å‡ ä½•æ“作。"
+"Geometry 为用户æ供了一组辅助函数,用于创建几何形状ã€è®¡ç®—形状之间的交点以åŠå¤„"
+"ç†å„ç§å…¶ä»–几何æ“作。"
#: doc/classes/Geometry.xml:16
msgid ""
@@ -29555,7 +30225,6 @@ msgstr ""
"个点相åŒã€‚"
#: doc/classes/Geometry.xml:77
-#, fuzzy
msgid ""
"Mutually excludes common area defined by intersection of [code]polygon_a[/"
"code] and [code]polygon_b[/code] (see [method intersect_polygons_2d]) and "
@@ -29566,12 +30235,12 @@ msgid ""
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
-"相互排除由[code]polygon_a[/code]å’Œ[code]polygon_b[/code](è§[method "
+"相互排除由 [code]polygon_a[/code] å’Œ [code]polygon_b[/code]ï¼ˆè§ [method "
"intersect_polygons])的交å‰ç‚¹å®šä¹‰çš„公共区域,并返回一个排除的多边形数组。这在"
-"多边形之间执行了[constant OPERATION_XOR]。æ¢å¥è¯è¯´ï¼Œè¿”回多边形之间除公共区域"
+"多边形之间执行了 [constant OPERATION_XOR]。æ¢å¥è¯è¯´ï¼Œè¿”回多边形之间除公共区域"
"外的所有区域。\n"
-"该æ“作å¯èƒ½ä¼šäº§ç”Ÿä¸€ä¸ªå¤–部多边形(边界)和内部多边形(孔),å¯ä»¥é€šè¿‡è°ƒç”¨"
-"[method is_polygon_clockwise]æ¥åŒºåˆ†ã€‚"
+"该æ“作å¯èƒ½ä¼šäº§ç”Ÿä¸€ä¸ªå¤–部多边形(边界)和内部多边形(孔),å¯ä»¥é€šè¿‡è°ƒç”¨ "
+"[method is_polygon_clockwise] æ¥åŒºåˆ†ã€‚"
#: doc/classes/Geometry.xml:87
msgid ""
@@ -29614,7 +30283,6 @@ msgstr ""
"以在线段外,å³åœ¨ä»Žçº¿æ®µå»¶ä¼¸å‡ºæ¥çš„æŸå¤„。"
#: doc/classes/Geometry.xml:124
-#, fuzzy
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 "
@@ -29622,13 +30290,12 @@ msgid ""
"on ([code]p1[/code], [code]p2[/code]) as well the accompanying point on "
"([code]q1[/code], [code]q2[/code])."
msgstr ""
-"给出两个3D线段([code]p1[/code], [code]p2[/code])和([code]q1[/code], "
-"[code]q2[/code]),找到这两个线段上最接近的两个点。返回一个"
-"[PackedVector2Array],其中包å«([code]p1[/code], [code]p2[/code])上的这个点以"
-"åŠ([code]q1[/code], [code]q2[/code])上的伴éšç‚¹ã€‚"
+"给定两个 3D 线段 ([code]p1[/code],[code]p2[/code]) 和 ([code]q1[/code],"
+"[code]q2[/code]),到这两个线段上最接近的两个点。返回一个 [PoolVector3Array],"
+"å…¶ä¸­åŒ…å« ([code]p1[/code],[code]p2[/code]) ä¸Šçš„è¿™ä¸ªç‚¹ä»¥åŠ ([code]q1[/code],"
+"[code]q2[/code]) 上的伴éšç‚¹."
#: doc/classes/Geometry.xml:134
-#, fuzzy
msgid ""
"Given the two 2D segments ([code]p1[/code], [code]q1[/code]) and ([code]p2[/"
"code], [code]q2[/code]), finds those two points on the two segments that are "
@@ -29636,10 +30303,10 @@ msgid ""
"on ([code]p1[/code], [code]q1[/code]) as well the accompanying point on "
"([code]p2[/code], [code]q2[/code])."
msgstr ""
-"给出两个2D线段([code]p1[/code], [code]p2[/code])和([code]q1[/code], "
-"[code]q2[/code]),找到这两个线段上最接近的两个点。返回一个"
-"[PackedVector2Array],其中包å«([code]p1[/code], [code]p2[/code])上的这个点以"
-"åŠ([code]q1[/code], [code]q2[/code])上的伴éšç‚¹ã€‚"
+"给定两个 2D 线段 ([code]p1[/code],[code]q1[/code]) 和 ([code]p2[/code],"
+"[code]q2[/code]),找到这两个线段上最接近的两个点。返回一个 "
+"[PoolVector2Array]ï¼Œå…¶ä¸­åŒ…å« ([code]p1[/code],[code]q1[/code]) 上的这个点以"
+"åŠ ([code]p2[/code], [code]q2[/code]) 上的伴éšç‚¹."
#: doc/classes/Geometry.xml:141
msgid "Used internally by the engine."
@@ -29723,7 +30390,6 @@ msgstr ""
"包å«æ•´ä¸ªå›¾é›†çš„整体大å°ï¼Œä½œä¸º[Vector2]。"
#: doc/classes/Geometry.xml:208
-#, fuzzy
msgid ""
"Merges (combines) [code]polygon_a[/code] and [code]polygon_b[/code] and "
"returns an array of merged polygons. This performs [constant "
@@ -29732,13 +30398,12 @@ msgid ""
"polygons (holes) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
-"åˆå¹¶ï¼ˆç»“åˆï¼‰[code]polygon_a[/code]å’Œ[code]polygon_b[/code],并返回一个åˆå¹¶çš„"
-"多边形数组。在多边形之间执行[constant OPERATION_UNION]。\n"
-"该æ“作å¯èƒ½ä¼šäº§ç”Ÿä¸€ä¸ªå¤–部多边形(边界)和内部多边形(孔),å¯ä»¥é€šè¿‡è°ƒç”¨"
-"[method is_polygon_clockwise]æ¥åŒºåˆ†ã€‚"
+"åˆå¹¶ï¼ˆç»“åˆï¼‰[code]polygon_a[/code] å’Œ [code]polygon_b[/code],并返回一个åˆå¹¶"
+"的多边形数组。在多边形之间执行 [constant OPERATION_UNION]。\n"
+"该æ“作å¯èƒ½ä¼šäº§ç”Ÿä¸€ä¸ªå¤–部多边形(边界)和内部多边形(孔),å¯ä»¥é€šè¿‡è°ƒç”¨ "
+"[method is_polygon_clockwise] æ¥åŒºåˆ†ã€‚"
#: doc/classes/Geometry.xml:218
-#, 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. "
@@ -29763,23 +30428,24 @@ msgid ""
"150), Vector2(50, 150)]\n"
"[/codeblock]"
msgstr ""
-"å°†[code]多边形polygon[/code]膨胀或缩å°[code]delta[/code]å•ä½ï¼ˆåƒç´ ï¼‰ã€‚如果"
-"[code]delta[/code]为正数,使多边形å‘外增长。如果[code]delta[/code]为负数,使"
-"多边形å‘内收缩。返回一个多边形数组,因为充气/放气å¯èƒ½å¯¼è‡´å¤šä¸ªç¦»æ•£çš„多边形。如"
-"æžœ[code]delta[/code]为负数,并且其ç»å¯¹å€¼å¤§çº¦è¶…过了多边形的最å°è¾¹ç•ŒçŸ©å½¢å°ºå¯¸ï¼Œ"
-"则返回一个空数组。\n"
-"æ¯ä¸ªå¤šè¾¹å½¢çš„顶点将按照[code]join_type[/code]确定的方å¼è¿›è¡Œåœ†è§’处ç†ï¼Œè§[enum "
-"PolyJoinType]。\n"
-"该æ“作å¯èƒ½ä¼šäº§ç”Ÿä¸€ä¸ªå¤–部多边形(边界)和内部多边形(孔),å¯ä»¥é€šè¿‡è°ƒç”¨[方法"
-"is_polygon_clockwise]æ¥åŒºåˆ†ã€‚\n"
-"[b]注æ„:[/b]è¦å…·ä½“翻译多边形的顶点,请使用[method Transform2D.xform]方法。\n"
-"[codeblock]\n"
-"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
-"Vector2(100, 100), Vector2(0, 100)] )\n"
+"通过 [code]delta[/code] å•ä½ï¼ˆåƒç´ ï¼‰è†¨èƒ€æˆ–缩å°å¤šè¾¹å½¢ [code]polygon [/code]。"
+"如果 [code]delta[/code] 是正数,使多边形å‘外增长。如果 [code]delta[/code] 是"
+"负数,则使多边形å‘内收缩。返回一个多边形数组,因为膨胀或缩å°å¯èƒ½å¯¼è‡´å¤šä¸ªç¦»æ•£"
+"的多边形。如果 [code]delta[/code] 为负数,并且其ç»å¯¹å€¼å¤§çº¦è¶…过了多边形的最å°"
+"边界矩形尺寸,则返回一个空数组。\n"
+"æ¯ä¸ªå¤šè¾¹å½¢çš„顶点将按照 [code]join_type[/code] 确定的方å¼è¿›è¡Œåœ†è§’处ç†ï¼Œè§ "
+"[enum PolyJoinType]。\n"
+"该æ“作å¯èƒ½ä¼šäº§ç”Ÿä¸€ä¸ªå¤–部多边形(边界)和内部多边形(孔),å¯ä»¥é€šè¿‡è°ƒç”¨ "
+"[method is_polygon_clockwise]æ¥åŒºåˆ†ã€‚\n"
+"[b]注æ„:[/b]è¦å…·ä½“平移多边形的顶点,请使用 [method Transform2D.xform] æ–¹"
+"法。\n"
+"[codeblock]\n"
+"var polygon = PoolVector2Array([ 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) #打å°å‡º[Vector2(50, 50), Vector2(150, 50), Vector2(150, 150), "
-"Vector2(50, 150)] 。\n"
+"print(polygon) #打å°å‡º [Vector2(50, 50), Vector2(150, 50), Vector2(150, "
+"150), Vector2(50, 150)] 。\n"
"[/codeblock]"
#: doc/classes/Geometry.xml:237
@@ -29835,9 +30501,12 @@ msgid ""
"case if the line extending the segment would intersect the circle, but the "
"segment does not)."
msgstr ""
+"给出2D线段([code]segment_from[/code],[code]segment_to[/code]),返回线段上"
+"与圆心为 [code]circle_position[/code] ã€åŠå¾„为 [code]circle_radius[/code] 圆"
+"的相交ä½ç½®ï¼ˆä»¥0到1之间的数字)。如果线段没有与圆相交,则返回-1(如果延伸线段"
+"的线段与圆相交,但线段没有相交,也是这ç§æƒ…况)。"
#: doc/classes/Geometry.xml:280
-#, fuzzy
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 "
@@ -29845,13 +30514,12 @@ msgid ""
"containing the point the intersection and the hull's normal. If no "
"intersecion is found, an the returned array is empty."
msgstr ""
-"给定一个通过数组[code] planes [/code]中的[Plane]定义的凸包,测试线段"
-"([code]from[/code],[code]to[/code])是å¦ä¸Žè¯¥åŒ…相交。如果找到相交点,则返回"
-"一个[PackedVector3Array],其中包å«ç›¸äº¤ç‚¹å’Œèˆ¹ä½“的法线。如果找ä¸åˆ°ç›¸äº¤ï¼Œåˆ™è¿”回"
-"的数组为空。"
+"给定一个通过数组 [code]planes[/code] 中的 [Plane]s 定义的凸é¢ä½“,测试线段"
+"([code]from[/code],[code]to[/code])是å¦ä¸Žè¯¥é¢ä½“相交。如果找到相交点,返回"
+"一个[PoolVector3Array],包å«ç›¸äº¤ç‚¹å’Œå‡¸é¢ä½“的法线。如果没有找到相交点,返回的"
+"数组为空。"
#: doc/classes/Geometry.xml:290
-#, fuzzy
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 "
@@ -29859,10 +30527,10 @@ msgid ""
"If an intersection takes place, the returned array contains the point of "
"intersection and the cylinder's normal at the point of intersection."
msgstr ""
-"检查线段([code]from[/code],[code]to[/code])是å¦ä¸Žé«˜åº¦[code]height[/code]çš„"
-"圆柱体相交,圆柱体以原点为中心,åŠå¾„为[code]radius[/code]。如果没有,返回一个"
-"空的[PackedVector3Array]。如果å‘生了相交,返回的数组包å«ç›¸äº¤ç‚¹å’Œåœ†æŸ±ä½“在相交"
-"点的法线。"
+"检查线段([code]from[/code],[code]to[/code])是å¦ä¸Žé«˜åº¦ [code]height[/code] "
+"的圆柱体相交,圆柱体以原点为中心,åŠå¾„为 [code]radius[/code]。如果没有,返回"
+"一个空的 [PackedVector3Array]。如果å‘生了相交,返回的数组包å«ç›¸äº¤ç‚¹å’Œåœ†æŸ±ä½“在"
+"相交点的法线。"
#: doc/classes/Geometry.xml:300
msgid ""
@@ -29876,7 +30544,6 @@ msgstr ""
"交,返回一个空的[Variant]。"
#: doc/classes/Geometry.xml:310
-#, fuzzy
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 "
@@ -29884,10 +30551,10 @@ msgid ""
"yes, returns a [PoolVector3Array] containing the point of intersection and "
"the sphere's normal at the point of intersection."
msgstr ""
-"检查线段([code]from[/code],[code]to[/code])是å¦ä¸Žä½äºŽ"
-"[code]sphere_position[/code]ã€åŠå¾„为[code]sphere_radius[/code]çš„çƒä½“相交。如"
-"果没有,返回一个空的[PackedVector3Array]。如果是,返回一个包å«äº¤ç‚¹å’Œäº¤ç‚¹å¤„çƒ"
-"体法线的 [PackedVector3Array]。"
+"检查线段([code]from[/code],[code]to[/code])是å¦ä¸Žçƒå¿ƒä¸º "
+"[code]sphere_position[/code]ã€åŠå¾„为 [code]sphere_radius[/code] çš„çƒä½“相交。"
+"如果没有,返回一个空的 [PackedVector3Array]。如果相交,返回一个包å«äº¤ç‚¹å’Œäº¤ç‚¹"
+"处çƒä½“法线的 [PackedVector3Array]。"
#: doc/classes/Geometry.xml:321
msgid ""
@@ -29901,7 +30568,6 @@ msgstr ""
"生相交,则返回一个空的[Variant]。"
#: doc/classes/Geometry.xml:328
-#, fuzzy
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 "
@@ -29911,14 +30577,13 @@ msgid ""
"triangles). If the triangulation did not succeed, an empty [PoolIntArray] is "
"returned."
msgstr ""
-"对由离散的[code]points[/code]集åˆæŒ‡å®šçš„区域进行三角化,使得没有一个点ä½äºŽä»»ä½•"
-"结果的三角形的圆周内。返回一个[PackedInt32Array],其中æ¯ä¸ªä¸‰è§’形由"
-"[code]points[/code]的三个连续的点索引组æˆï¼ˆå³è¿”回的数组将有[code]n * 3[/code]"
-"个元素,其中[code]n[/code]是找到的三角形的数é‡ï¼‰ã€‚如果三角化没有æˆåŠŸï¼Œå°†è¿”回"
-"一个空的[PackedInt32Array]。"
+"对由离散的 [code]point[/code] 点集åˆæŒ‡å®šçš„区域进行三角化,使得任何点都ä¸åœ¨ä»»"
+"何结果三角形的外接圆内。返回一个 [PoolIntArray],其中æ¯ä¸ªä¸‰è§’形由 "
+"[code]point[/code] 点的三个连续的点索引组æˆï¼ˆå³è¿”回的数组将有 [code]n * 3[/"
+"code] 元素,[code]n[/code] 是找到的三角形的数é‡ï¼‰ã€‚如果三角化没有æˆåŠŸï¼Œå°†è¿”回"
+"一个空的 [PoolIntArray]。"
#: doc/classes/Geometry.xml:335
-#, fuzzy
msgid ""
"Triangulates the polygon specified by the points in [code]polygon[/code]. "
"Returns a [PoolIntArray] where each triangle consists of three consecutive "
@@ -29927,10 +30592,10 @@ msgid ""
"triangles). If the triangulation did not succeed, an empty [PoolIntArray] is "
"returned."
msgstr ""
-"对[code]多边形polygon[/code]中的点指定的多边形进行三角化。返回一个"
-"[PackedInt32Array],其中æ¯ä¸ªä¸‰è§’形由[code]polygon[/code]中三个连续的点索引组"
-"æˆï¼ˆå³è¿”回的数组将有[code]n * 3[/code]个元素,[code]n[/code]是找到的三角形的"
-"æ•°é‡ï¼‰ã€‚如果三角化没有æˆåŠŸï¼Œå°†è¿”回一个空的[PackedInt32Array]。"
+"对多边形 [code]polygon[/code] 中的点指定的多边形进行三角化。返回一个 "
+"[PoolIntArray],其中æ¯ä¸ªä¸‰è§’形由 [code]polygon[/code] 中三个连续的点索引组æˆ"
+"(å³è¿”回的数组将有 [code]n * 3[/code] 个元素,[code]n[/code] 是找到的三角形的"
+"æ•°é‡ï¼‰ã€‚如果三角化没有æˆåŠŸï¼Œå°†è¿”回一个空的 [PoolIntArray]。"
#: doc/classes/Geometry.xml:341
msgid ""
@@ -30106,22 +30771,24 @@ msgid ""
"If [code]true[/code], this GeometryInstance will be used when baking lights "
"using a [GIProbe] or [BakedLightmap]."
msgstr ""
+"如果 [code]true[/code],则在使用 [GIProbe] 或 [BakedLightmap] 烘焙ç¯å…‰æ—¶å°†ä½¿"
+"用此 GeometryInstance。"
#: doc/classes/GeometryInstance.xml:74
msgid "The generated lightmap texture will have the original size."
-msgstr ""
+msgstr "生æˆçš„光照贴图纹ç†å°†å…·æœ‰åŽŸå§‹å¤§å°ã€‚"
#: doc/classes/GeometryInstance.xml:77
msgid "The generated lightmap texture will be twice as large, on each axis."
-msgstr ""
+msgstr "生æˆçš„光照贴图纹ç†å°†æ˜¯æ¯ä¸ªè½´ä¸Šçš„ 2 å€ã€‚"
#: doc/classes/GeometryInstance.xml:80
msgid "The generated lightmap texture will be 4 times as large, on each axis."
-msgstr ""
+msgstr "生æˆçš„光照贴图纹ç†å°†æ˜¯æ¯ä¸ªè½´ä¸Šçš„ 4 å€ã€‚"
#: doc/classes/GeometryInstance.xml:83
msgid "The generated lightmap texture will be 8 times as large, on each axis."
-msgstr ""
+msgstr "生æˆçš„光照贴图纹ç†å°†æ˜¯æ¯ä¸ªè½´ä¸Šçš„ 8 å€ã€‚"
#: doc/classes/GeometryInstance.xml:88
msgid "Will not cast any shadows."
@@ -30383,7 +31050,7 @@ msgid ""
msgstr ""
"该类是连接Godotå’ŒMonoè¿è¡Œæ—¶çš„æ¡¥æ¢ã€‚它暴露了一些低级别的æ“作,åªåœ¨æ”¯æŒMonoçš„"
"Godot构建中å¯ç”¨ã€‚\n"
-"å¦è§ [CSharpScript] 。"
+"å‚阅[CSharpScript] 。"
#: modules/mono/doc_classes/GodotSharp.xml:17
msgid "Attaches the current thread to the Mono runtime."
@@ -31213,11 +31880,10 @@ msgid "Vertical offset of the title text."
msgstr "标题文本的垂直å移é‡ã€‚"
#: doc/classes/GridContainer.xml:4
-#, fuzzy
msgid ""
"Grid container used to arrange Control-derived children in a grid like "
"layout."
-msgstr "网格容器(Grid container)用于在类似网格的布局中安排元素。"
+msgstr "网格容器,用于在类似网格的布局中排列Control派生的å­é¡¹ã€‚"
#: doc/classes/GridContainer.xml:7
#, fuzzy
@@ -31478,7 +32144,7 @@ msgstr "沟槽的长度。沟槽是从关键原点沿ç€å…³èŠ‚局部Yè½´æœå‘ [
#: doc/classes/HashingContext.xml:4
msgid "Context to compute cryptographic hashes over multiple iterations."
-msgstr "在多次迭代中计算加密散列的上下文。"
+msgstr "在多次迭代中计算加密哈希的上下文。"
#: doc/classes/HashingContext.xml:7
msgid ""
@@ -32120,7 +32786,6 @@ msgid "Reads one chunk from the response."
msgstr "从å“应中读å–一å—æ•°æ®ã€‚"
#: doc/classes/HTTPClient.xml:126
-#, fuzzy
msgid ""
"Sends a request to the connected host.\n"
"The URL parameter is usually just the part after the host, so for "
@@ -32146,8 +32811,12 @@ msgid ""
"data as a query string in the URL. See [method String.http_escape] for an "
"example."
msgstr ""
-"å‘连接的æœåŠ¡å™¨å‘é€è¯·æ±‚。URL å‚数仅为主机ååŽé¢çš„部分,å³è¯·æ±‚ [code]http://"
-"somehost.com/index.php[/code] 应该填写 [code]index.php[/code]。\n"
+"å‘连接的æœåŠ¡å™¨å‘é€è¯·æ±‚。\n"
+"URL å‚数仅为主机ååŽé¢çš„部分,å³è¯·æ±‚ [code]http://somehost.com/index.php[/"
+"code] 应该填写 [code]index.php[/code]ã€‚å‘ HTTP 代ç†æœåŠ¡å™¨å‘é€è¯·æ±‚时应为ç»å¯¹ "
+"URL。进行 [constant HTTPClient.METHOD_OPTIONS] 请求时,还å…许使用 [code]*[/"
+"code]。进行 [constant HTTPClient.METHOD_CONNECT] 请求时,应为身份组件([code]"
+"主机:端å£[/code])。\n"
"Headers å‚数是 HTTP 请求的报头。HTTP 方法å¯ä»¥æŸ¥çœ‹ [enum Method]。\n"
"如果è¦åˆ›å»ºå‘æœåŠ¡å™¨å‘é€æŸ¥è¯¢å­—符串的 POST 请求,应该这样åšï¼š\n"
"[codeblock]\n"
@@ -32157,7 +32826,11 @@ msgstr ""
"\"Content-Length: \" + str(query_string.length())]\n"
"var result = http_client.request(http_client.METHOD_POST, \"index.php\", "
"headers, query_string)\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]注æ„:[/b] [code]method[/code] 为 [constant HTTPClient.METHOD_GET] 时会忽"
+"ç•¥ [code]request_data[/code] å‚数。这是因为 GET 方法ä¸èƒ½åŒ…å«è¯·æ±‚æ•°æ®ã€‚作为å˜"
+"通,å¯ä»¥æŠŠè¯·æ±‚æ•°æ®é€šè¿‡ URL 的请求字符串传递。例å­è§ [method String."
+"http_escape]。"
#: doc/classes/HTTPClient.xml:146
#, fuzzy
@@ -33670,18 +34343,23 @@ msgid ""
msgstr "OpenGL 纹ç†æ ¼å¼ï¼Œå…·æœ‰ä¸¤ä¸ªå€¼ï¼Œäº®åº¦å’Œ alpha,æ¯ä¸ªå€¼ä»¥ 8 ä½å­˜å‚¨ã€‚"
#: doc/classes/Image.xml:436
+#, fuzzy
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
-msgstr "OpenGL纹ç†æ ¼å¼[code]RED[/code],具有å•ä¸€åˆ†é‡ï¼Œä½æ·±ä¸º8。"
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
+msgstr ""
+"OpenGL 纹ç†æ ¼å¼ [code]RGB[/code] 具有三个部分,æ¯ä¸ªåˆ†é‡éƒ¨åˆ†çš„ä½æ·±åº¦ä¸º 8。\n"
+"[b]注æ„:[/b]创建 [ImageTexture] 时,会执行sRGB到线性色彩空间的转æ¢ã€‚"
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr "OpenGL 纹ç†æ ¼å¼ [code]RG[/code],具有两个部分,æ¯ä¸ªéƒ¨åˆ†çš„ä½æ·±åº¦ä¸º 8。"
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -33691,7 +34369,7 @@ msgstr ""
"OpenGL 纹ç†æ ¼å¼ [code]RGB[/code] 具有三个部分,æ¯ä¸ªåˆ†é‡éƒ¨åˆ†çš„ä½æ·±åº¦ä¸º 8。\n"
"[b]注æ„:[/b]创建 [ImageTexture] 时,会执行sRGB到线性色彩空间的转æ¢ã€‚"
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -33701,27 +34379,27 @@ msgstr ""
"OpenGL 纹ç†æ ¼å¼ [code]RGBA[/code] 有四个部分,æ¯ä¸ªåˆ†é‡éƒ¨åˆ†çš„ä½æ·±åº¦ä¸º 8。\n"
"[b]注æ„:[/b]创建 [ImageTexture] 时,会执行sRGB到线性色彩空间的转æ¢ã€‚"
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
"OpenGL 纹ç†æ ¼å¼ [code]RGBA[/code] 有四个部分,æ¯ä¸ªåˆ†é‡éƒ¨åˆ†çš„ä½æ·±åº¦ä¸º 4。"
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
#, fuzzy
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr "OpenGL 纹ç†æ ¼å¼ [code]RG[/code],具有两个部分,æ¯ä¸ªéƒ¨åˆ†çš„ä½æ·±åº¦ä¸º 8。"
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr "OpenGL 纹ç†æ ¼å¼ [code]GL_R32F[/code],其中有一个分é‡ï¼Œæ˜¯32 ä½æµ®ç‚¹å€¼ã€‚"
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
@@ -33729,7 +34407,7 @@ msgstr ""
"OpenGL 纹ç†æ ¼å¼ [code]GL_RG32F[/code] 这里有两个部分,æ¯ä¸ªéƒ¨åˆ†æ˜¯ä¸€ä¸ª 32 ä½æµ®"
"点值。"
-#: doc/classes/Image.xml:462
+#: doc/classes/Image.xml:463
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
@@ -33737,7 +34415,7 @@ msgstr ""
"OpenGL纹ç†æ ¼å¼[code]GL_RGB32F[/code],其中有三个部分,æ¯ä¸ªéƒ¨åˆ†éƒ½æ˜¯32ä½æµ®ç‚¹"
"值。"
-#: doc/classes/Image.xml:465
+#: doc/classes/Image.xml:466
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
@@ -33745,7 +34423,7 @@ msgstr ""
"OpenGL纹ç†æ ¼å¼[code]GL_RGBA32F[/code],其中有四个部分,æ¯ä¸ªéƒ¨åˆ†éƒ½æ˜¯32ä½æµ®ç‚¹"
"值。"
-#: doc/classes/Image.xml:468
+#: doc/classes/Image.xml:469
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
@@ -33753,7 +34431,7 @@ msgstr ""
"OpenGL纹ç†æ ¼å¼[code]GL_R32F[/code],其中有一个分é‡ï¼Œå³16ä½ \"åŠç²¾åº¦ \"浮点"
"值。"
-#: doc/classes/Image.xml:471
+#: doc/classes/Image.xml:472
msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
@@ -33761,7 +34439,7 @@ msgstr ""
"OpenGL纹ç†æ ¼å¼[code]GL_RG32F[/code],其中有两个部分,æ¯ä¸ªéƒ¨åˆ†éƒ½æ˜¯16ä½ \"åŠç²¾"
"度 \"浮点值。"
-#: doc/classes/Image.xml:474
+#: doc/classes/Image.xml:475
msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
@@ -33769,7 +34447,7 @@ msgstr ""
"OpenGL纹ç†æ ¼å¼[code]GL_RGB32F[/code],其中有三个部分,æ¯ä¸ªéƒ¨åˆ†éƒ½æ˜¯16ä½ \"åŠç²¾"
"度 \"浮点值。"
-#: doc/classes/Image.xml:477
+#: doc/classes/Image.xml:478
msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
@@ -33777,7 +34455,7 @@ msgstr ""
"OpenGL纹ç†æ ¼å¼[code]GL_RGBA32F[/code],其中有四个部分,æ¯ä¸ªéƒ½æ˜¯16ä½\"åŠç²¾åº¦ "
"\"浮点值。"
-#: doc/classes/Image.xml:480
+#: doc/classes/Image.xml:481
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."
@@ -33785,7 +34463,7 @@ msgstr ""
"一ç§ç‰¹æ®Šçš„OpenGL纹ç†æ ¼å¼ï¼Œå…¶ä¸­ä¸‰ä¸ªé¢œè‰²æˆåˆ†çš„精度为9ä½ï¼Œæ‰€æœ‰ä¸‰ä¸ªæˆåˆ†å…±äº«ä¸€ä¸ª5"
"比特ä½çš„指数。"
-#: doc/classes/Image.xml:483
+#: doc/classes/Image.xml:484
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 "
@@ -33798,7 +34476,7 @@ msgstr ""
"使用å—压缩1,并且是S3TC的最å°å˜åŒ–,ä»…æä¾›1ä½çš„alphaå’Œé¢œè‰²æ•°æ® é¢„ä¹˜ä»¥alpha.\n"
"[b]注æ„:[/b]创建ImageTextureæ—¶,将执行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -33812,7 +34490,7 @@ msgstr ""
"ä¸é€æ˜ŽåŒºåŸŸä¹‹é—´çš„清晰的alpha过渡.\n"
"[b]注æ„:[/b]创建ImageTextureæ—¶,将执行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -33828,7 +34506,7 @@ msgstr ""
"产生更好的结果.\n"
"[b]注æ„:[/b]创建ImageTextureæ—¶,将执行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -33839,7 +34517,7 @@ msgstr ""
"红绿贴图压缩[/url]的贴图格å¼,使用与DXT5用于alpha通é“相åŒçš„压缩算法对红色通é“"
"æ•°æ®è¿›è¡Œå½’一化."
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -33849,7 +34527,7 @@ msgstr ""
"使用 [url=https://www.khronos.org/opengl/wiki/Red_Green_Texture_Compression]"
"红绿贴图压缩[/url]的贴图格å¼,使用与DXT5用于alpha的压缩算法相åŒçš„红绿数æ®é€šé“."
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -33861,7 +34539,7 @@ msgstr ""
"缩[/url] 和无符å·å½’一化RGBA分é‡çš„贴图格å¼.\n"
"[b]注æ„:[/b]创建[ImageTexture]æ—¶,将执行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
@@ -33870,7 +34548,7 @@ msgstr ""
"使用 [url=https://www.khronos.org/opengl/wiki/BPTC_Texture_Compression]BPTC[/"
"url] 压缩和有符å·æµ®ç‚¹RGB分é‡çš„贴图格å¼."
-#: doc/classes/Image.xml:508
+#: doc/classes/Image.xml:509
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
@@ -33879,7 +34557,7 @@ msgstr ""
"使用[url=https://www.khronos.org/opengl/wiki/BPTC_Texture_Compression]BPTC[/"
"url] 压缩和无符å·æµ®ç‚¹RGB分é‡çš„贴图格å¼."
-#: doc/classes/Image.xml:511
+#: doc/classes/Image.xml:512
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."
@@ -33891,14 +34569,14 @@ msgstr ""
"在 [url=https://en.wikipedia.org/wiki/PVRTC]这里[/url]找到.\n"
"[b]注æ„:[/b]在创建ImageTextureæ—¶,会进行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
"与 [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url]相åŒ,但带有alpha组件."
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
msgid ""
"Similar to [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with 4-"
"bit color depth and no alpha."
@@ -33906,14 +34584,14 @@ msgstr ""
"与 [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url]相似,但具有4ä½è‰²æ·±ä¸”"
"没有Alpha通é“."
-#: doc/classes/Image.xml:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
"与 [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url]相åŒ,但带有alpha组件."
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -33924,7 +34602,7 @@ msgstr ""
"纹ç†åŽ‹ç¼©æ ¼å¼1[/url],åˆç§° \"ETC1\",是OpenGL ES图形标准的一部分.è¿™ç§æ ¼å¼ä¸èƒ½å­˜"
"储alpha通é“."
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -33935,7 +34613,7 @@ msgstr ""
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson纹ç†åŽ‹ç¼©æ ¼å¼2[/url] "
"([code]R11_EACvariant[/code]),它æ供一个无符å·æ•°æ®é€šé“."
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -33946,7 +34624,7 @@ msgstr ""
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson纹ç†åŽ‹ç¼©æ ¼å¼2[/url]"
"([code]SIGNED_R11_EACvariant[/code]),它æ供一个通é“的有符å·æ•°æ®."
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -33957,7 +34635,7 @@ msgstr ""
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson纹ç†åŽ‹ç¼©æ ¼å¼"
"2([code]RG11_EAC[/code] variant),它æ供一个无符å·æ•°æ®é€šé“."
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -33968,7 +34646,7 @@ msgstr ""
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson纹ç†åŽ‹ç¼©æ ¼å¼2[/url]"
"([code]SIGNED_RG11_EAC [/code] å˜ä½“),它æ供两个通é“的有符å·æ•°æ®ã€‚"
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -33982,7 +34660,7 @@ msgstr ""
"([code]RGB8[/code] å˜ä½“),它是ETC1çš„åŽç»­ç‰ˆæœ¬,å¯åŽ‹ç¼©RGB888æ•°æ®.\n"
"[b]注æ„:[/b]创建[ImageTexture]æ—¶,会进行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -33996,7 +34674,7 @@ msgstr ""
"([code]RGBA8[/code] å˜ä½“),它å¯ä»¥åŽ‹ç¼©RGBA8888æ•°æ®,完全支æŒalpha.\n"
"[b]注æ„:[/b]在创建[ImageTexture]æ—¶,会进行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -34012,17 +34690,17 @@ msgstr ""
"明或完全ä¸é€æ˜Ž.\n"
"[b]注æ„:[/b] 创建[ImageTexture]æ—¶,会进行sRGB到线性色彩空间的转æ¢."
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr "表示[Format]枚举的大å°."
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr "执行最近邻æ’值.如果调整图åƒå¤§å°,它将被åƒç´ åŒ–."
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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 "
@@ -34031,7 +34709,7 @@ msgstr ""
"执行åŒçº¿æ€§æ’值.如果调整图åƒå¤§å°,则图åƒå°†æ¨¡ç³Š.此模å¼æ¯”[INTERPOLATE_CUBIC]æ›´å¿«,"
"但质é‡è¾ƒä½Ž."
-#: doc/classes/Image.xml:560
+#: doc/classes/Image.xml:561
msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
@@ -34040,7 +34718,7 @@ msgstr ""
"执行三次æ’值.如果调整图åƒå¤§å°,则图åƒå°†æ¨¡ç³Š.与[INTERPOLATE_BILINEAR]相比,此模"
"å¼é€šå¸¸ä¼šäº§ç”Ÿæ›´å¥½çš„结果,但代价是速度较慢."
-#: doc/classes/Image.xml:563
+#: doc/classes/Image.xml:564
#, fuzzy
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
@@ -34063,7 +34741,7 @@ msgstr ""
"å¦ä¸€æ–¹é¢,如果图åƒå·²ç»æœ‰äº†mipmaps,就会使用它们,并为生æˆçš„图åƒç”Ÿæˆä¸€ç»„æ–°çš„"
"mipmaps."
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscalng images."
@@ -34071,58 +34749,57 @@ msgstr ""
"执行Lanczosæ’值.这是最慢的图åƒè°ƒæ•´å¤§å°æ¨¡å¼,但通常å¯ä»¥æ供最佳效果,尤其是在缩"
"å°å›¾åƒæ—¶."
-#: doc/classes/Image.xml:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr "图片没有Alpha通é“."
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr "图åƒå°†Alpha存储在å•ä¸ªbit中."
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr "图åƒä½¿ç”¨é˜¿å°”法。"
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr "使用S3TC压缩。"
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr "使用PVRTC2压缩。"
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr "使用PVRTC4压缩。"
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr "使用ETC压缩。"
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr "使用 ETC2 压缩。"
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr "原始纹ç†ï¼ˆåœ¨åŽ‹ç¼©å‰ï¼‰æ˜¯å¸¸è§„纹ç†ã€‚所有纹ç†çš„默认值。"
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr "原始纹ç†ï¼ˆåœ¨åŽ‹ç¼©å‰ï¼‰ä½¿ç”¨ sRGB 空间。"
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
msgstr "原始纹ç†ï¼ˆåœ¨åŽ‹ç¼©å‰ï¼‰æ˜¯æ³•çº¿çº¹ç†ï¼ˆä¾‹å¦‚,å¯ä»¥åŽ‹ç¼©ä¸ºä¸¤ä¸ªé€šé“)。"
#: doc/classes/ImageTexture.xml:4
-#, fuzzy
msgid "A [Texture] based on an [Image]."
-msgstr "基于 [Image] 的 [Texture2D]。"
+msgstr "基于 [Image]图片的 [Texture2D]纹ç†ã€‚"
#: doc/classes/ImageTexture.xml:7
msgid ""
@@ -34165,14 +34842,49 @@ msgid ""
"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
"hardware limitations."
msgstr ""
+"基于图片的纹ç†ï¼Œè¦æ˜¾ç¤ºä¸€ä¸ªå›¾ç‰‡ï¼Œå¿…须使用 [method create_from_image] 方法æ¥åˆ›"
+"建一个 [ImageTexture] 图片纹ç†æ•°æ®:\n"
+"[codeblock]\n"
+"var texture = ImageTexture.new()\n"
+"var image = Image.new()\n"
+"image.load(\"res://icon.png\")\n"
+"texture.create_from_image(image)\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"通过这ç§æ–¹å¼ï¼Œå¯ä»¥åœ¨è¿è¡Œæ—¶é€šè¿‡ä»Žç¼–辑器内部和外部加载图åƒæ¥åˆ›å»ºçº¹ç†ã€‚\n"
+"[b]警告:[/b] 最好用 [method @GDScript.load] 加载导入的纹ç†ï¼Œè€Œä¸æ˜¯ä½¿ç”¨ "
+"[method Image.load] 从文件系统中动æ€åŠ è½½å®ƒä»¬ï¼Œå› ä¸ºå®ƒå¯èƒ½æ— æ³•åœ¨å¯¼å‡ºçš„项目中工"
+"作:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"$Sprite.texture = texture\n"
+"[/codeblock]\n"
+"这是因为图åƒå¿…须首先作为 [StreamTexture] 导入æ‰èƒ½ä½¿ç”¨ [method @GDScript."
+"load] 加载。如果您ä»ç„¶æƒ³åƒä»»ä½•å…¶ä»– [Resource] 一样加载图åƒæ–‡ä»¶ï¼Œè¯·å°†å…¶ä½œä¸º "
+"[Image] 资æºå¯¼å…¥ï¼Œç„¶åŽä½¿ç”¨ [method @GDScript.load] 方法正常加载它。\n"
+"但请注æ„,ä»ç„¶å¯ä»¥ä½¿ç”¨ [method Texture.get_data] 方法从导入的纹ç†ä¸­æ£€ç´¢å›¾åƒæ•°"
+"æ®ï¼Œè¯¥æ–¹æ³•è¿”回数æ®çš„副本:\n"
+"[codeblock]\n"
+"var texture = load(\"res://icon.png\")\n"
+"var image : Image = texture.get_data()\n"
+"[/codeblock]\n"
+"[ImageTexture] ä¸æ˜¯ç›´æŽ¥åœ¨ç¼–辑器界é¢ä¸­æ“作的,主è¦ç”¨äºŽé€šè¿‡ä»£ç åœ¨å±å¹•ä¸ŠåŠ¨æ€æ¸²æŸ“"
+"图åƒã€‚如果您需è¦åœ¨ç¼–辑器中按程åºç”Ÿæˆå›¾åƒï¼Œè¯·è€ƒè™‘将图åƒä¿å­˜å’Œå¯¼å…¥ä¸ºè‡ªå®šä¹‰çº¹ç†"
+"资æºï¼Œä»¥å®žçŽ°æ–°çš„ [EditorImportPlugin]。\n"
+"[b]注æ„:[/b]由于图形硬件é™åˆ¶ï¼Œæœ€å¤§çº¹ç†å°ºå¯¸ä¸º16384×16384åƒç´ ã€‚"
#: doc/classes/ImageTexture.xml:41
+#, fuzzy
msgid ""
"Create a new [ImageTexture] with [code]width[/code] and [code]height[/"
"code].\n"
"[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] "
"is any combination of [enum Texture.Flags]."
msgstr ""
+"使用一个[code]width[/code] 宽度和 [code]height[/code]高度创建一个新的 "
+"[ImageTexture]图片纹ç†ã€‚\n"
+"[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] "
+"is any combination of [enum Texture.Flags]."
#: doc/classes/ImageTexture.xml:50
msgid ""
@@ -34192,6 +34904,9 @@ msgid ""
"[b]Note:[/b] This method is deprecated and will be removed in Godot 4.0, use "
"[method Image.load] and [method create_from_image] instead."
msgstr ""
+"从文件路径加载图åƒ,并从中创建一个纹ç†å›¾ç‰‡ã€‚\n"
+"[b]注释:[/b]:该方法已被废弃,并将在Godot 4.0中被删除,请建议使用Image.load()和"
+"create_from_image()代替。"
#: doc/classes/ImageTexture.xml:71
msgid ""
@@ -34222,17 +34937,18 @@ msgstr "按钮被按下的状æ€ã€‚"
#: doc/classes/ImageTexture.xml:95
msgid "[Image] data is stored raw and unaltered."
-msgstr ""
+msgstr "[Image] 图åƒçš„原始储存数æ®ã€‚"
#: doc/classes/ImageTexture.xml:98
msgid ""
"[Image] data is compressed with a lossy algorithm. You can set the storage "
"quality with [member lossy_quality]."
msgstr ""
+"[图åƒ]æ•°æ®æ˜¯ç”¨æœ‰æŸç®—法压缩的。 ä½ å¯ä»¥ç”¨[member lossy_quality]设置存储质é‡ã€‚"
#: doc/classes/ImageTexture.xml:101
msgid "[Image] data is compressed with a lossless algorithm."
-msgstr ""
+msgstr "[图åƒ]æ•°æ®æ˜¯ç”¨æ— æŸç®—法压缩的。"
#: doc/classes/ImmediateGeometry.xml:4
msgid "Draws simple geometry from code."
@@ -34360,6 +35076,17 @@ msgstr "在映射数æ®åº“中添加新的映射æ¡ç›®ï¼ˆSDL2 æ ¼å¼ï¼‰ã€‚å¯é€‰æ
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -34371,7 +35098,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -34381,7 +35108,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
#, fuzzy
msgid ""
"Returns a value between 0 and 1 representing the intensity of the given "
@@ -34397,7 +35124,7 @@ msgstr ""
"æ†æˆ–L2ã€R2触å‘器)离盲区(dead zone)越远,数值就越接近1。如果动作被映射到一个"
"没有轴作为控件的键盘,返回数值将是0或1。"
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -34405,17 +35132,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr "返回一个 [Array],包å«å½“å‰æ‰€æœ‰è¿žæŽ¥æ‰‹æŸ„的设备 ID。"
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr "返回当å‰æŒ‡å®šçš„光标形状(å‚阅 [enum CursorShape])。"
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -34425,7 +35152,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -34434,28 +35161,28 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
#, fuzzy
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr "返回给定索引处的手柄(joypad)轴的当å‰å€¼ï¼ˆå‚阅 [enum JoyAxisList])。"
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr "返回æ供的轴å称的索引。"
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr "接收一个[enum JoyAxisList]轴,并以字符串形å¼è¿”回其对应的å称。"
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr "返回所æ供的按钮å称的索引。"
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
#, fuzzy
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
@@ -34464,7 +35191,7 @@ msgstr ""
"从[enum JoyButtonList]中接收一个游æˆæ‰‹æŸ„(gamepad)按钮,并以字符串形å¼è¿”回其对"
"应的å称。"
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
@@ -34472,21 +35199,21 @@ msgstr ""
"在使用游æˆæ‰‹æŸ„é‡æ˜ å°„çš„å¹³å°ä¸Šè¿”回一个SDL2兼容的设备GUID。å¦åˆ™è¿”回"
"[code]\"Default Gamepad\"[/code]默认游æˆæ‰‹æŸ„。"
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr "返回指定设备索引处的手柄å称。"
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr "以秒为å•ä½è¿”回当å‰æŒ¯åŠ¨æ•ˆæžœçš„æŒç»­æ—¶é—´ã€‚"
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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 "返回手柄振动的强度:x 是弱马达的强度,y 是强马达的强度。"
-#: doc/classes/Input.xml:168
+#: doc/classes/Input.xml:175
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 "
@@ -34496,7 +35223,7 @@ msgstr ""
"返回光标最åŽä¸€æ¬¡è¢«ç§»åŠ¨æ—¶çš„鼠标速度,并且这个速度ä¿æŒä¸å˜ï¼Œç›´åˆ°é¼ æ ‡å‘生了移动"
"的下一帧。这æ„味ç€ï¼Œå³ä½¿é¼ æ ‡æ²¡æœ‰ç§»åŠ¨ï¼Œè¿™ä¸ªå‡½æ•°ä»ç„¶ä¼šè¿”回最åŽä¸€æ¬¡è¿åŠ¨çš„值。"
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -34505,7 +35232,7 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
msgid ""
"Returns mouse buttons as a bitmask. If multiple mouse buttons are pressed at "
"the same time, the bits are added together."
@@ -34513,11 +35240,11 @@ msgstr ""
"将鼠标按键作为一个比特掩ç è¿”回。如果多个鼠标按钮åŒæ—¶è¢«æŒ‰ä¸‹ï¼Œè¿™äº›ä½ä¼šè¢«åŠ åœ¨ä¸€"
"起。"
-#: doc/classes/Input.xml:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr "返回鼠标模å¼ã€‚有关更多信æ¯ï¼Œè¯·å‚阅常é‡ã€‚"
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -34530,7 +35257,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
#, fuzzy
msgid ""
"Returns [code]true[/code] when the user starts pressing the action event, "
@@ -34547,7 +35274,7 @@ msgstr ""
"这对于在按下æŸä¸ªåŠ¨ä½œæ—¶åªéœ€è¦è¿è¡Œä¸€æ¬¡ï¼Œè€Œä¸æ˜¯åœ¨æŒ‰ä¸‹æ—¶çš„æ¯ä¸€å¸§ä¸­è¿è¡Œçš„代ç å¾ˆæœ‰"
"用。"
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
#, fuzzy
msgid ""
"Returns [code]true[/code] when the user stops pressing the action event, "
@@ -34562,7 +35289,7 @@ msgstr ""
"这对于在按下æŸä¸ªåŠ¨ä½œæ—¶åªéœ€è¦è¿è¡Œä¸€æ¬¡ï¼Œè€Œä¸æ˜¯åœ¨æŒ‰ä¸‹æ—¶çš„æ¯ä¸€å¸§ä¸­è¿è¡Œçš„代ç å¾ˆæœ‰"
"用。"
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the action event. Note that if "
@@ -34577,14 +35304,14 @@ msgstr ""
"钮,并且按下了多个按钮,那么å³ä½¿ä»ç„¶æŒ‰ä¸‹åˆ†é…给该动作的æŸä¸ªå…¶ä»–按钮,释放一个按"
"钮也将释放该动作。"
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr "如果按下æ“纵æ†æŒ‰é’®ï¼Œåˆ™è¿”回[code]true[/code](请å‚阅[JoystickList])。"
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
#, fuzzy
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
@@ -34596,7 +35323,7 @@ msgstr ""
"JoystickList中的定义设置所有按钮和轴索引。未知的游æˆæ‰‹æŸ„ä¸å¸Œæœ›ä¸Žè¿™äº›å¸¸é‡åŒ¹"
"é…,但是您ä»ç„¶å¯ä»¥ä»Žä¸­æ£€ç´¢äº‹ä»¶ã€‚"
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
#, fuzzy
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
@@ -34605,13 +35332,13 @@ msgstr ""
"如果你按当å‰é”®ç›˜å¸ƒå±€ä¸­çš„键,则返回 [code]true[/code]。您å¯ä»¥ä¼ å…¥ [enum "
"KeyList] 常é‡å‚数。"
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr "如果您按下由[ButtonList]指定的鼠标按键,则返回[code]true[/code]。"
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -34623,7 +35350,7 @@ msgstr ""
"这是内部使用的,ä¸å¿…从用户脚本中调用。有关内部触å‘çš„ä¿¡å·,请å‚阅"
"[joy_connection_changed]。"
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -34645,12 +35372,21 @@ msgstr ""
"Input.parse_input_event(a)\n"
"[/codeblock]"
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr "从内部数æ®åº“中删除与给定GUID匹é…的所有映射."
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -34674,7 +35410,7 @@ msgstr ""
"[b]注æ„:[/b]仅支æŒä»¥[b]æ— æŸ[/b],[b]有æŸ[/b]或[b]未压缩[/b]压缩模å¼å¯¼å…¥çš„图"
"åƒã€‚[b]Video RAM[/b]压缩模å¼ä¸èƒ½ç”¨äºŽè‡ªå®šä¹‰å…‰æ ‡ã€‚"
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -34688,11 +35424,38 @@ msgstr ""
"mouse_default_cursor_shape]。\n"
"[b]注æ„:[/b]这个方法生æˆä¸€ä¸ª[InputEventMouseMotion]以立å³æ›´æ–°æ¸¸æ ‡ã€‚"
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr "设置鼠标模å¼ã€‚有关更多信æ¯ï¼Œè¯·å‚阅常é‡ã€‚"
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -34712,7 +35475,7 @@ msgstr ""
"更精确åŠæ›´çµæ•çš„输入。在需è¦è‡ªç”±ç»˜åˆ¶çº¿æ¡çš„应用中,一般应用在用户绘制线æ¡æ—¶ç¦"
"用输入累加,以获得紧跟实际输入的结果。"
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -34732,11 +35495,11 @@ msgstr ""
"[b]注æ„:[/b] 并éžæ‰€æœ‰ç¡¬ä»¶éƒ½å…¼å®¹é•¿æ•ˆæžœæŒç»­æ—¶é—´ï¼›å¦‚果必须播放超过几秒钟的效"
"果,建议é‡æ–°å¯åŠ¨æ•ˆæžœã€‚"
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr "åœæ­¢æ¸¸æˆæ‰‹æŸ„的振动。"
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
#, fuzzy
msgid ""
"Vibrate Android and iOS devices.\n"
@@ -34746,23 +35509,23 @@ msgstr ""
"振动Android和iOS设备。\n"
"[b]注æ„:[/b]在导出设置时,它需è¦Androidçš„VIBRATEæƒé™ï¼ŒiOSä¸æ”¯æŒæŒç»­æ—¶é—´ã€‚"
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr "将鼠标å标设置为指定的å‘é‡ã€‚"
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr "连接或断开游æˆæ‰‹æŸ„设备时触å‘。"
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr "如果鼠标光标处于éšè—状æ€ï¼Œåˆ™ä½¿å…¶å¯è§ã€‚"
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr "如果鼠标光标是å¯è§çš„,则使其éšè—。"
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -34770,33 +35533,33 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr "使鼠标光标å¯è§ï¼Œå¹¶å°†å…¶é™åˆ¶åœ¨æ¸¸æˆçª—å£ä¸­ã€‚"
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr "箭头光标。标准,默认指å‘光标。"
-#: doc/classes/Input.xml:390
+#: 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 "Iå½¢(I-beam)光标。通常用在点击文本框åŽæ˜¾ç¤ºçš„ä½ç½®ä¸Šã€‚"
-#: doc/classes/Input.xml:393
+#: 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:396
+#: 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:399
+#: 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 "
@@ -34805,7 +35568,7 @@ msgstr ""
"等待型光标。表示应用程åºæ­£å¿™äºŽæ‰§è¡Œä¸€é¡¹æ“作。这ç§å…‰æ ‡å½¢çŠ¶è¡¨ç¤ºåº”用程åºåœ¨æ“作过"
"程中ä»ç„¶å¯ä»¥ä½¿ç”¨ã€‚"
-#: doc/classes/Input.xml:402
+#: 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 "
@@ -34814,17 +35577,17 @@ msgstr ""
"忙碌的光标。表示应用程åºæ­£å¿™äºŽæ‰§è¡Œæ“作。此光标形状表示应用程åºåœ¨æ“作过程中ä¸"
"å¯ç”¨ï¼ˆä¾‹å¦‚,æŸäº›ä¸œè¥¿é˜»å¡žäº†å…¶ä¸»çº¿ç¨‹ï¼‰ã€‚"
-#: doc/classes/Input.xml:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr "拖动光标。通常在拖动东西时显示。"
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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 "
@@ -34833,7 +35596,7 @@ msgstr ""
"ç¦æ­¢çš„光标。表示当å‰æ“作是被ç¦æ­¢çš„(例如,拖动东西时)或æŸä¸ªä½ç½®çš„控件被ç¦"
"用。"
-#: doc/classes/Input.xml:414
+#: 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."
@@ -34841,7 +35604,7 @@ msgstr ""
"垂直调整大å°çš„光标。一个åŒå¤´çš„垂直箭头。它告诉用户他们å¯ä»¥åž‚直地调整窗å£æˆ–é¢"
"æ¿çš„大å°ã€‚"
-#: doc/classes/Input.xml:417
+#: 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."
@@ -34849,7 +35612,7 @@ msgstr ""
"水平调整尺寸的光标。一个åŒå¤´çš„水平箭头。它告诉用户他们å¯ä»¥æ°´å¹³è°ƒæ•´çª—å£æˆ–é¢æ¿"
"的大å°ã€‚"
-#: doc/classes/Input.xml:420
+#: 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 "
@@ -34858,7 +35621,7 @@ msgstr ""
"窗å£è°ƒæ•´å¤§å°çš„光标。该光标是一个åŒå¤´ç®­å¤´ï¼Œä»Žå·¦ä¸‹æ–¹åˆ°å³ä¸Šæ–¹ã€‚它告诉用户他们å¯"
"以在水平和垂直方å‘上调整窗å£æˆ–é¢æ¿çš„大å°ã€‚"
-#: doc/classes/Input.xml:423
+#: 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 "
@@ -34869,23 +35632,23 @@ msgstr ""
"CURSOR_BDIAGSIZE]相å。它告诉用户他们å¯ä»¥åœ¨æ°´å¹³å’Œåž‚ç›´æ–¹å‘上调整窗å£æˆ–é¢æ¿çš„大"
"å°ã€‚"
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr "移动光标。表示那些东西å¯ä»¥ç§»åŠ¨ã€‚"
-#: doc/classes/Input.xml:429
+#: doc/classes/Input.xml:468
msgid ""
"Vertical split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_VSIZE]."
msgstr "垂直拆分鼠标光标。在Windows上,它与[CURSOR_VSIZE]相åŒã€‚"
-#: doc/classes/Input.xml:432
+#: doc/classes/Input.xml:471
msgid ""
"Horizontal split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_HSIZE]."
msgstr "水平分割的鼠标光标。在Windows上,它与[constant CURSOR_HSIZE]相åŒã€‚"
-#: doc/classes/Input.xml:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr "帮助光标。通常是一个问å·ã€‚"
@@ -36203,9 +36966,9 @@ msgid ""
"[constant ICON_MODE_TOP]. To make the text wrap, [member fixed_column_width] "
"should be greater than zero."
msgstr ""
-"æ¯ä¸ªé¡¹ç›®ä¸­å…许的最大文本行数。å³ä½¿æ²¡æœ‰è¶³å¤Ÿçš„文本行数æ¥æ˜¾ç¤ºï¼Œä¹Ÿä¼šä¿ç•™ç©ºé—´ã€‚\n"
-"[b]注æ„:[/b] 这个属性åªæœ‰åœ¨[member icon_mode]是[constant ICON_MODE_TOP]æ—¶æ‰"
-"会生效。è¦ä½¿æ–‡æœ¬åŒ…装(wrap)æ¢è¡Œï¼Œ[member fixed_column_width]应大于零。"
+"æ¯ä¸ªå­é¡¹ä¸­å…许的最大文本行数。å³ä½¿æ²¡æœ‰è¶³å¤Ÿçš„文本行数æ¥æ˜¾ç¤ºï¼Œä¹Ÿä¼šä¿ç•™ç©ºé—´ã€‚\n"
+"[b]注æ„:[/b] 这个属性åªæœ‰åœ¨ [member icon_mode] 是 [constant ICON_MODE_TOP] "
+"æ—¶æ‰ä¼šç”Ÿæ•ˆã€‚è¦ä½¿æ–‡æœ¬è‡ªåŠ¨æ¢è¡Œï¼Œ[member fixed_column_width]应大于零。"
#: doc/classes/ItemList.xml:346
msgid ""
@@ -37740,7 +38503,7 @@ msgid ""
"shadowing (\"shadow acne\"), while too large a value causes shadows to "
"separate from casters (\"peter-panning\"). Adjust as needed."
msgstr ""
-"用于调整阴影外观。值太å°ä¼šå¯¼è‡´è‡ªé˜´å½±ï¼ˆâ€œé˜´å½±æš—ç–®â€ï¼‰ï¼Œè€Œå€¼å¤ªå¤§ä¼šå¯¼è‡´é˜´å½±ä¸Žä¹‹åˆ†"
+"用于调整阴影表现。值太å°ä¼šå¯¼è‡´è‡ªé˜´å½±ï¼ˆâ€œé˜´å½±æš—ç–®â€ï¼‰ï¼Œè€Œå€¼å¤ªå¤§ä¼šå¯¼è‡´é˜´å½±ä¸Žä¹‹åˆ†"
"离(“彼得平移â€ï¼‰ã€‚æ ¹æ®éœ€è¦è¿›è¡Œè°ƒæ•´ã€‚"
#: doc/classes/Light.xml:62
@@ -38728,14 +39491,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr "[LinkButton]默认的字体颜色[Color]。"
#: doc/classes/LinkButton.xml:46
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:49
msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr "当[LinkButton]被悬åœæ—¶ä½¿ç”¨çš„文本颜色[Color]。"
-#: doc/classes/LinkButton.xml:49
+#: doc/classes/LinkButton.xml:52
msgid "Text [Color] used when the [LinkButton] is being pressed."
msgstr "当[LinkButton]被按下时使用的文本颜色[Color]。"
-#: doc/classes/LinkButton.xml:52
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr "文本基线和下划线之间的垂直空间。"
@@ -39390,26 +40160,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr "[MenuButton]被ç¦ç”¨æ—¶çš„字体[Color]颜色。"
#: doc/classes/MenuButton.xml:64
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:67
msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr "当鼠标在[MenuButton]上徘徊时使用的字体[Color]颜色。"
-#: doc/classes/MenuButton.xml:67
+#: doc/classes/MenuButton.xml:70
msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr "当[MenuButton]被按下时使用的字体[Color]颜色。"
-#: doc/classes/MenuButton.xml:70
+#: doc/classes/MenuButton.xml:73
msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr "当鼠标在[MenuButton]上徘徊时使用的[StyleBox]æ ·å¼ç›’。"
-#: doc/classes/MenuButton.xml:73
+#: doc/classes/MenuButton.xml:76
msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr "[MenuButton]的文字和图标之间的水平间隙。"
-#: doc/classes/MenuButton.xml:76
+#: doc/classes/MenuButton.xml:79
msgid "Default [StyleBox] for the [MenuButton]."
msgstr "[MenuButton]的默认[StyleBox]æ ·å¼ç›’。"
-#: doc/classes/MenuButton.xml:79
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr "[MenuButton]被按下时的[StyleBox]æ ·å¼ç›’。"
@@ -41248,13 +42025,13 @@ msgstr "生æˆç»†åˆ†ç½‘格时使用的采样è·ç¦»ï¼Œä»¥å•å…ƒä¸ºå•ä½ã€‚"
msgid ""
"The maximum distance the detail mesh surface should deviate from "
"heightfield, in cell unit."
-msgstr ""
+msgstr "细节网格表é¢åº”å离高度场的最大è·ç¦»ï¼Œä»¥å•å…ƒæ ¼ä¸ºå•ä½ã€‚"
#: doc/classes/NavigationMesh.xml:105
msgid ""
"The maximum distance a simplfied contour's border edges should deviate the "
"original raw contour."
-msgstr ""
+msgstr "简化轮廓的边界边缘应å离原始原始轮廓的最大è·ç¦»ã€‚"
#: doc/classes/NavigationMesh.xml:108
msgid ""
@@ -41262,12 +42039,16 @@ msgid ""
"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
"multiple of [member cell/size]."
msgstr ""
+"沿网格边界的轮廓的最大å…许长度。\n"
+"[b]注æ„:[/b]烘焙时,这个值会å‘上å–整到最接近的[member cell/size]çš„å€æ•°ã€‚"
#: doc/classes/NavigationMesh.xml:112
msgid ""
"If [code]true[/code], marks walkable spans as not walkable if the clearance "
"above the span is less than [member agent/height]."
msgstr ""
+"如果 [code]true[/code],如果跨度上方的间隙å°äºŽ [member agent/height],则将å¯"
+"行走范围标记为ä¸å¯è¡Œèµ°ã€‚"
#: doc/classes/NavigationMesh.xml:115
#, fuzzy
@@ -41279,6 +42060,8 @@ msgid ""
"If [code]true[/code], marks non-walkable spans as walkable if their maximum "
"is within [member agent/max_climb] of a walkable neighbor."
msgstr ""
+"如果 [code]true[/code],如果它们的最大值在å¯è¡Œèµ°é‚»åŸŸçš„ [member agent/"
+"max_climb] 内,则将ä¸å¯è¡Œèµ°èŒƒå›´æ ‡è®°ä¸ºå¯è¡Œèµ°ã€‚"
#: doc/classes/NavigationMesh.xml:121
msgid ""
@@ -41286,6 +42069,9 @@ msgid ""
"Only used when [member geometry/parsed_geometry_type] is [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
msgstr ""
+"用于扫æé™æ€ç¢°æ’žçš„物ç†å±‚。\n"
+"仅在[member geometry/parsed_geometry_type]是[constant "
+"PARSED_GEOMETRY_STATIC_COLLIDERS]或[constant PARSED_GEOMETRY_BOTH]æ—¶æ‰ä½¿ç”¨ã€‚"
#: doc/classes/NavigationMesh.xml:125
#, fuzzy
@@ -41308,12 +42094,16 @@ msgid ""
"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
msgstr ""
+"è¦æ‰«æ的几何体组的å称。\n"
+"åªæœ‰å½“[member geometry/source_geometry_mode]是[constant "
+"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN]或[constant "
+"SOURCE_GEOMETRY_GROUPS_EXPLICIT]æ—¶æ‰ä½¿ç”¨ã€‚"
#: doc/classes/NavigationMesh.xml:135
msgid ""
"The maximum number of vertices allowed for polygons generated during the "
"contour to polygon conversion process."
-msgstr ""
+msgstr "在轮廓到多边形转æ¢è¿‡ç¨‹ä¸­ç”Ÿæˆçš„多边形å…许的最大顶点数。"
#: doc/classes/NavigationMesh.xml:138
msgid ""
@@ -41322,6 +42112,9 @@ msgid ""
"[b]Note:[/b] This value will be squared to calculate the number of cells. "
"For example, a value of 20 will set the number of cells to 400."
msgstr ""
+"如果å¯èƒ½çš„è¯ï¼Œä»»ä½•å°äºŽè¿™ä¸ªå°ºå¯¸çš„区域将与较大的区域åˆå¹¶ã€‚\n"
+"[b]注æ„:[/b]这个值将被平方æ¥è®¡ç®—å•å…ƒæ ¼çš„æ•°é‡ã€‚例如,一个20的值将把å•å…ƒæ ¼çš„æ•°"
+"é‡è®¾ä¸º400。"
#: doc/classes/NavigationMesh.xml:142
msgid ""
@@ -41330,6 +42123,9 @@ msgid ""
"cells allowed to form isolated island areas. For example, a value of 8 will "
"set the number of cells to 64."
msgstr ""
+"一个区域被创建的最å°å°ºå¯¸ã€‚\n"
+"[b]注æ„:[/b]该值将被平方,以计算出å…许形æˆå­¤å²›åŒºåŸŸçš„最å°å•å…ƒæ•°ã€‚例如,8的值"
+"将把å•å…ƒæ ¼çš„æ•°é‡è®¾ä¸º64。"
#: doc/classes/NavigationMesh.xml:146
#, fuzzy
@@ -41343,17 +42139,19 @@ msgid ""
"Watershed partitioning. Generally the best choice if you precompute the "
"navigation mesh, use this if you have large open areas."
msgstr ""
+"分水岭分区。如果您预先计算导航网格,通常是最佳选择,如果您有大的开放区域,请"
+"使用它。"
#: doc/classes/NavigationMesh.xml:154
msgid ""
"Monotone partitioning. Use this if you want fast navigation mesh generation."
-msgstr ""
+msgstr "å•è°ƒåˆ†åŒºã€‚如果您想è¦å¿«é€Ÿç”Ÿæˆå¯¼èˆªç½‘格,请使用此选项。"
#: doc/classes/NavigationMesh.xml:157
msgid ""
"Layer partitioning. Good choice to use for tiled navigation mesh with medium "
"and small sized tiles."
-msgstr ""
+msgstr "层分区。用于具有中å°åž‹ç“·ç –的平铺导航网格的ä¸é”™é€‰æ‹©ã€‚"
#: doc/classes/NavigationMesh.xml:160
#, fuzzy
@@ -41365,12 +42163,15 @@ msgid ""
"Parses mesh instances as geometry. This includes [MeshInstance], [CSGShape], "
"and [GridMap] nodes."
msgstr ""
+"将网格实例解æžä¸ºå‡ ä½•ä½“。这包括 [MeshInstance]ã€[CSGShape] å’Œ [GridMap] 节点。"
#: doc/classes/NavigationMesh.xml:166
msgid ""
"Parses [StaticBody] colliders as geometry. The collider should be in any of "
"the layers specified by [member geometry/collision_mask]."
msgstr ""
+"å°† [StaticBody] 碰撞器解æžä¸ºå‡ ä½•ä½“。碰撞器应ä½äºŽ [member geometry/"
+"collision_mask] 指定的任何层中。"
#: doc/classes/NavigationMesh.xml:169
msgid ""
@@ -41388,19 +42189,23 @@ msgstr "表示[enum PortType]枚举的大å°ã€‚"
#: doc/classes/NavigationMesh.xml:175
msgid ""
"Scans the child nodes of [NavigationMeshInstance] recursively for geometry."
-msgstr ""
+msgstr "递归扫æ [NavigationMeshInstance] çš„å­èŠ‚点以获å–几何体。"
#: doc/classes/NavigationMesh.xml:178
msgid ""
"Scans nodes in a group and their child nodes recursively for geometry. The "
"group is specified by [member geometry/source_group_name]."
msgstr ""
+"以递归方å¼æ‰«æ组中的节点åŠå…¶å­èŠ‚点以获å–几何图形。该组由 [member geometry/"
+"source_group_name] 指定。"
#: doc/classes/NavigationMesh.xml:181
msgid ""
"Uses nodes in a group for geometry. The group is specified by [member "
"geometry/source_group_name]."
msgstr ""
+"使用一个组中的节点进行几何è¿ç®—。该组由[member geometry/source_group_name]指"
+"定。"
#: doc/classes/NavigationMesh.xml:184
#, fuzzy
@@ -41417,6 +42222,8 @@ msgid ""
"NavigationMeshInstance is a node that takes a [NavigationMesh] resource and "
"adds it to the current scenario by creating an instance of it."
msgstr ""
+"NavigationMeshInstanceå¯ä»¥æŽ¥æ”¶ä¸€ä¸ª[NavigationMesh]资æºï¼Œå¹¶é€šè¿‡åˆ›å»ºå®ƒçš„一个实"
+"例将其添加到当å‰åœºæ™¯ä¸­ã€‚"
#: doc/classes/NavigationMeshInstance.xml:15
#, fuzzy
@@ -41578,6 +42385,13 @@ msgid ""
"the server port in UDP. You can use the [UPNP] class to try to forward the "
"server port automatically when starting the server."
msgstr ""
+"一个 PacketPeer 实现,应该在åˆå§‹åŒ–为客户端或æœåŠ¡å™¨åŽä¼ é€’ç»™ [member SceneTree."
+"network_peer]。然åŽå¯ä»¥é€šè¿‡è¿žæŽ¥åˆ° [SceneTree] ä¿¡å·æ¥å¤„ç†äº‹ä»¶ã€‚\n"
+"ENet 的目的是在 UDP(用户数æ®æŠ¥å议)之上æ供一个相对简å•è€Œå¥å…¨çš„网络通信"
+"层。\n"
+"[b]注æ„:[/b] ENet åªä½¿ç”¨UDP,ä¸ä½¿ç”¨TCP。转å‘æœåŠ¡å™¨ç«¯å£ä½¿æ‚¨çš„æœåŠ¡å™¨å¯ä»¥åœ¨å…¬ç½‘"
+"上访问时,åªéœ€è¦å°†æœåŠ¡å™¨ç«¯å£è½¬å‘为UDPå³å¯ã€‚您å¯ä»¥ä½¿ç”¨ [UPNP] ç±»å°è¯•åœ¨å¯åŠ¨æœåŠ¡"
+"器时自动转å‘æœåŠ¡å™¨ç«¯å£ã€‚"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:12
#: doc/classes/NetworkedMultiplayerPeer.xml:11
@@ -41736,6 +42550,13 @@ msgid ""
"other hand, defines a fixed timeout for which any packet must be "
"acknowledged or the peer will be dropped."
msgstr ""
+"设置对等方的超时å‚数。超时å‚数控制对等方因无法确认å¯é æµé‡è€Œè¶…时的方å¼å’Œæ—¶"
+"间。超时值以毫秒表示。\n"
+"[code]timeout_limit[/code] 是一个系数,乘以基于平å‡å¾€è¿”时间的值,将确定å¯é æ•°"
+"æ®åŒ…的超时é™åˆ¶ã€‚当达到该é™åˆ¶æ—¶ï¼Œè¶…时将加å€ï¼Œå¦‚果该é™åˆ¶å·²è¾¾åˆ° "
+"[code]timeout_min[/code],则对等方将断开连接。å¦ä¸€æ–¹é¢ï¼Œ[code]timeout_max[/"
+"code] å‚数定义了一个固定的超时时间,对于该超时时间必须确认任何数æ®åŒ…,å¦åˆ™å¯¹"
+"等方将被丢弃。"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:113
msgid ""
@@ -41776,6 +42597,15 @@ msgid ""
"COMPRESS_NONE]. Nonetheless, mixing engine versions between clients and "
"server is not recommended and not officially supported."
msgstr ""
+"用于网络数æ®åŒ…的压缩方法。这些在压缩速度与带宽之间有ä¸åŒçš„æƒè¡¡ï¼Œå¦‚果您完全使"
+"用压缩,您å¯èƒ½éœ€è¦æµ‹è¯•å“ªä¸€ç§æœ€é€‚åˆæ‚¨çš„用例。\n"
+"[b]注:[/b]大多数游æˆçš„网络设计都涉åŠé¢‘ç¹å‘é€è®¸å¤šå°æ•°æ®åŒ…(æ¯ä¸ªå°äºŽ4 KB)。如"
+"果有疑问,建议ä¿ç•™é»˜è®¤åŽ‹ç¼©ç®—法,因为它对这些å°æ•°æ®åŒ…效果最好。\n"
+"[b]注æ„:[/b] [member compression_mode] 必须在æœåŠ¡å™¨åŠå…¶æ‰€æœ‰å®¢æˆ·ç«¯ä¸Šè®¾ç½®ä¸ºç›¸"
+"åŒçš„值。如果客户端上设置的 [member compression_mode] 与æœåŠ¡å™¨ä¸Šè®¾ç½®çš„ä¸åŒï¼Œåˆ™"
+"客户端将无法连接。在 Godot 3.4 之å‰ï¼Œé»˜è®¤çš„ [member compression_mode] 是 "
+"[constant COMPRESS_NONE]。尽管如此,ä¸å»ºè®®åœ¨å®¢æˆ·ç«¯å’ŒæœåŠ¡å™¨ä¹‹é—´æ··åˆå¼•æ“Žç‰ˆæœ¬ï¼Œ"
+"也ä¸å—官方支æŒã€‚"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:124
msgid ""
@@ -41784,6 +42614,9 @@ msgid ""
"When set to an empty string, the [code]address[/code] parameter passed to "
"[method create_client] is used instead."
msgstr ""
+"用于 DTLS 验è¯çš„主机å,与æœåŠ¡å™¨æ供的è¯ä¹¦ä¸­çš„“CNâ€å€¼è¿›è¡Œæ¯”较。\n"
+"当设置为空字符串时,将使用传递给 [method create_client] 的 [code]address[/"
+"code] å‚数。"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:128
msgid ""
@@ -41851,6 +42684,8 @@ msgid ""
"ENet's built-in range encoding. Works well on small packets, but is not the "
"most efficient algorithm on packets larger than 4 KB."
msgstr ""
+"ENet 的内置范围编ç ã€‚适用于å°æ•°æ®åŒ…,但对于大于 4 KB çš„æ•°æ®åŒ…ä¸æ˜¯æœ€æœ‰æ•ˆçš„ç®—"
+"法。"
#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:151
msgid ""
@@ -41889,6 +42724,10 @@ msgid ""
"detail and isn't meant to be used by non-Godot servers. It may change "
"without notice."
msgstr ""
+"管ç†ä¸Žç½‘络对等体的连接。为连接到æœåŠ¡å™¨çš„æ¯ä¸ªå®¢æˆ·ç«¯åˆ†é…唯一的ID。å¦è¯·å‚è§"
+"[MultiplayerAPI]。\n"
+"[b]注æ„:[/b] 高级别的多人游æˆAPIå议是一个实现细节,并ä¸æ„味ç€å¯ä»¥è¢«éžGodot"
+"æœåŠ¡å™¨ä½¿ç”¨ã€‚它å¯èƒ½ä¼šæ”¹å˜ï¼Œæ•ä¸å¦è¡Œé€šçŸ¥ã€‚"
#: doc/classes/NetworkedMultiplayerPeer.xml:12
msgid "https://godotengine.org/asset-library/asset/537"
@@ -42147,6 +42986,10 @@ msgid ""
"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
msgstr ""
+"在 NinePatchRect 上é‡å¤ä¸­å¿ƒçº¹ç†ã€‚è¿™ä¸ä¼šå¯¼è‡´ä»»ä½•å¯è§çš„失真。纹ç†å¿…须是无ç¼çš„,"
+"这样æ‰èƒ½åœ¨è¾¹ç¼˜ä¹‹é—´ä¸æ˜¾ç¤ºä¼ªå½±çš„情况下工作。\n"
+"[b]注:[/b] 仅在使用 GLES3 渲染器时支æŒã€‚使用 GLES2 渲染器时,这将类似于 "
+"[constant AXIS_STRETCH_MODE_STRETCH]。"
#: doc/classes/NinePatchRect.xml:74
msgid ""
@@ -42158,6 +43001,11 @@ msgid ""
"[b]Note:[/b] Only supported when using the GLES3 renderer. When using the "
"GLES2 renderer, this will behave like [constant AXIS_STRETCH_MODE_STRETCH]."
msgstr ""
+"在 NinePatchRect 上é‡å¤ä¸­å¿ƒçº¹ç†ï¼Œä½†ä¹Ÿä¼šæ‹‰ä¼¸çº¹ç†ä»¥ç¡®ä¿æ¯ä¸ªå›¾å—都完整å¯è§ã€‚è¿™å¯"
+"能会导致纹ç†æ‰­æ›²ï¼Œä½†å°äºŽ [constant AXIS_STRETCH_MODE_STRETCH]。纹ç†å¿…须是无ç¼"
+"的,这样æ‰èƒ½åœ¨è¾¹ç¼˜ä¹‹é—´ä¸æ˜¾ç¤ºä¼ªå½±çš„情况下工作。\n"
+"[b]注:[/b] 仅在使用 GLES3 渲染器时支æŒã€‚使用 GLES2 渲染器时,这将类似于 "
+"[constant AXIS_STRETCH_MODE_STRETCH]。"
#: doc/classes/Node.xml:4
msgid "Base class for all [i]scene[/i] objects."
@@ -42659,11 +43507,14 @@ msgid ""
"guaranteed. The order of node groups should not be relied upon as it can "
"vary across project runs."
msgstr ""
+"返回一个数组,列出节点所属的组。\n"
+"[b]注:[/b]出于性能原因,节点组的顺åºæ˜¯[i]ä¸[/i]确定的。ä¸åº”ä¾èµ–节点组的顺"
+"åºï¼Œå› ä¸ºå®ƒå¯èƒ½å› é¡¹ç›®è¿è¡Œè€Œå¼‚。"
#: doc/classes/Node.xml:210
msgid ""
"Returns the node's index, i.e. its position among the siblings of its parent."
-msgstr ""
+msgstr "返回节点的索引,å³å®ƒåœ¨å…¶çˆ¶èŠ‚点的兄弟节点中的ä½ç½®ã€‚"
#: doc/classes/Node.xml:216
msgid ""
@@ -43083,6 +43934,9 @@ msgid ""
"(or its descendants) to be [code]null[/code], if that [member owner] is no "
"longer a parent or ancestor."
msgstr ""
+"删除一个å­èŠ‚点。该节点ä¸ä¼šè¢«åˆ é™¤ï¼Œå¿…须手动删除。\n"
+"[b]注:[/b]如果该[member owner]ä¸å†æ˜¯çˆ¶èŠ‚点或祖先,则该函数å¯ä»¥å°†è¢«ç§»é™¤èŠ‚点"
+"(或其åŽä»£ï¼‰çš„[member owner]设置为[code]null[/code]。"
#: doc/classes/Node.xml:507
msgid ""
@@ -43375,6 +44229,9 @@ msgid ""
"[code]res://levels/1.tscn[/code]). Otherwise, [member filename] is set to an "
"empty string."
msgstr ""
+"如果场景是从文件实例化的,则其最顶层节点包å«åœ¨ [member filename] 中加载它的ç»"
+"对文件路径(例如 [code]res://levels/1.tscn[/code])。å¦åˆ™ï¼Œ[member filename] "
+"设置为空字符串。"
#: doc/classes/Node.xml:694
msgid ""
@@ -43539,6 +44396,8 @@ msgid ""
"NOTIFICATION_READY] is received. Unlike the latter, it's sent every time the "
"node enters tree, instead of only once."
msgstr ""
+"在节点准备好时收到通知,就在收到[constant NOTIFICATION_READY]之å‰ã€‚与åŽè€…ä¸"
+"åŒï¼Œå®ƒæ¯æ¬¡èŠ‚点进入树时都会å‘é€ï¼Œè€Œä¸æ˜¯åªå‘é€ä¸€æ¬¡ã€‚"
#: doc/classes/Node.xml:846
msgid ""
@@ -43609,6 +44468,9 @@ msgid ""
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"node2d_get_angle_to.png]Illustration of the returned angle.[/url]"
msgstr ""
+"以弧度为å•ä½è¿”回节点和 [code] point [/code] 之间的角度。\n"
+"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
+"node2d_get_angle_to.png]返回的角度说明[/url]"
#: doc/classes/Node2D.xml:33
msgid "Returns the [Transform2D] relative to this node's parent."
@@ -44042,6 +44904,8 @@ msgid ""
"of the generated noise. This value is ignored if [member seamless] is "
"enabled."
msgstr ""
+"用于指定生æˆå™ªå£°å·¦ä¸Šè§’的噪声空间å标的å移é‡ã€‚如果å¯ç”¨äº† [member seamless],"
+"则忽略此值。"
#: modules/opensimplex/doc_classes/NoiseTexture.xml:38
msgid ""
@@ -44051,6 +44915,9 @@ msgid ""
"noise. This is due to the way noise uses higher dimensions for generating "
"seamless noise."
msgstr ""
+"纹ç†æ˜¯å¦å¯ä»¥å¹³é“ºè€Œæ²¡æœ‰å¯è§çš„接ç¼ã€‚生æˆæ— ç¼çº¹ç†éœ€è¦æ›´é•¿çš„时间。\n"
+"[b]注:[/b] 与éžæ— ç¼å™ªå£°ç›¸æ¯”,无ç¼å™ªå£°å…·æœ‰è¾ƒä½Žçš„对比度。这是由于噪声使用更高"
+"维度æ¥ç”Ÿæˆæ— ç¼å™ªå£°çš„æ–¹å¼ã€‚"
#: modules/opensimplex/doc_classes/NoiseTexture.xml:42
msgid "Width of the generated texture."
@@ -44393,6 +45260,12 @@ msgid ""
"validate it with [method @GDScript.is_instance_valid] before attempting to "
"call its methods or access its properties."
msgstr ""
+"ç«‹å³ä»Žå†…存中删除对象。对于 [Node],您å¯èƒ½å¸Œæœ›ä½¿ç”¨ [method Node.queue_free] å°†"
+"节点排队以在当å‰å¸§çš„末尾安全删除。\n"
+"[b]é‡è¦æ示:[/b] 如果你有一个指å‘一个对象的å˜é‡ï¼Œä¸€æ—¦å¯¹è±¡è¢«é‡Šæ”¾ï¼Œå®ƒå°† [i]ä¸"
+"会[/i] 分é…为 [code]null[/code]。相å,它会指å‘一个 [i] å…ˆå‰é‡Šæ”¾çš„实例 [/i],"
+"您应该在å°è¯•è°ƒç”¨å…¶æ–¹æ³•æˆ–访问其属性之å‰ä½¿ç”¨ [method @GDScript."
+"is_instance_valid] 对其进行验è¯ã€‚"
#: doc/classes/Object.xml:178
msgid ""
@@ -44416,6 +45289,9 @@ msgid ""
"declarations into account. If the object has a [code]class_name[/code] "
"defined, the base class name will be returned instead."
msgstr ""
+"返回对象的类型为一个[String]。å‚è§[method is_class]。\n"
+"[b]注æ„:[/b] [method get_class] ä¸è€ƒè™‘[code]class_name[/code]的声明。如果对"
+"象有一个[code]class_name[/code]的定义,基类å称将被返回。"
#: doc/classes/Object.xml:192
msgid ""
@@ -44534,6 +45410,11 @@ msgid ""
"declarations into account. If the object has a [code]class_name[/code] "
"defined, [method is_class] will return [code]false[/code] for that name."
msgstr ""
+"如果对象从给定的 [code] class [/code] 中继承,则返回 [code] true [/code]。å¦"
+"请å‚阅 [method get_class]。\n"
+"[b]注:[/b] [method is_class] 没有考虑 [code] class_name [/code] 声明。如果对"
+"象有 [code]class_name [/code] 定义,[method is_class] 将为该å称返回 [code] "
+"false[/code] 。"
#: doc/classes/Object.xml:306
#, fuzzy
@@ -44654,6 +45535,11 @@ msgid ""
"code]. This means you can also use [code]set_meta(\"name\", null)[/code] to "
"remove metadata for [code]\"name\"[/code]."
msgstr ""
+"添加ã€æ›´æ”¹æˆ–删除对象元数æ®ä¸­çš„给定æ¡ç›®ã€‚元数æ®è¢«åºåˆ—化并且å¯ä»¥é‡‡ç”¨ä»»ä½• "
+"[Variant] 值。\n"
+"è¦ä»Žå¯¹è±¡çš„元数æ®ä¸­åˆ é™¤ç»™å®šæ¡ç›®ï¼Œè¯·ä½¿ç”¨ [method remove_meta]。如果元数æ®çš„值设"
+"置为 [code]null[/code],也会删除元数æ®ã€‚è¿™æ„味ç€æ‚¨è¿˜å¯ä»¥ä½¿ç”¨ "
+"[code]set_meta(\"name\", null)[/code] 删除 [code]\"name\"[/code] 的元数æ®ã€‚"
#: doc/classes/Object.xml:395
msgid ""
@@ -45224,26 +46110,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr "当[OptionButton]被ç¦ç”¨æ—¶ä½¿ç”¨çš„文本[Color]。"
#: doc/classes/OptionButton.xml:212
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:215
msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr "当鼠标悬åœ[OptionButton]时使用的文本[Color]。"
-#: doc/classes/OptionButton.xml:215
+#: doc/classes/OptionButton.xml:218
msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr "当[OptionButton]被按下时使用的文本[Color]。"
-#: doc/classes/OptionButton.xml:218
+#: doc/classes/OptionButton.xml:221
msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr "当[OptionButton]被鼠标悬åœæ—¶ä½¿ç”¨çš„[StyleBox]。"
-#: doc/classes/OptionButton.xml:221
+#: doc/classes/OptionButton.xml:224
msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr "[OptionButton]图标与文本之间的水平间è·ã€‚"
-#: doc/classes/OptionButton.xml:224
+#: doc/classes/OptionButton.xml:227
msgid "Default [StyleBox] for the [OptionButton]."
msgstr "[OptionButton]的默认[StyleBox]。"
-#: doc/classes/OptionButton.xml:227
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr "当按下[OptionButton]时使用的[StyleBox]。"
@@ -46712,12 +47605,18 @@ msgid ""
"implemented)\n"
"- Android: [code]JNIEnv*[/code] of the application (not yet implemented)"
msgstr ""
+"应用程åºå¥æŸ„:\n"
+"- Windows: [code]HINSTANCE[/code] 的应用程åº\n"
+"- MacOS: [code]NSApplication*[/code] 的应用程åºï¼ˆå°šæœªå®žçŽ°ï¼‰\n"
+"- Android: [code]JNIEnv*[/code] çš„åº”ç”¨ç¨‹åº ï¼ˆå°šæœªå®žçŽ°ï¼‰"
#: doc/classes/OS.xml:1075
msgid ""
"Display handle:\n"
"- Linux: [code]X11::Display*[/code] for the display"
msgstr ""
+"显示å¥æŸ„:\n"
+"- Linux:[code]X11::Display*[/code] 用于显示"
#: doc/classes/OS.xml:1079
msgid ""
@@ -46728,6 +47627,11 @@ msgid ""
"- Android: [code]jObject[/code] the main android activity (not yet "
"implemented)"
msgstr ""
+"窗户å¥æŸ„:\n"
+"- Windows:主窗å£çš„ [code]HWND[/code]。\n"
+"- Linux:主窗å£çš„ [code]X11::Window*[/code]。\n"
+"- MacOS:主窗å£çš„ [code]NSWindow*[/code](尚未实现)\n"
+"- Android:[code]jObject[/code]主è¦çš„安å“活动activity (尚未实现)"
#: doc/classes/OS.xml:1086
msgid ""
@@ -46735,6 +47639,9 @@ msgid ""
"- Windows: [code]HDC[/code] of the main window drawing context\n"
"- MacOS: [code]NSView*[/code] of the main windows view (not yet implemented)"
msgstr ""
+"窗å£è§†å›¾ï¼š\n"
+"- Windows:主窗å£ç»˜å›¾çŽ¯å¢ƒçš„ [code]HDC[/code]\n"
+"- MacOS:主窗å£è§†å›¾çš„ [code]NSView*[/code](尚未实现)"
#: doc/classes/OS.xml:1091
msgid ""
@@ -46743,6 +47650,10 @@ msgid ""
"- Linux: [code]X11::GLXContext[/code]\n"
"- MacOS: [code]NSOpenGLContext*[/code] (not yet implemented)"
msgstr ""
+"OpenGL上下文:\n"
+"- Windows:[code]HGLRC[/code]\n"
+"- Linux:[code]X11::GLXContext[/code]\n"
+"- MacOS:[code]NSOpenGLContext*[/code] (尚未实现)"
#: doc/classes/OS.xml:1097
msgid "Landscape screen orientation."
@@ -46753,26 +47664,24 @@ msgid "Portrait screen orientation."
msgstr "纵å‘å±å¹•æ–¹å‘。"
#: doc/classes/OS.xml:1103
-#, fuzzy
msgid "Reverse landscape screen orientation."
-msgstr "å转最åŽä¸€ä¸ªæ’¤é”€åŠ¨ä½œã€‚"
+msgstr "å转横å‘å±å¹•æ–¹å‘。"
#: doc/classes/OS.xml:1106
-#, fuzzy
msgid "Reverse portrait screen orientation."
-msgstr "å转最åŽä¸€ä¸ªæ’¤é”€åŠ¨ä½œã€‚"
+msgstr "å转纵å‘å±å¹•æ–¹å‘。"
#: doc/classes/OS.xml:1109
msgid "Uses landscape or reverse landscape based on the hardware sensor."
-msgstr ""
+msgstr "æ ¹æ®ç¡¬ä»¶ä¼ æ„Ÿå™¨ä½¿ç”¨æ¨ªå‘或åå‘横å‘。"
#: doc/classes/OS.xml:1112
msgid "Uses portrait or reverse portrait based on the hardware sensor."
-msgstr ""
+msgstr "æ ¹æ®ç¡¬ä»¶ä¼ æ„Ÿå™¨ä½¿ç”¨çºµå‘或åå‘纵å‘。"
#: doc/classes/OS.xml:1115
msgid "Uses most suitable orientation based on the hardware sensor."
-msgstr ""
+msgstr "æ ¹æ®ç¡¬ä»¶ä¼ æ„Ÿå™¨ä½¿ç”¨æœ€åˆé€‚çš„æ–¹å‘。"
#: doc/classes/OS.xml:1118
msgid "Desktop directory path."
@@ -46835,7 +47744,6 @@ msgid "An abstraction of a serialized scene."
msgstr "一个åºåˆ—化场景的抽象。"
#: doc/classes/PackedScene.xml:7
-#, fuzzy
msgid ""
"A simplified interface to a scene file. Provides access to operations and "
"checks that can be performed on the scene resource itself.\n"
@@ -46882,43 +47790,43 @@ msgid ""
msgstr ""
"场景文件的一个简化接å£ã€‚æ供对å¯ä»¥åœ¨åœºæ™¯èµ„æºæœ¬èº«ä¸Šæ‰§è¡Œçš„æ“作和检查的访问。\n"
"å¯ä»¥ç”¨æ¥å°†ä¸€ä¸ªèŠ‚点ä¿å­˜åˆ°ä¸€ä¸ªæ–‡ä»¶ä¸­ã€‚当ä¿å­˜æ—¶ï¼Œè¯¥èŠ‚点以åŠå®ƒæ‰€æ‹¥æœ‰çš„所有节点都"
-"会被ä¿å­˜ï¼ˆå‚阅[Node]中的属性[code]owner[/code])。\n"
+"会被ä¿å­˜ï¼ˆå‚阅 [Node] 中的属性 [code]owner[/code])。\n"
"[b]注æ„:[/b] 节点ä¸éœ€è¦æ‹¥æœ‰è‡ªå·±ã€‚\n"
"[b]一个加载已ä¿å­˜åœºæ™¯çš„示例:[/b]\n"
"[codeblock]\n"
-"# Use `load()` instead of `preload()` if the path isn't known at compile-"
-"time.\n"
+"# 如果在编译时ä¸çŸ¥é“路径,就使用 `load()`而ä¸æ˜¯ `preload()` 。\n"
"var scene = preload(\"res://scene.tscn\").instance()\n"
-"# Add the node as a child of the node the script is attached to.\n"
+"#将该节点作为脚本所ä¾é™„的节点的一个å­èŠ‚点。\n"
"add_child(scene)\n"
"[/codeblock]\n"
-"[b]ä¿å­˜ä¸€ä¸ªå…·æœ‰ä¸åŒæ‰€æœ‰è€…的节点的例å­ï¼š[/b] 下é¢çš„例å­åˆ›å»ºäº†3个对象。"
-"[code]Node2D[/code] ([code]node[/code]), [code]RigidBody2D[/code] "
+"[b]ä¿å­˜ä¸€ä¸ªå…·æœ‰ä¸åŒæ‰€æœ‰è€…节点的例å­ï¼š[/b] 下é¢çš„例å­åˆ›å»ºäº†3个对象:"
+"[code]Node2D[/code] ([code]node[/code]), [code]RigidBody2D[/code] "
"([code]rigid[/code]) 和 [code]CollisionObject2D[/code] ([code]collision[/"
-"code]) 。[code]collision[/code]是[code]rigid[/code]的一个å­èŠ‚点,rigid 是"
-"[code]node[/code]的一个å­èŠ‚点。åªæœ‰[code]rigid[/code]被[code]node[/code]æ‹¥"
-"有,因此[code]pack[/code]å°†åªä¿å­˜è¿™ä¸¤ä¸ªèŠ‚点,ä¸ä¿å­˜[code]collision[/code]。\n"
+"code]) 。[code]collision[/code] 是 [code]rigid[/code]的一个å­èŠ‚点,rigid 是 "
+"[code]node[/code]的一个å­èŠ‚点。åªæœ‰ [code]rigid[/code] 被 [code]node[/code]æ‹¥"
+"有,因此 [code]pack[/code]å°†åªä¿å­˜è¿™ä¸¤ä¸ªèŠ‚点,ä¸ä¿å­˜ [code]collision[/"
+"code]。\n"
"[codeblock]\n"
-"# Create the objects.\n"
+"# 创建对象。\n"
"var node = Node2D.new()\n"
"var rigid = RigidBody2D.new()\n"
"var collision = CollisionShape2D.new()\n"
"\n"
-"# Create the object hierarchy.\n"
+"# 创建对象的层次结构。\n"
"rigid.add_child(collision)\n"
"node.add_child(rigid)\n"
"\n"
-"# Change owner of `rigid`, but not of `collision`.\n"
+"# 改å˜`rigid`的所有者,但ä¸æ”¹å˜`collision`的所有者。\n"
"rigid.owner = node\n"
"\n"
"var scene = PackedScene.new()\n"
-"# Only `node` and `rigid` are now packed.\n"
+"# 现在åªæœ‰`node`å’Œ`rigid`被打包。\n"
"var result = scene.pack(node)\n"
"if result == OK:\n"
-" var error = ResourceSaver.save(\"res://path/name.scn\", scene) # Or "
+" var error = ResourceSaver.save(\"res://path/name.scn\", scene) # 或者 "
"\"user://...\"\n"
" if error != OK:\n"
-" push_error(\"An error occurred while saving the scene to disk.\")\n"
+" push_error(\"ä¿å­˜åœºæ™¯åˆ°ç£ç›˜æ—¶å‘生错误。\")\n"
"[/codeblock]"
#: doc/classes/PackedScene.xml:47
@@ -47013,7 +47921,6 @@ msgstr ""
"返回最åŽæŽ¥æ”¶çš„æ•°æ®åŒ…的错误状æ€ï¼ˆé€šè¿‡[method get_packet]å’Œ[method get_var])。"
#: doc/classes/PacketPeer.xml:34
-#, fuzzy
msgid ""
"Gets a Variant. If [code]allow_objects[/code] (or [member "
"allow_object_decoding]) is [code]true[/code], decoding objects is allowed.\n"
@@ -47021,8 +47928,8 @@ 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 ""
-"获å–一个å˜é‡ã€‚如果[code]allow_objects[/code]为[code]true[/code],则å…许对对象"
-"进行解ç ã€‚\n"
+"获å–一个å˜é‡ã€‚如果[code]allow_objects[/code] 或 [member "
+"allow_object_decoding]为[code]true[/code],则å…许对对象进行解ç ã€‚\n"
"[b] 警告:[/b]ååºåˆ—化对象å¯èƒ½åŒ…å«æ‰§è¡Œçš„代ç ã€‚如果åºåˆ—化对象æ¥è‡ªä¸å—信任的"
"æºï¼Œè¯·ä¸è¦ä½¿ç”¨æ­¤é€‰é¡¹ï¼Œä»¥é¿å…潜在的安全å¨èƒï¼Œå¦‚远程代ç æ‰§è¡Œã€‚"
@@ -47031,17 +47938,16 @@ msgid "Sends a raw packet."
msgstr "å‘é€ä¸€ä¸ªåŽŸå§‹æ•°æ®åŒ…。"
#: doc/classes/PacketPeer.xml:50
-#, fuzzy
msgid ""
"Sends a [Variant] as a packet. If [code]full_objects[/code] (or [member "
"allow_object_decoding]) is [code]true[/code], encoding objects is allowed "
"(and can potentially include code)."
msgstr ""
-"å°†[Variant]作为数æ®åŒ…å‘é€ã€‚如果[code]full_objects[/code]为[code]true[/code],"
-"则å…许对对象进行编ç ï¼ˆå¹¶ä¸”å¯èƒ½åŒ…å«ä»£ç ï¼‰ã€‚"
+"å°†[Variant]作为数æ®åŒ…å‘é€ã€‚如果[code]full_objects[/code] 或 [member "
+"allow_object_decoding]为[code]true[/code],则å…许对对象进行编ç ï¼ˆå¹¶ä¸”å¯èƒ½åŒ…å«"
+"代ç ï¼‰ã€‚"
#: doc/classes/PacketPeer.xml:56
-#, fuzzy
msgid ""
"[i]Deprecated.[/i] Use [code]get_var[/code] and [code]put_var[/code] "
"parameters instead.\n"
@@ -47051,6 +47957,8 @@ 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 ""
+"[i]已废弃。[/i] 你应该使用 [code]get_var[/code] å’Œ [code]put_var[/code] å‚æ•°"
+"æ¥ä»£æ›¿å®ƒã€‚\n"
"如果[code]true[/code],多人游æˆAPIå°†å…许在RPC/RSETs期间对对象进行编ç å’Œè§£"
"ç ã€‚\n"
"[b]警告:[/b] ååºåˆ—化的对象å¯èƒ½åŒ…å«ä¼šè¢«æ‰§è¡Œçš„代ç ã€‚如果åºåˆ—化的对象æ¥è‡ªä¸å—"
@@ -47084,6 +47992,11 @@ msgid ""
"are otherwise valid. If this is a concern, you may want to use automatically "
"managed certificates with a short validity period."
msgstr ""
+"这个类表示DTLS对等连接。它å¯ä»¥ç”¨æ¥è¿žæŽ¥åˆ°DTLSæœåŠ¡å™¨ï¼Œç”±[method DTLSServer."
+"take_connection]返回。\n"
+"[b]警告:[/b]当å‰ä¸æ”¯æŒSSL/TLSè¯ä¹¦æ’¤é”€å’Œè¯ä¹¦å›ºå®šã€‚åªè¦æ’¤é”€çš„è¯ä¹¦åœ¨å…¶ä»–情况下是"
+"有效的,都将被接å—。如果这是一个问题,您å¯èƒ½å¸Œæœ›ä½¿ç”¨å…·æœ‰çŸ­æœ‰æ•ˆæœŸçš„自动管ç†è¯"
+"书。"
#: doc/classes/PacketPeerDTLS.xml:20
msgid ""
@@ -47174,7 +48087,6 @@ msgid "Closes the UDP socket the [PacketPeerUDP] is currently listening on."
msgstr "关闭[PacketPeerUDP]当å‰æ­£åœ¨ä¾¦å¬çš„UDP套接字。"
#: doc/classes/PacketPeerUDP.xml:23
-#, fuzzy
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 "
@@ -47189,13 +48101,13 @@ msgid ""
"technique like SSL or DTLS if you feel like your application is transferring "
"sensitive information."
msgstr ""
-"调用此方法将此UDP对等连接到给定的[code]host[/code]/[code]port[/code]对。UDP实"
-"际上是无连接的,因此此选项仅æ„味ç€æ¥è‡ªä¸åŒåœ°å€çš„传入数æ®åŒ…将自动丢弃,并且传"
-"出数æ®åŒ…始终å‘é€åˆ°è¿žæŽ¥çš„地å€ï¼ˆä¸å…许将æ¥è°ƒç”¨[method set_dest_address])。此方"
-"法ä¸å‘远程对等方å‘é€ä»»ä½•æ•°æ®ï¼Œä¸ºæ­¤ï¼Œè¯·åƒå¾€å¸¸ä¸€æ ·ä½¿ç”¨[method PacketPeer."
-"put_var]或[method PacketPeer.put_packet]。å¦è¯·å‚阅[UDPServer]。\n"
-"注æ„:连接到远程对等体无助于防止IP欺骗等æ¶æ„攻击。如果您觉得应用程åºæ­£åœ¨ä¼ è¾“"
-"æ•æ„Ÿä¿¡æ¯ï¼Œè¯·è€ƒè™‘使用SSL或DTLS等加密技术。"
+"调用此方法将UDP对等体连接到给定的[code]host[/code]/[code]port[/code]对。UDP实"
+"际上是无连接的,所以这个选项åªæ„味ç€æ¥è‡ªä¸åŒåœ°å€çš„入包被自动丢弃,而出包总是"
+"被å‘é€åˆ°è¿žæŽ¥çš„地å€(ä¸å…许将æ¥è°ƒç”¨[method set_dest_address])。该方法ä¸å‘远程对"
+"等体å‘é€ä»»ä½•æ•°æ®ï¼Œè¦å‘é€æ•°æ®ï¼Œè¯·ä½¿ç”¨[method PacketPeer.put_var]或[method "
+"PacketPeer.put_pakcet]。å‚è§[UDPServer]。\n"
+"[b]注æ„:[/b]连接到远程对等体并ä¸èƒ½é˜²æ­¢IP欺骗等æ¶æ„攻击。如果您觉得您的应用程"
+"åºæ­£åœ¨ä¼ è¾“æ•æ„Ÿä¿¡æ¯ï¼Œå¯ä»¥è€ƒè™‘使用SSL或DTLS等加密技术。"
#: doc/classes/PacketPeerUDP.xml:30
msgid ""
@@ -47226,7 +48138,6 @@ msgid "Returns whether this [PacketPeerUDP] is listening."
msgstr "返回这个[PacketPeerUDP]是å¦æ­£åœ¨ç›‘å¬ã€‚"
#: doc/classes/PacketPeerUDP.xml:56
-#, fuzzy
msgid ""
"Joins the multicast group specified by [code]multicast_address[/code] using "
"the interface identified by [code]interface_name[/code].\n"
@@ -47235,11 +48146,12 @@ msgid ""
"[b]Note:[/b] Some Android devices might require the "
"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
msgstr ""
-"使用[code]接å£å称[/code]标识的接å£åŠ å…¥[code]多播地å€[/code]指定的多播组。\n"
+"使用[code]interface_name[/code]标识的接å£åŠ å…¥[code]multicast_address[/code]指"
+"定的多播组。\n"
"您å¯ä»¥ä½¿ç”¨å¤šä¸ªæŽ¥å£åŠ å…¥åŒä¸€ä¸ªå¤šæ’­ç»„。使用[method IP.get_local_interfaces]了解"
"哪些接å£å¯ç”¨ã€‚\n"
-"注æ„:一些安å“设备å¯èƒ½éœ€è¦[code]CHANGE _ WIFI _ MULTICAST _ STATE[/code]æƒé™æ‰"
-"能进行多播。"
+"[b]注æ„:[/b]一些安å“设备å¯èƒ½éœ€è¦[code]CHANGE _ WIFI _ MULTICAST _ STATE[/"
+"code]æƒé™æ‰èƒ½è¿›è¡Œå¤šæ’­ã€‚"
#: doc/classes/PacketPeerUDP.xml:66
msgid ""
@@ -47274,7 +48186,6 @@ msgstr ""
"地å€çš„接å£ï¼ˆå¦‚æžœä¸å­˜åœ¨å…·æœ‰è¯¥åœ°å€çš„接å£ï¼Œåˆ™å¤±è´¥ï¼‰ã€‚"
#: doc/classes/PacketPeerUDP.xml:85
-#, fuzzy
msgid ""
"Enable or disable sending of broadcast packets (e.g. "
"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. This option is "
@@ -47286,11 +48197,10 @@ msgstr ""
"å¯ç”¨æˆ–ç¦ç”¨å¹¿æ’­æ•°æ®åŒ…çš„å‘é€ï¼ˆä¾‹å¦‚:"
"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]。这个选项在默认情况"
"下是ç¦ç”¨çš„。\n"
-"注æ„:一些安å“设备å¯èƒ½éœ€è¦[code]CHANGE_WIFI_MULTICAST_STATE[/code]æƒé™å’Œè¿™ä¸ª"
-"选项被å¯ç”¨æ¥æŽ¥æ”¶å¹¿æ’­åŒ…。"
+"[b]注æ„:[/b]一些安å“设备å¯èƒ½éœ€è¦[code]CHANGE_WIFI_MULTICAST_STATE[/code]æƒé™"
+"和本选项被å¯ç”¨æ¥æŽ¥æ”¶å¹¿æ’­åŒ…。"
#: doc/classes/PacketPeerUDP.xml:94
-#, fuzzy
msgid ""
"Sets the destination address and port for sending packets and variables. A "
"hostname will be resolved using DNS if needed.\n"
@@ -47298,8 +48208,8 @@ msgid ""
"packets to a broadcast address (e.g. [code]255.255.255.255[/code])."
msgstr ""
"设置å‘é€æ•°æ®åŒ…å’Œå˜é‡çš„目标地å€å’Œç«¯å£ã€‚如果需è¦ï¼Œå°†ä½¿ç”¨DNS解æžä¸€ä¸ªä¸»æœºå。\n"
-"注æ„:在å‘广播地å€ï¼ˆä¾‹å¦‚:[code]255.255.255.255[/code])å‘é€æ•°æ®åŒ…之å‰ï¼Œå¿…é¡»"
-"å¯ç”¨[method set_broadcast_enabled]。"
+"[b]注æ„:[/b]在å‘广播地å€ï¼ˆä¾‹å¦‚:[code]255.255.255.255[/code])å‘é€æ•°æ®åŒ…之"
+"å‰ï¼Œå¿…é¡»å¯ç”¨[method set_broadcast_enabled]。"
#: doc/classes/PacketPeerUDP.xml:101
msgid ""
@@ -47319,6 +48229,20 @@ msgid ""
" return\n"
"[/codeblock]"
msgstr ""
+"等待数æ®åŒ…到达侦å¬ç«¯å£ã€‚å‚è§[method listen]。\n"
+"[b] 注æ„:[/b][method wait]一旦被调用就ä¸èƒ½è¢«ä¸­æ–­ã€‚è¿™å¯ä»¥é€šè¿‡å…许å¦ä¸€æ–¹å‘é€ä¸€"
+"个特定的“death pillâ€åŒ…æ¥è§£å†³ï¼Œå¦‚下所示:\n"
+"[codeblock]\n"
+"# Server\n"
+"socket.set_dest_address(\"127.0.0.1\", 789)\n"
+"socket.put_packet(\"Time to stop\".to_ascii())\n"
+"\n"
+"# Client\n"
+"while socket.wait() == OK:\n"
+" var data = socket.get_packet().get_string_from_ascii()\n"
+" if data == \"Time to stop\":\n"
+" return\n"
+"[/codeblock]"
#: doc/classes/Panel.xml:4
msgid "Provides an opaque background for [Control] children."
@@ -47361,12 +48285,10 @@ msgid "The style of [PanelContainer]'s background."
msgstr "[PanelContainer]的背景样å¼ã€‚"
#: doc/classes/PanoramaSky.xml:4
-#, fuzzy
msgid "A type of [Sky] used to draw a background texture."
-msgstr "使用[Material]å’Œ[Sky]æ¥ç»˜åˆ¶èƒŒæ™¯çº¹ç†ã€‚"
+msgstr "一ç§ç”¨æ¥ç»˜åˆ¶èƒŒæ™¯è´´å›¾çš„ [Sky]。"
#: doc/classes/PanoramaSky.xml:7
-#, fuzzy
msgid ""
"A resource referenced in an [Environment] that is used to draw a background. "
"The Panorama sky functions similar to skyboxes in other engines, except it "
@@ -47378,17 +48300,16 @@ msgid ""
"cubemap_to_panorama.html]this tool[/url] to convert a cube map to an "
"equirectangular sky map."
msgstr ""
-"在[Sky]中引用的资æºï¼Œç”¨äºŽç»˜åˆ¶èƒŒæ™¯ã€‚全景天空æ质的功能类似于其他引擎中的天空"
-"盒,除了它使用等边矩形天空地图而ä¸æ˜¯ç«‹æ–¹ä½“地图。\n"
+"在[Environment]中引用的用于绘制背景的资æºã€‚全景天空的功能类似于其他引擎的天空"
+"盒,除了它使用等边矩形的天空地图而ä¸æ˜¯ç«‹æ–¹ä½“地图。\n"
"强烈建议使用HDR全景图,以获得准确ã€é«˜è´¨é‡çš„å射。为此,Godot支æŒRadiance HDR "
-"([code]. HDR [/code])å’ŒOpenEXR ([code].exr[/code])图åƒæ ¼å¼ã€‚\n"
+"([code].hdr[/code])å’ŒOpenEXR ([code].exr[/code])图åƒæ ¼å¼ã€‚\n"
"您å¯ä»¥ä½¿ç”¨[url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/"
"cubemap_to_panorama.html]这个工具[/url]将立方体地图转æ¢ä¸ºç­‰è§’的天空地图。"
#: doc/classes/PanoramaSky.xml:17
-#, fuzzy
msgid "[Texture] to be applied to the PanoramaSky."
-msgstr "[Texture2D]将被应用到[PanoramaSkyMaterial]。"
+msgstr "将被应用到全景天空的 [Texture]。"
#: doc/classes/ParallaxBackground.xml:4
msgid "A node used to create a parallax scrolling background."
@@ -47469,14 +48390,13 @@ msgstr ""
"[b]注æ„:[/b]当该节点进入场景åŽï¼Œå¯¹å…¶ä½ç½®å’Œæ¯”例的任何改å˜éƒ½å°†è¢«å¿½ç•¥ã€‚"
#: doc/classes/ParallaxLayer.xml:17
-#, fuzzy
msgid ""
"The ParallaxLayer's [Texture] mirroring. Useful for creating an infinite "
"scrolling background. If an axis is set to [code]0[/code], the [Texture] "
"will not be mirrored."
msgstr ""
-"视差图层的Texture2Dé•œåƒã€‚用于创建无é™æ»šåŠ¨çš„背景。如果一个轴被设置为[code]0[/"
-"code], [Texture2D]å°†ä¸ä¼šè¢«é•œåƒã€‚"
+"视差图层的[Texture]é•œåƒã€‚用于创建无é™æ»šåŠ¨çš„背景。如果一个轴被设置为[code]0[/"
+"code], [Texture]å°†ä¸ä¼šè¢«é•œåƒã€‚"
#: doc/classes/ParallaxLayer.xml:20
msgid ""
@@ -47493,9 +48413,8 @@ msgid ""
msgstr "å¤åˆ¶è§†å·®å›¾å±‚çš„è¿åŠ¨ã€‚如果一个轴被设置为[code]0[/code],它将ä¸ä¼šæ»šåŠ¨ã€‚"
#: doc/classes/Particles.xml:4
-#, fuzzy
msgid "GPU-based 3D particle emitter."
-msgstr "基于CPUçš„3Dç²’å­å‘射器。"
+msgstr "基于GPUçš„3Dç²’å­å‘射器。"
#: doc/classes/Particles.xml:7
msgid ""
@@ -47516,6 +48435,17 @@ msgid ""
"AABB[/b]. Otherwise, particles may suddenly disappear depending on the "
"camera position and angle."
msgstr ""
+"用于创建å„ç§ç²’å­ç³»ç»Ÿå’Œæ•ˆæžœçš„3Dç²’å­èŠ‚点。[Particles]实现了是å‘射器以给定的速率"
+"产生一定数é‡çš„ç²’å­ã€‚\n"
+"使用[code]process_material[/code]属性添加[ParticlesMaterial]æ¥é…置粒å­å¤–观和"
+"行为。或者,您å¯ä»¥æ·»åŠ ä¸€ä¸ªå°†åº”用于所有粒å­çš„[ShaderMaterial]。\n"
+"[b]注æ„:[/b][Particles]仅在使用GLES3渲染器时有效。如果使用GLES2渲染器,请改用"
+"[CPUParticles]。您å¯ä»¥é€šè¿‡é€‰æ‹©èŠ‚点,å•å‡»ä¸‰ç»´ç¼–辑器视窗顶部的[b]Particles[/b]"
+"èœå•ï¼Œç„¶åŽé€‰æ‹©[b]转æ¢ä¸º CPUParticles[/b],将[Particles]转æ¢ä¸º"
+"[CPUParticles]。\n"
+"[b]注æ„:[/b]在处ç†ç²’å­èŠ‚点åŽï¼Œè®°å¾—通过选择它æ¥æ›´æ–°å…¶[member "
+"visibility_aabb],å•å‡»3D编辑器视窗顶部的[b]Particles[/b]èœå•ï¼Œç„¶åŽé€‰æ‹©[b]生æˆ"
+"å¯è§ AABB[/b]。å¦åˆ™ï¼Œç²’å­å¯èƒ½ä¼šç”±äºŽç›¸æœºä½ç½®å’Œè§’度的改å˜çªç„¶æ¶ˆå¤±ã€‚"
#: doc/classes/Particles.xml:13
msgid ""
@@ -47618,9 +48548,8 @@ msgid "Maximum number of draw passes supported."
msgstr "支æŒçš„最大抽å–次数。"
#: doc/classes/Particles2D.xml:4
-#, fuzzy
msgid "GPU-based 2D particle emitter."
-msgstr "基于CPUçš„2Dç²’å­å‘射器。"
+msgstr "基于GPUçš„2Dç²’å­å‘射器。"
#: doc/classes/Particles2D.xml:7
msgid ""
@@ -51097,7 +52026,7 @@ msgstr ""
#: doc/classes/Polygon2D.xml:18
msgid ""
"Adds a bone with the specified [code]path[/code] and [code]weights[/code]."
-msgstr "添加具有指定[code]path[/code]和[code]weights[/code]的骨骼."
+msgstr "添加指定[code]path[/code]和[code]weights[/code]的骨骼."
#: doc/classes/Polygon2D.xml:24
msgid "Removes all bones from this [Polygon2D]."
@@ -51346,29 +52275,30 @@ msgstr "在数组的末尾追加一个元素。"
msgid "Removes an element from the array by index."
msgstr "从数组中删除ä½äºŽç´¢å¼•çš„元素。"
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
+#, fuzzy
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
"设置数组的大å°ã€‚如果数组被增大,则ä¿ç•™æ•°ç»„末端的元素。如果数组被缩å°ï¼Œåˆ™å°†æ•°"
"组截断到新的大å°ã€‚"
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr "改å˜ç»™å®šç´¢å¼•å¤„的字节。"
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr "返回数组的大å°ã€‚"
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
#, fuzzy
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
@@ -51411,6 +52341,16 @@ msgstr "将一个[PackedColorArray]追加到该数组的尾部。"
msgid "Appends a value to the array."
msgstr "将一个值添加到数组中。"
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr "更改给定索引处的[Color]。"
@@ -51463,12 +52403,12 @@ msgstr ""
"在数组的给定ä½ç½®æ’入一个新的整数。ä½ç½®å¿…须是有效的,或者ä½äºŽæ•°ç»„的末尾"
"([code]idx == size()[/code])。"
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
#, fuzzy
msgid "Changes the int at the given index."
msgstr "改å˜ç»™å®šç´¢å¼•å¤„的整数。"
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr "返回数组大å°ã€‚"
@@ -51504,7 +52444,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr "将一个[PackedColorArray]追加到该数组的尾部。"
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr "更改给定索引处的浮点数。"
@@ -53019,18 +53959,6 @@ msgid ""
msgstr ""
#: doc/classes/ProjectSettings.xml:204
-msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
#, fuzzy
msgid ""
"Specifies a file to override project settings. For example: [code]user://"
@@ -53043,7 +53971,7 @@ msgstr ""
"[b] 注æ„:[/b]无论此设置的值是多少,[code]res://override.cfg[/code]ä»å°†è¢«è¯»å–"
"以覆盖项目设置(请å‚阅顶部的此类说明)。"
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -53058,7 +53986,22 @@ msgstr ""
"[code]false[/code],项目将把用户数æ®ä¿å­˜åˆ°[code] (OS user data directory)/"
"Godot/app_userdata/(project name)[/code]。"
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
#, fuzzy
msgid ""
"Icon set in [code].ico[/code] format used on Windows to set the game's icon. "
@@ -53067,7 +54010,7 @@ msgstr ""
"设置[code].ico[/code]æ ¼å¼å›¾æ ‡ï¼Œåœ¨Windows上用于设置游æˆå›¾æ ‡ã€‚这是在å¯åŠ¨æ—¶é€šè¿‡"
"调用[method DisplayServer.set_native_icon]自动完æˆçš„。"
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -53081,14 +54024,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -53097,7 +54040,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -53105,7 +54048,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -53121,14 +54064,14 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
msgid ""
"Forces a delay between frames in the main loop (in milliseconds). This may "
"be useful if you plan to disable vertical synchronization."
@@ -53136,7 +54079,7 @@ msgstr ""
"强制主循环中帧之间的延迟(以毫秒为å•ä½ï¼‰ã€‚如果您计划ç¦ç”¨åž‚ç›´åŒæ­¥ï¼Œè¿™å¯èƒ½å¾ˆæœ‰"
"用。"
-#: doc/classes/ProjectSettings.xml:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -53147,17 +54090,17 @@ msgstr ""
"觉上没有任何å˜åŒ–,å±å¹•ä¸ä¼šè¢«é‡ç»˜ã€‚这是为了编写应用程åºå’Œç¼–辑器,但在大多数游"
"æˆä¸­è¿™æ˜¯éžå¸¸æ— ç”¨çš„(并å¯èƒ½æŸå®³æ€§èƒ½)。"
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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 "å¯ç”¨ä½Žå¤„ç†å™¨ä½¿ç”¨æ¨¡å¼æ—¶å¸§é—´çš„ç¡çœ é‡(以微秒计)。值越高,CPUå ç”¨çŽ‡è¶Šä½Žã€‚"
-#: doc/classes/ProjectSettings.xml:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr "项目è¿è¡Œæ—¶å°†åŠ è½½çš„主场景文件的路径。"
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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 "
@@ -53166,13 +54109,13 @@ msgstr ""
"当声音在给定的时间内低于给定的dB阈值时,音频总线将自动关闭。这å¯ä»¥èŠ‚çœCPU,因"
"为分é…给该总线的效果将ä¸å†åšä»»ä½•å¤„ç†ã€‚"
-#: doc/classes/ProjectSettings.xml:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr "项目中使用的默认[AudioBusLayout]资æºæ–‡ä»¶ï¼Œé™¤éžè¢«åœºæ™¯è¦†ç›–。"
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
msgid ""
"Specifies the audio driver to use. This setting is platform-dependent as "
"each platform supports different audio drivers. If left empty, the default "
@@ -53181,7 +54124,7 @@ msgstr ""
"指定è¦ä½¿ç”¨çš„音频驱动程åºã€‚此设置å–决于平å°ï¼Œå› ä¸ºæ¯ä¸ªå¹³å°æ”¯æŒä¸åŒçš„音频驱动程"
"åºã€‚如果留空,将使用默认音频驱动程åºã€‚"
-#: doc/classes/ProjectSettings.xml:269
+#: doc/classes/ProjectSettings.xml:270
msgid ""
"If [code]true[/code], microphone input will be allowed. This requires "
"appropriate permissions to be set when exporting to Android or iOS."
@@ -53189,7 +54132,7 @@ msgstr ""
"如果[code]true[/code],将å…许麦克风输入。这需è¦åœ¨å¯¼å‡ºåˆ°Android或iOS时设置适当"
"çš„æƒé™ã€‚"
-#: doc/classes/ProjectSettings.xml:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
@@ -53197,7 +54140,7 @@ msgstr ""
"用于音频的混åˆçŽ‡ï¼ˆå•ä½ï¼šHz)。一般æ¥è¯´ï¼Œæœ€å¥½ä¸è¦ç¢°è¿™ä¸ªï¼ŒæŠŠå®ƒç•™ç»™ä¸»æœºæ“作系"
"统。"
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
@@ -53206,7 +54149,7 @@ msgstr ""
"更安全地覆盖 Web å¹³å°ä¸­çš„ [member audio/mix_rate]。这里 [code]0 [/code] çš„æ„"
"æ€æ˜¯\"让æµè§ˆå™¨é€‰æ‹©\"(因为有些æµè§ˆå™¨ä¸å–œæ¬¢å¼ºåˆ¶æ··åˆé€ŸçŽ‡ï¼‰ã€‚"
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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 "
@@ -53215,7 +54158,7 @@ msgstr ""
"音频的输出延迟(毫秒)。较低的值将导致较低的音频延迟,但代价是CPU使用率增加。较"
"低的值å¯èƒ½ä¼šå¯¼è‡´è¾ƒæ…¢ç¡¬ä»¶ä¸Šçš„声音破裂。"
-#: doc/classes/ProjectSettings.xml:281
+#: doc/classes/ProjectSettings.xml:282
msgid ""
"Safer override for [member audio/output_latency] in the Web platform, to "
"avoid audio issues especially on mobile devices."
@@ -53223,14 +54166,14 @@ msgstr ""
"在网络平å°ä¸­æ›´å®‰å…¨åœ°è¦†ç›– [member audio/output_latency],以é¿å…音频问题,尤其"
"是在移动设备上。"
-#: doc/classes/ProjectSettings.xml:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -53243,7 +54186,7 @@ msgstr ""
"件å˜å°ã€‚解压缩速度大多ä¸å—压缩级别的影å“。[code]-1[/code]使用默认的gzip压缩级"
"别,该级别与[code]6[/code]相åŒï¼Œä½†ç”±äºŽåº•å±‚zlib更新,未æ¥å¯èƒ½ä¼šå‘生å˜åŒ–。"
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -53256,7 +54199,7 @@ msgstr ""
"件å˜å°ã€‚解压缩速度大多ä¸å—压缩级别的影å“。[code]-1[/code]使用默认的gzip压缩级"
"别,该级别与[code]6[/code]相åŒï¼Œä½†ç”±äºŽåº•å±‚zlib更新,未æ¥å¯èƒ½ä¼šå‘生å˜åŒ–。"
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -53265,7 +54208,7 @@ msgstr ""
"Zstandard的默认压缩级别。影å“压缩的场景和资æºã€‚较高的级别会以压缩速度为代价导"
"致文件å˜å°ã€‚解压缩速度大多ä¸å—压缩级别的影å“。"
-#: doc/classes/ProjectSettings.xml:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
@@ -53273,7 +54216,7 @@ msgstr ""
"在Zstandard中å¯ç”¨ [url=https://github.com/facebook/zstd/releases/tag/"
"v1.3.2]long-distance matching[/url] 。"
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
@@ -53282,7 +54225,7 @@ msgstr ""
"使用与Zstandardçš„é•¿è·ç¦»åŒ¹é…进行压缩时,å…许的最大大å°é™åˆ¶(2的幂)。更高的值å¯"
"以产生更好的压缩,但是在压缩和解压缩时需è¦æ›´å¤šçš„内存。"
-#: doc/classes/ProjectSettings.xml:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -53293,19 +54236,19 @@ msgstr ""
"个设置是为了在移æ¤æ—§é¡¹ç›®(戈多2)时使用,因为使用æˆå‘˜å˜é‡æ˜¯ä»Žæˆˆå¤š3开始的首选风"
"格。"
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr "如果[code]true[/code],则当常é‡ç”¨ä½œå‡½æ•°æ—¶ä¼šå‘出警告。"
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
"如果[code]true[/code],当使用已废弃的关键字如[code]slave[/code]时,å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
@@ -53314,7 +54257,7 @@ msgstr ""
"如果[code]true[/code],则å¯ç”¨ç‰¹å®šçš„GDScript警告(请å‚阅[code]debug/gdscript/"
"warnings/*[/code]设置)。如果[code]为false[/code],则ç¦ç”¨æ‰€æœ‰GDScript警告。"
-#: doc/classes/ProjectSettings.xml:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
@@ -53322,13 +54265,13 @@ msgstr ""
"如果[code]true[/code],则[code]res://addons[/code]文件夹中的脚本ä¸ä¼šç”Ÿæˆè­¦"
"告。"
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr "如果为[code]true[/code],当函数被声明为与常é‡åŒå时,å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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 "
@@ -53337,7 +54280,7 @@ msgstr ""
"如果为[code]true[/code], 当一个函数与一个å˜é‡åŒå声明时,å¯ç”¨è­¦å‘Šã€‚在未æ¥çš„版"
"本中,当GDScript支æŒç¬¬ä¸€ç±»å‡½æ•°æ—¶ï¼Œè¿™å°†å˜æˆä¸€ä¸ªé”™è¯¯ã€‚"
-#: doc/classes/ProjectSettings.xml:323
+#: doc/classes/ProjectSettings.xml:324
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."
@@ -53345,20 +54288,20 @@ msgstr ""
"如果[code]为true[/code],则当分é…ç»™å˜é‡çš„函数å¯èƒ½äº§ç”Ÿå¹¶è¿”回函数状æ€è€Œä¸æ˜¯å€¼"
"时,å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr "如果[code]true[/code],则在使用函数时å¯ç”¨è­¦å‘Šï¼Œå°±åƒå®ƒæ˜¯å±žæ€§ä¸€æ ·ã€‚"
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
"如果[code]true[/code],则当三元è¿ç®—符å¯èƒ½å‘出类型ä¸å…¼å®¹çš„值时,将å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
msgid ""
"If [code]true[/code], enables warnings when dividing an integer by another "
"integer (the decimal part will be discarded)."
@@ -53366,7 +54309,7 @@ msgstr ""
"如果[code]为true[/code],则在用一个整数除以å¦ä¸€ä¸ªæ•´æ•°æ—¶å¯ç”¨è­¦å‘Š(å°æ•°éƒ¨åˆ†å°†è¢«"
"丢弃)。"
-#: doc/classes/ProjectSettings.xml:335
+#: doc/classes/ProjectSettings.xml:336
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 "
@@ -53375,13 +54318,13 @@ msgstr ""
"如果[code]为true[/code],则在将浮点值传递给需è¦æ•´æ•°çš„函数时å¯ç”¨è­¦å‘Š(它将被转"
"æ¢å¹¶å¤±åŽ»ç²¾åº¦)。"
-#: doc/classes/ProjectSettings.xml:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr "如果[code]true[/code],则在将属性当作函数使用时å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -53392,7 +54335,7 @@ msgstr ""
"å‚æ•°)调用函数时å¯ç”¨è­¦å‘Šã€‚这样的返回值有时使用[enum Error] 枚举æ¥è¡¨ç¤ºå¯èƒ½çš„é”™"
"误。"
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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 "
@@ -53401,7 +54344,7 @@ msgstr ""
"如果[code]true[/code],则在定义局部或å­ç±»æˆå‘˜å˜é‡æ—¶å¯ç”¨è­¦å‘Šï¼Œè¯¥å±€éƒ¨æˆ–å­ç±»æˆå‘˜"
"å˜é‡å°†åœ¨ä¸Šå±‚阴影å˜é‡(如æˆå‘˜å˜é‡)。"
-#: doc/classes/ProjectSettings.xml:347
+#: doc/classes/ProjectSettings.xml:348
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 "
@@ -53410,7 +54353,7 @@ msgstr ""
"如果[code]true[/code],则在调用对周围代ç æ²¡æœ‰å½±å“的表达å¼æ—¶å¯ç”¨è­¦å‘Šï¼Œä¾‹å¦‚å°†"
"[code]2 + 2[/code]写æˆè¯­å¥ã€‚"
-#: doc/classes/ProjectSettings.xml:350
+#: doc/classes/ProjectSettings.xml:351
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 "
@@ -53419,18 +54362,18 @@ msgstr ""
"如果[code]true[/code],则在调用对周围代ç æ²¡æœ‰å½±å“的三元表达å¼æ—¶å¯ç”¨è­¦å‘Šï¼Œä¾‹å¦‚"
"å°†[code]42(如果激活else 0[/code])写入语å¥ã€‚"
-#: doc/classes/ProjectSettings.xml:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr "如果[code]true[/code],所有警告将被报告为错误。"
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr "如果[code]true[/code],则在使用以å‰æ²¡æœ‰èµ‹å€¼çš„å˜é‡æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
msgid ""
"If [code]true[/code], enables warnings when assigning a variable using an "
"assignment operator like [code]+=[/code] if the variable wasn't previously "
@@ -53439,7 +54382,7 @@ msgstr ""
"如果[code]true[/code],则在使用赋值æ“作符[code]+=[/code](如果å˜é‡ä¹‹å‰æ²¡æœ‰èµ‹"
"值)为å˜é‡èµ‹å€¼æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:362
+#: doc/classes/ProjectSettings.xml:363
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)."
@@ -53447,7 +54390,7 @@ msgstr ""
"如果[code]true[/code],则在检测到ä¸å¯è¾¾çš„代ç æ—¶å¯ç”¨è­¦å‘Š(例如在始终执行的"
"[code]return[/code]语å¥ä¹‹åŽ)。"
-#: doc/classes/ProjectSettings.xml:365
+#: doc/classes/ProjectSettings.xml:366
msgid ""
"If [code]true[/code], enables warnings when using an expression whose type "
"may not be compatible with the function parameter expected."
@@ -53455,52 +54398,52 @@ msgstr ""
"如果[code]true[/code],则在使用类型å¯èƒ½ä¸ŽæœŸæœ›çš„函数å‚æ•°ä¸å…¼å®¹çš„表达å¼æ—¶å¯ç”¨è­¦"
"告。"
-#: doc/classes/ProjectSettings.xml:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr "如果[code]true[/code],则在执行ä¸å®‰å…¨çš„强制转æ¢æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
msgid ""
"If [code]true[/code], enables warnings when calling a method whose presence "
"is not guaranteed at compile-time in the class."
msgstr ""
"如果[code]true[/code],则在调用类中ä¸èƒ½ä¿è¯åœ¨ç¼–译时存在的方法时å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:374
+#: doc/classes/ProjectSettings.xml:375
msgid ""
"If [code]true[/code], enables warnings when accessing a property whose "
"presence is not guaranteed at compile-time in the class."
msgstr ""
"如果[code]true[/code],则在访问类中ä¸èƒ½ä¿è¯åœ¨ç¼–译时存在的属性时å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:377
+#: doc/classes/ProjectSettings.xml:378
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr "如果[code]true[/code],则在信å·æœªä½¿ç”¨æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
#, fuzzy
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr "如果[code]true[/code],则在局部å˜é‡æœªä½¿ç”¨æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr "如果[code]true[/code],则在信å·æœªä½¿ç”¨æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr "如果[code]true[/code],则在局部å˜é‡æœªä½¿ç”¨æ—¶å¯ç”¨è­¦å‘Šã€‚"
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
msgid ""
"If [code]true[/code], enables warnings when assigning the result of a "
"function that returns [code]void[/code] to a variable."
@@ -53508,11 +54451,11 @@ msgstr ""
"如果[code]true[/code],则在将返回[code]void[/code]的函数的结果赋值给å˜é‡æ—¶å¯"
"用警告。"
-#: doc/classes/ProjectSettings.xml:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr "当引擎崩溃时,在回溯之å‰æ˜¾ç¤ºçš„消æ¯ã€‚"
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
#, fuzzy
msgid ""
"Maximum number of frames per second allowed. The actual number of frames per "
@@ -53529,19 +54472,19 @@ msgstr ""
"因此,这个设置主è¦ç”¨äºŽå°†æœ€å¤§FPSé™ä½Žåˆ°åž‚ç›´åŒæ­¥ä»¥ä¸‹ï¼Œä¾‹å¦‚执行é™æ€å¸§çš„éžå®žæ—¶æ¸²"
"染,或在延迟æ¡ä»¶ä¸‹æµ‹è¯•é¡¹ç›®ã€‚"
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr "调试GDScriptæ—¶å…许的最大调用堆栈。"
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr "分æžæ—¶æ¯ä¸ªå¸§å…许的最大函数数é‡ã€‚"
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr "æ¯ç§’钟打å°å¸§åˆ°æ ‡å‡†è¾“出。"
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
@@ -53550,60 +54493,60 @@ msgstr ""
"è¿è¡Œæ—¶æ‰“å°æ›´å¤šä¿¡æ¯åˆ°æ ‡å‡†è¾“出。它显示诸如内存泄æ¼ã€å“ªäº›åœºæ™¯å’Œèµ„æºæ­£åœ¨åŠ è½½ç­‰ä¿¡"
"æ¯ã€‚"
-#: doc/classes/ProjectSettings.xml:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr "最大的å¯è§†è„šæœ¬è°ƒç”¨å †æ ˆï¼Œä»¥é¿å…æ— é™é€’归。"
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
#, fuzzy
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr "碰撞形状的颜色,当在调试èœå•ä¸­å¯ç”¨â€œå¯è§ç¢°æ’žå½¢çŠ¶â€æ—¶å¯è§ã€‚"
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr "碰撞形状的颜色,当在调试èœå•ä¸­å¯ç”¨â€œå¯è§ç¢°æ’žå½¢çŠ¶â€æ—¶å¯è§ã€‚"
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr "被ç¦ç”¨çš„导航几何图形的颜色,在调试èœå•ä¸­å¯ç”¨â€œå¯è§å¯¼èˆªâ€æ—¶å¯è§ã€‚"
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr "导航几何图形的颜色,在调试èœå•ä¸­å¯ç”¨â€œå¯è§å¯¼èˆªâ€æ—¶å¯è§ã€‚"
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr "鼠标光标的自定义图åƒ(最大256×256)。"
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr "自定义鼠标光标图åƒçš„热点。"
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr "工具æ示相对于鼠标光标热点的ä½ç½®å移é‡ã€‚"
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
#, fuzzy
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
@@ -53613,7 +54556,7 @@ msgstr ""
"如果[code]true[/code],å…许在Windowså’ŒmacOS上显示HiDPI。这个设置对桌é¢Linux没"
"有影å“,因为dpi感知回退在那里ä¸å—支æŒã€‚"
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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."
@@ -53621,7 +54564,7 @@ msgstr ""
"如果[code]true[/code],则ä¿æŒå±å¹•æ‰“å¼€(å³ä½¿åœ¨ä¸æ´»åŠ¨çš„情况下),因此å±å¹•ä¿æŠ¤ç¨‹åº"
"ä¸ä¼šæŽ¥ç®¡ã€‚适用于桌é¢å’Œç§»åŠ¨å¹³å°ã€‚"
-#: doc/classes/ProjectSettings.xml:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -53630,7 +54573,7 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
@@ -53638,7 +54581,7 @@ msgstr ""
"如果[code]true[/code],主指示器将自动éšè—。这åªä¼šå½±å“没有物ç†home键的iOS设"
"备。"
-#: doc/classes/ProjectSettings.xml:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -53648,7 +54591,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -53656,19 +54599,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -53682,35 +54625,35 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
#, fuzzy
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr "默认情况下å…许窗å£å¯è°ƒæ•´å¤§å°ã€‚"
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr "如果大于0,则在è¿è¡Œæ¸¸æˆæ—¶è¦†ç›–窗å£é«˜åº¦ã€‚用于测试拉伸模å¼ã€‚"
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr "如果大于0,则在è¿è¡Œæ¸¸æˆæ—¶è¦†ç›–窗å£å®½åº¦ã€‚用于测试拉伸模å¼ã€‚"
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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 "
@@ -53719,13 +54662,13 @@ msgstr ""
"设置游æˆçš„主视窗宽度。在桌é¢å¹³å°ä¸Šï¼Œè¿™æ˜¯é»˜è®¤çš„窗å£å¤§å°ã€‚当å¯ç”¨æ‹‰ä¼¸æ¨¡å¼è®¾ç½®"
"时,也使用此å‚数作为å‚考。"
-#: doc/classes/ProjectSettings.xml:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr "指定è¦ä½¿ç”¨çš„å¹³æ¿é©±åŠ¨ç¨‹åºã€‚如果为空,将使用默认驱动程åºã€‚"
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -53737,7 +54680,7 @@ msgstr ""
"较高的输入延迟和较低的帧率为代价。如果[code]false[/code],垂直åŒæ­¥å°†è¢«ç¦ç”¨ï¼Œ"
"然而,许多平å°ä»å°†æ‰§è¡Œå®ƒ(如手机平å°å’ŒHTML5)。"
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -53753,7 +54696,7 @@ msgstr ""
"[b]注:[/b]这个选项是实验性的,旨在缓解一些用户的å¡é¡¿ä½“验。然而,有些用户在使"
"用它时体验到垂直åŒæ­¥å¸§çŽ‡å‡åŠ(例如从60 FPSé™è‡³30 FPS)。"
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -53769,7 +54712,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
#, fuzzy
msgid ""
"Search path for project-specific script templates. Godot will search for "
@@ -53779,7 +54722,7 @@ msgstr ""
"æœç´¢ç‰¹å®šäºŽé¡¹ç›®çš„脚本模æ¿è·¯å¾„。脚本模æ¿å°†åœ¨ç‰¹å®šäºŽç¼–辑器的路径和特定于项目的路"
"径中进行æœç´¢ã€‚"
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -53790,7 +54733,7 @@ msgstr ""
"[code]tscn[/code],如果你也想解æžä½ çš„场景文件,特别是如果你使用的是在场景文件"
"中åºåˆ—化的内置脚本。"
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
@@ -53798,7 +54741,7 @@ msgstr ""
"[member ScrollContainer.scroll_deadzone],它将用于所有[ScrollContainer]s,除"
"éžé‡å†™ã€‚"
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
#, fuzzy
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
@@ -53807,7 +54750,7 @@ msgstr ""
"如果[code]为true[/code],则切æ¢Windowså’ŒUWP对è¯æ¡†ä¸­çš„Cancelå’ŒOK按钮,以éµå¾ªç•Œ"
"é¢çº¦å®šã€‚"
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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)."
@@ -53815,31 +54758,31 @@ msgstr ""
"用于项目的自定义[Theme]资æºæ–‡ä»¶çš„路径([code]theme[/code]或通用[code]tres[/"
"code]/[code]res[/code]扩展å)。"
-#: doc/classes/ProjectSettings.xml:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr "自定义[Font]资æºçš„路径,用于项目的所有GUI元素的默认字体。"
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr "如果[code]true[/code],确ä¿ä½¿ç”¨çš„主题将在HiDPI下工作。"
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr "在[Tree], [ItemList]等控件中为增é‡æœç´¢è®¾ç½®è®¡æ—¶å™¨(以毫秒为å•ä½)。"
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr "检测[TextEdit]空闲的计时器(å•ä½ä¸ºç§’)。"
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr "工具æ示的默认延迟(以秒为å•ä½)。"
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -53851,7 +54794,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -53862,7 +54805,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -53873,7 +54816,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -53887,7 +54830,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -53900,7 +54843,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -53913,7 +54856,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -53927,7 +54870,7 @@ msgstr ""
"[b]注æ„:[/b] 默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬å¯¹äºŽå‡ ä¸ª"
"[Control]的内部逻辑是必è¦çš„。然而,分é…给动作的事件å¯ä»¥è¢«ä¿®æ”¹ã€‚"
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -53938,7 +54881,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -53952,7 +54895,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -53966,7 +54909,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -53977,7 +54920,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -53989,7 +54932,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -54000,7 +54943,7 @@ msgstr ""
"[b]注æ„:[/b]默认的[code]ui_*[/code]动作ä¸èƒ½è¢«åˆ é™¤ï¼Œå› ä¸ºå®ƒä»¬æ˜¯å‡ ä¸ª[Control]çš„"
"内部逻辑所必需的。但是,å¯ä»¥ä¿®æ”¹åˆ†é…给该æ“作的事件。"
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -54012,464 +54955,464 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr "如果[code]true[/code],则在点击或滑动触摸å±æ—¶å‘é€é¼ æ ‡è¾“入事件。"
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr "如果[code]true[/code],则在点击或拖动鼠标时å‘é€è§¦æ‘¸è¾“入事件。"
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
#, fuzzy
msgid "Default delay for touch events. This only affects iOS devices."
msgstr "工具æ示的默认延迟(以秒为å•ä½)。"
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr "2D物ç†å±‚1çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr "2D物ç†å±‚10çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr "2D物ç†å±‚11çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr "2D物ç†å±‚12çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr "2D物ç†å±‚13çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr "2D物ç†å±‚14çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr "2D物ç†å±‚15çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr "2D物ç†å±‚16çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr "2D物ç†å±‚17çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr "2D物ç†å±‚18çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr "2D物ç†å±‚19çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr "2D物ç†å±‚20çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
#, fuzzy
msgid "Optional name for the 2D physics layer 21."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
#, fuzzy
msgid "Optional name for the 2D physics layer 22."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
#, fuzzy
msgid "Optional name for the 2D physics layer 23."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
#, fuzzy
msgid "Optional name for the 2D physics layer 24."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
#, fuzzy
msgid "Optional name for the 2D physics layer 25."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
#, fuzzy
msgid "Optional name for the 2D physics layer 26."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
#, fuzzy
msgid "Optional name for the 2D physics layer 27."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
#, fuzzy
msgid "Optional name for the 2D physics layer 28."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
#, fuzzy
msgid "Optional name for the 2D physics layer 29."
msgstr "2D物ç†å±‚2çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr "2D物ç†å±‚3çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
#, fuzzy
msgid "Optional name for the 2D physics layer 30."
msgstr "2D物ç†å±‚3çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
#, fuzzy
msgid "Optional name for the 2D physics layer 31."
msgstr "2D物ç†å±‚3çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
#, fuzzy
msgid "Optional name for the 2D physics layer 32."
msgstr "2D物ç†å±‚3çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr "2D物ç†å±‚4çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr "2D物ç†å±‚5çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr "2D物ç†å±‚6çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr "2D物ç†å±‚7çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr "2D物ç†å±‚8çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr "2D物ç†å±‚9çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr "2D物ç†å±‚1çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr "2D渲染层10çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr "2D渲染层11çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr "2D渲染层12çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr "2D渲染层13çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr "2D渲染层14çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr "2D渲染层15çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr "2D渲染层16çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr "2D渲染层17çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr "2D渲染层18çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr "2D渲染层19çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr "2D 渲染层 2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr "2D 渲染层 20 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr "2D 渲染层 3 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr "2D 渲染层 4 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr "2D 渲染层 5 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr "2D 渲染层 6 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr "2D 渲染层 7 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr "2D 渲染层 8 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr "2D 渲染层 9 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr "3D物ç†å±‚1 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr "3D物ç†å±‚10 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr "3D物ç†å±‚11 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr "3D物ç†å±‚12 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr "3D物ç†å±‚13 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr "3D物ç†å±‚14 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr "3D物ç†å±‚15 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr "3D物ç†å±‚16 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr "3D物ç†å±‚17 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr "3D物ç†å±‚18 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr "3D物ç†å±‚19 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr "3D物ç†å±‚20 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
#, fuzzy
msgid "Optional name for the 3D physics layer 21."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
#, fuzzy
msgid "Optional name for the 3D physics layer 22."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
#, fuzzy
msgid "Optional name for the 3D physics layer 23."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
#, fuzzy
msgid "Optional name for the 3D physics layer 24."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
#, fuzzy
msgid "Optional name for the 3D physics layer 25."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
#, fuzzy
msgid "Optional name for the 3D physics layer 26."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
#, fuzzy
msgid "Optional name for the 3D physics layer 27."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
#, fuzzy
msgid "Optional name for the 3D physics layer 28."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
#, fuzzy
msgid "Optional name for the 3D physics layer 29."
msgstr "3D物ç†å±‚2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr "3D物ç†å±‚3 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
#, fuzzy
msgid "Optional name for the 3D physics layer 30."
msgstr "3D物ç†å±‚3 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
#, fuzzy
msgid "Optional name for the 3D physics layer 31."
msgstr "3D物ç†å±‚3 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
#, fuzzy
msgid "Optional name for the 3D physics layer 32."
msgstr "3D物ç†å±‚3 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr "3D物ç†å±‚4 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr "3D物ç†å±‚5 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr "3D物ç†å±‚6 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr "3D物ç†å±‚7 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr "3D物ç†å±‚8 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr "3D物ç†å±‚9 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr "3D渲染层1 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr "3D渲染层10 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr "3D渲染层11 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr "3D渲染层12 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr "3D渲染层13 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr "3D渲染层14 çš„å¯é€‰å称"
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr "3D渲染层15 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr "3D渲染层16 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr "3D渲染层17 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr "3D渲染层18 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr "3D渲染层19 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr "3D渲染层2 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr "3D渲染层20 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr "3D渲染层3 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr "3D渲染层4 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr "3D渲染层5 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr "3D渲染层6 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr "3D渲染层7 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr "3D渲染层8 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr "3D渲染层9 çš„å¯é€‰å称。"
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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."
@@ -54477,33 +55420,33 @@ msgstr ""
"如果给定语言的翻译ä¸å¯ç”¨ï¼Œåˆ™ä½¿ç”¨é»˜è®¤åœ°åŸŸã€‚如果留空,将使用 [code]en[/code],"
"å³è‹±æ–‡ã€‚"
-#: doc/classes/ProjectSettings.xml:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr "如果ä¸ä¸ºç©ºï¼Œé‚£ä¹ˆå½“从编辑器中è¿è¡Œé¡¹ç›®æ—¶ï¼Œå°†ä½¿ç”¨è¯¥è¯­è¨€ã€‚"
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr "如果[code]true[/code],将所有输出记录到文件中。"
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr "项目中的日志的路径。建议使用[code]user://[/code]作为路径。"
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr "指定å…许的日志文件的最大数é‡(用于旋转)。"
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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."
@@ -54511,7 +55454,7 @@ msgstr ""
"Godot使用一个消æ¯é˜Ÿåˆ—æ¥å»¶è¿Ÿä¸€äº›å‡½æ•°è°ƒç”¨ã€‚如果你的空间用完了(你会看到一个错"
"误),你å¯ä»¥åœ¨è¿™é‡Œå¢žåŠ å¤§å°ã€‚"
-#: doc/classes/ProjectSettings.xml:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -54522,7 +55465,7 @@ msgstr ""
"以é¿å…在线程上åœæ­¢è¯·æ±‚它们的æœåŠ¡å™¨ã€‚如果在线程中加载资æºæ—¶æœåŠ¡å™¨ç»å¸¸å¡é¡¿ï¼Œè¯·"
"增加此数字。"
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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 "
@@ -54531,7 +55474,7 @@ msgstr ""
"å…许调试器输出的最大字符é‡ã€‚超过这个值,内容就会被放弃。这有助于é¿å…调试器的"
"连接åœæ»žã€‚"
-#: doc/classes/ProjectSettings.xml:955
+#: doc/classes/ProjectSettings.xml:956
#, fuzzy
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
@@ -54541,7 +55484,7 @@ msgstr ""
"å…许调试器å‘é€çš„最大错误数。超过这个值,内容就会被抛弃。这有助于é¿å…调试器的"
"连接åœæ»žã€‚"
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
#, fuzzy
msgid ""
"Maximum amount of messages allowed to send as output from the debugger. Over "
@@ -54551,7 +55494,7 @@ msgstr ""
"å…许调试器输出的最大字符é‡ã€‚超过这个值,内容就会被放弃。这有助于é¿å…调试器的"
"连接åœæ»žã€‚"
-#: doc/classes/ProjectSettings.xml:961
+#: doc/classes/ProjectSettings.xml:962
#, fuzzy
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
@@ -54561,7 +55504,7 @@ msgstr ""
"å…许从调试器å‘é€çš„最大警告数。超过这个值,内容就会被抛弃。这有助于é¿å…调试器"
"的连接åœæ»žã€‚"
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
#, fuzzy
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
@@ -54570,51 +55513,51 @@ msgid ""
msgstr ""
"用于ååºåˆ—化Godotæ•°æ®çš„æ•°æ®åŒ…对等æµçš„默认大å°ã€‚超过这个大å°ï¼Œæ•°æ®ä¼šè¢«ä¸¢å¼ƒã€‚"
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr "使用TCP的连接å°è¯•çš„超时(以秒为å•ä½ï¼‰ã€‚"
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(å•ä½ï¼šåƒå­—节)。"
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(å•ä½ï¼šåƒå­—节)。"
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(å•ä½ï¼šåƒå­—节)。"
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(å•ä½ï¼šåƒå­—节)。"
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
#, fuzzy
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(å•ä½ï¼šåƒå­—节)。"
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
msgid ""
"Amount of read ahead used by remote filesystem. Higher values decrease the "
"effects of latency at the cost of higher bandwidth usage."
@@ -54622,11 +55565,11 @@ msgstr ""
"对远程文件系统的预读å–é‡ã€‚更高的值å¯ä»¥å‡å°‘延迟的影å“,但代价是更高的带宽消"
"耗。"
-#: doc/classes/ProjectSettings.xml:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr "远程文件系统使用的页é¢å¤§å°ï¼ˆå­—节)。"
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -54640,20 +55583,20 @@ msgstr ""
"certificates.crt]Mozillaè¯ä¹¦åŒ…[/url]。如果留空,将使用默认的è¯ä¹¦åŒ…。\n"
"如果有疑问,让这个设置为空。"
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr "用什么æ¥åˆ†éš”节点å称和编å·ã€‚这主è¦æ˜¯ä¸€ä¸ªç¼–辑器的设置。"
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
#, fuzzy
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
@@ -54661,14 +55604,14 @@ msgid ""
"enabled."
msgstr "用于broad-phase 2D 哈希网格算法的哈希表的大å°ã€‚"
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -54681,7 +55624,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
#, fuzzy
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
@@ -54702,7 +55645,7 @@ msgstr ""
"PhysicsServer2D.area_PARAM_GRAVITY, 98)\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
#, fuzzy
msgid ""
"The default gravity direction in 2D.\n"
@@ -54723,7 +55666,7 @@ msgstr ""
"PhysicsServer2D.area_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -54736,7 +55679,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
#, fuzzy
msgid ""
"Threshold defining the surface size that constitutes a large object with "
@@ -54747,7 +55690,7 @@ msgstr ""
"在broad-phase 2D哈希网格算法中,定义相对于å•å…ƒè€Œè¨€çš„æž„æˆå¤§åž‹ç‰©ä½“的表é¢å°ºå¯¸çš„"
"阈值。"
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
#, fuzzy
msgid ""
"Sets which physics engine to use for 2D physics.\n"
@@ -54758,7 +55701,7 @@ msgstr ""
"\"DEFAULT \"å’Œ \"GodotPhysics2D \"是一样的,因为目å‰è¿˜æ²¡æœ‰ä½¿ç”¨å…¶ä»–çš„2D物ç†å¼•"
"擎。"
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
#, fuzzy
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
@@ -54768,7 +55711,7 @@ msgstr ""
"角速度阈值。在此阈值以下,2D物ç†ä½“将被视为ä¸æ´»åŠ¨ã€‚å‚阅[constant "
"physicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]。"
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
#, fuzzy
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
@@ -54778,7 +55721,7 @@ msgstr ""
"线性速度的阈值。在此阈值下二维物ç†ä½“被认为是ä¸æ´»åŠ¨çš„。å‚阅[constant "
"PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]。"
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -54792,7 +55735,7 @@ msgstr ""
"[b]警告:[/b] 从Godot 3.2开始,关于物ç†è¿ç®—使用多线程的å馈ä¸ä¸€ã€‚请务必评估它"
"是å¦ç¡®å®žç»™ä½ å¸¦æ¥äº†é¢å¤–的性能,并且在使用它时没有过时。"
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
#, fuzzy
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
@@ -54801,13 +55744,13 @@ msgstr ""
"2D物ç†ç‰©ä½“ä¸æ´»åŠ¨çš„时间(以秒为å•ä½ï¼‰ã€‚在此之å‰ï¼Œ2D物ç†ä½“将进入ç¡çœ çŠ¶æ€ã€‚å‚阅"
"[constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]。"
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
#, fuzzy
msgid ""
"Sets whether the 3D physics world will be created with support for "
@@ -54815,7 +55758,7 @@ msgid ""
msgstr ""
"设置三维物ç†ä¸–界的创建是å¦æ”¯æŒ[SoftBody3D]物ç†è¿ç®—(åªé€‚用于Bullet物ç†å¼•æ“Ž)。"
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -54828,7 +55771,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
#, fuzzy
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
@@ -54849,7 +55792,7 @@ msgstr ""
"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
#, fuzzy
msgid ""
"The default gravity direction in 3D.\n"
@@ -54870,7 +55813,7 @@ msgstr ""
"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n"
"[/codeblock]"
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -54883,13 +55826,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
#, fuzzy
msgid ""
"Sets which physics engine to use for 3D physics.\n"
@@ -54901,11 +55844,11 @@ msgstr ""
"ç›®å‰ \"DEFAULT \"是[url=https://bulletphysics.org]Bullet[/url]物ç†å¼•æ“Žã€‚ä»ç„¶"
"æ”¯æŒ \"GodotPhysics3D \"引擎作为替代。"
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr "在根视图上å¯ç”¨ [member Viewport.physics_object_picking]。"
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -54919,7 +55862,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -54932,7 +55875,7 @@ msgstr ""
"[b]注æ„:[/b] 这个属性åªåœ¨é¡¹ç›®å¯åŠ¨æ—¶è¢«è¯»å–。è¦åœ¨è¿è¡Œæ—¶æ”¹å˜ç‰©ç†FPS,请设置"
"[member Engine.iterations_per_second]æ¥ä»£æ›¿ã€‚"
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
#, fuzzy
msgid ""
"Controls how much physics ticks are synchronized with real time. For 0 or "
@@ -54953,7 +55896,7 @@ msgstr ""
"但å…许平滑帧率抖动。默认值0.5对大多数人æ¥è¯´åº”该是没有问题的;高于2的值å¯èƒ½ä¼š"
"导致游æˆå¯¹æŽ‰å¸§çš„å应有明显的延迟,ä¸å»ºè®®ä½¿ç”¨ã€‚"
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -54963,7 +55906,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -54973,7 +55916,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -54984,7 +55927,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -54994,7 +55937,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -55002,7 +55945,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
#, fuzzy
msgid ""
"Some NVIDIA GPU drivers have a bug which produces flickering issues for the "
@@ -55020,7 +55963,7 @@ msgstr ""
"径,但会牺牲性能。这个选项åªå½±å“GLES2渲染åŽç«¯ï¼Œè€Œä¸”åªå½±å“æ¡Œé¢å¹³å°ã€‚在使用"
"VulkanåŽç«¯æ—¶ï¼Œå®ƒæ˜¯ä¸å¿…è¦çš„。"
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -55035,7 +55978,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -55044,13 +55987,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -55059,7 +56002,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -55069,7 +56012,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -55081,7 +56024,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -55091,24 +56034,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -55117,7 +56060,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -55125,7 +56068,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -55134,7 +56077,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -55144,7 +56087,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -55152,31 +56095,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
#, fuzzy
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
@@ -55189,7 +56132,7 @@ msgstr ""
"æ–¹å¼æ›´æ”¹æ­¤é»˜è®¤é¢œè‰²ï¼Œè¯·ä½¿ç”¨use [method RenderingServer."
"set_default_clear_color]。"
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -55202,46 +56145,53 @@ msgstr ""
"境,都会在场景加载时加载默认环境。如果ä¸ä¾èµ–默认环境,最好删除"
"[code]default_env.tres[/code],或者在这里指定ä¸åŒçš„默认环境。"
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -55249,7 +56199,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -55259,7 +56209,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -55268,7 +56218,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -55277,14 +56227,14 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
@@ -55293,7 +56243,7 @@ msgstr ""
"如果[code]true[/code],纹ç†å¯¼å…¥å™¨å°†ä½¿ç”¨S3纹ç†åŽ‹ç¼©ç®—法导入VRAM压缩的纹ç†ã€‚è¿™ç§"
"算法åªåœ¨æ¡Œé¢å¹³å°å’Œæ¸¸æˆæœºä¸Šæ”¯æŒã€‚"
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
#, fuzzy
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
@@ -55306,7 +56256,7 @@ msgstr ""
"件å˜å°ã€‚解压缩速度大多ä¸å—压缩级别的影å“。[code]-1[/code]使用默认的gzip压缩级"
"别,该级别与[code]6[/code]相åŒï¼Œä½†ç”±äºŽåº•å±‚zlib更新,未æ¥å¯èƒ½ä¼šå‘生å˜åŒ–。"
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -55314,7 +56264,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -55323,7 +56273,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -55333,13 +56283,13 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
#, fuzzy
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
@@ -55349,7 +56299,7 @@ msgstr ""
"如果[code]true[/code],图å—地图的碰撞将被当作è¿åŠ¨ä½“处ç†ã€‚如果[code]false[/"
"code],碰撞将被当作é™æ€ä½“æ¥å¤„ç†ã€‚"
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -55358,13 +56308,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -55374,14 +56324,14 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
@@ -55390,14 +56340,14 @@ msgstr ""
"由于性能或驱动支æŒé—®é¢˜ï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹ [member rendering/quality/"
"shadow_atlas/size]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
"对一些GPU供应商(通常是移动设备)ç¦ç”¨æ·±åº¦é¢„处ç†ï¼Œå› ä¸ºä»–们的架构已ç»åšäº†è¿™ä¸ªã€‚"
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
msgid ""
"If [code]true[/code], performs a previous depth pass before rendering "
"materials. This increases performance in scenes with high overdraw, when "
@@ -55406,7 +56356,7 @@ msgstr ""
"如果 [code]true[/code],则在渲染æ质之å‰æ‰§è¡Œå…ˆå‰çš„深度传递。当使用å¤æ‚çš„ææ–™"
"和照明时,这会æ高高é€æ”¯åœºæ™¯çš„性能。"
-#: doc/classes/ProjectSettings.xml:1299
+#: doc/classes/ProjectSettings.xml:1303
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 "
@@ -55415,7 +56365,7 @@ msgstr ""
"æ–¹å‘性阴影的大å°ï¼Œä»¥åƒç´ ä¸ºå•ä½ã€‚更高的值会导致更清晰的阴影,但会以性能为代"
"价。该值将被四èˆäº”入到最接近的2次方。"
-#: doc/classes/ProjectSettings.xml:1302
+#: doc/classes/ProjectSettings.xml:1306
msgid ""
"Lower-end override for [member rendering/quality/directional_shadow/size] on "
"mobile devices, due to performance concerns or driver support."
@@ -55423,7 +56373,7 @@ msgstr ""
"由于性能和驱动支æŒçš„问题,在移动设备上会对[member rendering/quality/"
"directional_shadow/size] 以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1305
+#: doc/classes/ProjectSettings.xml:1309
#, fuzzy
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
@@ -55440,7 +56390,7 @@ msgstr ""
"在这ç§æƒ…况下,这个属性ä¸ä¼šè¢«æ›´æ–°ï¼Œæ‰€ä»¥ä½¿ç”¨[code]OS.get_current_video_driver[/"
"code]æ¥åœ¨è¿è¡Œæ—¶æŸ¥è¯¢å®ƒã€‚"
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -55452,7 +56402,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -55460,7 +56410,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
#, fuzzy
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
@@ -55472,7 +56422,7 @@ msgstr ""
"值å¯ä»¥ä½¿è¾¹ç¼˜æ›´å¹³æ»‘,但在æŸäº›ç¡¬ä»¶ä¸Šä¼šæ˜Žæ˜¾å˜æ…¢ã€‚\n"
"[b]注æ„:[/b] MSAA在使用GLES2åŽç«¯çš„HTML5导出中ä¸å¯ç”¨ã€‚"
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -55481,7 +56431,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -55495,7 +56445,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
#, fuzzy
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
@@ -55509,7 +56459,7 @@ msgstr ""
"使图åƒçœ‹èµ·æ¥å¾ˆæ¨¡ç³Šï¼Œç‰¹åˆ«æ˜¯åœ¨è¾ƒä½Žçš„分辨率。在1440på’Œ4K等大分辨率下,ä»ç„¶å¯ä»¥ç›¸"
"对良好地工作。"
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -55522,7 +56472,7 @@ msgstr ""
"å¯èƒ½ä¼šæ高移动设备的性能。如果 [code]false[/code],则使用线性 mipmap 过滤(也"
"称为“三线性过滤â€ï¼‰ã€‚"
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -55536,7 +56486,7 @@ msgstr ""
"[code]SCREEN_TEXTURE[/code]å’Œ[code]DEPTH_TEXTURE[/code]å°†ä¸èƒ½åœ¨ç€è‰²å™¨ä¸­ä½¿ç”¨ï¼Œ"
"而åŽå¤„ç†æ•ˆæžœå°†ä¸èƒ½åœ¨[Environment]中使用。"
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
msgid ""
"Lower-end override for [member rendering/quality/intended_usage/"
"framebuffer_allocation] on mobile devices, due to performance concerns or "
@@ -55545,14 +56495,14 @@ msgstr ""
"由于性能或驱动支æŒé—®é¢˜ï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå¯¹[member rendering/quality/"
"intended_usage/framebuffer_allocation]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
@@ -55561,27 +56511,27 @@ msgstr ""
"由于性能问题或驱动支æŒï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹[member rendering/quality/shading/"
"force_vertex_shading]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
@@ -55591,7 +56541,7 @@ msgstr ""
"由于性能问题或驱动程åºæ”¯æŒï¼Œç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹ [member rendering/quality/"
"reflections/ggx_samples] 以低性能数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -55602,7 +56552,7 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
#, fuzzy
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
@@ -55613,7 +56563,7 @@ msgstr ""
"mipmap。这å‡å°‘了å射上的抖动噪声和放大伪影,但计算速度è¦æ…¢å¾—多,并且使用 "
"[member rendering/quality/reflections/roughness_layers]æ—¶è¦èŠ±è´¹æ›´å¤šçš„内存。"
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
@@ -55622,7 +56572,7 @@ msgstr ""
"由于性能问题或驱动支æŒï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹[member rendering/quality/"
"reflections/texture_array_reflections]以低性能数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1368
+#: doc/classes/ProjectSettings.xml:1372
msgid ""
"If [code]true[/code], uses faster but lower-quality Blinn model to generate "
"blurred reflections instead of the GGX model."
@@ -55630,7 +56580,7 @@ msgstr ""
"如果 [code]true[/code],则使用速度更快但质é‡è¾ƒä½Žçš„ Blinn 模型而ä¸æ˜¯ GGX 模型"
"æ¥ç”Ÿæˆæ¨¡ç³Šå射。"
-#: doc/classes/ProjectSettings.xml:1371
+#: doc/classes/ProjectSettings.xml:1375
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_blinn_over_ggx] on mobile devices, due to performance concerns or "
@@ -55639,7 +56589,7 @@ msgstr ""
"由于性能或驱动支æŒé—®é¢˜ï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹[member rendering/quality/shading/"
"force_blinn_over_ggx]以低值覆盖。"
-#: doc/classes/ProjectSettings.xml:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
@@ -55647,7 +56597,7 @@ msgstr ""
"如果 [code]true[/code],则使用速度更快但质é‡è¾ƒä½Žçš„ Lambert æ质照明模型而ä¸"
"是 Burley。"
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
@@ -55656,7 +56606,7 @@ msgstr ""
"由于性能问题或驱动支æŒï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹[member rendering/quality/shading/"
"force_lambert_over_burley]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1380
+#: doc/classes/ProjectSettings.xml:1384
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 "
@@ -55665,7 +56615,7 @@ msgstr ""
"如果 [code]true[/code],则为所有渲染强制顶点ç€è‰²ã€‚è¿™å¯ä»¥å¤§å¤§æ高性能,但也会"
"æžå¤§åœ°é™ä½Žè´¨é‡ã€‚å¯ç”¨äºŽä¼˜åŒ–低端移动设备的性能。"
-#: doc/classes/ProjectSettings.xml:1383
+#: doc/classes/ProjectSettings.xml:1387
msgid ""
"Lower-end override for [member rendering/quality/shading/"
"force_vertex_shading] on mobile devices, due to performance concerns or "
@@ -55674,7 +56624,7 @@ msgstr ""
"由于性能问题或驱动支æŒï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹[member rendering/quality/shading/"
"force_vertex_shading]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -55685,7 +56635,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -55694,20 +56644,20 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr "阴影贴图的细分象é™å¤§å°ã€‚请å‚阅阴影映射文档。"
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr "阴影图集的尺寸(用于OmniLightså’ŒSpotLights)。è§æ–‡æ¡£ã€‚"
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
msgid ""
"Lower-end override for [member rendering/quality/shadow_atlas/size] on "
"mobile devices, due to performance concerns or driver support."
@@ -55715,7 +56665,7 @@ msgstr ""
"由于性能或驱动支æŒé—®é¢˜ï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹ [member rendering/quality/"
"shadow_atlas/size]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -55726,7 +56676,7 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
#, fuzzy
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
@@ -55735,14 +56685,14 @@ msgstr ""
"由于性能或驱动支æŒé—®é¢˜ï¼Œåœ¨ç§»åŠ¨è®¾å¤‡ä¸Šå°†å¯¹ [member rendering/quality/"
"shadow_atlas/size]以低é…数值覆盖。"
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -55754,47 +56704,47 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
#, fuzzy
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr "地下散射效应的强度。"
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
#, fuzzy
msgid "Max radius used for subsurface scattering samples."
msgstr "地下散射效应的强度。"
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
msgid ""
"Thread model for rendering. Rendering on a thread can vastly improve "
"performance, but synchronizing to the main thread can cause a bit more "
@@ -55803,7 +56753,7 @@ msgstr ""
"渲染的线程模型。在线程上进行渲染å¯ä»¥æžå¤§åœ°æ高性能,但åŒæ­¥åˆ°ä¸»çº¿ç¨‹ä¸Šä¼šå¯¼è‡´æ›´"
"多的抖动。"
-#: doc/classes/ProjectSettings.xml:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -55811,7 +56761,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -55822,12 +56772,12 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"如果[code]true[/code],纹ç†å¯¼å…¥å™¨å°†ä½¿ç”¨BPTC算法导入VRAM压缩的纹ç†ã€‚è¿™ç§çº¹ç†åŽ‹"
"缩算法åªåœ¨æ¡Œé¢å¹³å°ä¸Šæ”¯æŒï¼Œè€Œä¸”åªåœ¨ä½¿ç”¨Vulkan渲染器时支æŒã€‚"
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -55837,12 +56787,12 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"如果[code]true[/code],纹ç†å¯¼å…¥å™¨å°†ä½¿ç”¨BPTC算法导入VRAM压缩的纹ç†ã€‚è¿™ç§çº¹ç†åŽ‹"
"缩算法åªåœ¨æ¡Œé¢å¹³å°ä¸Šæ”¯æŒï¼Œè€Œä¸”åªåœ¨ä½¿ç”¨Vulkan渲染器时支æŒã€‚"
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -55852,12 +56802,12 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"如果[code]true[/code],纹ç†å¯¼å…¥å™¨å°†ä½¿ç”¨BPTC算法导入VRAM压缩的纹ç†ã€‚è¿™ç§çº¹ç†åŽ‹"
"缩算法åªåœ¨æ¡Œé¢å¹³å°ä¸Šæ”¯æŒï¼Œè€Œä¸”åªåœ¨ä½¿ç”¨Vulkan渲染器时支æŒã€‚"
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -55867,12 +56817,12 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"如果[code]true[/code],纹ç†å¯¼å…¥å™¨å°†ä½¿ç”¨BPTC算法导入VRAM压缩的纹ç†ã€‚è¿™ç§çº¹ç†åŽ‹"
"缩算法åªåœ¨æ¡Œé¢å¹³å°ä¸Šæ”¯æŒï¼Œè€Œä¸”åªåœ¨ä½¿ç”¨Vulkan渲染器时支æŒã€‚"
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
#, fuzzy
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
@@ -55882,12 +56832,12 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
"如果[code]true[/code],纹ç†å¯¼å…¥å™¨å°†ä½¿ç”¨BPTC算法导入VRAM压缩的纹ç†ã€‚è¿™ç§çº¹ç†åŽ‹"
"缩算法åªåœ¨æ¡Œé¢å¹³å°ä¸Šæ”¯æŒï¼Œè€Œä¸”åªåœ¨ä½¿ç”¨Vulkan渲染器时支æŒã€‚"
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
#, fuzzy
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
@@ -56190,8 +57140,8 @@ msgid ""
"also called Gaussian distribution."
msgstr ""
"产生一个[url=https://en.wikipedia.org/wiki/Normal_distribution]æ­£æ€åˆ†å¸ƒ[/url]"
-"的伪éšæœºæ•°ï¼Œä½¿ç”¨Box-Mullerå˜æ¢ï¼Œå…·æœ‰æŒ‡å®šçš„[code]å¹³å‡å€¼[/code]和标准[code]åå·®"
-"[/code]。这也被称为高斯分布。"
+"的伪éšæœºæ•°ï¼Œä½¿ç”¨Box-Mullerå˜æ¢ï¼Œå…·æœ‰æŒ‡å®šçš„[code]mean[/code]和标准"
+"[code]deviation[/code]。这也被称为高斯分布。"
#: doc/classes/RandomNumberGenerator.xml:47
msgid ""
@@ -57468,7 +58418,7 @@ msgstr ""
"这个方法会被调用。它的行为å¯ä»¥é€šè¿‡è¦†ç›–脚本中的[method _setup_local_to_scene]"
"进行定制。\n"
"对于大多数资æºï¼Œè¯¥æ–¹æ³•ä¸æ‰§è¡Œä»»ä½•åŸºæœ¬é€»è¾‘。[ViewportTexture]执行自定义逻辑以正"
-"确设置本地视å£ä¸­çš„代ç†çº¹ç†å’Œæ ‡å¿—。"
+"确设置本地视窗中的代ç†çº¹ç†å’Œæ ‡å¿—。"
#: doc/classes/Resource.xml:66
msgid ""
@@ -58699,7 +59649,7 @@ msgid ""
"details about damping."
msgstr ""
"阻尼刚体的旋转力。\n"
-"关于阻尼的更多细节,请å‚è§[member ProjectSettings.physics/3d/"
+"关于阻尼的更多细节,请å‚阅[member ProjectSettings.physics/3d/"
"default_angular_damp]。"
#: doc/classes/RigidBody.xml:115
@@ -58761,8 +59711,8 @@ msgid ""
"If [code]true[/code], the RigidBody will emit signals when it collides with "
"another RigidBody. See also [member contacts_reported]."
msgstr ""
-"如果[code]true[/code],当RigidBody与å¦ä¸€ä¸ªRigidBody碰撞时会å‘出信å·ã€‚å¦è§æŽ¥è§¦"
-"报告[member contacts_reported]。"
+"如果[code]true[/code],当RigidBody与å¦ä¸€ä¸ªRigidBody碰撞时会å‘出信å·ã€‚å‚阅"
+"[member contacts_reported]。"
#: doc/classes/RigidBody.xml:147
msgid ""
@@ -59156,7 +60106,7 @@ msgid ""
"If [code]true[/code], the body will emit signals when it collides with "
"another RigidBody2D. See also [member contacts_reported]."
msgstr ""
-"如果[code]true[/code],则物体在与å¦ä¸€ä¸ªRigidBody2D碰撞时会å‘出信å·ã€‚å¦è§"
+"如果[code]true[/code],则物体在与å¦ä¸€ä¸ªRigidBody2D碰撞时会å‘出信å·ã€‚å‚阅"
"[member contacts_reported]。"
#: doc/classes/RigidBody2D.xml:121
@@ -61662,7 +62612,7 @@ msgstr ""
"并ä¸æ˜¯å¯è§†åŒ–的。一个å¯ç¢°æ’žç‰©ä½“å¯ä»¥ä½¿ç”¨è¿™äº›å±‚æ¥é€‰æ‹©å®ƒå¯ä»¥ä¸Žå“ªäº›ç‰©ä½“碰撞,使用"
"collision_mask属性。\n"
"如果对象A在对象B所扫æ的任何层中,或者对象B在对象A所扫æ的任何层中,就会检测"
-"到接触。更多信æ¯è¯·å‚è§æ–‡æ¡£ä¸­çš„[url=https://docs.godotengine.org/en/3.4/"
+"到接触。更多信æ¯è¯·å‚阅文档中的[url=https://docs.godotengine.org/en/3.4/"
"tutorials/physics/physics_introduction.html#collision-layers-and-masks]碰撞层"
"和掩ç [/url]。"
@@ -62463,11 +63413,10 @@ msgid ""
msgstr "如果[code]true[/code],深度测试被ç¦ç”¨ï¼Œå¯¹è±¡å°†æŒ‰æ¸²æŸ“顺åºç»˜åˆ¶ã€‚"
#: doc/classes/SpatialMaterial.xml:195
-#, fuzzy
msgid ""
"If [code]true[/code], transparency is enabled on the body. See also [member "
"params_blend_mode]."
-msgstr "如果[code]true[/code],则å¯ç”¨ä¸»ä½“çš„é€æ˜Žåº¦ã€‚å¦è§[member blend_mode]。"
+msgstr "如果[code]true[/code],则å¯ç”¨ç‰©ä½“çš„é€æ˜Žåº¦ã€‚å‚阅[member blend_mode]。"
#: doc/classes/SpatialMaterial.xml:198
#, fuzzy
@@ -62475,14 +63424,13 @@ msgid "If [code]true[/code], the object is unaffected by lighting."
msgstr "如果[code]true[/code],则对象ä¸æŽ¥æ”¶çŽ¯å¢ƒå…‰ã€‚"
#: doc/classes/SpatialMaterial.xml:201
-#, fuzzy
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 params_point_size]."
msgstr ""
"如果[code]true[/code],å¯ä»¥æ”¹å˜æ¸²æŸ“点的大å°ã€‚\n"
-"[b]注æ„:[/b]è¿™åªå¯¹å‡ ä½•ä½“是基于点而ä¸æ˜¯åŸºäºŽä¸‰è§’形的对象有效。å¦è§[member "
+"[b]注æ„:[/b]è¿™åªå¯¹å‡ ä½•ä½“是基于点而ä¸æ˜¯åŸºäºŽä¸‰è§’形的对象有效。å‚阅[member "
"point_size]。"
#: doc/classes/SpatialMaterial.xml:205
@@ -62530,7 +63478,6 @@ msgstr ""
"æ··åˆã€‚è¦æ”¹å˜åå°„é‡ï¼Œè¯·ä½¿ç”¨[member roughness]。"
#: doc/classes/SpatialMaterial.xml:217
-#, fuzzy
msgid ""
"Sets the size of the specular lobe. The specular lobe is the bright spot "
"that is reflected from light sources.\n"
@@ -62540,7 +63487,7 @@ msgid ""
msgstr ""
"设置镜é¢å…‰å¶çš„大å°ã€‚é•œé¢å¶æ˜¯å…‰æºå射的亮点。\n"
"[b]注æ„:[/b]与[member metallic]ä¸åŒï¼Œè¿™ä¸æ˜¯èƒ½é‡å®ˆæ’,所以在大多数情况下,应该"
-"将其ä¿ç•™åœ¨[code]0.5[/code]。å¦è§[member roughness]。"
+"将其ä¿ç•™åœ¨[code]0.5[/code]。å‚阅[member roughness]。"
#: doc/classes/SpatialMaterial.xml:221
msgid ""
@@ -64519,39 +65466,32 @@ msgid "Constructs a new String from the given [Array]."
msgstr "从给定的 [Array] 构造一个新字符串。"
#: doc/classes/String.xml:136
-#, fuzzy
msgid "Constructs a new String from the given [PoolByteArray]."
-msgstr "从给定的 [PackedByteArray] 构造一个新字符串。"
+msgstr "从给定的[PoolByteArray]构造一个新的字符串。"
#: doc/classes/String.xml:143
-#, fuzzy
msgid "Constructs a new String from the given [PoolIntArray]."
-msgstr "从给定的 [Array] 构造一个新字符串。"
+msgstr "从给定的[PoolIntArray]构造一个新的字符串。"
#: doc/classes/String.xml:150
-#, fuzzy
msgid "Constructs a new String from the given [PoolRealArray]."
-msgstr "从给定的 [Array] 构造一个新字符串。"
+msgstr "从给定的[PoolRealArray]构造一个新的字符串。"
#: doc/classes/String.xml:157
-#, fuzzy
msgid "Constructs a new String from the given [PoolStringArray]."
-msgstr "从给定的 [PackedStringArray] 构造一个新字符串。"
+msgstr "从给定的[PoolStringArray]构造一个新的字符串。"
#: doc/classes/String.xml:164
-#, fuzzy
msgid "Constructs a new String from the given [PoolVector2Array]."
-msgstr "从给定的 [PackedVector2Array] 构造一个新字符串。"
+msgstr "从给定的[PoolVector2Array]构造一个新的字符串。"
#: doc/classes/String.xml:171
-#, fuzzy
msgid "Constructs a new String from the given [PoolVector3Array]."
-msgstr "从给定的 [PackedVector3Array] 构造一个新字符串。"
+msgstr "从给定的[PoolVector3Array]构造一个新的字符串。"
#: doc/classes/String.xml:178
-#, fuzzy
msgid "Constructs a new String from the given [PoolColorArray]."
-msgstr "从给定的 [PackedColorArray] 构造一个新字符串。"
+msgstr "从给定的[PoolColorArray]构建一个新的字符串。"
#: doc/classes/String.xml:185
msgid "Returns [code]true[/code] if the string begins with the given string."
@@ -64689,16 +65629,17 @@ msgid ""
"Finds the last occurrence of a substring. Returns the starting position of "
"the substring or [code]-1[/code] if not found."
msgstr ""
+"查找最åŽä¸€æ¬¡å‡ºçŽ°çš„å­å­—符串。如果未找到,则返回å­å­—符串的起始ä½ç½®æˆ– [code]-1[/"
+"code]。"
#: doc/classes/String.xml:293
-#, 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 ""
-"在数组中查找指定的值,返回对应的索引,未找到时返回 [code]-1[/code]。还å¯ä»¥ä¼ "
-"å…¥æœç´¢èµ·å§‹ä½ç½®çš„索引。"
+"查找å­å­—符串的第一次出现,忽略大å°å†™ã€‚如果未找到,则返回å­å­—符串的起始ä½ç½®æˆ– "
+"[code]-1[/code]。或者,å¯ä»¥ä¼ é€’åˆå§‹æœç´¢ç´¢å¼•ã€‚"
#: doc/classes/String.xml:301
msgid ""
@@ -64733,6 +65674,18 @@ msgid ""
"print(\"\".get_extension()) # \"\" (empty string)\n"
"[/codeblock]"
msgstr ""
+"如果字符串是一个有效的文件å或路径,返回ä¸å¸¦å¥ç‚¹çš„扩展å([code]. [/code])。"
+"如果字符串ä¸åŒ…å«æ‰©å±•å,则返回一个空字符串。\n"
+"[codeblock]\n"
+"print(\"/path/to/file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt\".get_extension()) # \"txt\"\n"
+"print(\"file.sample.txt\".get_extension()) # \"txt\"\n"
+"print(\".txt\".get_extension()) # \"txt\"\n"
+"print(\"file.txt.\".get_extension()) # \"\" (空字符串)\n"
+"print(\"file.txt..\".get_extension()) # \"\" (空字符串)\n"
+"print(\"txt\".get_extension()) # \"\" (空字符串)\n"
+"print(\"\".get_extension()) # \"\" (空字符串)\n"
+"[/codeblock]"
#: doc/classes/String.xml:335
msgid "If the string is a valid file path, returns the filename."
@@ -64897,6 +65850,9 @@ msgid ""
"Reserved_IP_addresses]reserved IP addresses[/url] such as [code]0.0.0.0[/"
"code] as valid."
msgstr ""
+"如果此字符串仅包å«æ ¼å¼æ­£ç¡®çš„ IPv4 或 IPv6 地å€ï¼Œåˆ™è¿”回 [code]true[/code]。该"
+"方法认为[url=https://en.wikipedia.org/wiki/Reserved_IP_addresses]ä¿ç•™IP地å€[/"
+"url]如[code]0.0.0.0[/code]是有效的。"
#: doc/classes/String.xml:464
msgid ""
@@ -66694,7 +67650,7 @@ 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 ""
-"将视å£ç½®äºŽç¼–辑光标所在的线上。这也会将 [member scroll_horizontal] 值é‡ç½®ä¸º "
+"将视窗置于编辑光标所在的线上。这也会将 [member scroll_horizontal] 值é‡ç½®ä¸º "
"[code]0[/code]。"
#: doc/classes/TextEdit.xml:47
@@ -66728,7 +67684,7 @@ msgid ""
"will center at the cursor position after the move occurs."
msgstr ""
"将光标移动到指定的 [code] column [/code] 索引处。\n"
-"如果 [code]adjust_viewport[/code] 设置为 [code]true[/code],则移动å‘生åŽè§†å£"
+"如果 [code]adjust_viewport[/code] 设置为 [code]true[/code],则移动å‘生åŽè§†çª—"
"将以光标ä½ç½®ä¸ºä¸­å¿ƒã€‚"
#: doc/classes/TextEdit.xml:90
@@ -66740,7 +67696,7 @@ msgid ""
"[code]line[/code] can be hidden using [method set_line_as_hidden]."
msgstr ""
"在指定的 [code] line [/code] 索引处移动光标。\n"
-"如果 [code]adjust_viewport[/code] 设置为 [code]true[/code],则移动å‘生åŽè§†å£"
+"如果 [code]adjust_viewport[/code] 设置为 [code]true[/code],则移动å‘生åŽè§†çª—"
"将以光标ä½ç½®ä¸ºä¸­å¿ƒã€‚\n"
"如果 [code]can_be_hidden[/code] 设置为 [code]true[/code],则å¯ä»¥ä½¿ç”¨ [method "
"set_line_as_hidden] éšè—指定的 [code] line [/code]。"
@@ -67268,7 +68224,7 @@ msgid ""
msgstr ""
"纹ç†çš„作用是在视频硬件中注册一个图åƒï¼Œç„¶åŽå¯ä»¥åœ¨3D模型或2D[Sprite]或"
"GUI[Control]中使用。\n"
-"纹ç†é€šå¸¸æ˜¯é€šè¿‡ä»Žæ–‡ä»¶ä¸­åŠ è½½æ¥åˆ›å»ºçš„。å‚è§[方法 @GDScript.load]。\n"
+"纹ç†é€šå¸¸æ˜¯é€šè¿‡ä»Žæ–‡ä»¶ä¸­åŠ è½½æ¥åˆ›å»ºçš„。å‚阅[方法 @GDScript.load]。\n"
"[Texture]是其他资æºçš„基础。它ä¸èƒ½è¢«ç›´æŽ¥ä½¿ç”¨ã€‚\n"
"[b]注æ„:[/b] 由于图形硬件的é™åˆ¶ï¼Œæœ€å¤§çš„纹ç†å°ºå¯¸æ˜¯16384×16384åƒç´ ã€‚较大的纹ç†"
"å¯èƒ½æ— æ³•å¯¼å…¥ã€‚"
@@ -67452,7 +68408,7 @@ msgstr ""
"[Theme]主题资æºã€‚它的创建速度更快,但它ä¸åƒæ›´å¤æ‚çš„[Control]那样支æŒæœ¬åœŸåŒ–"
"(localization)。\n"
"\"正常\"状æ€å¿…须包å«ä¸€ä¸ªçº¹ç†ï¼ˆ[member texture_normal]);其他纹ç†æ˜¯å¯é€‰çš„。\n"
-"也请å‚è§[BaseButton],它包å«äº†ä¸Žè¯¥èŠ‚点相关的通用属性和方法。"
+"也请å‚阅[BaseButton],它包å«äº†ä¸Žè¯¥èŠ‚点相关的通用属性和方法。"
#: doc/classes/TextureButton.xml:18
msgid ""
@@ -69411,26 +70367,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr "ç¦ç”¨ [ToolButton] 时使用的文本 [Color]颜色。"
#: doc/classes/ToolButton.xml:39
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:42
msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr "[ToolButton] 悬åœæ—¶ä½¿ç”¨çš„文本 [Color]颜色。"
-#: doc/classes/ToolButton.xml:42
+#: doc/classes/ToolButton.xml:45
msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr "按下 [ToolButton] 时使用的文本 [Color]颜色。"
-#: doc/classes/ToolButton.xml:45
+#: doc/classes/ToolButton.xml:48
msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr "当[ToolButton]被悬åœæ—¶ä½¿ç”¨çš„[StyleBox]。"
-#: doc/classes/ToolButton.xml:48
+#: doc/classes/ToolButton.xml:51
msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr "[ToolButton] 的图标和文本之间的水平间è·ã€‚"
-#: doc/classes/ToolButton.xml:51
+#: doc/classes/ToolButton.xml:54
msgid "Default [StyleBox] for the [ToolButton]."
msgstr "[ToolButton] 的默认 [StyleBox]。"
-#: doc/classes/ToolButton.xml:54
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr "当[ToolButton]被按下时使用的[StyleBox]。"
@@ -72338,7 +73301,7 @@ msgstr ""
"一个å˜ä½“。\n"
"- å¯ä»¥å­˜å‚¨å‡ ä¹Žä»»ä½•æ•°æ®ç±»åž‹ã€‚\n"
"- å¯ä»¥åœ¨è®¸å¤šå˜ä½“之间执行æ“作。GDScript使用å˜ä½“作为其原å­åŠåŽŸç”Ÿæ•°æ®ç±»åž‹ã€‚\n"
-"- å¯ä»¥è¢«æ•£åˆ—,所以å¯ä»¥å¿«é€Ÿä¸Žå…¶ä»–å˜ä½“进行比较。\n"
+"- å¯ä»¥è¢«å“ˆå¸Œï¼Œæ‰€ä»¥å¯ä»¥å¿«é€Ÿä¸Žå…¶ä»–å˜ä½“进行比较。\n"
"- å¯ä»¥ç”¨äºŽæ•°æ®ç±»åž‹ä¹‹é—´çš„安全转æ¢ã€‚\n"
"- å¯ä»¥ç”¨æ¥æŠ½è±¡è°ƒç”¨æ–¹æ³•å’Œå®ƒä»¬çš„å‚数。Godot通过å˜ä½“导出所有函数。\n"
"- å¯ä»¥ç”¨æ¥æŽ¨è¿Ÿè°ƒç”¨æˆ–在线程之间移动数æ®ã€‚\n"
@@ -74442,11 +75405,11 @@ msgstr ""
#: modules/visual_script/doc_classes/VisualScript.xml:19
msgid "Add a custom signal with the specified name to the VisualScript."
-msgstr "在å¯è§†åŒ–脚本中添加一个具有指定å称的自定义信å·ã€‚"
+msgstr "在å¯è§†åŒ–脚本中添加指定å称的自定义信å·ã€‚"
#: modules/visual_script/doc_classes/VisualScript.xml:26
msgid "Add a function with the specified name to the VisualScript."
-msgstr "在å¯è§†åŒ–脚本中添加一个具有指定å称的函数。"
+msgstr "在å¯è§†åŒ–脚本中添加指定å称的函数。"
#: modules/visual_script/doc_classes/VisualScript.xml:36
msgid "Add a node to a function of the VisualScript."
@@ -77070,7 +78033,7 @@ msgid ""
"an empty string."
msgstr ""
"返回视频适é…器的å称(例如:\"GeForce GTX 1080/PCIe/SSE2\")。\n"
-"[b]注æ„:[/b]当è¿è¡Œä¸€ä¸ªæ— å¤´æˆ–æœåŠ¡å™¨å¯æ‰§è¡Œæ–‡ä»¶æ—¶ï¼Œè¿™ä¸ªå‡½æ•°è¿”回一个空字符串。"
+"[b]注æ„:[/b]当è¿è¡Œä¸€ä¸ªç²¾ç®€æˆ–æœåŠ¡å™¨å¯æ‰§è¡Œæ–‡ä»¶æ—¶ï¼Œè¿™ä¸ªå‡½æ•°è¿”回一个空字符串。"
#: doc/classes/VisualServer.xml:996
msgid ""
@@ -77079,7 +78042,7 @@ msgid ""
"an empty string."
msgstr ""
"返回视频适é…器的供应商(例如,\"NVIDIA Corporation\")。\n"
-"[b]注æ„:[/b] 当è¿è¡Œæ— å¤´æˆ–æœåŠ¡å™¨å¯æ‰§è¡Œæ–‡ä»¶æ—¶ï¼Œè¯¥å‡½æ•°è¿”回一个空字符串。"
+"[b]注æ„:[/b] 当è¿è¡Œç²¾ç®€æˆ–æœåŠ¡å™¨å¯æ‰§è¡Œæ–‡ä»¶æ—¶ï¼Œè¯¥å‡½æ•°è¿”回一个空字符串。"
#: doc/classes/VisualServer.xml:1003
msgid "Returns the id of a white texture. Creates one if none exists."
@@ -77586,7 +78549,7 @@ msgid ""
"splits resulting in a smoother transition between them. Equivalent to "
"[member DirectionalLight.directional_shadow_blend_splits]."
msgstr ""
-"如果[code]true[/code],这个定å‘光会在阴影贴图分割之间混åˆï¼Œä»¥ä½¿å®ƒä»¬ä¹‹é—´çš„过渡"
+"如果[code]true[/code],这个平行光会在阴影贴图分割之间混åˆï¼Œä»¥ä½¿å®ƒä»¬ä¹‹é—´çš„过渡"
"更加平滑。相当于[member DirectionalLight.directional_shadow_blend_splits]。"
#: doc/classes/VisualServer.xml:1519
@@ -77595,7 +78558,7 @@ msgid ""
"[member DirectionalLight.directional_shadow_depth_range]. See [enum "
"LightDirectionalShadowDepthRangeMode] for options."
msgstr ""
-"设置这个定å‘å…‰æºçš„阴影深度范围模å¼ã€‚相当于[member DirectionalLight."
+"设置这个平行光æºçš„阴影深度范围模å¼ã€‚相当于[member DirectionalLight."
"directional_shadow_depth_range]。å‚阅[enum "
"LightDirectionalShadowDepthRangeMode]的选项。"
@@ -77605,7 +78568,7 @@ msgid ""
"DirectionalLight.directional_shadow_mode]. See [enum "
"LightDirectionalShadowMode] for options."
msgstr ""
-"设置此定å‘å…‰æºçš„阴影模å¼ã€‚相当于[member DirectionalLight3D."
+"设置此平行光æºçš„阴影模å¼ã€‚相当于[member DirectionalLight3D."
"directional_shadow_mode]。å‚阅[enum LightDirectionalShadowMode]的选项。"
#: doc/classes/VisualServer.xml:1535
@@ -78744,7 +79707,7 @@ msgstr ""
"将视窗å¤åˆ¶åˆ°å±å¹•ä¸Šç”±[code]rect[/code]指定的区域。如果[member Viewport."
"render_direct_to_screen]是[code]true[/code],那么视窗就ä¸ä¼šä½¿ç”¨å¸§ç¼“冲器,视窗"
"的内容会直接渲染到å±å¹•ä¸Šã€‚然而,请注æ„,根视窗是最åŽç»˜åˆ¶çš„,因此它将在å±å¹•ä¸Š"
-"绘制。因此,你必须将根视å£è®¾ç½®ä¸ºä¸€ä¸ªä¸è¦†ç›–你所附加的这个视å£çš„区域。\n"
+"绘制。因此,你必须将根视窗设置为一个ä¸è¦†ç›–你所附加的这个视窗的区域。\n"
"例如,你å¯ä»¥ç”¨ä»¥ä¸‹ä»£ç å°†æ ¹è§†çª—设置为完全ä¸æ¸²æŸ“。\n"
"[codeblock]\n"
"func _ready():\n"
@@ -78752,7 +79715,7 @@ msgstr ""
" $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600))\n"
"[/codeblock]\n"
"使用这个方法å¯ä»¥å¸¦æ¥æ˜Žæ˜¾çš„优化,特别是在低端设备上。然而,它的代价是必须手动"
-"管ç†ä½ çš„视å£ã€‚对于进一步的优化,请看,[method "
+"管ç†ä½ çš„视窗。对于进一步的优化,请看,[method "
"viewport_set_render_direct_to_screen]。"
#: doc/classes/VisualServer.xml:2882
@@ -78763,7 +79726,7 @@ msgid ""
"Once finished with your RID, you will want to free the RID using the "
"VisualServer's [method free_rid] static method."
msgstr ""
-"创建一个空视å£å¹¶å°†å…¶æ·»åŠ åˆ°VisualServer中。å¯ä»¥ç”¨è¿”回的RIDæ¥è®¿é—®å®ƒã€‚这个RIDå°†"
+"创建一个空视窗并将其添加到VisualServer中。å¯ä»¥ç”¨è¿”回的RIDæ¥è®¿é—®å®ƒã€‚这个RIDå°†"
"用于所有[code]viewport_*[/code] 的VisualServer函数。\n"
"一旦你用完了RID,你è¦ä½¿ç”¨VisualServerçš„[method free_rid]é™æ€æ–¹æ³•é‡Šæ”¾RID。"
@@ -78783,7 +79746,7 @@ msgstr "返回视窗的最åŽæ¸²æŸ“帧。"
#: doc/classes/VisualServer.xml:2913
msgid "Detaches a viewport from a canvas and vice versa."
-msgstr "从画布分离视å£ï¼Œå之亦然。"
+msgstr "从画布分离视窗,å之亦然。"
#: doc/classes/VisualServer.xml:2921
msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
@@ -78864,11 +79827,11 @@ msgid ""
"significantly larger than the window size."
msgstr ""
"如果[code]true[/code],直接将视窗的内容渲染到å±å¹•ä¸Šã€‚è¿™å…许一个低级别的优化,"
-"ä½ å¯ä»¥è·³è¿‡ç»˜åˆ¶è§†å£åˆ°æ ¹è§†å£ã€‚虽然这ç§ä¼˜åŒ–å¯ä»¥æ˜¾è‘—æ高速度(特别是在旧设备"
-"上),但它是以牺牲å¯ç”¨æ€§ä¸ºä»£ä»·çš„。当å¯ç”¨è¿™ä¸ªåŠŸèƒ½æ—¶ï¼Œä½ ä¸èƒ½ä»Žè§†å£æˆ–"
+"ä½ å¯ä»¥è·³è¿‡ç»˜åˆ¶è§†çª—到根视窗。虽然这ç§ä¼˜åŒ–å¯ä»¥æ˜¾è‘—æ高速度(特别是在旧设备"
+"上),但它是以牺牲å¯ç”¨æ€§ä¸ºä»£ä»·çš„。当å¯ç”¨è¿™ä¸ªåŠŸèƒ½æ—¶ï¼Œä½ ä¸èƒ½ä»Žè§†çª—或"
"[code]SCREEN_TEXTURE[/code]中读å–。你也会失去æŸäº›çª—å£è®¾ç½®çš„好处,比如å„ç§æ‹‰ä¼¸"
"模å¼ã€‚å¦ä¸€ä¸ªéœ€è¦æ³¨æ„çš„åŽæžœæ˜¯ï¼Œåœ¨2D中,渲染是以窗å£å标进行的,所以如果你有一"
-"个两å€äºŽçª—å£å¤§å°çš„视å£ï¼Œå¹¶ä¸”你设置了这个,那么åªæœ‰é€‚åˆçª—å£çš„部分æ‰ä¼šè¢«ç»˜åˆ¶ï¼Œ"
+"个两å€äºŽçª—å£å¤§å°çš„视窗,并且你设置了这个,那么åªæœ‰é€‚åˆçª—å£çš„部分æ‰ä¼šè¢«ç»˜åˆ¶ï¼Œ"
"没有自动缩放的å¯èƒ½ï¼Œå³ä½¿ä½ çš„游æˆåœºæ™¯æ˜Žæ˜¾å¤§äºŽçª—å£å¤§å°ã€‚"
#: doc/classes/VisualServer.xml:3037
@@ -78901,8 +79864,8 @@ msgid ""
"[code]0.5[/code] generally give the best results. See also [method "
"viewport_set_use_fxaa]."
msgstr ""
-"为视å£[code]viewport[/code]设定é”化强度[code]intensity[/code]。如果设置为大于"
-"[code]0.0[/code]的值,对比度适应性é”化将被应用到3D视å£ä¸­ã€‚这具有较低的性能æˆ"
+"为视窗[code]viewport[/code]设定é”化强度[code]intensity[/code]。如果设置为大于"
+"[code]0.0[/code]的值,对比度适应性é”化将被应用到3D视窗中。这具有较低的性能æˆ"
"本,å¯ä»¥ç”¨æ¥æ¢å¤ä½¿ç”¨FXAAæ—¶æŸå¤±çš„一些é”度。一般æ¥è¯´ï¼Œ[code]0.5[/code]å·¦å³çš„值"
"å¯ä»¥å¾—到最好的效果。å‚阅[method viewport_set_use_fxaa]。"
@@ -79327,15 +80290,15 @@ msgstr "在计算阴影贴图时,在水平方å‘上使用更多的细节。"
#: doc/classes/VisualServer.xml:3447
msgid "Use orthogonal shadow projection for directional light."
-msgstr "对定å‘光使用正交阴影投影。"
+msgstr "对平行光使用正交阴影投影。"
#: doc/classes/VisualServer.xml:3450
msgid "Use 2 splits for shadow projection when using directional light."
-msgstr "使用定å‘光时,使用 2 个分割进行阴影投影。"
+msgstr "使用平行光时,使用 2 个分割进行阴影投影。"
#: doc/classes/VisualServer.xml:3453
msgid "Use 4 splits for shadow projection when using directional light."
-msgstr "使用定å‘光时,使用 4 个分割进行阴影投影。"
+msgstr "使用平行光时,使用 4 个分割进行阴影投影。"
#: doc/classes/VisualServer.xml:3456
msgid ""
@@ -83786,6 +84749,24 @@ msgid ""
"If [code]true[/code], child nodes are sorted, otherwise sorting is disabled."
msgstr "如果为[code]true[/code],则对å­èŠ‚点进行排åºï¼Œå¦åˆ™ç¦ç”¨æŽ’åºã€‚"
+#~ msgid ""
+#~ "Returns a list of intersecting [Area]s. For performance reasons "
+#~ "(collisions are all processed at the same time) this list is modified "
+#~ "once during the physics step, not immediately after objects are moved. "
+#~ "Consider using signals instead."
+#~ msgstr ""
+#~ "返回一个相交的区域[Area]的列表。由于性能原因(碰撞都是åŒæ—¶å¤„ç†çš„),这个列"
+#~ "表在物ç†æ­¥éª¤ä¸­è¢«ä¿®æ”¹ä¸€æ¬¡ï¼Œè€Œä¸æ˜¯åœ¨ç‰©ä½“被移动åŽç«‹å³ä¿®æ”¹ã€‚å¯ä»¥è€ƒè™‘使用信å·æ¥"
+#~ "代替。"
+
+#~ msgid "Emitted when the resource value was set and user clicked to edit it."
+#~ msgstr "在设置资æºå€¼å¹¶ä¸”用户å•å‡»ä»¥å¯¹å…¶è¿›è¡Œç¼–辑时å‘出。"
+
+#~ msgid ""
+#~ "OpenGL texture format [code]RED[/code] with a single component and a "
+#~ "bitdepth of 8."
+#~ msgstr "OpenGL纹ç†æ ¼å¼[code]RED[/code],具有å•ä¸€åˆ†é‡ï¼Œä½æ·±ä¸º8。"
+
#~ msgid "Returns the label used for built-in text."
#~ msgstr "返回用于内置文本的标签。"
diff --git a/doc/translations/zh_TW.po b/doc/translations/zh_TW.po
index 456c9be89c..1621b1915b 100644
--- a/doc/translations/zh_TW.po
+++ b/doc/translations/zh_TW.po
@@ -25,43 +25,43 @@ msgstr ""
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.9-dev\n"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Description"
msgstr "說明"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Tutorials"
msgstr "教學"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Properties"
msgstr "屬性"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Methods"
msgstr "方法"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Theme Properties"
msgstr "主題屬性"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Signals"
msgstr "訊號"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Enumerations"
msgstr "列舉類型"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Constants"
msgstr "常數"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Property Descriptions"
msgstr "屬性說明"
-#: doc/tools/makerst.py
+#: doc/tools/make_rst.py
msgid "Method Descriptions"
msgstr "方法說明"
@@ -6319,21 +6319,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area.xml:17
msgid ""
-"Returns a list of intersecting [Area]s. For performance reasons (collisions "
-"are all processed at the same time) this list is modified once during the "
-"physics step, not immediately after objects are moved. Consider using "
-"signals instead."
+"Returns a list of intersecting [Area]s. The overlapping area's [member "
+"CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:23
+#: doc/classes/Area.xml:24
msgid ""
-"Returns a list of intersecting [PhysicsBody]s. For performance reasons "
-"(collisions are all processed at the same time) this list is modified once "
-"during the physics step, not immediately after objects are moved. Consider "
-"using signals instead."
+"Returns a list of intersecting [PhysicsBody]s. The overlapping body's "
+"[member CollisionObject.collision_layer] must be part of this area's [member "
+"CollisionObject.collision_mask] in order to be detected.\n"
+"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/Area.xml:30
+#: doc/classes/Area.xml:32
msgid ""
"If [code]true[/code], the given area overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6341,7 +6345,7 @@ msgid ""
"physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area.xml:38
+#: doc/classes/Area.xml:40
msgid ""
"If [code]true[/code], the given physics body overlaps the Area.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
@@ -6352,7 +6356,7 @@ msgid ""
"their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area.xml:46
+#: doc/classes/Area.xml:48
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6360,41 +6364,41 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area.xml:50 doc/classes/Area2D.xml:52
+#: doc/classes/Area.xml:52 doc/classes/Area2D.xml:54
msgid "The name of the area's audio bus."
msgstr ""
-#: doc/classes/Area.xml:53 doc/classes/Area2D.xml:55
+#: doc/classes/Area.xml:55 doc/classes/Area2D.xml:57
msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
-#: doc/classes/Area.xml:56
+#: doc/classes/Area.xml:58
msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area.xml:59 doc/classes/Area2D.xml:61
+#: doc/classes/Area.xml:61 doc/classes/Area2D.xml:63
msgid ""
"The falloff factor for point gravity. The greater the value, the faster "
"gravity decreases with distance."
msgstr ""
-#: doc/classes/Area.xml:62 doc/classes/Area2D.xml:64
+#: doc/classes/Area.xml:64 doc/classes/Area2D.xml:66
msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_vec]). See also [member space_override]."
msgstr ""
-#: doc/classes/Area.xml:65 doc/classes/Area2D.xml:67
+#: doc/classes/Area.xml:67 doc/classes/Area2D.xml:69
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/Area.xml:68
+#: doc/classes/Area.xml:70
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6402,61 +6406,61 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area.xml:72 doc/classes/Area2D.xml:74
+#: doc/classes/Area.xml:74 doc/classes/Area2D.xml:76
msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
-#: doc/classes/Area.xml:75 doc/classes/Area2D.xml:77
+#: doc/classes/Area.xml:77 doc/classes/Area2D.xml:79
msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
-#: doc/classes/Area.xml:78 doc/classes/Area2D.xml:80
+#: doc/classes/Area.xml:80 doc/classes/Area2D.xml:82
msgid "The area's priority. Higher priority areas are processed first."
msgstr ""
-#: doc/classes/Area.xml:81
+#: doc/classes/Area.xml:83
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/Area.xml:84
+#: doc/classes/Area.xml:86
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
-#: doc/classes/Area.xml:87
+#: doc/classes/Area.xml:89
msgid "The reverb bus name to use for this area's associated audio."
msgstr ""
-#: doc/classes/Area.xml:90
+#: doc/classes/Area.xml:92
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/Area.xml:93 doc/classes/Area2D.xml:83
+#: doc/classes/Area.xml:95 doc/classes/Area2D.xml:85
msgid ""
"Override mode for gravity and damping calculations within this area. See "
"[enum SpaceOverride] for possible values."
msgstr ""
-#: doc/classes/Area.xml:100
+#: doc/classes/Area.xml:102
msgid ""
"Emitted when another Area enters this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:107
+#: doc/classes/Area.xml:109
msgid ""
"Emitted when another Area exits this Area. Requires [member monitoring] to "
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
-#: doc/classes/Area.xml:117 doc/classes/Area.xml:130
+#: doc/classes/Area.xml:119 doc/classes/Area.xml:132
msgid ""
"Emitted when one of another Area's [Shape]s enters one of this Area's "
"[Shape]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6471,7 +6475,7 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:140
+#: doc/classes/Area.xml:142
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] enters this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6480,7 +6484,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:147
+#: doc/classes/Area.xml:149
msgid ""
"Emitted when a [PhysicsBody] or [GridMap] exits this Area. Requires [member "
"monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the "
@@ -6489,7 +6493,7 @@ msgid ""
"[PhysicsBody] or [GridMap]."
msgstr ""
-#: doc/classes/Area.xml:157 doc/classes/Area.xml:170
+#: doc/classes/Area.xml:159 doc/classes/Area.xml:172
msgid ""
"Emitted when one of a [PhysicsBody] or [GridMap]'s [Shape]s enters one of "
"this Area's [Shape]s. Requires [member monitoring] to be set to [code]true[/"
@@ -6506,29 +6510,29 @@ msgid ""
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area.xml:180 doc/classes/Area2D.xml:170
+#: doc/classes/Area.xml:182 doc/classes/Area2D.xml:172
msgid "This area does not affect gravity/damping."
msgstr ""
-#: doc/classes/Area.xml:183 doc/classes/Area2D.xml:173
+#: doc/classes/Area.xml:185 doc/classes/Area2D.xml:175
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
-#: doc/classes/Area.xml:186 doc/classes/Area2D.xml:176
+#: doc/classes/Area.xml:188 doc/classes/Area2D.xml:178
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/Area.xml:189 doc/classes/Area2D.xml:179
+#: doc/classes/Area.xml:191 doc/classes/Area2D.xml:181
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
-#: doc/classes/Area.xml:192 doc/classes/Area2D.xml:182
+#: doc/classes/Area.xml:194 doc/classes/Area2D.xml:184
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
@@ -6567,21 +6571,25 @@ msgstr "https://docs.godotengine.org/en/latest/tutorials/vr/index.html"
#: doc/classes/Area2D.xml:19
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."
+"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
+"CollisionObject2D.collision_layer] must be part of this area's [member "
+"CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:25
+#: doc/classes/Area2D.xml:26
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."
+"Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's "
+"[member CollisionObject2D.collision_layer] must be part of this area's "
+"[member CollisionObject2D.collision_mask] in order to be detected.\n"
+"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:32
+#: doc/classes/Area2D.xml:34
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. "
@@ -6589,7 +6597,7 @@ msgid ""
"the physics step. Consider using signals instead."
msgstr ""
-#: doc/classes/Area2D.xml:40
+#: doc/classes/Area2D.xml:42
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. "
@@ -6600,7 +6608,7 @@ msgid ""
"register their tiles with collision shapes as a virtual physics body)."
msgstr ""
-#: doc/classes/Area2D.xml:48
+#: doc/classes/Area2D.xml:50
msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
@@ -6608,14 +6616,14 @@ msgid ""
"details about damping."
msgstr ""
-#: doc/classes/Area2D.xml:58
+#: doc/classes/Area2D.xml:60
msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity vector. This is useful to alter the force of gravity "
"without altering its direction."
msgstr ""
-#: doc/classes/Area2D.xml:70
+#: doc/classes/Area2D.xml:72
msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
@@ -6623,21 +6631,21 @@ msgid ""
"about damping."
msgstr ""
-#: doc/classes/Area2D.xml:90
+#: doc/classes/Area2D.xml:92
msgid ""
"Emitted when another Area2D enters this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:97
+#: doc/classes/Area2D.xml:99
msgid ""
"Emitted when another Area2D exits this Area2D. Requires [member monitoring] "
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
-#: doc/classes/Area2D.xml:107
+#: doc/classes/Area2D.xml:109
msgid ""
"Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6652,7 +6660,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:120
+#: doc/classes/Area2D.xml:122
msgid ""
"Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's "
"[Shape2D]s. Requires [member monitoring] to be set to [code]true[/code].\n"
@@ -6667,7 +6675,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:130
+#: doc/classes/Area2D.xml:132
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6676,7 +6684,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:137
+#: doc/classes/Area2D.xml:139
msgid ""
"Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires "
"[member monitoring] to be set to [code]true[/code]. [TileMap]s are detected "
@@ -6685,7 +6693,7 @@ msgid ""
"[PhysicsBody2D] or [TileMap]."
msgstr ""
-#: doc/classes/Area2D.xml:147
+#: doc/classes/Area2D.xml:149
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one "
"of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -6704,7 +6712,7 @@ msgid ""
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
-#: doc/classes/Area2D.xml:160
+#: doc/classes/Area2D.xml:162
msgid ""
"Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of "
"this Area2D's [Shape2D]s. Requires [member monitoring] to be set to "
@@ -10289,7 +10297,8 @@ msgstr ""
msgid ""
"Bakes the lightmap, scanning from the given [code]from_node[/code] root and "
"saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If "
-"no save path is provided it will try to match the path from the current "
+"no root node is provided, parent of this node will be used as root instead. "
+"If no save path is provided it will try to match the path from the current "
"[member light_data]."
msgstr ""
@@ -10488,19 +10497,31 @@ msgstr ""
msgid "Returns if user cancels baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:133
+#: doc/classes/BakedLightmap.xml:131
+msgid ""
+"Returns if lightmapper can't be created. Unless you are using a custom "
+"lightmapper, please report this as bug."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:134
+msgid ""
+"There is no root node to start baking from. Either provide [code]from_node[/"
+"code] argument or attach this node to a parent that should be used as root."
+msgstr ""
+
+#: doc/classes/BakedLightmap.xml:137
msgid "No environment is used during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:136
+#: doc/classes/BakedLightmap.xml:140
msgid "The baked environment is automatically picked from the current scene."
msgstr ""
-#: doc/classes/BakedLightmap.xml:139
+#: doc/classes/BakedLightmap.xml:143
msgid "A custom sky is used as environment during baking."
msgstr ""
-#: doc/classes/BakedLightmap.xml:142
+#: doc/classes/BakedLightmap.xml:146
msgid "A custom solid color is used as environment during baking."
msgstr ""
@@ -11345,26 +11366,33 @@ msgid "Text [Color] used when the [Button] is disabled."
msgstr ""
#: doc/classes/Button.xml:77
-msgid "Text [Color] used when the [Button] is being hovered."
+msgid ""
+"Text [Color] used when the [Button] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/Button.xml:80
-msgid "Text [Color] used when the [Button] is being pressed."
+msgid "Text [Color] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:83
-msgid "[StyleBox] used when the [Button] is being hovered."
+msgid "Text [Color] used when the [Button] is being pressed."
msgstr ""
#: doc/classes/Button.xml:86
-msgid "The horizontal space between [Button]'s icon and text."
+msgid "[StyleBox] used when the [Button] is being hovered."
msgstr ""
#: doc/classes/Button.xml:89
-msgid "Default [StyleBox] for the [Button]."
+msgid "The horizontal space between [Button]'s icon and text."
msgstr ""
#: doc/classes/Button.xml:92
+msgid "Default [StyleBox] for the [Button]."
+msgstr ""
+
+#: doc/classes/Button.xml:95
msgid "[StyleBox] used when the [Button] is being pressed."
msgstr ""
@@ -12837,80 +12865,96 @@ msgstr ""
msgid "The check icon to display when the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:30
+#: doc/classes/CheckBox.xml:28
+msgid "The check icon to display when the [CheckBox] is checked and disabled."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:31
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:33
+#: doc/classes/CheckBox.xml:34
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is focused."
msgstr ""
-#: doc/classes/CheckBox.xml:36
+#: doc/classes/CheckBox.xml:37
msgid "The [Font] to use for the [CheckBox] text."
msgstr ""
-#: doc/classes/CheckBox.xml:39
+#: doc/classes/CheckBox.xml:40
msgid "The [CheckBox] text's font color."
msgstr ""
-#: doc/classes/CheckBox.xml:42
+#: doc/classes/CheckBox.xml:43
msgid "The [CheckBox] text's font color when it's disabled."
msgstr ""
-#: doc/classes/CheckBox.xml:45
+#: doc/classes/CheckBox.xml:46
+msgid ""
+"The [CheckBox] text's font color when it's focused. Only replaces the normal "
+"text color of the checkbox. Disabled, hovered, and pressed states take "
+"precedence over this color."
+msgstr ""
+
+#: doc/classes/CheckBox.xml:49
msgid "The [CheckBox] text's font color when it's hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:48
+#: doc/classes/CheckBox.xml:52
msgid "The [CheckBox] text's font color when it's hovered and pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:51
+#: doc/classes/CheckBox.xml:55
msgid "The [CheckBox] text's font color when it's pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:54
+#: doc/classes/CheckBox.xml:58
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered."
msgstr ""
-#: doc/classes/CheckBox.xml:57
+#: doc/classes/CheckBox.xml:61
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is hovered and "
"pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:60
+#: doc/classes/CheckBox.xml:64
msgid "The separation between the check icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckBox.xml:63 doc/classes/CheckButton.xml:58
+#: doc/classes/CheckBox.xml:67 doc/classes/CheckButton.xml:61
msgid "The [StyleBox] to display as a background."
msgstr ""
-#: doc/classes/CheckBox.xml:66
+#: doc/classes/CheckBox.xml:70
msgid ""
"The [StyleBox] to display as a background when the [CheckBox] is pressed."
msgstr ""
-#: doc/classes/CheckBox.xml:69
+#: doc/classes/CheckBox.xml:73
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is checked."
msgstr ""
-#: doc/classes/CheckBox.xml:74
+#: doc/classes/CheckBox.xml:78
msgid ""
"If the [CheckBox] is configured as a radio button, the icon to display when "
"the [CheckBox] is unchecked."
msgstr ""
-#: doc/classes/CheckBox.xml:79
+#: doc/classes/CheckBox.xml:83
msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr ""
+#: doc/classes/CheckBox.xml:86
+msgid ""
+"The check icon to display when the [CheckBox] is unchecked and disabled."
+msgstr ""
+
#: doc/classes/CheckButton.xml:4
msgid "Checkable button. See also [CheckBox]."
msgstr ""
@@ -12954,49 +12998,56 @@ msgid "The [CheckButton] text's font color when it's disabled."
msgstr ""
#: doc/classes/CheckButton.xml:40
-msgid "The [CheckButton] text's font color when it's hovered."
+msgid ""
+"The [CheckButton] text's font color when it's focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/CheckButton.xml:43
-msgid "The [CheckButton] text's font color when it's hovered and pressed."
+msgid "The [CheckButton] text's font color when it's hovered."
msgstr ""
#: doc/classes/CheckButton.xml:46
-msgid "The [CheckButton] text's font color when it's pressed."
+msgid "The [CheckButton] text's font color when it's hovered and pressed."
msgstr ""
#: doc/classes/CheckButton.xml:49
+msgid "The [CheckButton] text's font color when it's pressed."
+msgstr ""
+
+#: doc/classes/CheckButton.xml:52
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered."
msgstr ""
-#: doc/classes/CheckButton.xml:52
+#: doc/classes/CheckButton.xml:55
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is hovered "
"and pressed."
msgstr ""
-#: doc/classes/CheckButton.xml:55
+#: doc/classes/CheckButton.xml:58
msgid "The separation between the toggle icon and the text (in pixels)."
msgstr ""
-#: doc/classes/CheckButton.xml:61
+#: doc/classes/CheckButton.xml:64
msgid "The icon to display when the [CheckButton] is unchecked."
msgstr ""
-#: doc/classes/CheckButton.xml:64
+#: doc/classes/CheckButton.xml:67
msgid "The icon to display when the [CheckButton] is unchecked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:67
+#: doc/classes/CheckButton.xml:70
msgid "The icon to display when the [CheckButton] is checked."
msgstr ""
-#: doc/classes/CheckButton.xml:70
+#: doc/classes/CheckButton.xml:73
msgid "The icon to display when the [CheckButton] is checked and disabled."
msgstr ""
-#: doc/classes/CheckButton.xml:73
+#: doc/classes/CheckButton.xml:76
msgid ""
"The [StyleBox] to display as a background when the [CheckButton] is pressed."
msgstr ""
@@ -14772,26 +14823,33 @@ msgid "Text [Color] used when the [ColorPickerButton] is disabled."
msgstr ""
#: doc/classes/ColorPickerButton.xml:80
-msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ColorPickerButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ColorPickerButton.xml:83
-msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
+msgid "Text [Color] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:86
-msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
+msgid "Text [Color] used when the [ColorPickerButton] is being pressed."
msgstr ""
#: doc/classes/ColorPickerButton.xml:89
-msgid "The horizontal space between [ColorPickerButton]'s icon and text."
+msgid "[StyleBox] used when the [ColorPickerButton] is being hovered."
msgstr ""
#: doc/classes/ColorPickerButton.xml:92
-msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgid "The horizontal space between [ColorPickerButton]'s icon and text."
msgstr ""
#: doc/classes/ColorPickerButton.xml:95
+msgid "Default [StyleBox] for the [ColorPickerButton]."
+msgstr ""
+
+#: doc/classes/ColorPickerButton.xml:98
msgid "[StyleBox] used when the [ColorPickerButton] is being pressed."
msgstr ""
@@ -20025,7 +20083,8 @@ msgid ""
"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 (see "
-"[member ProjectSettings.application/config/project_data_dir_name]).\n"
+"[member ProjectSettings.application/config/"
+"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file "
"with the extension \".special\" or \".spec\":\n"
"[codeblock]\n"
@@ -20152,7 +20211,7 @@ msgstr ""
msgid ""
"Gets the extension used to save this resource in the [code].import[/code] "
"directory (see [member ProjectSettings.application/config/"
-"project_data_dir_name])."
+"use_hidden_project_data_directory])."
msgstr ""
#: doc/classes/EditorImportPlugin.xml:130
@@ -21187,8 +21246,11 @@ msgstr ""
msgid "Emitted when the value of the edited resource was changed."
msgstr ""
-#: doc/classes/EditorResourcePicker.xml:89
-msgid "Emitted when the resource value was set and user clicked to edit it."
+#: doc/classes/EditorResourcePicker.xml:90
+msgid ""
+"Emitted when the resource value was set and user clicked to edit it. When "
+"[code]edit[/code] is [code]true[/code], the signal was caused by the context "
+"menu \"Edit\" option."
msgstr ""
#: doc/classes/EditorResourcePreview.xml:4
@@ -27807,16 +27869,18 @@ msgstr ""
#: doc/classes/Image.xml:436
msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a "
-"bitdepth of 8."
+"bitdepth of 8.\n"
+"[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel "
+"instead of the red channel for storage."
msgstr ""
-#: doc/classes/Image.xml:439
+#: doc/classes/Image.xml:440
msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of "
"8 for each."
msgstr ""
-#: doc/classes/Image.xml:442
+#: doc/classes/Image.xml:443
msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
@@ -27824,7 +27888,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:446
+#: doc/classes/Image.xml:447
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
@@ -27832,73 +27896,73 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:450
+#: doc/classes/Image.xml:451
msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
-#: doc/classes/Image.xml:453
+#: doc/classes/Image.xml:454
msgid ""
"OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each "
"component of RGB and one bit for alpha."
msgstr ""
-#: doc/classes/Image.xml:456
+#: doc/classes/Image.xml:457
msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
-#: doc/classes/Image.xml:459
+#: doc/classes/Image.xml:460
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:462
+#: doc/classes/Image.xml:463
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:465
+#: doc/classes/Image.xml:466
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:468
+#: doc/classes/Image.xml:469
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:471
+#: doc/classes/Image.xml:472
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:474
+#: doc/classes/Image.xml:475
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:477
+#: doc/classes/Image.xml:478
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:480
+#: doc/classes/Image.xml:481
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:483
+#: doc/classes/Image.xml:484
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 "
@@ -27908,7 +27972,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:487
+#: doc/classes/Image.xml:488
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 "
@@ -27918,7 +27982,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:491
+#: doc/classes/Image.xml:492
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 "
@@ -27929,7 +27993,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:495
+#: doc/classes/Image.xml:496
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27937,7 +28001,7 @@ msgid ""
"DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:498
+#: doc/classes/Image.xml:499
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
@@ -27945,7 +28009,7 @@ msgid ""
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
-#: doc/classes/Image.xml:501
+#: doc/classes/Image.xml:502
msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized "
@@ -27954,21 +28018,21 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:505
+#: doc/classes/Image.xml:506
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:508
+#: doc/classes/Image.xml:509
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:511
+#: doc/classes/Image.xml:512
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."
@@ -27977,25 +28041,25 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:515
+#: doc/classes/Image.xml:516
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC2[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:518
+#: doc/classes/Image.xml:519
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:521
+#: doc/classes/Image.xml:522
msgid ""
"Same as [url=https://en.wikipedia.org/wiki/PVRTC]PVRTC4[/url], but with an "
"alpha component."
msgstr ""
-#: doc/classes/Image.xml:524
+#: doc/classes/Image.xml:525
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC1]Ericsson Texture Compression format 1[/"
@@ -28003,7 +28067,7 @@ msgid ""
"standard. This format cannot store an alpha channel."
msgstr ""
-#: doc/classes/Image.xml:527
+#: doc/classes/Image.xml:528
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28011,7 +28075,7 @@ msgid ""
"unsigned data."
msgstr ""
-#: doc/classes/Image.xml:530
+#: doc/classes/Image.xml:531
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28019,7 +28083,7 @@ msgid ""
"channel of signed data."
msgstr ""
-#: doc/classes/Image.xml:533
+#: doc/classes/Image.xml:534
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28027,7 +28091,7 @@ msgid ""
"of unsigned data."
msgstr ""
-#: doc/classes/Image.xml:536
+#: doc/classes/Image.xml:537
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28035,7 +28099,7 @@ msgid ""
"channels of signed data."
msgstr ""
-#: doc/classes/Image.xml:539
+#: doc/classes/Image.xml:540
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28045,7 +28109,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:543
+#: doc/classes/Image.xml:544
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28055,7 +28119,7 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:547
+#: doc/classes/Image.xml:548
msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression "
@@ -28066,31 +28130,31 @@ msgid ""
"conversion is performed."
msgstr ""
-#: doc/classes/Image.xml:551
+#: doc/classes/Image.xml:552
msgid "Represents the size of the [enum Format] enum."
msgstr ""
-#: doc/classes/Image.xml:554
+#: doc/classes/Image.xml:555
msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
-#: doc/classes/Image.xml:557
+#: doc/classes/Image.xml:558
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:560
+#: doc/classes/Image.xml:561
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:563
+#: doc/classes/Image.xml:564
msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
@@ -28105,55 +28169,55 @@ msgid ""
"a new set will be generated for the resulting image."
msgstr ""
-#: doc/classes/Image.xml:570
+#: doc/classes/Image.xml:571
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:573
+#: doc/classes/Image.xml:574
msgid "Image does not have alpha."
msgstr ""
-#: doc/classes/Image.xml:576
+#: doc/classes/Image.xml:577
msgid "Image stores alpha in a single bit."
msgstr ""
-#: doc/classes/Image.xml:579
+#: doc/classes/Image.xml:580
msgid "Image uses alpha."
msgstr ""
-#: doc/classes/Image.xml:582
+#: doc/classes/Image.xml:583
msgid "Use S3TC compression."
msgstr ""
-#: doc/classes/Image.xml:585
+#: doc/classes/Image.xml:586
msgid "Use PVRTC2 compression."
msgstr ""
-#: doc/classes/Image.xml:588
+#: doc/classes/Image.xml:589
msgid "Use PVRTC4 compression."
msgstr ""
-#: doc/classes/Image.xml:591
+#: doc/classes/Image.xml:592
msgid "Use ETC compression."
msgstr ""
-#: doc/classes/Image.xml:594
+#: doc/classes/Image.xml:595
msgid "Use ETC2 compression."
msgstr ""
-#: doc/classes/Image.xml:597
+#: doc/classes/Image.xml:598
msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
-#: doc/classes/Image.xml:600
+#: doc/classes/Image.xml:601
msgid "Source texture (before compression) is in sRGB space."
msgstr ""
-#: doc/classes/Image.xml:603
+#: doc/classes/Image.xml:604
msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
@@ -28378,6 +28442,17 @@ msgstr ""
#: doc/classes/Input.xml:43
msgid ""
+"Sends all input events which are in the current buffer to the game loop. "
+"These events may have been buffered as a result of accumulated input "
+"([method set_use_accumulated_input]) or agile input flushing ([member "
+"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
+"The engine will already do this itself at key execution points (at least "
+"once per frame). However, this can be useful in advanced cases where you "
+"want precise control over the timing of event handling."
+msgstr ""
+
+#: doc/classes/Input.xml:50
+msgid ""
"Returns the acceleration of the device's accelerometer sensor, if the device "
"has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor "
@@ -28389,7 +28464,7 @@ msgid ""
"the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:53
+#: doc/classes/Input.xml:60
msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use "
@@ -28399,7 +28474,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:62
+#: doc/classes/Input.xml:69
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 "
@@ -28411,7 +28486,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:71
+#: doc/classes/Input.xml:78
msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing [code]Input."
@@ -28419,17 +28494,17 @@ msgid ""
"get_action_strength(\"negative_action\")[/code]."
msgstr ""
-#: doc/classes/Input.xml:78
+#: doc/classes/Input.xml:85
msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
-#: doc/classes/Input.xml:84
+#: doc/classes/Input.xml:91
msgid "Returns the currently assigned cursor shape (see [enum CursorShape])."
msgstr ""
-#: doc/classes/Input.xml:90
+#: doc/classes/Input.xml:97
msgid ""
"Returns the gravity of the device's accelerometer sensor, if the device has "
"one. Otherwise, the method returns [constant Vector3.ZERO].\n"
@@ -28439,7 +28514,7 @@ msgid ""
"Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)."
msgstr ""
-#: doc/classes/Input.xml:97
+#: doc/classes/Input.xml:104
msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
@@ -28448,53 +28523,53 @@ msgid ""
"it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:106
+#: doc/classes/Input.xml:113
msgid ""
"Returns the current value of the joypad axis at given index (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:113
+#: doc/classes/Input.xml:120
msgid "Returns the index of the provided axis name."
msgstr ""
-#: doc/classes/Input.xml:120
+#: doc/classes/Input.xml:127
msgid ""
"Receives a [enum JoystickList] axis and returns its equivalent name as a "
"string."
msgstr ""
-#: doc/classes/Input.xml:127
+#: doc/classes/Input.xml:134
msgid "Returns the index of the provided button name."
msgstr ""
-#: doc/classes/Input.xml:134
+#: doc/classes/Input.xml:141
msgid ""
"Receives a gamepad button from [enum JoystickList] and returns its "
"equivalent name as a string."
msgstr ""
-#: doc/classes/Input.xml:141
+#: doc/classes/Input.xml:148
msgid ""
"Returns a SDL2-compatible device GUID on platforms that use gamepad "
"remapping. Returns [code]\"Default Gamepad\"[/code] otherwise."
msgstr ""
-#: doc/classes/Input.xml:148
+#: doc/classes/Input.xml:155
msgid "Returns the name of the joypad at the specified device index."
msgstr ""
-#: doc/classes/Input.xml:155
+#: doc/classes/Input.xml:162
msgid "Returns the duration of the current vibration effect in seconds."
msgstr ""
-#: doc/classes/Input.xml:162
+#: doc/classes/Input.xml:169
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:168
+#: doc/classes/Input.xml:175
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 "
@@ -28502,7 +28577,7 @@ msgid ""
"motion."
msgstr ""
-#: doc/classes/Input.xml:174
+#: doc/classes/Input.xml:181
msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
@@ -28511,17 +28586,17 @@ msgid ""
"platforms, it always returns [constant Vector3.ZERO]."
msgstr ""
-#: doc/classes/Input.xml:181
+#: doc/classes/Input.xml:188
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:187
+#: doc/classes/Input.xml:194
msgid "Returns the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:198
+#: doc/classes/Input.xml:205
msgid ""
"Gets an input vector by specifying four actions for the positive and "
"negative X and Y axes.\n"
@@ -28534,7 +28609,7 @@ msgid ""
"want (on the range of 0 to 1)."
msgstr ""
-#: doc/classes/Input.xml:208
+#: doc/classes/Input.xml:215
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 "
@@ -28546,7 +28621,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:218
+#: doc/classes/Input.xml:225
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 "
@@ -28556,7 +28631,7 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:227
+#: doc/classes/Input.xml:234
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 "
@@ -28567,13 +28642,13 @@ msgid ""
"for [InputEventJoypadMotion] events."
msgstr ""
-#: doc/classes/Input.xml:236
+#: doc/classes/Input.xml:243
msgid ""
"Returns [code]true[/code] if you are pressing the joypad button (see [enum "
"JoystickList])."
msgstr ""
-#: doc/classes/Input.xml:243
+#: doc/classes/Input.xml:250
msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices exactly as defined in [enum "
@@ -28581,19 +28656,19 @@ msgid ""
"but you can still retrieve events from them."
msgstr ""
-#: doc/classes/Input.xml:250
+#: doc/classes/Input.xml:257
msgid ""
"Returns [code]true[/code] if you are pressing the key. You can pass a [enum "
"KeyList] constant."
msgstr ""
-#: doc/classes/Input.xml:257
+#: doc/classes/Input.xml:264
msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified "
"with [enum ButtonList]."
msgstr ""
-#: doc/classes/Input.xml:267
+#: doc/classes/Input.xml:274
msgid ""
"Notifies the [Input] singleton that a connection has changed, to update the "
"state for the [code]device[/code] index.\n"
@@ -28602,7 +28677,7 @@ msgid ""
"triggered internally."
msgstr ""
-#: doc/classes/Input.xml:275
+#: doc/classes/Input.xml:282
msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
@@ -28615,12 +28690,21 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/Input.xml:289
+#: doc/classes/Input.xml:296
msgid ""
"Removes all mappings from the internal database that match the given GUID."
msgstr ""
-#: doc/classes/Input.xml:298
+#: doc/classes/Input.xml:303
+msgid ""
+"Sets the acceleration value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:313
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 "
@@ -28635,7 +28719,7 @@ msgid ""
"compression mode can't be used for custom cursors."
msgstr ""
-#: doc/classes/Input.xml:309
+#: doc/classes/Input.xml:324
msgid ""
"Sets the default cursor shape to be used in the viewport instead of "
"[constant CURSOR_ARROW].\n"
@@ -28645,11 +28729,38 @@ msgid ""
"cursor immediately."
msgstr ""
-#: doc/classes/Input.xml:318
+#: doc/classes/Input.xml:333
+msgid ""
+"Sets the gravity value of the accelerometer sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:341
+msgid ""
+"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
+"debugging on devices without a hardware sensor, for example in an editor on "
+"a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:349
+msgid ""
+"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
+"for debugging on devices without a hardware sensor, for example in an editor "
+"on a PC.\n"
+"[b]Note:[/b] This value can be immediately overwritten by the hardware "
+"sensor value on Android and iOS."
+msgstr ""
+
+#: doc/classes/Input.xml:357
msgid "Sets the mouse mode. See the constants for more information."
msgstr ""
-#: doc/classes/Input.xml:325
+#: doc/classes/Input.xml:364
msgid ""
"Enables or disables the accumulation of similar input events sent by the "
"operating system. When input accumulation is enabled, all input events "
@@ -28663,7 +28774,7 @@ msgid ""
"results that closely follow the actual input."
msgstr ""
-#: doc/classes/Input.xml:336
+#: doc/classes/Input.xml:375
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 "
@@ -28676,34 +28787,34 @@ msgid ""
"few seconds."
msgstr ""
-#: doc/classes/Input.xml:344
+#: doc/classes/Input.xml:383
msgid "Stops the vibration of the joypad."
msgstr ""
-#: doc/classes/Input.xml:351
+#: doc/classes/Input.xml:390
msgid ""
"Vibrate Android and iOS devices.\n"
"[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export "
"settings. iOS does not support duration."
msgstr ""
-#: doc/classes/Input.xml:359
+#: doc/classes/Input.xml:398
msgid "Sets the mouse position to the specified vector."
msgstr ""
-#: doc/classes/Input.xml:368
+#: doc/classes/Input.xml:407
msgid "Emitted when a joypad device has been connected or disconnected."
msgstr ""
-#: doc/classes/Input.xml:374
+#: doc/classes/Input.xml:413
msgid "Makes the mouse cursor visible if it is hidden."
msgstr ""
-#: doc/classes/Input.xml:377
+#: doc/classes/Input.xml:416
msgid "Makes the mouse cursor hidden if it is visible."
msgstr ""
-#: doc/classes/Input.xml:380
+#: doc/classes/Input.xml:419
msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the screen.\n"
@@ -28711,83 +28822,83 @@ msgid ""
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
-#: doc/classes/Input.xml:384
+#: doc/classes/Input.xml:423
msgid "Makes the mouse cursor visible but confines it to the game window."
msgstr ""
-#: doc/classes/Input.xml:387
+#: doc/classes/Input.xml:426
msgid "Arrow cursor. Standard, default pointing cursor."
msgstr ""
-#: doc/classes/Input.xml:390
+#: 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:393
+#: 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:396
+#: 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:399
+#: 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:402
+#: 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:405
+#: doc/classes/Input.xml:444
msgid "Drag cursor. Usually displayed when dragging something."
msgstr ""
-#: doc/classes/Input.xml:408
+#: 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:411
+#: 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:414
+#: 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:417
+#: 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:420
+#: 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:423
+#: 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 "
@@ -28795,23 +28906,23 @@ msgid ""
"both horizontally and vertically."
msgstr ""
-#: doc/classes/Input.xml:426
+#: doc/classes/Input.xml:465
msgid "Move cursor. Indicates that something can be moved."
msgstr ""
-#: doc/classes/Input.xml:429
+#: 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:432
+#: 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:435
+#: doc/classes/Input.xml:474
msgid "Help cursor. Usually a question mark."
msgstr ""
@@ -32071,14 +32182,21 @@ msgid "Default text [Color] of the [LinkButton]."
msgstr ""
#: doc/classes/LinkButton.xml:46
-msgid "Text [Color] used when the [LinkButton] is being hovered."
+msgid ""
+"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/LinkButton.xml:49
-msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr ""
#: doc/classes/LinkButton.xml:52
+msgid "Text [Color] used when the [LinkButton] is being pressed."
+msgstr ""
+
+#: doc/classes/LinkButton.xml:55
msgid "The vertical space between the baseline of text and the underline."
msgstr ""
@@ -32571,26 +32689,33 @@ msgid "Text [Color] used when the [MenuButton] is disabled."
msgstr ""
#: doc/classes/MenuButton.xml:64
-msgid "Text [Color] used when the [MenuButton] is being hovered."
+msgid ""
+"Text [Color] used when the [MenuButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/MenuButton.xml:67
-msgid "Text [Color] used when the [MenuButton] is being pressed."
+msgid "Text [Color] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:70
-msgid "[StyleBox] used when the [MenuButton] is being hovered."
+msgid "Text [Color] used when the [MenuButton] is being pressed."
msgstr ""
#: doc/classes/MenuButton.xml:73
-msgid "The horizontal space between [MenuButton]'s icon and text."
+msgid "[StyleBox] used when the [MenuButton] is being hovered."
msgstr ""
#: doc/classes/MenuButton.xml:76
-msgid "Default [StyleBox] for the [MenuButton]."
+msgid "The horizontal space between [MenuButton]'s icon and text."
msgstr ""
#: doc/classes/MenuButton.xml:79
+msgid "Default [StyleBox] for the [MenuButton]."
+msgstr ""
+
+#: doc/classes/MenuButton.xml:82
msgid "[StyleBox] used when the [MenuButton] is being pressed."
msgstr ""
@@ -37208,26 +37333,33 @@ msgid "Text [Color] used when the [OptionButton] is disabled."
msgstr ""
#: doc/classes/OptionButton.xml:212
-msgid "Text [Color] used when the [OptionButton] is being hovered."
+msgid ""
+"Text [Color] used when the [OptionButton] is focused. Only replaces the "
+"normal text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/OptionButton.xml:215
-msgid "Text [Color] used when the [OptionButton] is being pressed."
+msgid "Text [Color] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:218
-msgid "[StyleBox] used when the [OptionButton] is being hovered."
+msgid "Text [Color] used when the [OptionButton] is being pressed."
msgstr ""
#: doc/classes/OptionButton.xml:221
-msgid "The horizontal space between [OptionButton]'s icon and text."
+msgid "[StyleBox] used when the [OptionButton] is being hovered."
msgstr ""
#: doc/classes/OptionButton.xml:224
-msgid "Default [StyleBox] for the [OptionButton]."
+msgid "The horizontal space between [OptionButton]'s icon and text."
msgstr ""
#: doc/classes/OptionButton.xml:227
+msgid "Default [StyleBox] for the [OptionButton]."
+msgstr ""
+
+#: doc/classes/OptionButton.xml:230
msgid "[StyleBox] used when the [OptionButton] is being pressed."
msgstr ""
@@ -42324,27 +42456,27 @@ msgstr ""
msgid "Removes an element from the array by index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolColorArray.xml:66
-#: doc/classes/PoolIntArray.xml:67 doc/classes/PoolRealArray.xml:67
-#: doc/classes/PoolStringArray.xml:74 doc/classes/PoolVector2Array.xml:67
-#: doc/classes/PoolVector3Array.xml:66
+#: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67
+#: doc/classes/PoolRealArray.xml:67
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."
+"size.\n"
+"[b]Note:[/b] Added elements are not automatically initialized to 0 and will "
+"contain garbage, i.e. indeterminate values."
msgstr ""
-#: doc/classes/PoolByteArray.xml:121
+#: doc/classes/PoolByteArray.xml:122
msgid "Changes the byte at the given index."
msgstr ""
-#: doc/classes/PoolByteArray.xml:127 doc/classes/PoolColorArray.xml:79
-#: doc/classes/PoolRealArray.xml:80 doc/classes/PoolStringArray.xml:87
+#: doc/classes/PoolByteArray.xml:128 doc/classes/PoolColorArray.xml:79
+#: doc/classes/PoolRealArray.xml:81 doc/classes/PoolStringArray.xml:87
#: doc/classes/PoolVector2Array.xml:80 doc/classes/PoolVector3Array.xml:79
msgid "Returns the size of the array."
msgstr ""
-#: doc/classes/PoolByteArray.xml:135
+#: doc/classes/PoolByteArray.xml:136
msgid ""
"Returns the slice of the [PoolByteArray] between indices (inclusive) as a "
"new [PoolByteArray]. Any negative index is considered to be from the end of "
@@ -42376,6 +42508,14 @@ msgstr ""
msgid "Appends a value to the array."
msgstr ""
+#: doc/classes/PoolColorArray.xml:66 doc/classes/PoolStringArray.xml:74
+#: doc/classes/PoolVector2Array.xml:67 doc/classes/PoolVector3Array.xml:66
+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/PoolColorArray.xml:73
msgid "Changes the [Color] at the given index."
msgstr ""
@@ -42412,11 +42552,11 @@ msgid ""
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
-#: doc/classes/PoolIntArray.xml:74
+#: doc/classes/PoolIntArray.xml:75
msgid "Changes the int at the given index."
msgstr ""
-#: doc/classes/PoolIntArray.xml:80
+#: doc/classes/PoolIntArray.xml:81
msgid "Returns the array size."
msgstr ""
@@ -42448,7 +42588,7 @@ msgstr ""
msgid "Appends a [PoolRealArray] at the end of this array."
msgstr ""
-#: doc/classes/PoolRealArray.xml:74
+#: doc/classes/PoolRealArray.xml:75
msgid "Changes the float at the given index."
msgstr ""
@@ -43715,18 +43855,6 @@ msgstr ""
#: doc/classes/ProjectSettings.xml:204
msgid ""
-"The project data directory is used for storing project-specific data "
-"(metadata, shader cache, etc.).\n"
-"[b]Note:[/b] Restart the application after changing this setting.\n"
-"[b]Note:[/b] Changing this value can help on platforms or with third-party "
-"tools where specific directory patterns are disallowed. Only modify this "
-"setting if you know that your environment requires it, as changing the "
-"default can impact compatibility with some external tools or plugins which "
-"expect the default [code].import[/code] folder."
-msgstr ""
-
-#: doc/classes/ProjectSettings.xml:209
-msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] "
"class description at the top for more information.\n"
@@ -43734,7 +43862,7 @@ msgid ""
"code] will still be read to override the project settings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:213
+#: doc/classes/ProjectSettings.xml:208
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 "
@@ -43744,13 +43872,28 @@ msgid ""
"user data directory)/Godot/app_userdata/(project name)[/code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:216
+#: doc/classes/ProjectSettings.xml:211
+msgid ""
+"If [code]true[/code], the project will use a hidden directory ([code]."
+"import[/code]) for storing project-specific data (metadata, shader cache, "
+"etc.).\n"
+"If [code]false[/code], a non-hidden directory ([code]import[/code]) will be "
+"used instead.\n"
+"[b]Note:[/b] Restart the application after changing this setting.\n"
+"[b]Note:[/b] Changing this value can help on platforms or with third-party "
+"tools where hidden directory patterns are disallowed. Only modify this "
+"setting if you know that your environment requires it, as changing the "
+"default can impact compatibility with some external tools or plugins which "
+"expect the default [code].import[/code] folder."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:217
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 OS.set_native_icon]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:219
+#: doc/classes/ProjectSettings.xml:220
msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to "
@@ -43764,14 +43907,14 @@ msgid ""
"adequate to render frames at the refresh rate."
msgstr ""
-#: doc/classes/ProjectSettings.xml:224
+#: doc/classes/ProjectSettings.xml:225
msgid ""
"[b]Experimental.[/b] Shifts the measurement of delta time for each frame to "
"just after the drawing has taken place. This may lead to more consistent "
"deltas and a reduction in frame stutters."
msgstr ""
-#: doc/classes/ProjectSettings.xml:227
+#: doc/classes/ProjectSettings.xml:228
msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
@@ -43780,7 +43923,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:231
+#: doc/classes/ProjectSettings.xml:232
msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
@@ -43788,7 +43931,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:235
+#: doc/classes/ProjectSettings.xml:236
msgid ""
"If [code]true[/code], flushes the standard output stream every time a line "
"is printed. This affects both terminal logging and file logging.\n"
@@ -43804,20 +43947,20 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:241
+#: doc/classes/ProjectSettings.xml:242
msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:245
+#: doc/classes/ProjectSettings.xml:246
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:248
+#: doc/classes/ProjectSettings.xml:249
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 "
@@ -43825,75 +43968,75 @@ msgid ""
"useless (and can hurt performance) in most games."
msgstr ""
-#: doc/classes/ProjectSettings.xml:251
+#: doc/classes/ProjectSettings.xml:252
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:254
+#: doc/classes/ProjectSettings.xml:255
msgid "Path to the main scene file that will be loaded when the project runs."
msgstr ""
-#: doc/classes/ProjectSettings.xml:257 doc/classes/ProjectSettings.xml:260
+#: doc/classes/ProjectSettings.xml:258 doc/classes/ProjectSettings.xml:261
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:263
+#: doc/classes/ProjectSettings.xml:264
msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
-#: doc/classes/ProjectSettings.xml:266
+#: doc/classes/ProjectSettings.xml:267
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:269
+#: doc/classes/ProjectSettings.xml:270
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:272
+#: doc/classes/ProjectSettings.xml:273
msgid ""
"The mixing rate used for audio (in Hz). In general, it's better to not touch "
"this and leave it to the host operating system."
msgstr ""
-#: doc/classes/ProjectSettings.xml:275
+#: doc/classes/ProjectSettings.xml:276
msgid ""
"Safer override for [member audio/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:278
+#: doc/classes/ProjectSettings.xml:279
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:281
+#: doc/classes/ProjectSettings.xml:282
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:284
+#: doc/classes/ProjectSettings.xml:285
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:287
+#: doc/classes/ProjectSettings.xml:288
msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43903,7 +44046,7 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:290
+#: doc/classes/ProjectSettings.xml:291
msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
@@ -43913,27 +44056,27 @@ msgid ""
"updates."
msgstr ""
-#: doc/classes/ProjectSettings.xml:293
+#: doc/classes/ProjectSettings.xml:294
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:296
+#: doc/classes/ProjectSettings.xml:297
msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
-#: doc/classes/ProjectSettings.xml:299
+#: doc/classes/ProjectSettings.xml:300
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:302
+#: doc/classes/ProjectSettings.xml:303
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 "
@@ -43941,81 +44084,81 @@ msgid ""
"Godot 3 onwards."
msgstr ""
-#: doc/classes/ProjectSettings.xml:305
+#: doc/classes/ProjectSettings.xml:306
msgid ""
"If [code]true[/code], enables warnings when a constant is used as a function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:308
+#: doc/classes/ProjectSettings.xml:309
msgid ""
"If [code]true[/code], enables warnings when deprecated keywords such as "
"[code]slave[/code] are used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:311
+#: doc/classes/ProjectSettings.xml:312
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:314
+#: doc/classes/ProjectSettings.xml:315
msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:317
+#: doc/classes/ProjectSettings.xml:318
msgid ""
"If [code]true[/code], enables warnings when a function is declared with the "
"same name as a constant."
msgstr ""
-#: doc/classes/ProjectSettings.xml:320
+#: doc/classes/ProjectSettings.xml:321
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:323
+#: doc/classes/ProjectSettings.xml:324
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:326
+#: doc/classes/ProjectSettings.xml:327
msgid ""
"If [code]true[/code], enables warnings when using a function as if it was a "
"property."
msgstr ""
-#: doc/classes/ProjectSettings.xml:329
+#: doc/classes/ProjectSettings.xml:330
msgid ""
"If [code]true[/code], enables warnings when a ternary operator may emit "
"values with incompatible types."
msgstr ""
-#: doc/classes/ProjectSettings.xml:332
+#: doc/classes/ProjectSettings.xml:333
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:335
+#: doc/classes/ProjectSettings.xml:336
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:338
+#: doc/classes/ProjectSettings.xml:339
msgid ""
"If [code]true[/code], enables warnings when using a property as if it was a "
"function."
msgstr ""
-#: doc/classes/ProjectSettings.xml:341
+#: doc/classes/ProjectSettings.xml:342
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 "
@@ -44023,109 +44166,109 @@ msgid ""
"using the [enum Error] enum."
msgstr ""
-#: doc/classes/ProjectSettings.xml:344
+#: doc/classes/ProjectSettings.xml:345
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:347
+#: doc/classes/ProjectSettings.xml:348
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:350
+#: doc/classes/ProjectSettings.xml:351
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:353
+#: doc/classes/ProjectSettings.xml:354
msgid ""
"If [code]true[/code], all warnings will be reported as if they were errors."
msgstr ""
-#: doc/classes/ProjectSettings.xml:356
+#: doc/classes/ProjectSettings.xml:357
msgid ""
"If [code]true[/code], enables warnings when using a variable that wasn't "
"previously assigned."
msgstr ""
-#: doc/classes/ProjectSettings.xml:359
+#: doc/classes/ProjectSettings.xml:360
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:362
+#: doc/classes/ProjectSettings.xml:363
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:365
+#: doc/classes/ProjectSettings.xml:366
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:368
+#: doc/classes/ProjectSettings.xml:369
msgid "If [code]true[/code], enables warnings when performing an unsafe cast."
msgstr ""
-#: doc/classes/ProjectSettings.xml:371
+#: doc/classes/ProjectSettings.xml:372
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:374
+#: doc/classes/ProjectSettings.xml:375
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:377
+#: doc/classes/ProjectSettings.xml:378
msgid ""
"If [code]true[/code], enables warnings when a function parameter is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:380
+#: doc/classes/ProjectSettings.xml:381
msgid ""
"If [code]true[/code], enables warnings when a member variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:383
+#: doc/classes/ProjectSettings.xml:384
msgid "If [code]true[/code], enables warnings when a signal is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:386
+#: doc/classes/ProjectSettings.xml:387
msgid "If [code]true[/code], enables warnings when a local variable is unused."
msgstr ""
-#: doc/classes/ProjectSettings.xml:389
+#: doc/classes/ProjectSettings.xml:390
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:392
+#: doc/classes/ProjectSettings.xml:393
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:395
+#: doc/classes/ProjectSettings.xml:396
msgid "Message to be displayed before the backtrace when the engine crashes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:398
+#: doc/classes/ProjectSettings.xml:399
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"
@@ -44136,91 +44279,91 @@ msgid ""
"project under lag conditions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:403
+#: doc/classes/ProjectSettings.xml:404
msgid "Maximum call stack allowed for debugging GDScript."
msgstr ""
-#: doc/classes/ProjectSettings.xml:406
+#: doc/classes/ProjectSettings.xml:407
msgid "Maximum amount of functions per frame allowed when profiling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:409
+#: doc/classes/ProjectSettings.xml:410
msgid "Print frames per second to standard output every second."
msgstr ""
-#: doc/classes/ProjectSettings.xml:412
+#: doc/classes/ProjectSettings.xml:413
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:415
+#: doc/classes/ProjectSettings.xml:416
msgid "Maximum call stack in visual scripting, to avoid infinite recursion."
msgstr ""
-#: doc/classes/ProjectSettings.xml:418
+#: doc/classes/ProjectSettings.xml:419
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:421
+#: doc/classes/ProjectSettings.xml:422
msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:424
+#: doc/classes/ProjectSettings.xml:425
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:427
+#: doc/classes/ProjectSettings.xml:428
msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:430
+#: doc/classes/ProjectSettings.xml:431
msgid ""
"Color of the disabled navigation geometry, visible when \"Visible Navigation"
"\" is enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:433
+#: doc/classes/ProjectSettings.xml:434
msgid ""
"Color of the navigation geometry, visible when \"Visible Navigation\" is "
"enabled in the Debug menu."
msgstr ""
-#: doc/classes/ProjectSettings.xml:436
+#: doc/classes/ProjectSettings.xml:437
msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:439
+#: doc/classes/ProjectSettings.xml:440
msgid "Hotspot for the custom mouse cursor image."
msgstr ""
-#: doc/classes/ProjectSettings.xml:442
+#: doc/classes/ProjectSettings.xml:443
msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
-#: doc/classes/ProjectSettings.xml:445
+#: doc/classes/ProjectSettings.xml:446
msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 "
"platform. This setting has no effect on desktop Linux, as DPI-awareness "
"fallbacks are not supported there."
msgstr ""
-#: doc/classes/ProjectSettings.xml:448
+#: doc/classes/ProjectSettings.xml:449
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:451
+#: doc/classes/ProjectSettings.xml:452
msgid ""
"The default screen orientation to use on mobile devices.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
@@ -44229,13 +44372,13 @@ msgid ""
"window/size/height] accordingly."
msgstr ""
-#: doc/classes/ProjectSettings.xml:455
+#: doc/classes/ProjectSettings.xml:456
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:458
+#: doc/classes/ProjectSettings.xml:459
msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
@@ -44245,7 +44388,7 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:463
+#: doc/classes/ProjectSettings.xml:464
msgid ""
"Sets the window background to transparent when it starts.\n"
"See [member OS.window_per_pixel_transparency_enabled] for more details.\n"
@@ -44253,19 +44396,19 @@ msgid ""
"and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:468
+#: doc/classes/ProjectSettings.xml:469
msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:472
+#: doc/classes/ProjectSettings.xml:473
msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:476
+#: doc/classes/ProjectSettings.xml:477
msgid ""
"Sets the main window to full screen when the project starts. Note that this "
"is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless "
@@ -44279,45 +44422,45 @@ msgid ""
"[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:481
+#: doc/classes/ProjectSettings.xml:482
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:484
+#: doc/classes/ProjectSettings.xml:485
msgid ""
"Allows the window to be resizable by default.\n"
"[b]Note:[/b] This setting is ignored on iOS and Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:488
+#: doc/classes/ProjectSettings.xml:489
msgid ""
"If greater than zero, overrides the window height when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:491
+#: doc/classes/ProjectSettings.xml:492
msgid ""
"If greater than zero, overrides the window width when running the game. "
"Useful for testing stretch modes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:494
+#: doc/classes/ProjectSettings.xml:495
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:497
+#: doc/classes/ProjectSettings.xml:498
msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will "
"be used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:500
+#: doc/classes/ProjectSettings.xml:501
msgid ""
"If [code]true[/code], enables vertical synchronization. This eliminates "
"tearing that may appear in moving scenes, at the cost of higher input "
@@ -44326,7 +44469,7 @@ msgid ""
"regardless (such as mobile platforms and HTML5)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:503
+#: doc/classes/ProjectSettings.xml:504
msgid ""
"If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], "
"enables vertical synchronization via the operating system's window "
@@ -44337,7 +44480,7 @@ msgid ""
"framerate halving (e.g. from 60 FPS to 30 FPS) when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:507
+#: doc/classes/ProjectSettings.xml:508
msgid ""
"The command-line arguments to append to Godot's own command line when "
"running the project. This doesn't affect the editor itself.\n"
@@ -44353,14 +44496,14 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:515
+#: doc/classes/ProjectSettings.xml:516
msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
-#: doc/classes/ProjectSettings.xml:518
+#: doc/classes/ProjectSettings.xml:519
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 "
@@ -44368,49 +44511,49 @@ msgid ""
"serialized in the scene files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:521
+#: doc/classes/ProjectSettings.xml:522
msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
-#: doc/classes/ProjectSettings.xml:524
+#: doc/classes/ProjectSettings.xml:525
msgid ""
"If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and "
"UWP to follow interface conventions."
msgstr ""
-#: doc/classes/ProjectSettings.xml:529
+#: doc/classes/ProjectSettings.xml:530
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:532
+#: doc/classes/ProjectSettings.xml:533
msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
-#: doc/classes/ProjectSettings.xml:535
+#: doc/classes/ProjectSettings.xml:536
msgid "If [code]true[/code], makes sure the theme used works with HiDPI."
msgstr ""
-#: doc/classes/ProjectSettings.xml:538
+#: doc/classes/ProjectSettings.xml:539
msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls "
"(in milliseconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:541
+#: doc/classes/ProjectSettings.xml:542
msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:544
+#: doc/classes/ProjectSettings.xml:545
msgid "Default delay for tooltips (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:547
+#: doc/classes/ProjectSettings.xml:548
msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, "
"or validate input.\n"
@@ -44419,7 +44562,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:551
+#: doc/classes/ProjectSettings.xml:552
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 "
@@ -44427,7 +44570,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:555
+#: doc/classes/ProjectSettings.xml:556
msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44435,7 +44578,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:559
+#: doc/classes/ProjectSettings.xml:560
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 "
@@ -44445,7 +44588,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:563
+#: doc/classes/ProjectSettings.xml:564
msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
@@ -44454,7 +44597,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:567
+#: doc/classes/ProjectSettings.xml:568
msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
@@ -44463,7 +44606,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:571
+#: doc/classes/ProjectSettings.xml:572
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 "
@@ -44473,7 +44616,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:575
+#: doc/classes/ProjectSettings.xml:576
msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44481,7 +44624,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:579
+#: doc/classes/ProjectSettings.xml:580
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 "
@@ -44491,7 +44634,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:583
+#: doc/classes/ProjectSettings.xml:584
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 "
@@ -44501,7 +44644,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:587
+#: doc/classes/ProjectSettings.xml:588
msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44509,7 +44652,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:591
+#: doc/classes/ProjectSettings.xml:592
msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
@@ -44518,7 +44661,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:595
+#: doc/classes/ProjectSettings.xml:596
msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
@@ -44526,7 +44669,7 @@ msgid ""
"to the action can however be modified."
msgstr ""
-#: doc/classes/ProjectSettings.xml:599
+#: doc/classes/ProjectSettings.xml:600
msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
@@ -44538,477 +44681,477 @@ msgid ""
"[b]Note:[/b] Currently implemented only in Android."
msgstr ""
-#: doc/classes/ProjectSettings.xml:605
+#: doc/classes/ProjectSettings.xml:606
msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on "
"the touchscreen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:608
+#: doc/classes/ProjectSettings.xml:609
msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
-#: doc/classes/ProjectSettings.xml:611
+#: doc/classes/ProjectSettings.xml:612
msgid "Default delay for touch events. This only affects iOS devices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:614
+#: doc/classes/ProjectSettings.xml:615
msgid "Optional name for the 2D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:617
+#: doc/classes/ProjectSettings.xml:618
msgid "Optional name for the 2D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:620
+#: doc/classes/ProjectSettings.xml:621
msgid "Optional name for the 2D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:623
+#: doc/classes/ProjectSettings.xml:624
msgid "Optional name for the 2D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:626
+#: doc/classes/ProjectSettings.xml:627
msgid "Optional name for the 2D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:629
+#: doc/classes/ProjectSettings.xml:630
msgid "Optional name for the 2D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:632
+#: doc/classes/ProjectSettings.xml:633
msgid "Optional name for the 2D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:635
+#: doc/classes/ProjectSettings.xml:636
msgid "Optional name for the 2D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:638
+#: doc/classes/ProjectSettings.xml:639
msgid "Optional name for the 2D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:641
+#: doc/classes/ProjectSettings.xml:642
msgid "Optional name for the 2D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:644
+#: doc/classes/ProjectSettings.xml:645
msgid "Optional name for the 2D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:647
+#: doc/classes/ProjectSettings.xml:648
msgid "Optional name for the 2D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:650
+#: doc/classes/ProjectSettings.xml:651
msgid "Optional name for the 2D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:653
+#: doc/classes/ProjectSettings.xml:654
msgid "Optional name for the 2D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:656
+#: doc/classes/ProjectSettings.xml:657
msgid "Optional name for the 2D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:659
+#: doc/classes/ProjectSettings.xml:660
msgid "Optional name for the 2D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:662
+#: doc/classes/ProjectSettings.xml:663
msgid "Optional name for the 2D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:665
+#: doc/classes/ProjectSettings.xml:666
msgid "Optional name for the 2D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:668
+#: doc/classes/ProjectSettings.xml:669
msgid "Optional name for the 2D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:671
+#: doc/classes/ProjectSettings.xml:672
msgid "Optional name for the 2D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:674
+#: doc/classes/ProjectSettings.xml:675
msgid "Optional name for the 2D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:677
+#: doc/classes/ProjectSettings.xml:678
msgid "Optional name for the 2D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:680
+#: doc/classes/ProjectSettings.xml:681
msgid "Optional name for the 2D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:683
+#: doc/classes/ProjectSettings.xml:684
msgid "Optional name for the 2D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:686
+#: doc/classes/ProjectSettings.xml:687
msgid "Optional name for the 2D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:689
+#: doc/classes/ProjectSettings.xml:690
msgid "Optional name for the 2D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:692
+#: doc/classes/ProjectSettings.xml:693
msgid "Optional name for the 2D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:695
+#: doc/classes/ProjectSettings.xml:696
msgid "Optional name for the 2D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:698
+#: doc/classes/ProjectSettings.xml:699
msgid "Optional name for the 2D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:701
+#: doc/classes/ProjectSettings.xml:702
msgid "Optional name for the 2D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:704
+#: doc/classes/ProjectSettings.xml:705
msgid "Optional name for the 2D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:707
+#: doc/classes/ProjectSettings.xml:708
msgid "Optional name for the 2D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:710
+#: doc/classes/ProjectSettings.xml:711
msgid "Optional name for the 2D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:713
+#: doc/classes/ProjectSettings.xml:714
msgid "Optional name for the 2D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:716
+#: doc/classes/ProjectSettings.xml:717
msgid "Optional name for the 2D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:719
+#: doc/classes/ProjectSettings.xml:720
msgid "Optional name for the 2D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:722
+#: doc/classes/ProjectSettings.xml:723
msgid "Optional name for the 2D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:725
+#: doc/classes/ProjectSettings.xml:726
msgid "Optional name for the 2D render layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:728
+#: doc/classes/ProjectSettings.xml:729
msgid "Optional name for the 2D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:731
+#: doc/classes/ProjectSettings.xml:732
msgid "Optional name for the 2D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:734
+#: doc/classes/ProjectSettings.xml:735
msgid "Optional name for the 2D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:737
+#: doc/classes/ProjectSettings.xml:738
msgid "Optional name for the 2D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:740
+#: doc/classes/ProjectSettings.xml:741
msgid "Optional name for the 2D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:743
+#: doc/classes/ProjectSettings.xml:744
msgid "Optional name for the 2D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:746
+#: doc/classes/ProjectSettings.xml:747
msgid "Optional name for the 2D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:749
+#: doc/classes/ProjectSettings.xml:750
msgid "Optional name for the 2D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:752
+#: doc/classes/ProjectSettings.xml:753
msgid "Optional name for the 2D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:755
+#: doc/classes/ProjectSettings.xml:756
msgid "Optional name for the 2D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:758
+#: doc/classes/ProjectSettings.xml:759
msgid "Optional name for the 2D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:761
+#: doc/classes/ProjectSettings.xml:762
msgid "Optional name for the 2D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:764
+#: doc/classes/ProjectSettings.xml:765
msgid "Optional name for the 2D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:767
+#: doc/classes/ProjectSettings.xml:768
msgid "Optional name for the 2D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:770
+#: doc/classes/ProjectSettings.xml:771
msgid "Optional name for the 3D physics layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:773
+#: doc/classes/ProjectSettings.xml:774
msgid "Optional name for the 3D physics layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:776
+#: doc/classes/ProjectSettings.xml:777
msgid "Optional name for the 3D physics layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:779
+#: doc/classes/ProjectSettings.xml:780
msgid "Optional name for the 3D physics layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:782
+#: doc/classes/ProjectSettings.xml:783
msgid "Optional name for the 3D physics layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:785
+#: doc/classes/ProjectSettings.xml:786
msgid "Optional name for the 3D physics layer 14."
msgstr ""
-#: doc/classes/ProjectSettings.xml:788
+#: doc/classes/ProjectSettings.xml:789
msgid "Optional name for the 3D physics layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:791
+#: doc/classes/ProjectSettings.xml:792
msgid "Optional name for the 3D physics layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:794
+#: doc/classes/ProjectSettings.xml:795
msgid "Optional name for the 3D physics layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:797
+#: doc/classes/ProjectSettings.xml:798
msgid "Optional name for the 3D physics layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:800
+#: doc/classes/ProjectSettings.xml:801
msgid "Optional name for the 3D physics layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:803
+#: doc/classes/ProjectSettings.xml:804
msgid "Optional name for the 3D physics layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:806
+#: doc/classes/ProjectSettings.xml:807
msgid "Optional name for the 3D physics layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:809
+#: doc/classes/ProjectSettings.xml:810
msgid "Optional name for the 3D physics layer 21."
msgstr ""
-#: doc/classes/ProjectSettings.xml:812
+#: doc/classes/ProjectSettings.xml:813
msgid "Optional name for the 3D physics layer 22."
msgstr ""
-#: doc/classes/ProjectSettings.xml:815
+#: doc/classes/ProjectSettings.xml:816
msgid "Optional name for the 3D physics layer 23."
msgstr ""
-#: doc/classes/ProjectSettings.xml:818
+#: doc/classes/ProjectSettings.xml:819
msgid "Optional name for the 3D physics layer 24."
msgstr ""
-#: doc/classes/ProjectSettings.xml:821
+#: doc/classes/ProjectSettings.xml:822
msgid "Optional name for the 3D physics layer 25."
msgstr ""
-#: doc/classes/ProjectSettings.xml:824
+#: doc/classes/ProjectSettings.xml:825
msgid "Optional name for the 3D physics layer 26."
msgstr ""
-#: doc/classes/ProjectSettings.xml:827
+#: doc/classes/ProjectSettings.xml:828
msgid "Optional name for the 3D physics layer 27."
msgstr ""
-#: doc/classes/ProjectSettings.xml:830
+#: doc/classes/ProjectSettings.xml:831
msgid "Optional name for the 3D physics layer 28."
msgstr ""
-#: doc/classes/ProjectSettings.xml:833
+#: doc/classes/ProjectSettings.xml:834
msgid "Optional name for the 3D physics layer 29."
msgstr ""
-#: doc/classes/ProjectSettings.xml:836
+#: doc/classes/ProjectSettings.xml:837
msgid "Optional name for the 3D physics layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:839
+#: doc/classes/ProjectSettings.xml:840
msgid "Optional name for the 3D physics layer 30."
msgstr ""
-#: doc/classes/ProjectSettings.xml:842
+#: doc/classes/ProjectSettings.xml:843
msgid "Optional name for the 3D physics layer 31."
msgstr ""
-#: doc/classes/ProjectSettings.xml:845
+#: doc/classes/ProjectSettings.xml:846
msgid "Optional name for the 3D physics layer 32."
msgstr ""
-#: doc/classes/ProjectSettings.xml:848
+#: doc/classes/ProjectSettings.xml:849
msgid "Optional name for the 3D physics layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:851
+#: doc/classes/ProjectSettings.xml:852
msgid "Optional name for the 3D physics layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:854
+#: doc/classes/ProjectSettings.xml:855
msgid "Optional name for the 3D physics layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:857
+#: doc/classes/ProjectSettings.xml:858
msgid "Optional name for the 3D physics layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:860
+#: doc/classes/ProjectSettings.xml:861
msgid "Optional name for the 3D physics layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:863
+#: doc/classes/ProjectSettings.xml:864
msgid "Optional name for the 3D physics layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:866
+#: doc/classes/ProjectSettings.xml:867
msgid "Optional name for the 3D render layer 1."
msgstr ""
-#: doc/classes/ProjectSettings.xml:869
+#: doc/classes/ProjectSettings.xml:870
msgid "Optional name for the 3D render layer 10."
msgstr ""
-#: doc/classes/ProjectSettings.xml:872
+#: doc/classes/ProjectSettings.xml:873
msgid "Optional name for the 3D render layer 11."
msgstr ""
-#: doc/classes/ProjectSettings.xml:875
+#: doc/classes/ProjectSettings.xml:876
msgid "Optional name for the 3D render layer 12."
msgstr ""
-#: doc/classes/ProjectSettings.xml:878
+#: doc/classes/ProjectSettings.xml:879
msgid "Optional name for the 3D render layer 13."
msgstr ""
-#: doc/classes/ProjectSettings.xml:881
+#: doc/classes/ProjectSettings.xml:882
msgid "Optional name for the 3D render layer 14"
msgstr ""
-#: doc/classes/ProjectSettings.xml:884
+#: doc/classes/ProjectSettings.xml:885
msgid "Optional name for the 3D render layer 15."
msgstr ""
-#: doc/classes/ProjectSettings.xml:887
+#: doc/classes/ProjectSettings.xml:888
msgid "Optional name for the 3D render layer 16."
msgstr ""
-#: doc/classes/ProjectSettings.xml:890
+#: doc/classes/ProjectSettings.xml:891
msgid "Optional name for the 3D render layer 17."
msgstr ""
-#: doc/classes/ProjectSettings.xml:893
+#: doc/classes/ProjectSettings.xml:894
msgid "Optional name for the 3D render layer 18."
msgstr ""
-#: doc/classes/ProjectSettings.xml:896
+#: doc/classes/ProjectSettings.xml:897
msgid "Optional name for the 3D render layer 19."
msgstr ""
-#: doc/classes/ProjectSettings.xml:899
+#: doc/classes/ProjectSettings.xml:900
msgid "Optional name for the 3D render layer 2."
msgstr ""
-#: doc/classes/ProjectSettings.xml:902
+#: doc/classes/ProjectSettings.xml:903
msgid "Optional name for the 3D render layer 20."
msgstr ""
-#: doc/classes/ProjectSettings.xml:905
+#: doc/classes/ProjectSettings.xml:906
msgid "Optional name for the 3D render layer 3."
msgstr ""
-#: doc/classes/ProjectSettings.xml:908
+#: doc/classes/ProjectSettings.xml:909
msgid "Optional name for the 3D render layer 4."
msgstr ""
-#: doc/classes/ProjectSettings.xml:911
+#: doc/classes/ProjectSettings.xml:912
msgid "Optional name for the 3D render layer 5."
msgstr ""
-#: doc/classes/ProjectSettings.xml:914
+#: doc/classes/ProjectSettings.xml:915
msgid "Optional name for the 3D render layer 6."
msgstr ""
-#: doc/classes/ProjectSettings.xml:917
+#: doc/classes/ProjectSettings.xml:918
msgid "Optional name for the 3D render layer 7."
msgstr ""
-#: doc/classes/ProjectSettings.xml:920
+#: doc/classes/ProjectSettings.xml:921
msgid "Optional name for the 3D render layer 8."
msgstr ""
-#: doc/classes/ProjectSettings.xml:923
+#: doc/classes/ProjectSettings.xml:924
msgid "Optional name for the 3D render layer 9."
msgstr ""
-#: doc/classes/ProjectSettings.xml:926
+#: doc/classes/ProjectSettings.xml:927
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:929
+#: doc/classes/ProjectSettings.xml:930
msgid ""
"If non-empty, this locale will be used when running the project from the "
"editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:932
+#: doc/classes/ProjectSettings.xml:933
msgid "If [code]true[/code], logs all output to files."
msgstr ""
-#: doc/classes/ProjectSettings.xml:935
+#: doc/classes/ProjectSettings.xml:936
msgid ""
"Desktop override for [member logging/file_logging/enable_file_logging], as "
"log files are not readily accessible on mobile/Web platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:938
+#: doc/classes/ProjectSettings.xml:939
msgid ""
"Path to logs within the project. Using an [code]user://[/code] path is "
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:941
+#: doc/classes/ProjectSettings.xml:942
msgid "Specifies the maximum amount of log files allowed (used for rotation)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:946
+#: doc/classes/ProjectSettings.xml:947
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:949
+#: doc/classes/ProjectSettings.xml:950
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 "
@@ -45016,92 +45159,92 @@ msgid ""
"thread, increase this number."
msgstr ""
-#: doc/classes/ProjectSettings.xml:952
+#: doc/classes/ProjectSettings.xml:953
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:955
+#: doc/classes/ProjectSettings.xml:956
msgid ""
"Maximum number of errors allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:958
+#: doc/classes/ProjectSettings.xml:959
msgid ""
"Maximum amount of messages 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:961
+#: doc/classes/ProjectSettings.xml:962
msgid ""
"Maximum number of warnings allowed to be sent as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
-#: doc/classes/ProjectSettings.xml:964
+#: doc/classes/ProjectSettings.xml:965
msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
-#: doc/classes/ProjectSettings.xml:967
+#: doc/classes/ProjectSettings.xml:968
msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:970
+#: doc/classes/ProjectSettings.xml:971
msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:973
+#: doc/classes/ProjectSettings.xml:974
msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:976
+#: doc/classes/ProjectSettings.xml:977
msgid "Maximum number of concurrent input packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:979
+#: doc/classes/ProjectSettings.xml:980
msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:982
+#: doc/classes/ProjectSettings.xml:983
msgid "Maximum number of concurrent output packets for [WebSocketClient]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:985
+#: doc/classes/ProjectSettings.xml:986
msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:988
+#: doc/classes/ProjectSettings.xml:989
msgid "Maximum number of concurrent input packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:991
+#: doc/classes/ProjectSettings.xml:992
msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer."
msgstr ""
-#: doc/classes/ProjectSettings.xml:994
+#: doc/classes/ProjectSettings.xml:995
msgid "Maximum number of concurrent output packets for [WebSocketServer]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:997
+#: doc/classes/ProjectSettings.xml:998
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:1000
+#: doc/classes/ProjectSettings.xml:1001
msgid "Page size used by remote filesystem (in bytes)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1003
+#: doc/classes/ProjectSettings.xml:1004
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://"
@@ -45111,33 +45254,33 @@ msgid ""
"If in doubt, leave this setting empty."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1007
+#: doc/classes/ProjectSettings.xml:1008
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:1010
+#: doc/classes/ProjectSettings.xml:1011
msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1013
+#: doc/classes/ProjectSettings.xml:1014
msgid ""
"Size of the hash table used for the broad-phase 2D hash grid algorithm.\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1017
+#: doc/classes/ProjectSettings.xml:1018
msgid ""
"Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n"
"[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is "
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1021
+#: doc/classes/ProjectSettings.xml:1022
msgid ""
"The default angular damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45150,7 +45293,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1025
+#: doc/classes/ProjectSettings.xml:1026
msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45162,7 +45305,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1033
+#: doc/classes/ProjectSettings.xml:1034
msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45174,7 +45317,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1041
+#: doc/classes/ProjectSettings.xml:1042
msgid ""
"The default linear damp in 2D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45187,7 +45330,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1045
+#: doc/classes/ProjectSettings.xml:1046
msgid ""
"Threshold defining the surface size that constitutes a large object with "
"regard to cells in the broad-phase 2D hash grid algorithm.\n"
@@ -45195,28 +45338,28 @@ msgid ""
"enabled."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1049
+#: doc/classes/ProjectSettings.xml:1050
msgid ""
"Sets which physics engine to use for 2D physics.\n"
"\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no "
"alternative 2D physics server implemented."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1053
+#: doc/classes/ProjectSettings.xml:1054
msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1056
+#: doc/classes/ProjectSettings.xml:1057
msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant Physics2DServer."
"SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1059
+#: doc/classes/ProjectSettings.xml:1060
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 "
@@ -45226,25 +45369,25 @@ msgid ""
"give you extra performance and no regressions when using it."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1063
+#: doc/classes/ProjectSettings.xml:1064
msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1066
+#: doc/classes/ProjectSettings.xml:1067
msgid ""
"Enables the use of bounding volume hierarchy instead of hash grid for 2D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1069
+#: doc/classes/ProjectSettings.xml:1070
msgid ""
"Sets whether the 3D physics world will be created with support for "
"[SoftBody] physics. Only applies to the Bullet physics engine."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1072
+#: doc/classes/ProjectSettings.xml:1073
msgid ""
"The default angular damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45257,7 +45400,7 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1076
+#: doc/classes/ProjectSettings.xml:1077
msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45269,7 +45412,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1084
+#: doc/classes/ProjectSettings.xml:1085
msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
@@ -45281,7 +45424,7 @@ msgid ""
"[/codeblock]"
msgstr ""
-#: doc/classes/ProjectSettings.xml:1092
+#: doc/classes/ProjectSettings.xml:1093
msgid ""
"The default linear damp in 3D.\n"
"[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. "
@@ -45294,13 +45437,13 @@ msgid ""
"stop in one iteration."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1096
+#: doc/classes/ProjectSettings.xml:1097
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for 3D "
"physics spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1099
+#: doc/classes/ProjectSettings.xml:1100
msgid ""
"Sets which physics engine to use for 3D physics.\n"
"\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] "
@@ -45308,11 +45451,11 @@ msgid ""
"alternative."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1103
+#: doc/classes/ProjectSettings.xml:1104
msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1106
+#: doc/classes/ProjectSettings.xml:1107
msgid ""
"If enabled, 2D and 3D physics picking behaves this way in relation to "
"pause:\n"
@@ -45326,7 +45469,7 @@ msgid ""
"that queue on resume, against the state of the 2D/3D world at that point."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1112
+#: doc/classes/ProjectSettings.xml:1113
msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run.\n"
@@ -45335,7 +45478,7 @@ msgid ""
"instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1116
+#: doc/classes/ProjectSettings.xml:1117
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 "
@@ -45351,7 +45494,7 @@ msgid ""
"the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1121
+#: doc/classes/ProjectSettings.xml:1122
msgid ""
"[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to "
"uploading batching data. This may not be necessary but can be used for "
@@ -45361,7 +45504,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1125
+#: doc/classes/ProjectSettings.xml:1126
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45371,7 +45514,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1129
+#: doc/classes/ProjectSettings.xml:1130
msgid ""
"[b]Experimental.[/b] If set to on, this applies buffer orphaning - "
"[code]glBufferData[/code] is called with NULL data and the full buffer size "
@@ -45382,7 +45525,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1133
+#: doc/classes/ProjectSettings.xml:1134
msgid ""
"[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag "
"for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] "
@@ -45392,7 +45535,7 @@ msgid ""
"adversely affect performance for end users."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1137
+#: doc/classes/ProjectSettings.xml:1138
msgid ""
"Choose between fixed mode where corner scalings are preserved matching the "
"artwork, and scaling mode.\n"
@@ -45400,7 +45543,7 @@ msgid ""
"is off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1141
+#: doc/classes/ProjectSettings.xml:1142
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 "
@@ -45411,7 +45554,7 @@ msgid ""
"rendering, but only on desktop platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1145
+#: doc/classes/ProjectSettings.xml:1146
msgid ""
"If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. "
"This provides greater compatibility with a wide range of hardware, and also "
@@ -45426,7 +45569,7 @@ msgid ""
"skinning."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1151
+#: doc/classes/ProjectSettings.xml:1152
msgid ""
"If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. "
"May help in some pixel art styles.\n"
@@ -45435,13 +45578,13 @@ msgid ""
"uv_contract] to prevent artifacts."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1156
+#: doc/classes/ProjectSettings.xml:1157
msgid ""
"When batching is on, this regularly prints a frame diagnosis log. Note that "
"this will degrade performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1159
+#: doc/classes/ProjectSettings.xml:1160
msgid ""
"[b]Experimental.[/b] For regression testing against the old renderer. If "
"this is switched on, and [code]use_batching[/code] is set, the renderer will "
@@ -45450,7 +45593,7 @@ msgid ""
"Performance will be degraded."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1162
+#: doc/classes/ProjectSettings.xml:1163
msgid ""
"Lights have the potential to prevent joining items, and break many of the "
"performance benefits of batching. This setting enables some complex logic to "
@@ -45460,7 +45603,7 @@ msgid ""
"returns."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1165
+#: doc/classes/ProjectSettings.xml:1166
msgid ""
"Sets the proportion of the total screen area (in pixels) that must be saved "
"by a scissor operation in order to activate light scissoring. This can "
@@ -45472,7 +45615,7 @@ msgid ""
"a lot of lighting."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1168
+#: doc/classes/ProjectSettings.xml:1169
msgid ""
"Enabling this setting uses the legacy method to draw batches containing only "
"one rect. The legacy method is faster (approx twice as fast), but can cause "
@@ -45482,24 +45625,24 @@ msgid ""
"this method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1171
+#: doc/classes/ProjectSettings.xml:1172
msgid ""
"Turns 2D batching on and off. Batching increases performance by reducing the "
"amount of graphics API drawcalls."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1174
+#: doc/classes/ProjectSettings.xml:1175
msgid "Switches on 2D batching within the editor."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1177
+#: doc/classes/ProjectSettings.xml:1178
msgid ""
"Size of buffer reserved for batched vertices. Larger size enables larger "
"batches, but there are diminishing returns for the memory used. This should "
"only have a minor effect on performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1180
+#: doc/classes/ProjectSettings.xml:1181
msgid ""
"Including color in the vertex format has a cost, however, not including "
"color prevents batching across color changes. This threshold determines the "
@@ -45508,7 +45651,7 @@ msgid ""
"0 will always use colored vertices, 1 will never use colored vertices."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1183
+#: doc/classes/ProjectSettings.xml:1184
msgid ""
"In certain circumstances, the batcher can reorder items in order to better "
"join them. This may result in better performance. An overlap test is needed "
@@ -45516,7 +45659,7 @@ msgid ""
"returns. If you are getting no benefit, setting this to 0 will switch it off."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1186
+#: doc/classes/ProjectSettings.xml:1187
msgid ""
"Sets the number of commands to lookahead to determine whether to batch "
"render items. A value of 1 can join items consisting of single commands, 0 "
@@ -45525,7 +45668,7 @@ msgid ""
"recommended."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1189
+#: doc/classes/ProjectSettings.xml:1190
msgid ""
"On some platforms (especially mobile), precision issues in shaders can lead "
"to reading 1 texel outside of bounds, particularly where rects are scaled. "
@@ -45535,7 +45678,7 @@ msgid ""
"texels."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1193
+#: doc/classes/ProjectSettings.xml:1194
msgid ""
"The amount of UV contraction. This figure is divided by 1000000, and is a "
"proportion of the total texture dimensions, where the width and height are "
@@ -45543,31 +45686,31 @@ msgid ""
"Use the default unless correcting for a problem on particular hardware."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1197
+#: doc/classes/ProjectSettings.xml:1198
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_HIGH]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1200
+#: doc/classes/ProjectSettings.xml:1201
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_LOW]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1203
+#: doc/classes/ProjectSettings.xml:1204
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_MEDIUM]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1206
+#: doc/classes/ProjectSettings.xml:1207
msgid ""
"Amount of light samples taken when using [constant BakedLightmap."
"BAKE_QUALITY_ULTRA]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1209
+#: doc/classes/ProjectSettings.xml:1210
msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
@@ -45575,7 +45718,7 @@ msgid ""
"programmatically, use [method VisualServer.set_default_clear_color]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1212
+#: doc/classes/ProjectSettings.xml:1213
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 "
@@ -45585,46 +45728,53 @@ msgid ""
"here."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1215
+#: doc/classes/ProjectSettings.xml:1216
msgid ""
"The use of half-float vertex compression may be producing rendering errors "
"on some platforms (especially iOS). These have been seen particularly in "
"particles. Disabling half-float may resolve these problems."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1218
+#: doc/classes/ProjectSettings.xml:1219
msgid ""
-"If [code]true[/code] and available on the target device, enables high "
-"floating point precision for all shader computations in GLES2.\n"
+"iOS specific override for [member rendering/gles2/compatibility/"
+"disable_half_float], due to poor support for half-float vertex compression "
+"on many devices."
+msgstr ""
+
+#: doc/classes/ProjectSettings.xml:1222
+msgid ""
+"If [code]true[/code] and available on the target Android device, enables "
+"high floating point precision for all shader computations in GLES2.\n"
"[b]Warning:[/b] High floating point precision can be extremely slow on older "
"devices and is often not available at all. Use with caution."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1222
+#: doc/classes/ProjectSettings.xml:1226
msgid ""
"Max buffer size for blend shapes. Any blend shape bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1225
+#: doc/classes/ProjectSettings.xml:1229
msgid ""
"Max buffer size for drawing polygons. Any polygon bigger than this will not "
"work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1228
+#: doc/classes/ProjectSettings.xml:1232
msgid ""
"Max index buffer size for drawing polygons. Any polygon bigger than this "
"will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1231
+#: doc/classes/ProjectSettings.xml:1235
msgid ""
"Max buffer size for drawing immediate objects (ImmediateGeometry nodes). "
"Nodes using more than this size will not work."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1234
+#: doc/classes/ProjectSettings.xml:1238
msgid ""
"Max number of lights renderable per object. This is further limited by "
"hardware support. Most devices only support 409 lights, while many devices "
@@ -45632,7 +45782,7 @@ msgid ""
"memory usage and may decrease shader compile times."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1237
+#: doc/classes/ProjectSettings.xml:1241
msgid ""
"Max amount of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
@@ -45642,7 +45792,7 @@ msgid ""
"much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1240
+#: doc/classes/ProjectSettings.xml:1244
msgid ""
"Max number of lights renderable in a frame. If more lights than this number "
"are used, they will be ignored. Setting this low will slightly reduce memory "
@@ -45651,7 +45801,7 @@ msgid ""
"possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1243
+#: doc/classes/ProjectSettings.xml:1247
msgid ""
"Max number of reflection probes renderable in a frame. If more reflection "
"probes than this number are used, they will be ignored. Setting this low "
@@ -45660,20 +45810,20 @@ msgid ""
"consider lowering as much as possible on web export."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1246
+#: doc/classes/ProjectSettings.xml:1250
msgid ""
"Shaders have a time variable that constantly increases. At some point, it "
"needs to be rolled back to zero to avoid precision errors on shader "
"animations. This setting specifies when (in seconds)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1249
+#: doc/classes/ProjectSettings.xml:1253
msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1252
+#: doc/classes/ProjectSettings.xml:1256
msgid ""
"The default compression level for lossless WebP. Higher levels result in "
"smaller files at the cost of compression speed. Decompression speed is "
@@ -45682,7 +45832,7 @@ msgid ""
"savings."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1255
+#: doc/classes/ProjectSettings.xml:1259
msgid ""
"On import, mesh vertex data will be split into two streams within a single "
"vertex buffer, one for position data and the other for interleaved "
@@ -45690,7 +45840,7 @@ msgid ""
"Requires manual reimport of meshes after toggling."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1258
+#: doc/classes/ProjectSettings.xml:1262
msgid ""
"Determines the maximum number of sphere occluders that will be used at any "
"one time.\n"
@@ -45699,7 +45849,7 @@ msgid ""
"to give the best overall performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1262
+#: doc/classes/ProjectSettings.xml:1266
msgid ""
"The default convention is for portal normals to point outward (face outward) "
"from the source room.\n"
@@ -45709,20 +45859,20 @@ msgid ""
"convertion to [Portal] nodes."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1267
+#: doc/classes/ProjectSettings.xml:1271
msgid ""
"Show conversion logs.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1271
+#: doc/classes/ProjectSettings.xml:1275
msgid ""
"If [code]true[/code], gameplay callbacks will be sent as [code]signals[/"
"code]. If [code]false[/code], they will be sent as [code]notifications[/"
"code]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1274
+#: doc/classes/ProjectSettings.xml:1278
msgid ""
"If enabled, while merging meshes, the system will also attempt to remove "
"[Spatial] nodes that no longer have any children.\n"
@@ -45731,13 +45881,13 @@ msgid ""
"for markers or some other purpose."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1278
+#: doc/classes/ProjectSettings.xml:1282
msgid ""
"Show logs during PVS generation.\n"
"[b]Note:[/b] This will automatically be disabled in exports."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1282
+#: doc/classes/ProjectSettings.xml:1286
msgid ""
"Uses a simplified method of generating PVS (potentially visible set) data. "
"The results may not be accurate where more than one portal join adjacent "
@@ -45747,46 +45897,46 @@ msgid ""
"default method."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1286
+#: doc/classes/ProjectSettings.xml:1290
msgid ""
"If [code]true[/code], allocates the main framebuffer with high dynamic "
"range. High dynamic range allows the use of [Color] values greater than 1.\n"
"[b]Note:[/b] Only available on the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1290
+#: doc/classes/ProjectSettings.xml:1294
msgid ""
"Lower-end override for [member rendering/quality/depth/hdr] on mobile "
"devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1293
+#: doc/classes/ProjectSettings.xml:1297
msgid ""
"Disables depth pre-pass for some GPU vendors (usually mobile), as their "
"architecture already does this."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1296
+#: doc/classes/ProjectSettings.xml:1300
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:1299
+#: doc/classes/ProjectSettings.xml:1303
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:1302
+#: doc/classes/ProjectSettings.xml:1306
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:1305
+#: doc/classes/ProjectSettings.xml:1309
msgid ""
"The video driver to use (\"GLES2\" or \"GLES3\").\n"
"[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--"
@@ -45796,7 +45946,7 @@ msgid ""
"updated, so use [method OS.get_current_video_driver] to query it at run-time."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1309
+#: doc/classes/ProjectSettings.xml:1313
msgid ""
"If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 "
"driver is not supported.\n"
@@ -45808,7 +45958,7 @@ msgid ""
"data pack's size."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1313
+#: doc/classes/ProjectSettings.xml:1317
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
@@ -45816,7 +45966,7 @@ msgid ""
"4, 8, 16)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1316
+#: doc/classes/ProjectSettings.xml:1320
msgid ""
"Sets the number of MSAA samples to use. MSAA is used to reduce aliasing "
"around the edges of polygons. A higher MSAA value results in smoother edges "
@@ -45824,7 +45974,7 @@ msgid ""
"[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1320
+#: doc/classes/ProjectSettings.xml:1324
msgid ""
"If set to a value greater than [code]0.0[/code], contrast-adaptive "
"sharpening will be applied to the 3D viewport. This has a low performance "
@@ -45833,7 +45983,7 @@ msgid ""
"[member rendering/quality/filters/use_fxaa]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1323
+#: doc/classes/ProjectSettings.xml:1327
msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. In some cases, debanding may introduce a "
@@ -45847,7 +45997,7 @@ msgid ""
"disabled when targeting mobile platforms."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1328
+#: doc/classes/ProjectSettings.xml:1332
msgid ""
"Enables FXAA in the root Viewport. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
@@ -45857,7 +46007,7 @@ msgid ""
"quality/filters/sharpen_intensity])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1331
+#: doc/classes/ProjectSettings.xml:1335
msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
@@ -45866,7 +46016,7 @@ msgid ""
"mipmap filtering (also called \"trilinear filtering\") is used."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1334
+#: doc/classes/ProjectSettings.xml:1338
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 "
@@ -45876,54 +46026,54 @@ msgid ""
"be available in the [Environment]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1337
+#: doc/classes/ProjectSettings.xml:1341
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:1340
+#: doc/classes/ProjectSettings.xml:1344
msgid ""
"Enable usage of bicubic sampling in baked lightmaps. This results in "
"smoother looking lighting at the expense of more bandwidth usage. On GLES2, "
"changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1343
+#: doc/classes/ProjectSettings.xml:1347
msgid ""
"Lower-end override for [member rendering/quality/lightmapping/"
"use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1346
+#: doc/classes/ProjectSettings.xml:1350
msgid ""
"Size of the atlas used by reflection probes. A larger size can result in "
"higher visual quality, while a smaller size will be faster and take up less "
"memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1349
+#: doc/classes/ProjectSettings.xml:1353
msgid ""
"Number of subdivisions to use for the reflection atlas. A higher number "
"lowers the quality of each atlas, but allows you to use more."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1352
+#: doc/classes/ProjectSettings.xml:1356
msgid ""
"If [code]true[/code], uses a high amount of samples to create blurred "
"variants of reflection probes and panorama backgrounds (sky). Those blurred "
"variants are used by rough materials."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1355
+#: doc/classes/ProjectSettings.xml:1359
msgid ""
"Lower-end override for [member rendering/quality/reflections/"
"high_quality_ggx] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1358
+#: doc/classes/ProjectSettings.xml:1362
msgid ""
"Limits the size of the irradiance map which is normally determined by "
"[member Sky.radiance_size]. A higher size results in a higher quality "
@@ -45934,61 +46084,61 @@ msgid ""
"maps well and may crash if this is set too high."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1362
+#: doc/classes/ProjectSettings.xml:1366
msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise on "
"reflections, but costs more performance and memory."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1365
+#: doc/classes/ProjectSettings.xml:1369
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:1368
+#: doc/classes/ProjectSettings.xml:1372
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:1371
+#: doc/classes/ProjectSettings.xml:1375
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:1374
+#: doc/classes/ProjectSettings.xml:1378
msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material "
"lighting model instead of Burley."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1377
+#: doc/classes/ProjectSettings.xml:1381
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:1380
+#: doc/classes/ProjectSettings.xml:1384
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:1383
+#: doc/classes/ProjectSettings.xml:1387
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:1386
+#: doc/classes/ProjectSettings.xml:1390
msgid ""
"If [code]true[/code], enables new physical light attenuation for "
"[OmniLight]s and [SpotLight]s. This results in more realistic lighting "
@@ -45999,7 +46149,7 @@ msgid ""
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1390
+#: doc/classes/ProjectSettings.xml:1394
msgid ""
"Size for cubemap into which the shadow is rendered before being copied into "
"the shadow atlas. A higher number can result in higher resolution shadows "
@@ -46008,26 +46158,26 @@ msgid ""
"size] will not result in a perceptible increase in visual quality."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1393 doc/classes/ProjectSettings.xml:1396
-#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402
+#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400
+#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406
msgid ""
"Subdivision quadrant size for shadow mapping. See shadow mapping "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1405
+#: doc/classes/ProjectSettings.xml:1409
msgid ""
"Size for shadow atlas (used for OmniLights and SpotLights). See "
"documentation."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1408
+#: doc/classes/ProjectSettings.xml:1412
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:1411
+#: doc/classes/ProjectSettings.xml:1415
msgid ""
"Shadow filter mode. Higher-quality settings result in smoother shadows that "
"flicker less when moving. \"Disabled\" is the fastest option, but also has "
@@ -46038,20 +46188,20 @@ msgid ""
"shadow appearance similar to the one produced by the GLES3 backend."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1415
+#: doc/classes/ProjectSettings.xml:1419
msgid ""
"Lower-end override for [member rendering/quality/shadows/filter_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1418
+#: doc/classes/ProjectSettings.xml:1422
msgid ""
"Forces [MeshInstance] to always perform skinning on the CPU (applies to both "
"GLES2 and GLES3).\n"
"See also [member rendering/quality/skinning/software_skinning_fallback]."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1422
+#: doc/classes/ProjectSettings.xml:1426
msgid ""
"Allows [MeshInstance] to perform skinning on the CPU when the hardware "
"doesn't support the default GPU skinning process with GLES2.\n"
@@ -46063,52 +46213,52 @@ msgid ""
"already applied to the modelview matrix."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1428
+#: doc/classes/ProjectSettings.xml:1432
msgid ""
"The rendering octree balance can be changed to favor smaller ([code]0[/"
"code]), or larger ([code]1[/code]) branches.\n"
"Larger branches can increase performance significantly in some projects."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1432
+#: doc/classes/ProjectSettings.xml:1436
msgid ""
"Enables the use of bounding volume hierarchy instead of octree for rendering "
"spatial partitioning. This may give better performance."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1435
+#: doc/classes/ProjectSettings.xml:1439
msgid ""
"Improves quality of subsurface scattering, but cost significantly increases."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1438
+#: doc/classes/ProjectSettings.xml:1442
msgid "Quality setting for subsurface scattering (samples taken)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1441
+#: doc/classes/ProjectSettings.xml:1445
msgid "Max radius used for subsurface scattering samples."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1444
+#: doc/classes/ProjectSettings.xml:1448
msgid ""
"Weight subsurface scattering samples. Helps to avoid reading samples from "
"unrelated parts of the screen."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1447
+#: doc/classes/ProjectSettings.xml:1451
msgid ""
"Use high-quality voxel cone tracing. This results in better-looking "
"reflections, but is much more expensive on the GPU."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1450
+#: doc/classes/ProjectSettings.xml:1454
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:1453
+#: doc/classes/ProjectSettings.xml:1457
msgid ""
"If [code]true[/code], a thread safe version of BVH (bounding volume "
"hierarchy) will be used in rendering and Godot physics.\n"
@@ -46116,7 +46266,7 @@ msgid ""
"incorrect object visibility)."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1457
+#: doc/classes/ProjectSettings.xml:1461
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the BPTC algorithm. This texture compression algorithm is "
@@ -46126,10 +46276,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1461
+#: doc/classes/ProjectSettings.xml:1465
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression algorithm. This algorithm "
@@ -46138,10 +46288,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1465
+#: doc/classes/ProjectSettings.xml:1469
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm. This texture "
@@ -46150,10 +46300,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1469
+#: doc/classes/ProjectSettings.xml:1473
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the PowerVR Texture Compression algorithm. This texture "
@@ -46162,10 +46312,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1473
+#: doc/classes/ProjectSettings.xml:1477
msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm. This algorithm is only "
@@ -46174,10 +46324,10 @@ msgid ""
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].import/[/code] folder "
"located inside the project folder then restart the editor (see [member "
-"application/config/project_data_dir_name])."
+"application/config/use_hidden_project_data_directory])."
msgstr ""
-#: doc/classes/ProjectSettings.xml:1477
+#: doc/classes/ProjectSettings.xml:1481
msgid ""
"Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in "
"pixels)."
@@ -57550,26 +57700,33 @@ msgid "Text [Color] used when the [ToolButton] is disabled."
msgstr ""
#: doc/classes/ToolButton.xml:39
-msgid "Text [Color] used when the [ToolButton] is being hovered."
+msgid ""
+"Text [Color] used when the [ToolButton] is focused. Only replaces the normal "
+"text color of the button. Disabled, hovered, and pressed states take "
+"precedence over this color."
msgstr ""
#: doc/classes/ToolButton.xml:42
-msgid "Text [Color] used when the [ToolButton] is being pressed."
+msgid "Text [Color] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:45
-msgid "[StyleBox] used when the [ToolButton] is being hovered."
+msgid "Text [Color] used when the [ToolButton] is being pressed."
msgstr ""
#: doc/classes/ToolButton.xml:48
-msgid "The horizontal space between [ToolButton]'s icon and text."
+msgid "[StyleBox] used when the [ToolButton] is being hovered."
msgstr ""
#: doc/classes/ToolButton.xml:51
-msgid "Default [StyleBox] for the [ToolButton]."
+msgid "The horizontal space between [ToolButton]'s icon and text."
msgstr ""
#: doc/classes/ToolButton.xml:54
+msgid "Default [StyleBox] for the [ToolButton]."
+msgstr ""
+
+#: doc/classes/ToolButton.xml:57
msgid "[StyleBox] used when the [ToolButton] is being pressed."
msgstr ""
diff --git a/drivers/gles3/rasterizer_storage_gles3.cpp b/drivers/gles3/rasterizer_storage_gles3.cpp
index 1feb2c224e..8a070313f8 100644
--- a/drivers/gles3/rasterizer_storage_gles3.cpp
+++ b/drivers/gles3/rasterizer_storage_gles3.cpp
@@ -625,6 +625,8 @@ void RasterizerStorageGLES3::texture_replace(RID p_texture, RID p_by_texture) {
for (int n = 0; n < tex_from->images.size(); n++) {
texture_set_data(p_texture, tex_from->images[n], n);
}
+
+ free(p_by_texture);
}
bool RasterizerStorageGLES3::_is_main_thread() {
diff --git a/drivers/pulseaudio/audio_driver_pulseaudio.cpp b/drivers/pulseaudio/audio_driver_pulseaudio.cpp
index 2488439738..1233f0f632 100644
--- a/drivers/pulseaudio/audio_driver_pulseaudio.cpp
+++ b/drivers/pulseaudio/audio_driver_pulseaudio.cpp
@@ -34,6 +34,7 @@
#include "core/config/project_settings.h"
#include "core/os/os.h"
+#include "core/version.h"
#ifdef ALSAMIDI_ENABLED
#include "drivers/alsa/asound-so_wrap.h"
@@ -293,7 +294,17 @@ Error AudioDriverPulseAudio::init() {
pa_ml = pa_mainloop_new();
ERR_FAIL_COND_V(pa_ml == nullptr, ERR_CANT_OPEN);
- pa_ctx = pa_context_new(pa_mainloop_get_api(pa_ml), "Godot");
+ String context_name;
+ if (Engine::get_singleton()->is_editor_hint()) {
+ context_name = VERSION_NAME " Editor";
+ } else {
+ context_name = GLOBAL_GET("application/config/name");
+ if (context_name.is_empty()) {
+ context_name = VERSION_NAME " Project";
+ }
+ }
+
+ pa_ctx = pa_context_new(pa_mainloop_get_api(pa_ml), context_name.utf8().ptr());
ERR_FAIL_COND_V(pa_ctx == nullptr, ERR_CANT_OPEN);
pa_ready = 0;
@@ -382,15 +393,15 @@ void AudioDriverPulseAudio::thread_func(void *p_udata) {
ad->start_counting_ticks();
if (!ad->active) {
- for (unsigned int i = 0; i < ad->pa_buffer_size; i++) {
- ad->samples_out.write[i] = 0;
- }
+ ad->samples_out.fill(0);
} else {
ad->audio_server_process(ad->buffer_frames, ad->samples_in.ptrw());
+ int16_t *out_ptr = ad->samples_out.ptrw();
+
if (ad->channels == ad->pa_map.channels) {
for (unsigned int i = 0; i < ad->pa_buffer_size; i++) {
- ad->samples_out.write[i] = ad->samples_in[i] >> 16;
+ out_ptr[i] = ad->samples_in[i] >> 16;
}
} else {
// Uneven amount of channels
@@ -399,11 +410,11 @@ void AudioDriverPulseAudio::thread_func(void *p_udata) {
for (unsigned int i = 0; i < ad->buffer_frames; i++) {
for (int j = 0; j < ad->pa_map.channels - 1; j++) {
- ad->samples_out.write[out_idx++] = ad->samples_in[in_idx++] >> 16;
+ out_ptr[out_idx++] = ad->samples_in[in_idx++] >> 16;
}
uint32_t l = ad->samples_in[in_idx++] >> 16;
uint32_t r = ad->samples_in[in_idx++] >> 16;
- ad->samples_out.write[out_idx++] = (l + r) / 2;
+ out_ptr[out_idx++] = (l + r) / 2;
}
}
}
diff --git a/editor/SCsub b/editor/SCsub
index 6b18eeae93..87153f3b2b 100644
--- a/editor/SCsub
+++ b/editor/SCsub
@@ -76,7 +76,7 @@ if env["tools"]:
# Editor translations
to_include = (
- "ar,bg,bn,ca,cs,de,el,eo,es_AR,es,fi,fr,gl,he,hu,id,it,ja,ko,ms,nb,nl,pl,pt_BR,pt,ro,ru,sk,sv,th,tr,uk,vi,zh_CN,zh_TW"
+ "ar,bg,bn,ca,cs,de,el,eo,es_AR,es,fi,fr,gl,he,hu,id,it,ja,ko,lv,ms,nb,nl,pl,pt_BR,pt,ro,ru,sk,sv,th,tr,uk,vi,zh_CN,zh_TW"
).split(",")
tlist = [env.Dir("#editor/translations").abspath + "/" + f + ".po" for f in to_include]
env.Depends("#editor/editor_translations.gen.h", tlist)
@@ -87,7 +87,7 @@ if env["tools"]:
)
# Documentation translations
- to_include = "es,fr,ja,zh_CN".split(",")
+ to_include = "de,es,fr,ja,zh_CN".split(",")
tlist = [env.Dir("#doc/translations").abspath + "/" + f + ".po" for f in to_include]
env.Depends("#editor/doc_translations.gen.h", tlist)
env.CommandNoCache(
diff --git a/editor/editor_builders.py b/editor/editor_builders.py
index ff0daa86ff..67d4b8534f 100644
--- a/editor/editor_builders.py
+++ b/editor/editor_builders.py
@@ -26,7 +26,9 @@ def make_doc_header(target, source, env):
decomp_size = len(buf)
import zlib
- buf = zlib.compress(buf)
+ # Use maximum zlib compression level to further reduce file size
+ # (at the cost of initial build times).
+ buf = zlib.compress(buf, zlib.Z_BEST_COMPRESSION)
g.write("/* THIS FILE IS GENERATED DO NOT EDIT */\n")
g.write("#ifndef _DOC_DATA_RAW_H\n")
@@ -92,7 +94,9 @@ def make_translations_header(target, source, env, category):
with open(sorted_paths[i], "rb") as f:
buf = f.read()
decomp_size = len(buf)
- buf = zlib.compress(buf)
+ # Use maximum zlib compression level to further reduce file size
+ # (at the cost of initial build times).
+ buf = zlib.compress(buf, zlib.Z_BEST_COMPRESSION)
name = os.path.splitext(os.path.basename(sorted_paths[i]))[0]
g.write("static const unsigned char _{}_translation_{}_compressed[] = {{\n".format(category, name))
diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp
index 372d01d89a..d1dfc61c19 100644
--- a/editor/editor_export.cpp
+++ b/editor/editor_export.cpp
@@ -1498,9 +1498,9 @@ String EditorExportPlatform::test_etc2() const {
bool etc_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_etc");
bool etc2_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_etc2");
- if (driver == "OpenGL3" && !etc_supported) {
+ if (driver == "opengl3" && !etc_supported) {
return TTR("Target platform requires 'ETC' texture compression for OpenGL. Enable 'Import Etc' in Project Settings.");
- } else if (driver == "Vulkan" && !etc2_supported) {
+ } else if (driver == "vulkan" && !etc2_supported) {
// FIXME: Review if this is true for Vulkan.
return TTR("Target platform requires 'ETC2' texture compression for Vulkan. Enable 'Import Etc 2' in Project Settings.");
}
@@ -1515,9 +1515,9 @@ String EditorExportPlatform::test_etc2_or_pvrtc() const {
// bool etc2_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_etc2");
// bool pvrtc_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_pvrtc");
- if (driver == "OpenGL3" && !pvrtc_supported) {
+ if (driver == "opengl3" && !pvrtc_supported) {
return TTR("Target platform requires 'PVRTC' texture compression for OpenGL. Enable 'Import Pvrtc' in Project Settings.");
- } else if (driver == "Vulkan" && !etc2_supported && !pvrtc_supported) {
+ } else if (driver == "vulkan" && !etc2_supported && !pvrtc_supported) {
// FIXME: Review if this is true for Vulkan.
return TTR("Target platform requires 'ETC2' or 'PVRTC' texture compression for Vulkan. Enable 'Import Etc 2' or 'Import Pvrtc' in Project Settings.");
}
diff --git a/editor/editor_inspector.cpp b/editor/editor_inspector.cpp
index 9f049a0e58..4ffa90777c 100644
--- a/editor/editor_inspector.cpp
+++ b/editor/editor_inspector.cpp
@@ -39,6 +39,7 @@
#include "editor_scale.h"
#include "editor_settings.h"
#include "multi_node_edit.h"
+#include "scene/property_utils.h"
#include "scene/resources/packed_scene.h"
Size2 EditorProperty::get_minimum_size() const {
@@ -305,6 +306,20 @@ void EditorProperty::_notification(int p_what) {
revert_rect = Rect2();
}
+ if (!pin_hidden && pinned) {
+ Ref<Texture2D> pinned_icon = get_theme_icon(SNAME("Pin"), SNAME("EditorIcons"));
+ int margin_w = get_theme_constant(SNAME("hseparator"), SNAME("Tree")) * 2;
+ int total_icon_w = margin_w + pinned_icon->get_width();
+ int text_w = font->get_string_size(label, font_size, rtl ? HALIGN_RIGHT : HALIGN_LEFT, text_limit - total_icon_w).x;
+ int y = (size.height - pinned_icon->get_height()) / 2;
+ if (rtl) {
+ draw_texture(pinned_icon, Vector2(size.width - ofs - text_w - total_icon_w, y), color);
+ } else {
+ draw_texture(pinned_icon, Vector2(ofs + text_w + margin_w, y), color);
+ }
+ text_limit -= total_icon_w;
+ }
+
int v_ofs = (size.height - font->get_height(font_size)) / 2;
if (rtl) {
draw_string(font, Point2(size.width - ofs - text_limit, v_ofs + font->get_ascent(font_size)), label, HALIGN_RIGHT, text_limit, font_size, color);
@@ -398,177 +413,12 @@ bool EditorProperty::is_read_only() const {
return read_only;
}
-bool EditorPropertyRevert::may_node_be_in_instance(Node *p_node) {
- Node *edited_scene = EditorNode::get_singleton()->get_edited_scene();
-
- bool might_be = false;
- Node *node = p_node;
-
- while (node) {
- if (node == edited_scene) {
- if (node->get_scene_inherited_state().is_valid()) {
- might_be = true;
- break;
- }
- might_be = false;
- break;
- }
- if (node->get_scene_instance_state().is_valid()) {
- might_be = true;
- break;
- }
- node = node->get_owner();
- }
-
- return might_be; // or might not be
-}
-
-bool EditorPropertyRevert::get_instantiated_node_original_property(Node *p_node, const StringName &p_prop, Variant &value, bool p_check_class_default) {
- Node *node = p_node;
- Node *orig = node;
-
- Node *edited_scene = EditorNode::get_singleton()->get_edited_scene();
-
- bool found = false;
-
- while (node) {
- Ref<SceneState> ss;
-
- if (node == edited_scene) {
- ss = node->get_scene_inherited_state();
-
- } else {
- ss = node->get_scene_instance_state();
- }
-
- if (ss.is_valid()) {
- NodePath np = node->get_path_to(orig);
- int node_idx = ss->find_node_by_path(np);
- if (node_idx >= 0) {
- bool lfound = false;
- Variant lvar;
- lvar = ss->get_property_value(node_idx, p_prop, lfound);
- if (lfound) {
- found = true;
- value = lvar;
- }
- }
- }
- if (node == edited_scene) {
- //just in case
- break;
- }
- node = node->get_owner();
- }
-
- if (p_check_class_default && !found && p_node) {
- //if not found, try default class value
- Variant attempt = ClassDB::class_get_default_property_value(p_node->get_class_name(), p_prop);
- if (attempt.get_type() != Variant::NIL) {
- found = true;
- value = attempt;
- }
- }
-
- return found;
-}
-
-bool EditorPropertyRevert::is_node_property_different(Node *p_node, const Variant &p_current, const Variant &p_orig) {
- // this is a pretty difficult function, because a property may not be saved but may have
- // the flag to not save if one or if zero
-
- //make sure there is an actual state
- {
- Node *node = p_node;
- if (!node) {
- return false;
- }
-
- Node *edited_scene = EditorNode::get_singleton()->get_edited_scene();
- bool found_state = false;
-
- while (node) {
- Ref<SceneState> ss;
-
- if (node == edited_scene) {
- ss = node->get_scene_inherited_state();
-
- } else {
- ss = node->get_scene_instance_state();
- }
-
- if (ss.is_valid()) {
- found_state = true;
- break;
- }
- if (node == edited_scene) {
- //just in case
- break;
- }
- node = node->get_owner();
- }
-
- if (!found_state) {
- return false; //pointless to check if we are not comparing against anything.
- }
- }
-
- return is_property_value_different(p_current, p_orig);
-}
-
-bool EditorPropertyRevert::is_property_value_different(const Variant &p_a, const Variant &p_b) {
- if (p_a.get_type() == Variant::FLOAT && p_b.get_type() == Variant::FLOAT) {
- //this must be done because, as some scenes save as text, there might be a tiny difference in floats due to numerical error
- return !Math::is_equal_approx((float)p_a, (float)p_b);
- } else {
- return p_a != p_b;
- }
-}
-
Variant EditorPropertyRevert::get_property_revert_value(Object *p_object, const StringName &p_property) {
- // If the object implements property_can_revert, rely on that completely
- // (i.e. don't then try to revert to default value - the property_get_revert implementation
- // can do that if so desired)
if (p_object->has_method("property_can_revert") && p_object->call("property_can_revert", p_property)) {
return p_object->call("property_get_revert", p_property);
}
- Ref<Script> scr = p_object->get_script();
- Node *node = Object::cast_to<Node>(p_object);
- if (node && EditorPropertyRevert::may_node_be_in_instance(node)) {
- //if this node is an instance or inherits, but it has a script attached which is unrelated
- //to the one set for the parent and also has a default value for the property, consider that
- //has precedence over the value from the parent, because that is an explicit source of defaults
- //closer in the tree to the current node
- bool ignore_parent = false;
- if (scr.is_valid()) {
- Variant sorig;
- if (EditorPropertyRevert::get_instantiated_node_original_property(node, "script", sorig) && !scr->inherits_script(sorig)) {
- Variant dummy;
- if (scr->get_property_default_value(p_property, dummy)) {
- ignore_parent = true;
- }
- }
- }
-
- if (!ignore_parent) {
- //check for difference including instantiation
- Variant vorig;
- if (EditorPropertyRevert::get_instantiated_node_original_property(node, p_property, vorig, false)) {
- return vorig;
- }
- }
- }
-
- if (scr.is_valid()) {
- Variant orig_value;
- if (scr->get_property_default_value(p_property, orig_value)) {
- return orig_value;
- }
- }
-
- //report default class value instead
- return ClassDB::class_get_default_property_value(p_object->get_class_name(), p_property);
+ return PropertyUtils::get_property_default_value(p_object, p_property);
}
bool EditorPropertyRevert::can_property_revert(Object *p_object, const StringName &p_property) {
@@ -577,18 +427,25 @@ bool EditorPropertyRevert::can_property_revert(Object *p_object, const StringNam
return false;
}
Variant current_value = p_object->get(p_property);
- return EditorPropertyRevert::is_property_value_different(current_value, revert_value);
+ return PropertyUtils::is_property_value_different(current_value, revert_value);
}
-void EditorProperty::update_reload_status() {
+void EditorProperty::update_revert_and_pin_status() {
if (property == StringName()) {
return; //no property, so nothing to do
}
- bool has_reload = EditorPropertyRevert::can_property_revert(object, property);
+ bool new_pinned = false;
+ if (can_pin) {
+ Node *node = Object::cast_to<Node>(object);
+ CRASH_COND(!node);
+ new_pinned = node->is_property_pinned(property);
+ }
+ bool new_can_revert = EditorPropertyRevert::can_property_revert(object, property) && !is_read_only();
- if (has_reload != can_revert) {
- can_revert = has_reload;
+ if (new_can_revert != can_revert || new_pinned != pinned) {
+ can_revert = new_can_revert;
+ pinned = new_pinned;
update();
}
}
@@ -791,7 +648,7 @@ void EditorProperty::gui_input(const Ref<InputEvent> &p_event) {
emit_signal(SNAME("property_checked"), property, checked);
}
} else if (mb.is_valid() && mb->is_pressed() && mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
- _ensure_popup();
+ _update_popup();
menu->set_position(get_screen_position() + get_local_mouse_position());
menu->set_size(Vector2(1, 1));
menu->popup();
@@ -914,6 +771,56 @@ float EditorProperty::get_name_split_ratio() const {
void EditorProperty::set_object_and_property(Object *p_object, const StringName &p_property) {
object = p_object;
property = p_property;
+ _update_pin_flags();
+}
+
+static bool _is_value_potential_override(Node *p_node, const String &p_property) {
+ // Consider a value is potentially overriding another if either of the following is true:
+ // a) The node is foreign (inheriting or an instance), so the original value may come from another scene.
+ // b) The node belongs to the scene, but the original value comes from somewhere but the builtin class (i.e., a script).
+ Node *edited_scene = EditorNode::get_singleton()->get_edited_scene();
+ Vector<SceneState::PackState> states_stack = PropertyUtils::get_node_states_stack(p_node, edited_scene);
+ if (states_stack.size()) {
+ return true;
+ } else {
+ bool is_class_default = false;
+ PropertyUtils::get_property_default_value(p_node, p_property, &states_stack, false, nullptr, &is_class_default);
+ return !is_class_default;
+ }
+}
+
+void EditorProperty::_update_pin_flags() {
+ can_pin = false;
+ pin_hidden = true;
+ if (read_only) {
+ return;
+ }
+ if (Node *node = Object::cast_to<Node>(object)) {
+ // Avoid errors down the road by ignoring nodes which are not part of a scene
+ if (!node->get_owner()) {
+ bool is_scene_root = false;
+ for (int i = 0; i < EditorNode::get_singleton()->get_editor_data().get_edited_scene_count(); ++i) {
+ if (EditorNode::get_singleton()->get_editor_data().get_edited_scene_root(i) == node) {
+ is_scene_root = true;
+ break;
+ }
+ }
+ if (!is_scene_root) {
+ return;
+ }
+ }
+ if (!_is_value_potential_override(node, property)) {
+ return;
+ }
+ pin_hidden = false;
+ {
+ Set<StringName> storable_properties;
+ node->get_storable_properties(storable_properties);
+ if (storable_properties.has(node->get_property_store_alias(property))) {
+ can_pin = true;
+ }
+ }
+ }
}
Control *EditorProperty::make_custom_tooltip(const String &p_text) const {
@@ -955,6 +862,10 @@ void EditorProperty::menu_option(int p_option) {
case MENU_COPY_PROPERTY_PATH: {
DisplayServer::get_singleton()->clipboard_set(property);
} break;
+ case MENU_PIN_VALUE: {
+ emit_signal(SNAME("property_pinned"), property, !pinned);
+ update();
+ } break;
}
}
@@ -1003,12 +914,14 @@ void EditorProperty::_bind_methods() {
ADD_SIGNAL(MethodInfo("property_keyed", PropertyInfo(Variant::STRING_NAME, "property")));
ADD_SIGNAL(MethodInfo("property_deleted", PropertyInfo(Variant::STRING_NAME, "property")));
ADD_SIGNAL(MethodInfo("property_keyed_with_value", PropertyInfo(Variant::STRING_NAME, "property"), PropertyInfo(Variant::NIL, "value", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NIL_IS_VARIANT)));
- ADD_SIGNAL(MethodInfo("property_checked", PropertyInfo(Variant::STRING_NAME, "property"), PropertyInfo(Variant::STRING, "bool")));
+ ADD_SIGNAL(MethodInfo("property_checked", PropertyInfo(Variant::STRING_NAME, "property"), PropertyInfo(Variant::BOOL, "checked")));
+ ADD_SIGNAL(MethodInfo("property_pinned", PropertyInfo(Variant::STRING_NAME, "property"), PropertyInfo(Variant::BOOL, "pinned")));
ADD_SIGNAL(MethodInfo("resource_selected", PropertyInfo(Variant::STRING, "path"), PropertyInfo(Variant::OBJECT, "resource", PROPERTY_HINT_RESOURCE_TYPE, "Resource")));
ADD_SIGNAL(MethodInfo("object_id_selected", PropertyInfo(Variant::STRING_NAME, "property"), PropertyInfo(Variant::INT, "id")));
ADD_SIGNAL(MethodInfo("selected", PropertyInfo(Variant::STRING, "path"), PropertyInfo(Variant::INT, "focusable_idx")));
GDVIRTUAL_BIND(_update_property)
+ ClassDB::bind_method(D_METHOD("_update_revert_and_pin_status"), &EditorProperty::update_revert_and_pin_status);
}
EditorProperty::EditorProperty() {
@@ -1027,6 +940,9 @@ EditorProperty::EditorProperty() {
revert_hover = false;
check_hover = false;
can_revert = false;
+ can_pin = false;
+ pin_hidden = false;
+ pinned = false;
use_folding = false;
property_usage = 0;
selected = false;
@@ -1038,17 +954,29 @@ EditorProperty::EditorProperty() {
set_process_unhandled_key_input(true);
}
-void EditorProperty::_ensure_popup() {
+void EditorProperty::_update_popup() {
if (menu) {
- return;
+ menu->clear();
+ } else {
+ menu = memnew(PopupMenu);
+ add_child(menu);
+ menu->connect("id_pressed", callable_mp(this, &EditorProperty::menu_option));
}
- menu = memnew(PopupMenu);
menu->add_shortcut(ED_GET_SHORTCUT("property_editor/copy_property"), MENU_COPY_PROPERTY);
menu->add_shortcut(ED_GET_SHORTCUT("property_editor/paste_property"), MENU_PASTE_PROPERTY);
menu->add_shortcut(ED_GET_SHORTCUT("property_editor/copy_property_path"), MENU_COPY_PROPERTY_PATH);
- menu->connect("id_pressed", callable_mp(this, &EditorProperty::menu_option));
menu->set_item_disabled(MENU_PASTE_PROPERTY, is_read_only());
- add_child(menu);
+ if (!pin_hidden) {
+ menu->add_separator();
+ if (can_pin) {
+ menu->add_check_item(TTR("Pin value"), MENU_PIN_VALUE);
+ menu->set_item_checked(menu->get_item_index(MENU_PIN_VALUE), pinned);
+ menu->set_item_tooltip(menu->get_item_index(MENU_PIN_VALUE), TTR("Pinning a value forces it to be saved even if it's equal to the default."));
+ } else {
+ menu->add_check_item(vformat(TTR("Pin value [Disabled because '%s' is editor-only]"), property), MENU_PIN_VALUE);
+ menu->set_item_disabled(menu->get_item_index(MENU_PIN_VALUE), true);
+ }
+ }
}
////////////////////////////////////////////////
@@ -2296,6 +2224,7 @@ void EditorInspector::_parse_added_editors(VBoxContainer *current_vbox, Ref<Edit
ep->connect("property_deleted", callable_mp(this, &EditorInspector::_property_deleted), varray(), CONNECT_DEFERRED);
ep->connect("property_keyed_with_value", callable_mp(this, &EditorInspector::_property_keyed_with_value));
ep->connect("property_checked", callable_mp(this, &EditorInspector::_property_checked));
+ ep->connect("property_pinned", callable_mp(this, &EditorInspector::_property_pinned));
ep->connect("selected", callable_mp(this, &EditorInspector::_property_selected));
ep->connect("multiple_properties_changed", callable_mp(this, &EditorInspector::_multiple_properties_changed));
ep->connect("resource_selected", callable_mp(this, &EditorInspector::_resource_selected), varray(), CONNECT_DEFERRED);
@@ -2324,7 +2253,8 @@ void EditorInspector::_parse_added_editors(VBoxContainer *current_vbox, Ref<Edit
ep->set_read_only(read_only);
ep->update_property();
- ep->update_reload_status();
+ ep->_update_pin_flags();
+ ep->update_revert_and_pin_status();
ep->set_deletable(deletable_properties);
ep->update_cache();
}
@@ -2877,6 +2807,7 @@ void EditorInspector::update_tree() {
ep->connect("property_deleted", callable_mp(this, &EditorInspector::_property_deleted), varray(), CONNECT_DEFERRED);
ep->connect("property_keyed_with_value", callable_mp(this, &EditorInspector::_property_keyed_with_value));
ep->connect("property_checked", callable_mp(this, &EditorInspector::_property_checked));
+ ep->connect("property_pinned", callable_mp(this, &EditorInspector::_property_pinned));
ep->connect("selected", callable_mp(this, &EditorInspector::_property_selected));
ep->connect("multiple_properties_changed", callable_mp(this, &EditorInspector::_multiple_properties_changed));
ep->connect("resource_selected", callable_mp(this, &EditorInspector::_resource_selected), varray(), CONNECT_DEFERRED);
@@ -2887,7 +2818,8 @@ void EditorInspector::update_tree() {
ep->set_tooltip(property_prefix + p.name);
}
ep->update_property();
- ep->update_reload_status();
+ ep->_update_pin_flags();
+ ep->update_revert_and_pin_status();
ep->update_cache();
if (current_selected && ep->property == current_selected) {
@@ -2917,7 +2849,7 @@ void EditorInspector::update_property(const String &p_prop) {
for (EditorProperty *E : editor_property_map[p_prop]) {
E->update_property();
- E->update_reload_status();
+ E->update_revert_and_pin_status();
E->update_cache();
}
}
@@ -3196,7 +3128,7 @@ void EditorInspector::_edit_set(const String &p_name, const Variant &p_value, bo
if (editor_property_map.has(p_name)) {
for (EditorProperty *E : editor_property_map[p_name]) {
- E->update_reload_status();
+ E->update_revert_and_pin_status();
}
}
}
@@ -3295,7 +3227,7 @@ void EditorInspector::_property_checked(const String &p_path, bool p_checked) {
if (editor_property_map.has(p_path)) {
for (EditorProperty *E : editor_property_map[p_path]) {
E->update_property();
- E->update_reload_status();
+ E->update_revert_and_pin_status();
E->update_cache();
}
}
@@ -3305,6 +3237,35 @@ void EditorInspector::_property_checked(const String &p_path, bool p_checked) {
}
}
+void EditorInspector::_property_pinned(const String &p_path, bool p_pinned) {
+ if (!object) {
+ return;
+ }
+
+ Node *node = Object::cast_to<Node>(object);
+ ERR_FAIL_COND(!node);
+
+ if (undo_redo) {
+ undo_redo->create_action(vformat(p_pinned ? TTR("Pinned %s") : TTR("Unpinned %s"), p_path));
+ undo_redo->add_do_method(node, "_set_property_pinned", p_path, p_pinned);
+ undo_redo->add_undo_method(node, "_set_property_pinned", p_path, !p_pinned);
+ if (editor_property_map.has(p_path)) {
+ for (List<EditorProperty *>::Element *E = editor_property_map[p_path].front(); E; E = E->next()) {
+ undo_redo->add_do_method(E->get(), "_update_revert_and_pin_status");
+ undo_redo->add_undo_method(E->get(), "_update_revert_and_pin_status");
+ }
+ }
+ undo_redo->commit_action();
+ } else {
+ node->set_property_pinned(p_path, p_pinned);
+ if (editor_property_map.has(p_path)) {
+ for (List<EditorProperty *>::Element *E = editor_property_map[p_path].front(); E; E = E->next()) {
+ E->get()->update_revert_and_pin_status();
+ }
+ }
+ }
+}
+
void EditorInspector::_property_selected(const String &p_path, int p_focusable) {
property_selected = p_path;
property_focusable = p_focusable;
@@ -3375,7 +3336,7 @@ void EditorInspector::_notification(int p_what) {
for (EditorProperty *E : F.value) {
if (!E->is_cache_valid()) {
E->update_property();
- E->update_reload_status();
+ E->update_revert_and_pin_status();
E->update_cache();
}
}
@@ -3397,7 +3358,7 @@ void EditorInspector::_notification(int p_what) {
if (editor_property_map.has(prop)) {
for (EditorProperty *E : editor_property_map[prop]) {
E->update_property();
- E->update_reload_status();
+ E->update_revert_and_pin_status();
E->update_cache();
}
}
@@ -3490,7 +3451,7 @@ void EditorInspector::_update_script_class_properties(const Object &p_object, Li
String path = s->get_path();
String name = EditorNode::get_editor_data().script_class_get_name(path);
if (name.is_empty()) {
- if (!path.is_empty() && path.find("::") == -1) {
+ if (!s->is_built_in()) {
name = path.get_file();
} else {
name = TTR("Built-in script");
diff --git a/editor/editor_inspector.h b/editor/editor_inspector.h
index 124ea31302..aabb66eeb4 100644
--- a/editor/editor_inspector.h
+++ b/editor/editor_inspector.h
@@ -43,7 +43,6 @@ class UndoRedo;
class EditorPropertyRevert {
public:
- static bool may_node_be_in_instance(Node *p_node);
static bool get_instantiated_node_original_property(Node *p_node, const StringName &p_prop, Variant &value, bool p_check_class_default = true);
static bool is_node_property_different(Node *p_node, const Variant &p_current, const Variant &p_orig);
static bool is_property_value_different(const Variant &p_a, const Variant &p_b);
@@ -60,6 +59,7 @@ public:
MENU_COPY_PROPERTY,
MENU_PASTE_PROPERTY,
MENU_COPY_PROPERTY_PATH,
+ MENU_PIN_VALUE,
};
private:
@@ -91,11 +91,14 @@ private:
bool delete_hover = false;
bool can_revert;
+ bool can_pin;
+ bool pin_hidden;
+ bool pinned;
bool use_folding;
bool draw_top_bg;
- void _ensure_popup();
+ void _update_popup();
void _focusable_focused(int p_index);
bool selectable;
@@ -114,6 +117,8 @@ private:
Map<StringName, Variant> cache;
GDVIRTUAL0(_update_property)
+ void _update_pin_flags();
+
protected:
void _notification(int p_what);
static void _bind_methods();
@@ -138,7 +143,7 @@ public:
StringName get_edited_property();
virtual void update_property();
- void update_reload_status();
+ void update_revert_and_pin_status();
virtual bool use_keying_next() const;
@@ -459,8 +464,8 @@ class EditorInspector : public ScrollContainer {
void _property_keyed(const String &p_path, bool p_advance);
void _property_keyed_with_value(const String &p_path, const Variant &p_value, bool p_advance);
void _property_deleted(const String &p_path);
-
void _property_checked(const String &p_path, bool p_checked);
+ void _property_pinned(const String &p_path, bool p_pinned);
void _resource_selected(const String &p_path, RES p_resource);
void _property_selected(const String &p_path, int p_focusable);
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index 9edf0a24fc..ffbb845fb0 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -1791,7 +1791,7 @@ void EditorNode::_save_all_scenes() {
} else {
_save_scene_with_preview(scene->get_scene_file_path());
}
- } else {
+ } else if (scene->get_scene_file_path() != "") {
all_saved = false;
}
}
@@ -2256,7 +2256,8 @@ void EditorNode::_edit_current() {
if (main_plugin) {
// special case if use of external editor is true
- if (main_plugin->get_name() == "Script" && current_obj->get_class_name() != StringName("VisualScript") && (bool(EditorSettings::get_singleton()->get("text_editor/external/use_external_editor")) || overrides_external_editor(current_obj))) {
+ Resource *res = Object::cast_to<Resource>(current_obj);
+ if (main_plugin->get_name() == "Script" && current_obj->get_class_name() != StringName("VisualScript") && res && !res->is_built_in() && (bool(EditorSettings::get_singleton()->get("text_editor/external/use_external_editor")) || overrides_external_editor(current_obj))) {
if (!changing_scene) {
main_plugin->edit(current_obj);
}
@@ -3059,7 +3060,7 @@ void EditorNode::_discard_changes(const String &p_str) {
args.push_back(exec.get_base_dir());
args.push_back("--project-manager");
- Error err = OS::get_singleton()->create_process(exec, args);
+ Error err = OS::get_singleton()->create_instance(args);
ERR_FAIL_COND(err);
} break;
}
@@ -3356,7 +3357,7 @@ void EditorNode::set_edited_scene(Node *p_scene) {
if (p_scene) {
if (p_scene->get_parent() != scene_root) {
- scene_root->add_child(p_scene);
+ scene_root->add_child(p_scene, true);
}
}
}
@@ -3488,7 +3489,7 @@ void EditorNode::set_current_scene(int p_idx) {
if (new_scene) {
if (new_scene->get_parent() != scene_root) {
- scene_root->add_child(new_scene);
+ scene_root->add_child(new_scene, true);
}
}
@@ -3622,7 +3623,7 @@ Error EditorNode::load_scene(const String &p_scene, bool p_ignore_broken_deps, b
sdata->set_path(lpath, true); // take over path
}
- Node *new_scene = sdata->instantiate(PackedScene::GEN_EDIT_STATE_MAIN);
+ Node *new_scene = sdata->instantiate(p_set_inherited ? PackedScene::GEN_EDIT_STATE_MAIN_INHERITED : PackedScene::GEN_EDIT_STATE_MAIN);
if (!new_scene) {
sdata.unref();
@@ -5420,8 +5421,7 @@ void EditorNode::_global_menu_new_window(const Variant &p_tag) {
if (OS::get_singleton()->get_main_loop()) {
List<String> args;
args.push_back("-p");
- String exec = OS::get_singleton()->get_executable_path();
- OS::get_singleton()->create_process(exec, args);
+ OS::get_singleton()->create_instance(args);
}
}
@@ -7140,8 +7140,6 @@ EditorNode::EditorNode() {
_build_icon_type_cache();
- Node::set_human_readable_collision_renaming(true);
-
pick_main_scene = memnew(ConfirmationDialog);
gui_base->add_child(pick_main_scene);
pick_main_scene->get_ok_button()->set_text(TTR("Select"));
diff --git a/editor/editor_properties.cpp b/editor/editor_properties.cpp
index e679222567..26f28ff5fb 100644
--- a/editor/editor_properties.cpp
+++ b/editor/editor_properties.cpp
@@ -35,6 +35,9 @@
#include "editor_node.h"
#include "editor_properties_array_dict.h"
#include "editor_scale.h"
+#include "scene/2d/gpu_particles_2d.h"
+#include "scene/3d/fog_volume.h"
+#include "scene/3d/gpu_particles_3d.h"
#include "scene/main/window.h"
#include "scene/resources/font.h"
@@ -2821,8 +2824,8 @@ void EditorPropertyResource::_set_read_only(bool p_read_only) {
resource_picker->set_editable(!p_read_only);
};
-void EditorPropertyResource::_resource_selected(const RES &p_resource) {
- if (use_sub_inspector) {
+void EditorPropertyResource::_resource_selected(const RES &p_resource, bool p_edit) {
+ if (!p_edit && use_sub_inspector) {
bool unfold = !get_edited_object()->editor_is_section_unfolded(get_edited_property());
get_edited_object()->editor_set_section_unfold(get_edited_property(), unfold);
update_property();
@@ -2969,6 +2972,35 @@ void EditorPropertyResource::_update_property_bg() {
update();
}
+void EditorPropertyResource::_update_preferred_shader() {
+ Node *parent = get_parent();
+ EditorProperty *parent_property = nullptr;
+
+ while (parent && !parent_property) {
+ parent_property = Object::cast_to<EditorProperty>(parent);
+ parent = parent->get_parent();
+ }
+
+ if (parent_property) {
+ EditorShaderPicker *shader_picker = Object::cast_to<EditorShaderPicker>(resource_picker);
+ Object *object = parent_property->get_edited_object();
+ const StringName &property = parent_property->get_edited_property();
+
+ // Set preferred shader based on edited parent type.
+ if ((Object::cast_to<GPUParticles2D>(object) || Object::cast_to<GPUParticles3D>(object)) && property == SNAME("process_material")) {
+ shader_picker->set_preferred_mode(Shader::MODE_PARTICLES);
+ } else if (Object::cast_to<FogVolume>(object)) {
+ shader_picker->set_preferred_mode(Shader::MODE_FOG);
+ } else if (Object::cast_to<CanvasItem>(object)) {
+ shader_picker->set_preferred_mode(Shader::MODE_CANVAS_ITEM);
+ } else if (Object::cast_to<Node3D>(object)) {
+ shader_picker->set_preferred_mode(Shader::MODE_SPATIAL);
+ } else if (Object::cast_to<Sky>(object)) {
+ shader_picker->set_preferred_mode(Shader::MODE_SKY);
+ }
+ }
+}
+
void EditorPropertyResource::_viewport_selected(const NodePath &p_path) {
Node *to_node = get_node(p_path);
if (!Object::cast_to<Viewport>(to_node)) {
@@ -3000,6 +3032,7 @@ void EditorPropertyResource::setup(Object *p_object, const String &p_path, const
EditorShaderPicker *shader_picker = memnew(EditorShaderPicker);
shader_picker->set_edited_material(Object::cast_to<ShaderMaterial>(p_object));
resource_picker = shader_picker;
+ connect(SNAME("ready"), callable_mp(this, &EditorPropertyResource::_update_preferred_shader));
} else {
resource_picker = memnew(EditorResourcePicker);
}
diff --git a/editor/editor_properties.h b/editor/editor_properties.h
index 9a687f1a72..754d444309 100644
--- a/editor/editor_properties.h
+++ b/editor/editor_properties.h
@@ -657,7 +657,7 @@ class EditorPropertyResource : public EditorProperty {
bool updating_theme = false;
bool opened_editor = false;
- void _resource_selected(const RES &p_resource);
+ void _resource_selected(const RES &p_resource, bool p_edit);
void _resource_changed(const RES &p_resource);
void _viewport_selected(const NodePath &p_path);
@@ -669,6 +669,7 @@ class EditorPropertyResource : public EditorProperty {
void _open_editor_pressed();
void _fold_other_editors(Object *p_self);
void _update_property_bg();
+ void _update_preferred_shader();
protected:
virtual void _set_read_only(bool p_read_only) override;
diff --git a/editor/editor_properties_array_dict.cpp b/editor/editor_properties_array_dict.cpp
index 9b5dc8851c..a3b6f6e59b 100644
--- a/editor/editor_properties_array_dict.cpp
+++ b/editor/editor_properties_array_dict.cpp
@@ -855,6 +855,7 @@ void EditorPropertyDictionary::update_property() {
object->set_dict(dict);
VBoxContainer *add_vbox = nullptr;
+ double default_float_step = EDITOR_GET("interface/inspector/default_float_step");
for (int i = 0; i < amount + 2; i++) {
String prop_name;
@@ -894,7 +895,7 @@ void EditorPropertyDictionary::update_property() {
} break;
case Variant::FLOAT: {
EditorPropertyFloat *editor = memnew(EditorPropertyFloat);
- editor->setup(-100000, 100000, 0.001, true, false, true, true);
+ editor->setup(-100000, 100000, default_float_step, true, false, true, true);
prop = editor;
} break;
case Variant::STRING: {
@@ -905,7 +906,7 @@ void EditorPropertyDictionary::update_property() {
// Math types.
case Variant::VECTOR2: {
EditorPropertyVector2 *editor = memnew(EditorPropertyVector2);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
@@ -917,7 +918,7 @@ void EditorPropertyDictionary::update_property() {
} break;
case Variant::RECT2: {
EditorPropertyRect2 *editor = memnew(EditorPropertyRect2);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
@@ -929,7 +930,7 @@ void EditorPropertyDictionary::update_property() {
} break;
case Variant::VECTOR3: {
EditorPropertyVector3 *editor = memnew(EditorPropertyVector3);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
@@ -941,37 +942,37 @@ void EditorPropertyDictionary::update_property() {
} break;
case Variant::TRANSFORM2D: {
EditorPropertyTransform2D *editor = memnew(EditorPropertyTransform2D);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
case Variant::PLANE: {
EditorPropertyPlane *editor = memnew(EditorPropertyPlane);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
case Variant::QUATERNION: {
EditorPropertyQuaternion *editor = memnew(EditorPropertyQuaternion);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
case Variant::AABB: {
EditorPropertyAABB *editor = memnew(EditorPropertyAABB);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
case Variant::BASIS: {
EditorPropertyBasis *editor = memnew(EditorPropertyBasis);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
case Variant::TRANSFORM3D: {
EditorPropertyTransform3D *editor = memnew(EditorPropertyTransform3D);
- editor->setup(-100000, 100000, 0.001, true);
+ editor->setup(-100000, 100000, default_float_step, true);
prop = editor;
} break;
diff --git a/editor/editor_resource_picker.cpp b/editor/editor_resource_picker.cpp
index 9dbf69a779..4775ca418b 100644
--- a/editor/editor_resource_picker.cpp
+++ b/editor/editor_resource_picker.cpp
@@ -84,7 +84,7 @@ void EditorResourcePicker::_update_resource_preview(const String &p_path, const
if (p_preview.is_valid()) {
preview_rect->set_offset(SIDE_LEFT, assign_button->get_icon()->get_width() + assign_button->get_theme_stylebox(SNAME("normal"))->get_default_margin(SIDE_LEFT) + get_theme_constant(SNAME("hseparation"), SNAME("Button")));
- if (type == "GradientTexture") {
+ if (type == "GradientTexture1D") {
preview_rect->set_stretch_mode(TextureRect::STRETCH_SCALE);
assign_button->set_custom_minimum_size(Size2(1, 1));
} else {
@@ -106,7 +106,7 @@ void EditorResourcePicker::_resource_selected() {
return;
}
- emit_signal(SNAME("resource_selected"), edited_resource);
+ emit_signal(SNAME("resource_selected"), edited_resource, false);
}
void EditorResourcePicker::_file_selected(const String &p_path) {
@@ -266,7 +266,7 @@ void EditorResourcePicker::_edit_menu_cbk(int p_which) {
case OBJ_MENU_EDIT: {
if (edited_resource.is_valid()) {
- emit_signal(SNAME("resource_selected"), edited_resource);
+ emit_signal(SNAME("resource_selected"), edited_resource, true);
}
} break;
@@ -690,7 +690,7 @@ void EditorResourcePicker::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "editable"), "set_editable", "is_editable");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "toggle_mode"), "set_toggle_mode", "is_toggle_mode");
- ADD_SIGNAL(MethodInfo("resource_selected", PropertyInfo(Variant::OBJECT, "resource", PROPERTY_HINT_RESOURCE_TYPE, "Resource")));
+ ADD_SIGNAL(MethodInfo("resource_selected", PropertyInfo(Variant::OBJECT, "resource", PROPERTY_HINT_RESOURCE_TYPE, "Resource"), PropertyInfo(Variant::BOOL, "edit")));
ADD_SIGNAL(MethodInfo("resource_changed", PropertyInfo(Variant::OBJECT, "resource", PROPERTY_HINT_RESOURCE_TYPE, "Resource")));
}
@@ -934,7 +934,7 @@ bool EditorShaderPicker::handle_menu_selected(int p_which) {
switch (p_which) {
case OBJ_MENU_NEW_SHADER: {
if (material.is_valid()) {
- EditorNode::get_singleton()->get_scene_tree_dock()->open_shader_dialog(material);
+ EditorNode::get_singleton()->get_scene_tree_dock()->open_shader_dialog(material, preferred_mode);
return true;
}
} break;
@@ -952,5 +952,9 @@ ShaderMaterial *EditorShaderPicker::get_edited_material() const {
return edited_material;
}
+void EditorShaderPicker::set_preferred_mode(int p_mode) {
+ preferred_mode = p_mode;
+}
+
EditorShaderPicker::EditorShaderPicker() {
}
diff --git a/editor/editor_resource_picker.h b/editor/editor_resource_picker.h
index d0dad0287b..f55c6f47f3 100644
--- a/editor/editor_resource_picker.h
+++ b/editor/editor_resource_picker.h
@@ -156,6 +156,7 @@ class EditorShaderPicker : public EditorResourcePicker {
};
ShaderMaterial *edited_material = nullptr;
+ int preferred_mode = -1;
public:
virtual void set_create_options(Object *p_menu_node) override;
@@ -163,6 +164,7 @@ public:
void set_edited_material(ShaderMaterial *p_material);
ShaderMaterial *get_edited_material() const;
+ void set_preferred_mode(int p_preferred_mode);
EditorShaderPicker();
};
diff --git a/editor/editor_run.cpp b/editor/editor_run.cpp
index 8a7ec9aa82..d7daa0c750 100644
--- a/editor/editor_run.cpp
+++ b/editor/editor_run.cpp
@@ -236,7 +236,7 @@ Error EditorRun::run(const String &p_scene, const String &p_custom_args, const L
int instances = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_instances", 1);
for (int i = 0; i < instances; i++) {
OS::ProcessID pid = 0;
- Error err = OS::get_singleton()->create_process(exec, args, &pid);
+ Error err = OS::get_singleton()->create_instance(args, &pid);
ERR_FAIL_COND_V(err, err);
pids.push_back(pid);
}
diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp
index 1da9213b89..739fc0e4f5 100644
--- a/editor/editor_settings.cpp
+++ b/editor/editor_settings.cpp
@@ -293,8 +293,8 @@ void EditorSettings::_get_property_list(List<PropertyInfo> *p_list) const {
p_list->push_back(pi);
}
- p_list->push_back(PropertyInfo(Variant::ARRAY, "shortcuts", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL)); //do not edit
- p_list->push_back(PropertyInfo(Variant::ARRAY, "builtin_action_overrides", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "shortcuts", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL)); //do not edit
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "builtin_action_overrides", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
void EditorSettings::_add_property_info_bind(const Dictionary &p_info) {
diff --git a/editor/editor_toaster.cpp b/editor/editor_toaster.cpp
index 9de0ea40fe..22da12b59b 100644
--- a/editor/editor_toaster.cpp
+++ b/editor/editor_toaster.cpp
@@ -172,10 +172,11 @@ void EditorToaster::_error_handler(void *p_self, const char *p_func, const char
}
}
- if (p_type == ERR_HANDLER_WARNING) {
- EditorToaster::get_singleton()->popup_str(err_str, SEVERITY_WARNING, tooltip_str);
+ Severity severity = (p_type == ERR_HANDLER_WARNING) ? SEVERITY_WARNING : SEVERITY_ERROR;
+ if (Thread::get_caller_id() != Thread::get_main_id()) {
+ EditorToaster::get_singleton()->call_deferred(SNAME("popup_str"), err_str, severity, tooltip_str);
} else {
- EditorToaster::get_singleton()->popup_str(err_str, SEVERITY_ERROR, tooltip_str);
+ EditorToaster::get_singleton()->popup_str(err_str, severity, tooltip_str);
}
}
}
diff --git a/editor/icons/GradientTexture.svg b/editor/icons/GradientTexture1D.svg
index fa03e69805..fa03e69805 100644
--- a/editor/icons/GradientTexture.svg
+++ b/editor/icons/GradientTexture1D.svg
diff --git a/editor/icons/InterpCubic.svg b/editor/icons/InterpCubic.svg
index ad2ed51ee1..b542986ea6 100644
--- a/editor/icons/InterpCubic.svg
+++ b/editor/icons/InterpCubic.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m2 1050.4c3 0 3-4 6-4s3 4 6 4" fill="none" stroke="#e0e0e0" stroke-linecap="round" stroke-width="2" transform="translate(0 -1044.4)"/></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m2 1050.4c5 0 3-4 6-4s1 4 6 4" fill="none" stroke="#5fb2ff" stroke-linecap="round" stroke-width="2" transform="translate(0 -1044.4)"/></svg>
diff --git a/editor/icons/InterpLinear.svg b/editor/icons/InterpLinear.svg
index 241a82fc8f..966ddfdc31 100644
--- a/editor/icons/InterpLinear.svg
+++ b/editor/icons/InterpLinear.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m2 1050.4 6-4 6 4" fill="none" stroke="#e0e0e0" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" transform="translate(0 -1044.4)"/></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m2 1050.4 6-4 6 4" fill="none" stroke="#ffca5f" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" transform="translate(0 -1044.4)"/></svg>
diff --git a/editor/icons/InterpWrapClamp.svg b/editor/icons/InterpWrapClamp.svg
index 6ba8e78500..b589542019 100644
--- a/editor/icons/InterpWrapClamp.svg
+++ b/editor/icons/InterpWrapClamp.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m1 1v6h2v-2.9863-3.0137zm2 3.0137a1.0001 1.0001 0 0 0 .29297.69336l2 2a1 1 0 0 0 1.4141 0 1 1 0 0 0 0-1.4141l-.29297-.29297h3.1719l-.29297.29297a1 1 0 0 0 0 1.4141 1 1 0 0 0 1.4141 0l2-2a1.0001 1.0001 0 0 0 .29297-.72266 1.0001 1.0001 0 0 0 -.29297-.69141l-2-2a1 1 0 0 0 -.7207-.29102 1 1 0 0 0 -.69336.29102 1 1 0 0 0 0 1.4141l.29297.29297h-3.1719l.29297-.29297a1 1 0 0 0 0-1.4141 1 1 0 0 0 -.7207-.29102 1 1 0 0 0 -.69336.29102l-2 2a1.0001 1.0001 0 0 0 -.29297.7207zm10-.029297v3.0156h2v-6h-2z" fill="#e0e0e0"/></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m1 1v6h2v-2.9863-3.0137zm2 3.0137a1.0001 1.0001 0 0 0 .29297.69336l2 2a1 1 0 0 0 1.4141 0 1 1 0 0 0 0-1.4141l-.29297-.29297h3.1719l-.29297.29297a1 1 0 0 0 0 1.4141 1 1 0 0 0 1.4141 0l2-2a1.0001 1.0001 0 0 0 .29297-.72266 1.0001 1.0001 0 0 0 -.29297-.69141l-2-2a1 1 0 0 0 -.7207-.29102 1 1 0 0 0 -.69336.29102 1 1 0 0 0 0 1.4141l.29297.29297h-3.1719l.29297-.29297a1 1 0 0 0 0-1.4141 1 1 0 0 0 -.7207-.29102 1 1 0 0 0 -.69336.29102l-2 2a1.0001 1.0001 0 0 0 -.29297.7207zm10-.029297v3.0156h2v-6h-2z" fill="#fc7f7f"/></svg>
diff --git a/editor/icons/InterpWrapLoop.svg b/editor/icons/InterpWrapLoop.svg
index 57670f97ce..4faf7805f8 100644
--- a/editor/icons/InterpWrapLoop.svg
+++ b/editor/icons/InterpWrapLoop.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m9 0-3 2 3 2v-1h3a1 1 0 0 1 1 1 1 1 0 0 1 -1 1v2a3 3 0 0 0 3-3 3 3 0 0 0 -3-3h-3zm-5 1a3 3 0 0 0 -3 3 3 3 0 0 0 3 3h3v1l3-2-3-2v1h-3a1 1 0 0 1 -1-1 1 1 0 0 1 1-1z" fill="#e0e0e0"/></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m9 0-3 2 3 2v-1h3a1 1 0 0 1 1 1 1 1 0 0 1 -1 1v2a3 3 0 0 0 3-3 3 3 0 0 0 -3-3h-3zm-5 1a3 3 0 0 0 -3 3 3 3 0 0 0 3 3h3v1l3-2-3-2v1h-3a1 1 0 0 1 -1-1 1 1 0 0 1 1-1z" fill="#c38ef1"/></svg>
diff --git a/editor/icons/TrackCapture.svg b/editor/icons/TrackCapture.svg
index aaa4a20e4a..b3d5f09eff 100644
--- a/editor/icons/TrackCapture.svg
+++ b/editor/icons/TrackCapture.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><g fill="#e0e0e0"><path d="m2.1665128.99764963c-.422625 0-.763672.34104737-.763672.76367187v4.5742187c0 .4226242.341047.7617192.763672.7617192h4.472656c.422625 0 .763672-.339095.763672-.7617192v-.9882812h-3.300781c-.1662 0-.298828-.3390943-.298828-.7617188v-1.2246094c0-.4226244.132628-.7636718.298828-.7636718h3.300781v-.8359375c0-.4226245-.341047-.76367187-.763672-.76367187z"/><path d="m9.1827441 4.7953408c.5166221-1.0415625 1.0955249-2.2117429 1.2864509-2.600401l.347137-.7066511.679654.00665.679654.00665.956945 2.3125c.526319 1.271875 1.007254 2.4334375 1.068744 2.5812497l.1118.26875h-.597215-.597214l-.332849-.6437497-.332849-.64375h-1.133826-1.133825l-.3786749.6561133-.3786747.6561134-.5922856.000137-.592285.000136zm3.1779349-.369483c.0042-.00346-.233487-.4884588-.528245-1.0777779l-.535922-1.0714891-.03691.0875c-.0203.048125-.183516.425-.362699.8375-.179182.4125-.355738.85125-.392346.975-.03661.12375-.07127.2390723-.07703.2562715-.0083.024853.188215.027989.957503.015278.532385-.0088.971429-.018823.975651-.022283z" stroke="#e0e0e0" stroke-width=".803"/></g></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><g fill="#e1da5b"><path d="m2.1665128.99764963c-.422625 0-.763672.34104737-.763672.76367187v4.5742187c0 .4226242.341047.7617192.763672.7617192h4.472656c.422625 0 .763672-.339095.763672-.7617192v-.9882812h-3.300781c-.1662 0-.298828-.3390943-.298828-.7617188v-1.2246094c0-.4226244.132628-.7636718.298828-.7636718h3.300781v-.8359375c0-.4226245-.341047-.76367187-.763672-.76367187z"/><path d="m9.1827441 4.7953408c.5166221-1.0415625 1.0955249-2.2117429 1.2864509-2.600401l.347137-.7066511.679654.00665.679654.00665.956945 2.3125c.526319 1.271875 1.007254 2.4334375 1.068744 2.5812497l.1118.26875h-.597215-.597214l-.332849-.6437497-.332849-.64375h-1.133826-1.133825l-.3786749.6561133-.3786747.6561134-.5922856.000137-.592285.000136zm3.1779349-.369483c.0042-.00346-.233487-.4884588-.528245-1.0777779l-.535922-1.0714891-.03691.0875c-.0203.048125-.183516.425-.362699.8375-.179182.4125-.355738.85125-.392346.975-.03661.12375-.07127.2390723-.07703.2562715-.0083.024853.188215.027989.957503.015278.532385-.0088.971429-.018823.975651-.022283z" stroke="#e1da5b" stroke-width=".803"/></g></svg>
diff --git a/editor/icons/TrackDiscrete.svg b/editor/icons/TrackDiscrete.svg
index d1df4b1667..6498742233 100644
--- a/editor/icons/TrackDiscrete.svg
+++ b/editor/icons/TrackDiscrete.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m14 1a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-6 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-6 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1z" fill="#e0e0e0"/></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m14 1a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-6 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-6 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1z" fill="#b9ec41"/></svg>
diff --git a/editor/icons/TrackTrigger.svg b/editor/icons/TrackTrigger.svg
index 6e46a74121..c403fba59a 100644
--- a/editor/icons/TrackTrigger.svg
+++ b/editor/icons/TrackTrigger.svg
@@ -1 +1 @@
-<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m1 1v2h2v4h2v-4h2v-2zm13 0a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-3 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-3 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1z" fill="#e0e0e0"/></svg>
+<svg height="8" viewBox="0 0 16 8" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m1 1v2h2v4h2v-4h2v-2zm13 0a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-3 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1zm-3 2a1 1 0 0 0 -1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0 -1-1z" fill="#f68f45"/></svg>
diff --git a/editor/import/editor_import_collada.cpp b/editor/import/editor_import_collada.cpp
index f9aa550e7d..076c0cc62b 100644
--- a/editor/import/editor_import_collada.cpp
+++ b/editor/import/editor_import_collada.cpp
@@ -314,7 +314,7 @@ Error ColladaImport::_create_scene(Collada::Node *p_node, Node3D *p_parent) {
xf = collada.fix_transform(xf) * p_node->post_transform;
node->set_transform(xf);
- p_parent->add_child(node);
+ p_parent->add_child(node, true);
node->set_owner(scene);
if (p_node->empty_draw_type != "") {
@@ -1804,7 +1804,7 @@ Node *EditorSceneFormatImporterCollada::import_scene(const String &p_path, uint3
ap->add_animation(name, state.animations[i]);
}
- state.scene->add_child(ap);
+ state.scene->add_child(ap, true);
ap->set_owner(state.scene);
}
diff --git a/editor/import/resource_importer_obj.cpp b/editor/import/resource_importer_obj.cpp
index 4f75faedcb..01af75c338 100644
--- a/editor/import/resource_importer_obj.cpp
+++ b/editor/import/resource_importer_obj.cpp
@@ -448,7 +448,7 @@ Node *EditorOBJImporter::import_scene(const String &p_path, uint32_t p_flags, in
ImporterMeshInstance3D *mi = memnew(ImporterMeshInstance3D);
mi->set_mesh(mesh);
mi->set_name(m->get_name());
- scene->add_child(mi);
+ scene->add_child(mi, true);
mi->set_owner(scene);
}
diff --git a/editor/import/resource_importer_scene.cpp b/editor/import/resource_importer_scene.cpp
index 7d3b945b04..5efb08b95d 100644
--- a/editor/import/resource_importer_scene.cpp
+++ b/editor/import/resource_importer_scene.cpp
@@ -502,7 +502,7 @@ Node *ResourceImporterScene::_pre_fix_node(Node *p_node, Node *p_root, Map<Ref<I
sphereShape->set_radius(1);
colshape->set_shape(sphereShape);
}
- sb->add_child(colshape);
+ sb->add_child(colshape, true);
colshape->set_owner(sb->get_owner());
}
@@ -528,7 +528,7 @@ Node *ResourceImporterScene::_pre_fix_node(Node *p_node, Node *p_root, Map<Ref<I
rigid_body->set_transform(mi->get_transform());
p_node = rigid_body;
mi->set_transform(Transform3D());
- rigid_body->add_child(mi);
+ rigid_body->add_child(mi, true);
mi->set_owner(rigid_body->get_owner());
_add_shapes(rigid_body, shapes);
@@ -566,7 +566,7 @@ Node *ResourceImporterScene::_pre_fix_node(Node *p_node, Node *p_root, Map<Ref<I
if (shapes.size()) {
StaticBody3D *col = memnew(StaticBody3D);
- mi->add_child(col);
+ mi->add_child(col, true);
col->set_owner(mi->get_owner());
_add_shapes(col, shapes);
@@ -614,7 +614,7 @@ Node *ResourceImporterScene::_pre_fix_node(Node *p_node, Node *p_root, Map<Ref<I
if (shapes.size()) {
StaticBody3D *col = memnew(StaticBody3D);
- p_node->add_child(col);
+ p_node->add_child(col, true);
col->set_owner(p_node->get_owner());
_add_shapes(col, shapes);
@@ -749,7 +749,7 @@ Node *ResourceImporterScene::_post_fix_node(Node *p_node, Node *p_root, Map<Ref<
switch (mesh_physics_mode) {
case MESH_PHYSICS_MESH_AND_STATIC_COLLIDER: {
StaticBody3D *col = memnew(StaticBody3D);
- p_node->add_child(col);
+ p_node->add_child(col, true);
col->set_owner(p_node->get_owner());
col->set_transform(get_collision_shapes_transform(node_settings));
base = col;
@@ -761,7 +761,7 @@ Node *ResourceImporterScene::_post_fix_node(Node *p_node, Node *p_root, Map<Ref<
rigid_body->set_transform(mi->get_transform() * get_collision_shapes_transform(node_settings));
p_node = rigid_body;
mi->set_transform(Transform3D());
- rigid_body->add_child(mi);
+ rigid_body->add_child(mi, true);
mi->set_owner(rigid_body->get_owner());
base = rigid_body;
} break;
@@ -790,7 +790,7 @@ Node *ResourceImporterScene::_post_fix_node(Node *p_node, Node *p_root, Map<Ref<
for (const Ref<Shape3D> &E : shapes) {
CollisionShape3D *cshape = memnew(CollisionShape3D);
cshape->set_shape(E);
- base->add_child(cshape);
+ base->add_child(cshape, true);
cshape->set_owner(base->get_owner());
idx++;
@@ -823,7 +823,7 @@ Node *ResourceImporterScene::_post_fix_node(Node *p_node, Node *p_root, Map<Ref<
memdelete(p_node);
p_node = nmi;
} else {
- mi->add_child(nmi);
+ mi->add_child(nmi, true);
nmi->set_owner(mi->get_owner());
}
}
@@ -1431,7 +1431,7 @@ void ResourceImporterScene::get_import_options(List<ImportOption> *r_options, in
r_options->push_back(ImportOption(PropertyInfo(Variant::FLOAT, "animation/fps", PROPERTY_HINT_RANGE, "1,120,1"), 15));
r_options->push_back(ImportOption(PropertyInfo(Variant::STRING, "import_script/path", PROPERTY_HINT_FILE, script_ext_hint), ""));
- r_options->push_back(ImportOption(PropertyInfo(Variant::DICTIONARY, "_subresources", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), Dictionary()));
+ r_options->push_back(ImportOption(PropertyInfo(Variant::DICTIONARY, "_subresources", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), Dictionary()));
for (int i = 0; i < post_importer_plugins.size(); i++) {
post_importer_plugins.write[i]->get_import_options(r_options);
@@ -1680,7 +1680,7 @@ void ResourceImporterScene::_add_shapes(Node *p_node, const Vector<Ref<Shape3D>>
for (const Ref<Shape3D> &E : p_shapes) {
CollisionShape3D *cshape = memnew(CollisionShape3D);
cshape->set_shape(E);
- p_node->add_child(cshape);
+ p_node->add_child(cshape, true);
cshape->set_owner(p_node->get_owner());
}
diff --git a/editor/import/resource_importer_texture.cpp b/editor/import/resource_importer_texture.cpp
index 96a53b3257..e4553c625b 100644
--- a/editor/import/resource_importer_texture.cpp
+++ b/editor/import/resource_importer_texture.cpp
@@ -218,7 +218,8 @@ void ResourceImporterTexture::get_import_options(List<ImportOption> *r_options,
void ResourceImporterTexture::save_to_stex_format(FileAccess *f, const Ref<Image> &p_image, CompressMode p_compress_mode, Image::UsedChannels p_channels, Image::CompressMode p_compress_format, float p_lossy_quality) {
switch (p_compress_mode) {
case COMPRESS_LOSSLESS: {
- bool lossless_force_png = ProjectSettings::get_singleton()->get("rendering/textures/lossless_compression/force_png");
+ bool lossless_force_png = ProjectSettings::get_singleton()->get("rendering/textures/lossless_compression/force_png") ||
+ !Image::_webp_mem_loader_func; // WebP module disabled.
bool use_webp = !lossless_force_png && p_image->get_width() <= 16383 && p_image->get_height() <= 16383; // WebP has a size limit
f->store_32(use_webp ? StreamTexture2D::DATA_FORMAT_WEBP : StreamTexture2D::DATA_FORMAT_PNG);
f->store_16(p_image->get_width());
diff --git a/editor/import/scene_import_settings.cpp b/editor/import/scene_import_settings.cpp
index 95a96f9e26..9b9320ad6d 100644
--- a/editor/import/scene_import_settings.cpp
+++ b/editor/import/scene_import_settings.cpp
@@ -327,7 +327,7 @@ void SceneImportSettings::_fill_scene(Node *p_node, TreeItem *p_parent_item) {
MeshInstance3D *collider_view = memnew(MeshInstance3D);
collider_view->set_name("collider_view");
collider_view->set_visible(false);
- mesh_node->add_child(collider_view);
+ mesh_node->add_child(collider_view, true);
collider_view->set_owner(mesh_node);
Transform3D accum_xform;
diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp
index 0e1bdf0155..376c7d3f07 100644
--- a/editor/plugins/canvas_item_editor_plugin.cpp
+++ b/editor/plugins/canvas_item_editor_plugin.cpp
@@ -2264,9 +2264,9 @@ bool CanvasItemEditor::_gui_input_select(const Ref<InputEvent> &p_event) {
}
}
- if (b.is_valid() && b->is_pressed() && b->get_button_index() == MOUSE_BUTTON_RIGHT && b->is_ctrl_pressed()) {
- add_node_menu->set_position(get_global_transform().xform(get_local_mouse_position()));
+ if (b.is_valid() && b->is_pressed() && b->get_button_index() == MOUSE_BUTTON_RIGHT) {
add_node_menu->set_size(Vector2(1, 1));
+ add_node_menu->set_position(get_screen_position() + b->get_position());
add_node_menu->popup();
node_create_position = transform.affine_inverse().xform((get_local_mouse_position()));
return true;
@@ -5836,7 +5836,7 @@ void CanvasItemEditorViewport::_create_nodes(Node *parent, Node *child, String &
Ref<Texture2D> texture = Ref<Texture2D>(Object::cast_to<Texture2D>(ResourceCache::get(path)));
if (parent) {
- editor_data->get_undo_redo().add_do_method(parent, "add_child", child);
+ editor_data->get_undo_redo().add_do_method(parent, "add_child", child, true);
editor_data->get_undo_redo().add_do_method(child, "set_owner", editor->get_edited_scene());
editor_data->get_undo_redo().add_do_reference(child);
editor_data->get_undo_redo().add_undo_method(parent, "remove_child", child);
diff --git a/editor/plugins/editor_preview_plugins.cpp b/editor/plugins/editor_preview_plugins.cpp
index 4cb2c0a76b..9702c7e734 100644
--- a/editor/plugins/editor_preview_plugins.cpp
+++ b/editor/plugins/editor_preview_plugins.cpp
@@ -297,12 +297,14 @@ EditorPackedScenePreviewPlugin::EditorPackedScenePreviewPlugin() {
//////////////////////////////////////////////////////////////////
-void EditorMaterialPreviewPlugin::_preview_done(const Variant &p_udata) {
- preview_done.set();
+void EditorMaterialPreviewPlugin::_generate_frame_started() {
+ RS::get_singleton()->viewport_set_update_mode(viewport, RS::VIEWPORT_UPDATE_ONCE); //once used for capture
+
+ RS::get_singleton()->request_frame_drawn_callback(callable_mp(const_cast<EditorMaterialPreviewPlugin *>(this), &EditorMaterialPreviewPlugin::_preview_done));
}
-void EditorMaterialPreviewPlugin::_bind_methods() {
- ClassDB::bind_method("_preview_done", &EditorMaterialPreviewPlugin::_preview_done);
+void EditorMaterialPreviewPlugin::_preview_done() {
+ preview_done.post();
}
bool EditorMaterialPreviewPlugin::handles(const String &p_type) const {
@@ -320,14 +322,9 @@ Ref<Texture2D> EditorMaterialPreviewPlugin::generate(const RES &p_from, const Si
if (material->get_shader_mode() == Shader::MODE_SPATIAL) {
RS::get_singleton()->mesh_surface_set_material(sphere, 0, material->get_rid());
- RS::get_singleton()->viewport_set_update_mode(viewport, RS::VIEWPORT_UPDATE_ONCE); //once used for capture
+ RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorMaterialPreviewPlugin *>(this), &EditorMaterialPreviewPlugin::_generate_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
- preview_done.clear();
- RS::get_singleton()->request_frame_drawn_callback(const_cast<EditorMaterialPreviewPlugin *>(this), "_preview_done", Variant());
-
- while (!preview_done.is_set()) {
- OS::get_singleton()->delay_usec(10);
- }
+ preview_done.wait();
Ref<Image> img = RS::get_singleton()->texture_2d_get(viewport_texture);
RS::get_singleton()->mesh_surface_set_material(sphere, 0, RID());
@@ -699,12 +696,14 @@ EditorAudioStreamPreviewPlugin::EditorAudioStreamPreviewPlugin() {
///////////////////////////////////////////////////////////////////////////
-void EditorMeshPreviewPlugin::_preview_done(const Variant &p_udata) {
- preview_done.set();
+void EditorMeshPreviewPlugin::_generate_frame_started() {
+ RS::get_singleton()->viewport_set_update_mode(viewport, RS::VIEWPORT_UPDATE_ONCE); //once used for capture
+
+ RS::get_singleton()->request_frame_drawn_callback(callable_mp(const_cast<EditorMeshPreviewPlugin *>(this), &EditorMeshPreviewPlugin::_preview_done));
}
-void EditorMeshPreviewPlugin::_bind_methods() {
- ClassDB::bind_method("_preview_done", &EditorMeshPreviewPlugin::_preview_done);
+void EditorMeshPreviewPlugin::_preview_done() {
+ preview_done.post();
}
bool EditorMeshPreviewPlugin::handles(const String &p_type) const {
@@ -735,14 +734,9 @@ Ref<Texture2D> EditorMeshPreviewPlugin::generate(const RES &p_from, const Size2
xform.origin.z -= rot_aabb.size.z * 2;
RS::get_singleton()->instance_set_transform(mesh_instance, xform);
- RS::get_singleton()->viewport_set_update_mode(viewport, RS::VIEWPORT_UPDATE_ONCE); //once used for capture
+ RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorMeshPreviewPlugin *>(this), &EditorMeshPreviewPlugin::_generate_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
- preview_done.clear();
- RS::get_singleton()->request_frame_drawn_callback(const_cast<EditorMeshPreviewPlugin *>(this), "_preview_done", Variant());
-
- while (!preview_done.is_set()) {
- OS::get_singleton()->delay_usec(10);
- }
+ preview_done.wait();
Ref<Image> img = RS::get_singleton()->texture_2d_get(viewport_texture);
ERR_FAIL_COND_V(img.is_null(), Ref<ImageTexture>());
@@ -814,12 +808,14 @@ EditorMeshPreviewPlugin::~EditorMeshPreviewPlugin() {
///////////////////////////////////////////////////////////////////////////
-void EditorFontPreviewPlugin::_preview_done(const Variant &p_udata) {
- preview_done.set();
+void EditorFontPreviewPlugin::_generate_frame_started() {
+ RS::get_singleton()->viewport_set_update_mode(viewport, RS::VIEWPORT_UPDATE_ONCE); //once used for capture
+
+ RS::get_singleton()->request_frame_drawn_callback(callable_mp(const_cast<EditorFontPreviewPlugin *>(this), &EditorFontPreviewPlugin::_preview_done));
}
-void EditorFontPreviewPlugin::_bind_methods() {
- ClassDB::bind_method("_preview_done", &EditorFontPreviewPlugin::_preview_done);
+void EditorFontPreviewPlugin::_preview_done() {
+ preview_done.post();
}
bool EditorFontPreviewPlugin::handles(const String &p_type) const {
@@ -857,13 +853,9 @@ Ref<Texture2D> EditorFontPreviewPlugin::generate_from_path(const String &p_path,
font->draw_string(canvas_item, pos, sample, HALIGN_LEFT, -1.f, 50, Color(1, 1, 1));
- preview_done.clear();
- RS::get_singleton()->viewport_set_update_mode(viewport, RS::VIEWPORT_UPDATE_ONCE); //once used for capture
- RS::get_singleton()->request_frame_drawn_callback(const_cast<EditorFontPreviewPlugin *>(this), "_preview_done", Variant());
+ RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<EditorFontPreviewPlugin *>(this), &EditorFontPreviewPlugin::_generate_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
- while (!preview_done.is_set()) {
- OS::get_singleton()->delay_usec(10);
- }
+ preview_done.wait();
RS::get_singleton()->canvas_item_clear(canvas_item);
diff --git a/editor/plugins/editor_preview_plugins.h b/editor/plugins/editor_preview_plugins.h
index 091feae5fb..bf52f5771d 100644
--- a/editor/plugins/editor_preview_plugins.h
+++ b/editor/plugins/editor_preview_plugins.h
@@ -92,12 +92,10 @@ class EditorMaterialPreviewPlugin : public EditorResourcePreviewGenerator {
RID light2;
RID light_instance2;
RID camera;
- mutable SafeFlag preview_done;
+ Semaphore preview_done;
- void _preview_done(const Variant &p_udata);
-
-protected:
- static void _bind_methods();
+ void _generate_frame_started();
+ void _preview_done();
public:
virtual bool handles(const String &p_type) const override;
@@ -136,12 +134,10 @@ class EditorMeshPreviewPlugin : public EditorResourcePreviewGenerator {
RID light2;
RID light_instance2;
RID camera;
- mutable SafeFlag preview_done;
-
- void _preview_done(const Variant &p_udata);
+ Semaphore preview_done;
-protected:
- static void _bind_methods();
+ void _generate_frame_started();
+ void _preview_done();
public:
virtual bool handles(const String &p_type) const override;
@@ -158,12 +154,10 @@ class EditorFontPreviewPlugin : public EditorResourcePreviewGenerator {
RID viewport_texture;
RID canvas;
RID canvas_item;
- mutable SafeFlag preview_done;
+ Semaphore preview_done;
- void _preview_done(const Variant &p_udata);
-
-protected:
- static void _bind_methods();
+ void _generate_frame_started();
+ void _preview_done();
public:
virtual bool handles(const String &p_type) const override;
@@ -177,12 +171,10 @@ public:
class EditorTileMapPatternPreviewPlugin : public EditorResourcePreviewGenerator {
GDCLASS(EditorTileMapPatternPreviewPlugin, EditorResourcePreviewGenerator);
- mutable SafeFlag preview_done;
-
- void _preview_done(const Variant &p_udata);
+ Semaphore preview_done;
-protected:
- static void _bind_methods();
+ void _generate_frame_started();
+ void _preview_done();
public:
virtual bool handles(const String &p_type) const override;
diff --git a/editor/plugins/mesh_instance_3d_editor_plugin.cpp b/editor/plugins/mesh_instance_3d_editor_plugin.cpp
index 574d3ef27e..7a85c5167b 100644
--- a/editor/plugins/mesh_instance_3d_editor_plugin.cpp
+++ b/editor/plugins/mesh_instance_3d_editor_plugin.cpp
@@ -79,7 +79,7 @@ void MeshInstance3DEditor::_menu_option(int p_option) {
Node *owner = node == get_tree()->get_edited_scene_root() ? node : node->get_owner();
ur->create_action(TTR("Create Static Trimesh Body"));
- ur->add_do_method(node, "add_child", body);
+ ur->add_do_method(node, "add_child", body, true);
ur->add_do_method(body, "set_owner", owner);
ur->add_do_method(cshape, "set_owner", owner);
ur->add_do_reference(body);
@@ -113,7 +113,7 @@ void MeshInstance3DEditor::_menu_option(int p_option) {
Node *owner = instance == get_tree()->get_edited_scene_root() ? instance : instance->get_owner();
- ur->add_do_method(instance, "add_child", body);
+ ur->add_do_method(instance, "add_child", body, true);
ur->add_do_method(body, "set_owner", owner);
ur->add_do_method(cshape, "set_owner", owner);
ur->add_do_reference(body);
@@ -146,7 +146,7 @@ void MeshInstance3DEditor::_menu_option(int p_option) {
ur->create_action(TTR("Create Trimesh Static Shape"));
- ur->add_do_method(node->get_parent(), "add_child", cshape);
+ ur->add_do_method(node->get_parent(), "add_child", cshape, true);
ur->add_do_method(node->get_parent(), "move_child", cshape, node->get_index() + 1);
ur->add_do_method(cshape, "set_owner", owner);
ur->add_do_reference(cshape);
@@ -185,7 +185,7 @@ void MeshInstance3DEditor::_menu_option(int p_option) {
Node *owner = node->get_owner();
- ur->add_do_method(node->get_parent(), "add_child", cshape);
+ ur->add_do_method(node->get_parent(), "add_child", cshape, true);
ur->add_do_method(node->get_parent(), "move_child", cshape, node->get_index() + 1);
ur->add_do_method(cshape, "set_owner", owner);
ur->add_do_reference(cshape);
@@ -247,7 +247,7 @@ void MeshInstance3DEditor::_menu_option(int p_option) {
UndoRedo *ur = EditorNode::get_singleton()->get_undo_redo();
ur->create_action(TTR("Create Navigation Mesh"));
- ur->add_do_method(node, "add_child", nmi);
+ ur->add_do_method(node, "add_child", nmi, true);
ur->add_do_method(nmi, "set_owner", owner);
ur->add_do_reference(nmi);
@@ -426,7 +426,7 @@ void MeshInstance3DEditor::_create_outline_mesh() {
ur->create_action(TTR("Create Outline"));
- ur->add_do_method(node, "add_child", mi);
+ ur->add_do_method(node, "add_child", mi, true);
ur->add_do_method(mi, "set_owner", owner);
ur->add_do_reference(mi);
diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp
index b99ccc1012..fa5381bb10 100644
--- a/editor/plugins/node_3d_editor_plugin.cpp
+++ b/editor/plugins/node_3d_editor_plugin.cpp
@@ -3936,9 +3936,13 @@ Vector3 Node3DEditorViewport::_get_instance_position(const Point2 &p_pos) const
Vector3 point = world_pos + world_ray * MAX_DISTANCE;
PhysicsDirectSpaceState3D *ss = get_tree()->get_root()->get_world_3d()->get_direct_space_state();
- PhysicsDirectSpaceState3D::RayResult result;
- if (ss->intersect_ray(world_pos, world_pos + world_ray * MAX_DISTANCE, result)) {
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = world_pos;
+ ray_params.to = world_pos + world_ray * MAX_DISTANCE;
+
+ PhysicsDirectSpaceState3D::RayResult result;
+ if (ss->intersect_ray(ray_params, result)) {
point = result.position;
}
@@ -6566,7 +6570,12 @@ void Node3DEditor::snap_selected_nodes_to_floor() {
Vector3 to = from - Vector3(0.0, max_snap_height, 0.0);
Set<RID> excluded = _get_physics_bodies_rid(sp);
- if (ss->intersect_ray(from, to, result, excluded)) {
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = from;
+ ray_params.to = to;
+ ray_params.exclude = excluded;
+
+ if (ss->intersect_ray(ray_params, result)) {
snapped_to_floor = true;
}
}
@@ -6583,7 +6592,12 @@ void Node3DEditor::snap_selected_nodes_to_floor() {
Vector3 to = from - Vector3(0.0, max_snap_height, 0.0);
Set<RID> excluded = _get_physics_bodies_rid(sp);
- if (ss->intersect_ray(from, to, result, excluded)) {
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = from;
+ ray_params.to = to;
+ ray_params.exclude = excluded;
+
+ if (ss->intersect_ray(ray_params, result)) {
Vector3 position_offset = d["position_offset"];
Transform3D new_transform = sp->get_global_transform();
@@ -6636,7 +6650,7 @@ void Node3DEditor::_add_sun_to_scene(bool p_already_added_environment) {
Node *new_sun = preview_sun->duplicate();
undo_redo->create_action(TTR("Add Preview Sun to Scene"));
- undo_redo->add_do_method(base, "add_child", new_sun);
+ undo_redo->add_do_method(base, "add_child", new_sun, true);
// Move to the beginning of the scene tree since more "global" nodes
// generally look better when placed at the top.
undo_redo->add_do_method(base, "move_child", new_sun, 0);
@@ -6666,7 +6680,7 @@ void Node3DEditor::_add_environment_to_scene(bool p_already_added_sun) {
new_env->set_environment(preview_environment->get_environment()->duplicate(true));
undo_redo->create_action(TTR("Add Preview Environment to Scene"));
- undo_redo->add_do_method(base, "add_child", new_env);
+ undo_redo->add_do_method(base, "add_child", new_env, true);
// Move to the beginning of the scene tree since more "global" nodes
// generally look better when placed at the top.
undo_redo->add_do_method(base, "move_child", new_env, 0);
@@ -7132,7 +7146,7 @@ void Node3DEditor::_update_preview_environment() {
} else {
if (!preview_sun->get_parent()) {
- add_child(preview_sun);
+ add_child(preview_sun, true);
sun_state->hide();
sun_vb->show();
}
diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp
index 3f98560a2f..aad378ecec 100644
--- a/editor/plugins/script_editor_plugin.cpp
+++ b/editor/plugins/script_editor_plugin.cpp
@@ -227,12 +227,6 @@ void ScriptEditorBase::_bind_methods() {
ADD_SIGNAL(MethodInfo("replace_in_files_requested", PropertyInfo(Variant::STRING, "text")));
}
-static bool _is_built_in_script(Script *p_script) {
- String path = p_script->get_path();
-
- return path.find("::") != -1;
-}
-
class EditorScriptCodeCompletionCache : public ScriptCodeCompletionCache {
struct Cache {
uint64_t time_loaded = 0;
@@ -764,7 +758,7 @@ void ScriptEditor::_close_tab(int p_idx, bool p_save, bool p_history_back) {
if (p_save && file.is_valid()) {
// Do not try to save internal scripts, but prompt to save in-memory
// scripts which are not saved to disk yet (have empty path).
- if (file->get_path().find("local://") == -1 && file->get_path().find("::") == -1) {
+ if (file->is_built_in()) {
save_current_script();
}
}
@@ -910,7 +904,7 @@ void ScriptEditor::_resave_scripts(const String &p_str) {
RES script = se->get_edited_resource();
- if (script->get_path() == "" || script->get_path().find("local://") != -1 || script->get_path().find("::") != -1) {
+ if (script->is_built_in()) {
continue; //internal script, who cares
}
@@ -951,7 +945,7 @@ void ScriptEditor::_reload_scripts() {
RES edited_res = se->get_edited_resource();
- if (edited_res->get_path() == "" || edited_res->get_path().find("local://") != -1 || edited_res->get_path().find("::") != -1) {
+ if (edited_res->is_built_in()) {
continue; //internal script, who cares
}
@@ -995,7 +989,7 @@ void ScriptEditor::_res_saved_callback(const Ref<Resource> &p_res) {
RES script = se->get_edited_resource();
- if (script->get_path() == "" || script->get_path().find("local://") != -1 || script->get_path().find("::") != -1) {
+ if (script->is_built_in()) {
continue; //internal script, who cares
}
@@ -1037,7 +1031,7 @@ bool ScriptEditor::_test_script_times_on_disk(RES p_for_script) {
continue;
}
- if (edited_res->get_path() == "" || edited_res->get_path().find("local://") != -1 || edited_res->get_path().find("::") != -1) {
+ if (edited_res->is_built_in()) {
continue; //internal script, who cares
}
@@ -1624,7 +1618,7 @@ void ScriptEditor::close_builtin_scripts_from_scene(const String &p_scene) {
continue;
}
- if (script->get_path().find("::") != -1 && script->get_path().begins_with(p_scene)) { //is an internal script and belongs to scene being closed
+ if (script->is_built_in() && script->get_path().begins_with(p_scene)) { //is an internal script and belongs to scene being closed
_close_tab(i);
i--;
}
@@ -2180,9 +2174,10 @@ bool ScriptEditor::edit(const RES &p_resource, int p_line, int p_col, bool p_gra
Ref<Script> script = p_resource;
// Don't open dominant script if using an external editor.
- const bool use_external_editor =
+ bool use_external_editor =
EditorSettings::get_singleton()->get("text_editor/external/use_external_editor") ||
(script.is_valid() && script->get_language()->overrides_external_editor());
+ use_external_editor = use_external_editor && !(script.is_valid() && script->is_built_in()); // Ignore external editor for built-in scripts.
const bool open_dominant = EditorSettings::get_singleton()->get("text_editor/behavior/files/open_dominant_script_on_scene_change");
const bool should_open = (open_dominant && !use_external_editor) || !EditorNode::get_singleton()->is_changing_scene();
@@ -2450,7 +2445,7 @@ void ScriptEditor::save_all_scripts() {
se->apply_code();
}
- if (edited_res->get_path() != "" && edited_res->get_path().find("local://") == -1 && edited_res->get_path().find("::") == -1) {
+ if (!edited_res->is_built_in()) {
Ref<TextFile> text_file = edited_res;
Ref<Script> script = edited_res;
@@ -2570,7 +2565,7 @@ void ScriptEditor::_add_callback(Object *p_obj, const String &p_function, const
script_list->select(script_list->find_metadata(i));
// Save the current script so the changes can be picked up by an external editor.
- if (!_is_built_in_script(script.ptr())) { // But only if it's not built-in script.
+ if (!script.ptr()->is_built_in()) { // But only if it's not built-in script.
save_current_script();
}
@@ -3346,9 +3341,10 @@ Array ScriptEditor::_get_open_script_editors() const {
void ScriptEditor::set_scene_root_script(Ref<Script> p_script) {
// Don't open dominant script if using an external editor.
- const bool use_external_editor =
+ bool use_external_editor =
EditorSettings::get_singleton()->get("text_editor/external/use_external_editor") ||
(p_script.is_valid() && p_script->get_language()->overrides_external_editor());
+ use_external_editor = use_external_editor && !(p_script.is_valid() && p_script->is_built_in()); // Ignore external editor for built-in scripts.
const bool open_dominant = EditorSettings::get_singleton()->get("text_editor/behavior/files/open_dominant_script_on_scene_change");
if (open_dominant && !use_external_editor && p_script.is_valid()) {
@@ -3858,7 +3854,7 @@ void ScriptEditorPlugin::edit(Object *p_object) {
Script *p_script = Object::cast_to<Script>(p_object);
String res_path = p_script->get_path().get_slice("::", 0);
- if (_is_built_in_script(p_script)) {
+ if (p_script->is_built_in()) {
if (ResourceLoader::get_resource_type(res_path) == "PackedScene") {
if (!EditorNode::get_singleton()->is_scene_open(res_path)) {
EditorNode::get_singleton()->load_scene(res_path);
diff --git a/editor/plugins/script_text_editor.cpp b/editor/plugins/script_text_editor.cpp
index 219498b5e7..24cdc06d78 100644
--- a/editor/plugins/script_text_editor.cpp
+++ b/editor/plugins/script_text_editor.cpp
@@ -375,7 +375,7 @@ void ScriptTextEditor::ensure_focus() {
String ScriptTextEditor::get_name() {
String name;
- if (script->get_path().find("local://") == -1 && script->get_path().find("::") == -1) {
+ if (!script->is_built_in()) {
name = script->get_path().get_file();
if (is_unsaved()) {
if (script->get_path().is_empty()) {
@@ -658,7 +658,7 @@ void ScriptEditor::_update_modified_scripts_for_external_editor(Ref<Script> p_fo
continue;
}
- if (script->get_path() == "" || script->get_path().find("local://") != -1 || script->get_path().find("::") != -1) {
+ if (script->is_built_in()) {
continue; //internal script, who cares, though weird
}
diff --git a/editor/plugins/shader_editor_plugin.cpp b/editor/plugins/shader_editor_plugin.cpp
index 2731582288..9d2b4c88c5 100644
--- a/editor/plugins/shader_editor_plugin.cpp
+++ b/editor/plugins/shader_editor_plugin.cpp
@@ -482,8 +482,7 @@ void ShaderEditor::_check_for_external_edit() {
return;
}
- // internal shader.
- if (shader->get_path() == "" || shader->get_path().find("local://") != -1 || shader->get_path().find("::") != -1) {
+ if (shader->is_built_in()) {
return;
}
@@ -530,7 +529,7 @@ void ShaderEditor::save_external_data(const String &p_str) {
}
apply_shaders();
- if (shader->get_path() != "" && shader->get_path().find("local://") == -1 && shader->get_path().find("::") == -1) {
+ if (!shader->is_built_in()) {
//external shader, save it
ResourceSaver::save(shader->get_path(), shader);
}
diff --git a/editor/plugins/text_editor.cpp b/editor/plugins/text_editor.cpp
index 1fc7eb98e0..3b45f32927 100644
--- a/editor/plugins/text_editor.cpp
+++ b/editor/plugins/text_editor.cpp
@@ -65,7 +65,7 @@ void TextEditor::_load_theme_settings() {
String TextEditor::get_name() {
String name;
- if (text_file->get_path().find("local://") == -1 && text_file->get_path().find("::") == -1) {
+ if (!text_file->is_built_in()) {
name = text_file->get_path().get_file();
if (is_unsaved()) {
if (text_file->get_path().is_empty()) {
diff --git a/editor/plugins/theme_editor_plugin.cpp b/editor/plugins/theme_editor_plugin.cpp
index 127219546d..b1ef85b4f4 100644
--- a/editor/plugins/theme_editor_plugin.cpp
+++ b/editor/plugins/theme_editor_plugin.cpp
@@ -2848,7 +2848,7 @@ void ThemeTypeEditor::_font_size_item_changed(float p_value, String p_item_name)
edited_theme->set_font_size(p_item_name, edited_type, int(p_value));
}
-void ThemeTypeEditor::_edit_resource_item(RES p_resource) {
+void ThemeTypeEditor::_edit_resource_item(RES p_resource, bool p_edit) {
EditorNode::get_singleton()->edit_resource(p_resource);
}
diff --git a/editor/plugins/theme_editor_plugin.h b/editor/plugins/theme_editor_plugin.h
index b6becbb1c7..f5ad577aff 100644
--- a/editor/plugins/theme_editor_plugin.h
+++ b/editor/plugins/theme_editor_plugin.h
@@ -362,7 +362,7 @@ class ThemeTypeEditor : public MarginContainer {
void _color_item_changed(Color p_value, String p_item_name);
void _constant_item_changed(float p_value, String p_item_name);
void _font_size_item_changed(float p_value, String p_item_name);
- void _edit_resource_item(RES p_resource);
+ void _edit_resource_item(RES p_resource, bool p_edit);
void _font_item_changed(Ref<Font> p_value, String p_item_name);
void _icon_item_changed(Ref<Texture2D> p_value, String p_item_name);
void _stylebox_item_changed(Ref<StyleBox> p_value, String p_item_name);
diff --git a/editor/plugins/tiles/tile_map_editor.cpp b/editor/plugins/tiles/tile_map_editor.cpp
index 21ef94b999..39fbd86f77 100644
--- a/editor/plugins/tiles/tile_map_editor.cpp
+++ b/editor/plugins/tiles/tile_map_editor.cpp
@@ -99,7 +99,7 @@ void TileMapEditorTilesPlugin::_update_toolbar() {
picker_button->show();
erase_button->show();
tools_settings_vsep_2->show();
- bucket_continuous_checkbox->show();
+ bucket_contiguous_checkbox->show();
random_tile_checkbox->show();
scatter_label->show();
scatter_spinbox->show();
@@ -543,9 +543,9 @@ bool TileMapEditorTilesPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p
switch (drag_type) {
case DRAG_TYPE_PAINT: {
- Map<Vector2i, TileMapCell> to_draw = _draw_line(drag_start_mouse_pos, drag_last_mouse_pos, mpos);
+ Map<Vector2i, TileMapCell> to_draw = _draw_line(drag_start_mouse_pos, drag_last_mouse_pos, mpos, drag_erasing);
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
- if (!_is_erasing() && E.value.source_id == TileSet::INVALID_SOURCE) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
continue;
}
Vector2i coords = E.key;
@@ -560,9 +560,9 @@ bool TileMapEditorTilesPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p
Vector<Vector2i> line = TileMapEditor::get_line(tile_map, tile_map->world_to_map(drag_last_mouse_pos), tile_map->world_to_map(mpos));
for (int i = 0; i < line.size(); i++) {
if (!drag_modified.has(line[i])) {
- Map<Vector2i, TileMapCell> to_draw = _draw_bucket_fill(line[i], bucket_continuous_checkbox->is_pressed());
+ Map<Vector2i, TileMapCell> to_draw = _draw_bucket_fill(line[i], bucket_contiguous_checkbox->is_pressed(), drag_erasing);
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
- if (!_is_erasing() && E.value.source_id == TileSet::INVALID_SOURCE) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
continue;
}
Vector2i coords = E.key;
@@ -592,11 +592,11 @@ bool TileMapEditorTilesPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p
if (mb->get_button_index() == MOUSE_BUTTON_LEFT || mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
if (mb->is_pressed()) {
- if (mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
- rmb_erasing = true;
+ // Pressed
+ if (erase_button->is_pressed() || mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
+ drag_erasing = true;
}
- // Pressed
if (drag_type == DRAG_TYPE_CLIPBOARD_PASTE) {
// Do nothing.
} else if (tool_buttons_group->get_pressed_button() == select_tool_button) {
@@ -626,9 +626,9 @@ bool TileMapEditorTilesPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p
drag_type = DRAG_TYPE_PAINT;
drag_start_mouse_pos = mpos;
drag_modified.clear();
- Map<Vector2i, TileMapCell> to_draw = _draw_line(drag_start_mouse_pos, mpos, mpos);
+ Map<Vector2i, TileMapCell> to_draw = _draw_line(drag_start_mouse_pos, mpos, mpos, drag_erasing);
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
- if (!_is_erasing() && E.value.source_id == TileSet::INVALID_SOURCE) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
continue;
}
Vector2i coords = E.key;
@@ -653,9 +653,9 @@ bool TileMapEditorTilesPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p
Vector<Vector2i> line = TileMapEditor::get_line(tile_map, tile_map->world_to_map(drag_last_mouse_pos), tile_map->world_to_map(mpos));
for (int i = 0; i < line.size(); i++) {
if (!drag_modified.has(line[i])) {
- Map<Vector2i, TileMapCell> to_draw = _draw_bucket_fill(line[i], bucket_continuous_checkbox->is_pressed());
+ Map<Vector2i, TileMapCell> to_draw = _draw_bucket_fill(line[i], bucket_contiguous_checkbox->is_pressed(), drag_erasing);
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
- if (!_is_erasing() && E.value.source_id == TileSet::INVALID_SOURCE) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
continue;
}
Vector2i coords = E.key;
@@ -674,9 +674,7 @@ bool TileMapEditorTilesPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p
} else {
// Released
_stop_dragging();
- if (mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
- rmb_erasing = false;
- }
+ drag_erasing = false;
}
CanvasItemEditor::get_singleton()->update_viewport();
@@ -730,7 +728,7 @@ void TileMapEditorTilesPlugin::forward_canvas_draw_over_viewport(Control *p_over
Rect2i drawn_grid_rect;
if (drag_type == DRAG_TYPE_PICK) {
- // Draw the area being picvked.
+ // Draw the area being picked.
Rect2i rect = Rect2i(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(drag_last_mouse_pos) - tile_map->world_to_map(drag_start_mouse_pos)).abs();
rect.size += Vector2i(1, 1);
for (int x = rect.position.x; x < rect.get_end().x; x++) {
@@ -789,25 +787,25 @@ void TileMapEditorTilesPlugin::forward_canvas_draw_over_viewport(Control *p_over
bool expand_grid = false;
if (tool_buttons_group->get_pressed_button() == paint_tool_button && drag_type == DRAG_TYPE_NONE) {
// Preview for a single pattern.
- preview = _draw_line(drag_last_mouse_pos, drag_last_mouse_pos, drag_last_mouse_pos);
+ preview = _draw_line(drag_last_mouse_pos, drag_last_mouse_pos, drag_last_mouse_pos, erase_button->is_pressed());
expand_grid = true;
} else if (tool_buttons_group->get_pressed_button() == line_tool_button || drag_type == DRAG_TYPE_LINE) {
if (drag_type == DRAG_TYPE_NONE) {
// Preview for a single pattern.
- preview = _draw_line(drag_last_mouse_pos, drag_last_mouse_pos, drag_last_mouse_pos);
+ preview = _draw_line(drag_last_mouse_pos, drag_last_mouse_pos, drag_last_mouse_pos, erase_button->is_pressed());
expand_grid = true;
} else if (drag_type == DRAG_TYPE_LINE) {
// Preview for a line pattern.
- preview = _draw_line(drag_start_mouse_pos, drag_start_mouse_pos, drag_last_mouse_pos);
+ preview = _draw_line(drag_start_mouse_pos, drag_start_mouse_pos, drag_last_mouse_pos, drag_erasing);
expand_grid = true;
}
} else if (drag_type == DRAG_TYPE_RECT) {
// Preview for a rect pattern.
- preview = _draw_rect(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(drag_last_mouse_pos));
+ preview = _draw_rect(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(drag_last_mouse_pos), drag_erasing);
expand_grid = true;
} else if (tool_buttons_group->get_pressed_button() == bucket_tool_button && drag_type == DRAG_TYPE_NONE) {
// Preview for a fill pattern.
- preview = _draw_bucket_fill(tile_map->world_to_map(drag_last_mouse_pos), bucket_continuous_checkbox->is_pressed());
+ preview = _draw_bucket_fill(tile_map->world_to_map(drag_last_mouse_pos), bucket_contiguous_checkbox->is_pressed(), erase_button->is_pressed());
}
// Expand the grid if needed
@@ -855,7 +853,7 @@ void TileMapEditorTilesPlugin::forward_canvas_draw_over_viewport(Control *p_over
Transform2D tile_xform;
tile_xform.set_origin(tile_map->map_to_world(E.key));
tile_xform.set_scale(tile_set->get_tile_size());
- if (!_is_erasing() && random_tile_checkbox->is_pressed()) {
+ if (!(drag_erasing || erase_button->is_pressed()) && random_tile_checkbox->is_pressed()) {
tile_set->draw_tile_shape(p_overlay, xform * tile_xform, Color(1.0, 1.0, 1.0, 0.5), true);
} else {
if (tile_set->has_source(E.value.source_id)) {
@@ -966,7 +964,7 @@ TileMapCell TileMapEditorTilesPlugin::_pick_random_tile(Ref<TileMapPattern> p_pa
return TileMapCell();
}
-Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_line(Vector2 p_start_drag_mouse_pos, Vector2 p_from_mouse_pos, Vector2 p_to_mouse_pos) {
+Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_line(Vector2 p_start_drag_mouse_pos, Vector2 p_from_mouse_pos, Vector2 p_to_mouse_pos, bool p_erase) {
TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
if (!tile_map) {
return Map<Vector2i, TileMapCell>();
@@ -981,12 +979,12 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_line(Vector2 p_start_
Ref<TileMapPattern> erase_pattern;
erase_pattern.instantiate();
erase_pattern->set_cell(Vector2i(0, 0), TileSet::INVALID_SOURCE, TileSetSource::INVALID_ATLAS_COORDS, TileSetSource::INVALID_TILE_ALTERNATIVE);
- Ref<TileMapPattern> pattern = _is_erasing() ? erase_pattern : selection_pattern;
+ Ref<TileMapPattern> pattern = p_erase ? erase_pattern : selection_pattern;
Map<Vector2i, TileMapCell> output;
if (!pattern->is_empty()) {
// Paint the tiles on the tile map.
- if (!_is_erasing() && random_tile_checkbox->is_pressed()) {
+ if (!p_erase && random_tile_checkbox->is_pressed()) {
// Paint a random tile.
Vector<Vector2i> line = TileMapEditor::get_line(tile_map, tile_map->world_to_map(p_from_mouse_pos), tile_map->world_to_map(p_to_mouse_pos));
for (int i = 0; i < line.size(); i++) {
@@ -1015,7 +1013,7 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_line(Vector2 p_start_
return output;
}
-Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_rect(Vector2i p_start_cell, Vector2i p_end_cell) {
+Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_rect(Vector2i p_start_cell, Vector2i p_end_cell, bool p_erase) {
TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
if (!tile_map) {
return Map<Vector2i, TileMapCell>();
@@ -1034,7 +1032,7 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_rect(Vector2i p_start
Ref<TileMapPattern> erase_pattern;
erase_pattern.instantiate();
erase_pattern->set_cell(Vector2i(0, 0), TileSet::INVALID_SOURCE, TileSetSource::INVALID_ATLAS_COORDS, TileSetSource::INVALID_TILE_ALTERNATIVE);
- Ref<TileMapPattern> pattern = _is_erasing() ? erase_pattern : selection_pattern;
+ Ref<TileMapPattern> pattern = p_erase ? erase_pattern : selection_pattern;
Map<Vector2i, TileMapCell> err_output;
ERR_FAIL_COND_V(pattern->is_empty(), err_output);
@@ -1046,7 +1044,7 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_rect(Vector2i p_start
Map<Vector2i, TileMapCell> output;
if (!pattern->is_empty()) {
- if (!_is_erasing() && random_tile_checkbox->is_pressed()) {
+ if (!p_erase && random_tile_checkbox->is_pressed()) {
// Paint a random tile.
for (int x = 0; x < rect.size.x; x++) {
for (int y = 0; y < rect.size.y; y++) {
@@ -1074,7 +1072,7 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_rect(Vector2i p_start
return output;
}
-Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_bucket_fill(Vector2i p_coords, bool p_contiguous) {
+Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_bucket_fill(Vector2i p_coords, bool p_contiguous, bool p_erase) {
TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
if (!tile_map) {
return Map<Vector2i, TileMapCell>();
@@ -1095,14 +1093,14 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_bucket_fill(Vector2i
Ref<TileMapPattern> erase_pattern;
erase_pattern.instantiate();
erase_pattern->set_cell(Vector2i(0, 0), TileSet::INVALID_SOURCE, TileSetSource::INVALID_ATLAS_COORDS, TileSetSource::INVALID_TILE_ALTERNATIVE);
- Ref<TileMapPattern> pattern = _is_erasing() ? erase_pattern : selection_pattern;
+ Ref<TileMapPattern> pattern = p_erase ? erase_pattern : selection_pattern;
if (!pattern->is_empty()) {
- TileMapCell source = tile_map->get_cell(tile_map_layer, p_coords);
+ TileMapCell source_cell = tile_map->get_cell(tile_map_layer, p_coords);
// If we are filling empty tiles, compute the tilemap boundaries.
Rect2i boundaries;
- if (source.source_id == TileSet::INVALID_SOURCE) {
+ if (source_cell.source_id == TileSet::INVALID_SOURCE) {
boundaries = tile_map->get_used_rect();
}
@@ -1115,11 +1113,11 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_bucket_fill(Vector2i
Vector2i coords = to_check.back()->get();
to_check.pop_back();
if (!already_checked.has(coords)) {
- if (source.source_id == tile_map->get_cell_source_id(tile_map_layer, coords) &&
- source.get_atlas_coords() == tile_map->get_cell_atlas_coords(tile_map_layer, coords) &&
- source.alternative_tile == tile_map->get_cell_alternative_tile(tile_map_layer, coords) &&
- (source.source_id != TileSet::INVALID_SOURCE || boundaries.has_point(coords))) {
- if (!_is_erasing() && random_tile_checkbox->is_pressed()) {
+ if (source_cell.source_id == tile_map->get_cell_source_id(tile_map_layer, coords) &&
+ source_cell.get_atlas_coords() == tile_map->get_cell_atlas_coords(tile_map_layer, coords) &&
+ source_cell.alternative_tile == tile_map->get_cell_alternative_tile(tile_map_layer, coords) &&
+ (source_cell.source_id != TileSet::INVALID_SOURCE || boundaries.has_point(coords))) {
+ if (!p_erase && random_tile_checkbox->is_pressed()) {
// Paint a random tile.
output.insert(coords, _pick_random_tile(pattern));
} else {
@@ -1146,7 +1144,7 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_bucket_fill(Vector2i
} else {
// Replace all tiles like the source.
TypedArray<Vector2i> to_check;
- if (source.source_id == TileSet::INVALID_SOURCE) {
+ if (source_cell.source_id == TileSet::INVALID_SOURCE) {
Rect2i rect = tile_map->get_used_rect();
if (rect.has_no_area()) {
rect = Rect2i(p_coords, Vector2i(1, 1));
@@ -1161,11 +1159,11 @@ Map<Vector2i, TileMapCell> TileMapEditorTilesPlugin::_draw_bucket_fill(Vector2i
}
for (int i = 0; i < to_check.size(); i++) {
Vector2i coords = to_check[i];
- if (source.source_id == tile_map->get_cell_source_id(tile_map_layer, coords) &&
- source.get_atlas_coords() == tile_map->get_cell_atlas_coords(tile_map_layer, coords) &&
- source.alternative_tile == tile_map->get_cell_alternative_tile(tile_map_layer, coords) &&
- (source.source_id != TileSet::INVALID_SOURCE || boundaries.has_point(coords))) {
- if (!_is_erasing() && random_tile_checkbox->is_pressed()) {
+ if (source_cell.source_id == tile_map->get_cell_source_id(tile_map_layer, coords) &&
+ source_cell.get_atlas_coords() == tile_map->get_cell_atlas_coords(tile_map_layer, coords) &&
+ source_cell.alternative_tile == tile_map->get_cell_alternative_tile(tile_map_layer, coords) &&
+ (source_cell.source_id != TileSet::INVALID_SOURCE || boundaries.has_point(coords))) {
+ if (!p_erase && random_tile_checkbox->is_pressed()) {
// Paint a random tile.
output.insert(coords, _pick_random_tile(pattern));
} else {
@@ -1338,10 +1336,10 @@ void TileMapEditorTilesPlugin::_stop_dragging() {
undo_redo->commit_action(false);
} break;
case DRAG_TYPE_LINE: {
- Map<Vector2i, TileMapCell> to_draw = _draw_line(drag_start_mouse_pos, drag_start_mouse_pos, mpos);
+ Map<Vector2i, TileMapCell> to_draw = _draw_line(drag_start_mouse_pos, drag_start_mouse_pos, mpos, drag_erasing);
undo_redo->create_action(TTR("Paint tiles"));
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
- if (!_is_erasing() && E.value.source_id == TileSet::INVALID_SOURCE) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
continue;
}
undo_redo->add_do_method(tile_map, "set_cell", tile_map_layer, E.key, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
@@ -1350,10 +1348,10 @@ void TileMapEditorTilesPlugin::_stop_dragging() {
undo_redo->commit_action();
} break;
case DRAG_TYPE_RECT: {
- Map<Vector2i, TileMapCell> to_draw = _draw_rect(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(mpos));
+ Map<Vector2i, TileMapCell> to_draw = _draw_rect(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(mpos), drag_erasing);
undo_redo->create_action(TTR("Paint tiles"));
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
- if (!_is_erasing() && E.value.source_id == TileSet::INVALID_SOURCE) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
continue;
}
undo_redo->add_do_method(tile_map, "set_cell", tile_map_layer, E.key, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
@@ -1473,10 +1471,6 @@ void TileMapEditorTilesPlugin::_fix_invalid_tiles_in_tile_map_selection() {
}
}
-bool TileMapEditorTilesPlugin::_is_erasing() const {
- return erase_button->is_pressed() || rmb_erasing;
-}
-
void TileMapEditorTilesPlugin::_update_selection_pattern_from_tilemap_selection() {
TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
if (!tile_map) {
@@ -2053,10 +2047,11 @@ TileMapEditorTilesPlugin::TileMapEditorTilesPlugin() {
tools_settings->add_child(tools_settings_vsep_2);
// Continuous checkbox.
- bucket_continuous_checkbox = memnew(CheckBox);
- bucket_continuous_checkbox->set_flat(true);
- bucket_continuous_checkbox->set_text(TTR("Contiguous"));
- tools_settings->add_child(bucket_continuous_checkbox);
+ bucket_contiguous_checkbox = memnew(CheckBox);
+ bucket_contiguous_checkbox->set_flat(true);
+ bucket_contiguous_checkbox->set_text(TTR("Contiguous"));
+ bucket_contiguous_checkbox->set_pressed(true);
+ tools_settings->add_child(bucket_contiguous_checkbox);
// Random tile checkbox.
random_tile_checkbox = memnew(CheckBox);
@@ -2210,6 +2205,26 @@ void TileMapEditorTerrainsPlugin::_update_toolbar() {
tools_settings_vsep->show();
picker_button->show();
erase_button->show();
+ tools_settings_vsep_2->hide();
+ bucket_contiguous_checkbox->hide();
+ } else if (tool_buttons_group->get_pressed_button() == line_tool_button) {
+ tools_settings_vsep->show();
+ picker_button->show();
+ erase_button->show();
+ tools_settings_vsep_2->hide();
+ bucket_contiguous_checkbox->hide();
+ } else if (tool_buttons_group->get_pressed_button() == rect_tool_button) {
+ tools_settings_vsep->show();
+ picker_button->show();
+ erase_button->show();
+ tools_settings_vsep_2->hide();
+ bucket_contiguous_checkbox->hide();
+ } else if (tool_buttons_group->get_pressed_button() == bucket_tool_button) {
+ tools_settings_vsep->show();
+ picker_button->show();
+ erase_button->show();
+ tools_settings_vsep_2->show();
+ bucket_contiguous_checkbox->show();
}
}
@@ -2321,23 +2336,224 @@ Map<Vector2i, TileMapCell> TileMapEditorTerrainsPlugin::_draw_terrains(const Map
// Actually paint the tiles.
for (const KeyValue<Vector2i, TileSet::TerrainsPattern> &E_to_paint : p_to_paint) {
- output[E_to_paint.key] = tile_set->get_random_tile_from_pattern(p_terrain_set, E_to_paint.value);
+ output[E_to_paint.key] = tile_set->get_random_tile_from_terrains_pattern(p_terrain_set, E_to_paint.value);
}
// Use the WFC run for the output.
for (const KeyValue<Vector2i, TileSet::TerrainsPattern> &E : wfc_output) {
- output[E.key] = tile_set->get_random_tile_from_pattern(p_terrain_set, E.value);
+ output[E.key] = tile_set->get_random_tile_from_terrains_pattern(p_terrain_set, E.value);
+ }
+
+ return output;
+}
+
+Map<Vector2i, TileMapCell> TileMapEditorTerrainsPlugin::_draw_line(Vector2i p_start_cell, Vector2i p_end_cell, bool p_erase) {
+ TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
+ if (!tile_map) {
+ return Map<Vector2i, TileMapCell>();
+ }
+
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return Map<Vector2i, TileMapCell>();
+ }
+
+ TileSet::TerrainsPattern terrains_pattern;
+ if (p_erase) {
+ terrains_pattern = TileSet::TerrainsPattern(*tile_set, selected_terrain_set);
+ } else {
+ terrains_pattern = selected_terrains_pattern;
+ }
+
+ Vector<Vector2i> line = TileMapEditor::get_line(tile_map, p_start_cell, p_end_cell);
+ Map<Vector2i, TileSet::TerrainsPattern> to_draw;
+ for (int i = 0; i < line.size(); i++) {
+ to_draw[line[i]] = terrains_pattern;
+ }
+ return _draw_terrains(to_draw, selected_terrain_set);
+}
+
+Map<Vector2i, TileMapCell> TileMapEditorTerrainsPlugin::_draw_rect(Vector2i p_start_cell, Vector2i p_end_cell, bool p_erase) {
+ TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
+ if (!tile_map) {
+ return Map<Vector2i, TileMapCell>();
+ }
+
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return Map<Vector2i, TileMapCell>();
+ }
+
+ TileSet::TerrainsPattern terrains_pattern;
+ if (p_erase) {
+ terrains_pattern = TileSet::TerrainsPattern(*tile_set, selected_terrain_set);
+ } else {
+ terrains_pattern = selected_terrains_pattern;
+ }
+
+ Rect2i rect;
+ rect.set_position(p_start_cell);
+ rect.set_end(p_end_cell);
+ rect = rect.abs();
+
+ Map<Vector2i, TileSet::TerrainsPattern> to_draw;
+ for (int x = rect.position.x; x <= rect.get_end().x; x++) {
+ for (int y = rect.position.y; y <= rect.get_end().y; y++) {
+ to_draw[Vector2i(x, y)] = terrains_pattern;
+ }
}
+ return _draw_terrains(to_draw, selected_terrain_set);
+}
+
+Set<Vector2i> TileMapEditorTerrainsPlugin::_get_cells_for_bucket_fill(Vector2i p_coords, bool p_contiguous) {
+ TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
+ if (!tile_map) {
+ return Set<Vector2i>();
+ }
+
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return Set<Vector2i>();
+ }
+
+ TileMapCell source_cell = tile_map->get_cell(tile_map_layer, p_coords);
+
+ TileSet::TerrainsPattern source_pattern(*tile_set, selected_terrain_set);
+ if (source_cell.source_id != TileSet::INVALID_SOURCE) {
+ TileData *tile_data = nullptr;
+ Ref<TileSetSource> source = tile_set->get_source(source_cell.source_id);
+ Ref<TileSetAtlasSource> atlas_source = source;
+ if (atlas_source.is_valid()) {
+ tile_data = Object::cast_to<TileData>(atlas_source->get_tile_data(source_cell.get_atlas_coords(), source_cell.alternative_tile));
+ }
+ if (!tile_data) {
+ return Set<Vector2i>();
+ }
+ source_pattern = tile_data->get_terrains_pattern();
+ }
+
+ // If we are filling empty tiles, compute the tilemap boundaries.
+ Rect2i boundaries;
+ if (source_cell.source_id == TileSet::INVALID_SOURCE) {
+ boundaries = tile_map->get_used_rect();
+ }
+
+ Set<Vector2i> output;
+ if (p_contiguous) {
+ // Replace continuous tiles like the source.
+ Set<Vector2i> already_checked;
+ List<Vector2i> to_check;
+ to_check.push_back(p_coords);
+ while (!to_check.is_empty()) {
+ Vector2i coords = to_check.back()->get();
+ to_check.pop_back();
+ if (!already_checked.has(coords)) {
+ // Get the candidate cell pattern.
+ TileSet::TerrainsPattern candidate_pattern(*tile_set, selected_terrain_set);
+ if (tile_map->get_cell_source_id(tile_map_layer, coords) != TileSet::INVALID_SOURCE) {
+ TileData *tile_data = nullptr;
+ Ref<TileSetSource> source = tile_set->get_source(tile_map->get_cell_source_id(tile_map_layer, coords));
+ Ref<TileSetAtlasSource> atlas_source = source;
+ if (atlas_source.is_valid()) {
+ tile_data = Object::cast_to<TileData>(atlas_source->get_tile_data(tile_map->get_cell_atlas_coords(tile_map_layer, coords), tile_map->get_cell_alternative_tile(tile_map_layer, coords)));
+ }
+ if (tile_data) {
+ candidate_pattern = tile_data->get_terrains_pattern();
+ }
+ }
+
+ // Draw.
+ if (candidate_pattern == source_pattern && (!source_pattern.is_erase_pattern() || boundaries.has_point(coords))) {
+ output.insert(coords);
+
+ // Get surrounding tiles (handles different tile shapes).
+ TypedArray<Vector2i> around = tile_map->get_surrounding_tiles(coords);
+ for (int i = 0; i < around.size(); i++) {
+ to_check.push_back(around[i]);
+ }
+ }
+ already_checked.insert(coords);
+ }
+ }
+ } else {
+ // Replace all tiles like the source.
+ TypedArray<Vector2i> to_check;
+ if (source_cell.source_id == TileSet::INVALID_SOURCE) {
+ Rect2i rect = tile_map->get_used_rect();
+ if (rect.has_no_area()) {
+ rect = Rect2i(p_coords, Vector2i(1, 1));
+ }
+ for (int x = boundaries.position.x; x < boundaries.get_end().x; x++) {
+ for (int y = boundaries.position.y; y < boundaries.get_end().y; y++) {
+ to_check.append(Vector2i(x, y));
+ }
+ }
+ } else {
+ to_check = tile_map->get_used_cells(tile_map_layer);
+ }
+ for (int i = 0; i < to_check.size(); i++) {
+ Vector2i coords = to_check[i];
+ // Get the candidate cell pattern.
+ TileSet::TerrainsPattern candidate_pattern;
+ if (tile_map->get_cell_source_id(tile_map_layer, coords) != TileSet::INVALID_SOURCE) {
+ TileData *tile_data = nullptr;
+ Ref<TileSetSource> source = tile_set->get_source(tile_map->get_cell_source_id(tile_map_layer, coords));
+ Ref<TileSetAtlasSource> atlas_source = source;
+ if (atlas_source.is_valid()) {
+ tile_data = Object::cast_to<TileData>(atlas_source->get_tile_data(tile_map->get_cell_atlas_coords(tile_map_layer, coords), tile_map->get_cell_alternative_tile(tile_map_layer, coords)));
+ }
+ if (tile_data) {
+ candidate_pattern = tile_data->get_terrains_pattern();
+ }
+ }
+ // Draw.
+ if (candidate_pattern == source_pattern && (!source_pattern.is_erase_pattern() || boundaries.has_point(coords))) {
+ output.insert(coords);
+ }
+ }
+ }
return output;
}
+Map<Vector2i, TileMapCell> TileMapEditorTerrainsPlugin::_draw_bucket_fill(Vector2i p_coords, bool p_contiguous, bool p_erase) {
+ TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
+ if (!tile_map) {
+ return Map<Vector2i, TileMapCell>();
+ }
+
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return Map<Vector2i, TileMapCell>();
+ }
+
+ TileSet::TerrainsPattern terrains_pattern;
+ if (p_erase) {
+ terrains_pattern = TileSet::TerrainsPattern(*tile_set, selected_terrain_set);
+ } else {
+ terrains_pattern = selected_terrains_pattern;
+ }
+
+ Set<Vector2i> cells_to_draw = _get_cells_for_bucket_fill(p_coords, p_contiguous);
+ Map<Vector2i, TileSet::TerrainsPattern> to_draw;
+ for (const Vector2i &coords : cells_to_draw) {
+ to_draw[coords] = terrains_pattern;
+ }
+
+ return _draw_terrains(to_draw, selected_terrain_set);
+}
+
void TileMapEditorTerrainsPlugin::_stop_dragging() {
TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
if (!tile_map) {
return;
}
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return;
+ }
+
Transform2D xform = CanvasItemEditor::get_singleton()->get_canvas_transform() * tile_map->get_global_transform();
Vector2 mpos = xform.affine_inverse().xform(CanvasItemEditor::get_singleton()->get_viewport_control()->get_local_mouse_position());
@@ -2345,12 +2561,6 @@ void TileMapEditorTerrainsPlugin::_stop_dragging() {
case DRAG_TYPE_PICK: {
Vector2i coords = tile_map->world_to_map(mpos);
TileMapCell cell = tile_map->get_cell(tile_map_layer, coords);
-
- Ref<TileSet> tile_set = tile_map->get_tileset();
- if (!tile_set.is_valid()) {
- return;
- }
-
TileData *tile_data = nullptr;
Ref<TileSetSource> source = tile_set->get_source(cell.source_id);
@@ -2360,17 +2570,19 @@ void TileMapEditorTerrainsPlugin::_stop_dragging() {
}
if (tile_data) {
- Array terrains_pattern = tile_data->get_terrains_pattern();
+ TileSet::TerrainsPattern terrains_pattern = tile_data->get_terrains_pattern();
// Find the tree item for the right terrain set.
bool need_tree_item_switch = true;
TreeItem *tree_item = terrains_tree->get_selected();
+ int new_terrain_set = -1;
if (tree_item) {
Dictionary metadata_dict = tree_item->get_metadata(0);
if (metadata_dict.has("terrain_set") && metadata_dict.has("terrain_id")) {
int terrain_set = metadata_dict["terrain_set"];
int terrain_id = metadata_dict["terrain_id"];
if (per_terrain_terrains_patterns[terrain_set][terrain_id].has(terrains_pattern)) {
+ new_terrain_set = terrain_set;
need_tree_item_switch = false;
}
}
@@ -2384,6 +2596,7 @@ void TileMapEditorTerrainsPlugin::_stop_dragging() {
int terrain_id = metadata_dict["terrain_id"];
if (per_terrain_terrains_patterns[terrain_set][terrain_id].has(terrains_pattern)) {
// Found
+ new_terrain_set = terrain_set;
tree_item->select(0);
_update_tiles_list();
break;
@@ -2396,15 +2609,9 @@ void TileMapEditorTerrainsPlugin::_stop_dragging() {
if (tree_item) {
for (int i = 0; i < terrains_tile_list->get_item_count(); i++) {
Dictionary metadata_dict = terrains_tile_list->get_item_metadata(i);
- TileSet::TerrainsPattern in_meta_terrains_pattern = metadata_dict["terrains_pattern"];
- bool equals = true;
- for (int j = 0; j < terrains_pattern.size(); j++) {
- if (terrains_pattern[j] != in_meta_terrains_pattern[j]) {
- equals = false;
- break;
- }
- }
- if (equals) {
+ TileSet::TerrainsPattern in_meta_terrains_pattern(*tile_set, new_terrain_set);
+ in_meta_terrains_pattern.set_terrains_from_array(metadata_dict["terrains_pattern"]);
+ if (in_meta_terrains_pattern == terrains_pattern) {
terrains_tile_list->select(i);
break;
}
@@ -2423,12 +2630,82 @@ void TileMapEditorTerrainsPlugin::_stop_dragging() {
}
undo_redo->commit_action(false);
} break;
+ case DRAG_TYPE_LINE: {
+ Map<Vector2i, TileMapCell> to_draw = _draw_line(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(mpos), drag_erasing);
+ undo_redo->create_action(TTR("Paint terrain"));
+ for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
+ continue;
+ }
+ undo_redo->add_do_method(tile_map, "set_cell", tile_map_layer, E.key, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
+ undo_redo->add_undo_method(tile_map, "set_cell", tile_map_layer, E.key, tile_map->get_cell_source_id(tile_map_layer, E.key), tile_map->get_cell_atlas_coords(tile_map_layer, E.key), tile_map->get_cell_alternative_tile(tile_map_layer, E.key));
+ }
+ undo_redo->commit_action();
+ } break;
+ case DRAG_TYPE_RECT: {
+ Map<Vector2i, TileMapCell> to_draw = _draw_rect(tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(mpos), drag_erasing);
+ undo_redo->create_action(TTR("Paint terrain"));
+ for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
+ continue;
+ }
+ undo_redo->add_do_method(tile_map, "set_cell", tile_map_layer, E.key, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
+ undo_redo->add_undo_method(tile_map, "set_cell", tile_map_layer, E.key, tile_map->get_cell_source_id(tile_map_layer, E.key), tile_map->get_cell_atlas_coords(tile_map_layer, E.key), tile_map->get_cell_alternative_tile(tile_map_layer, E.key));
+ }
+ undo_redo->commit_action();
+ } break;
+ case DRAG_TYPE_BUCKET: {
+ undo_redo->create_action(TTR("Paint terrain"));
+ for (const KeyValue<Vector2i, TileMapCell> &E : drag_modified) {
+ undo_redo->add_do_method(tile_map, "set_cell", tile_map_layer, E.key, tile_map->get_cell_source_id(tile_map_layer, E.key), tile_map->get_cell_atlas_coords(tile_map_layer, E.key), tile_map->get_cell_alternative_tile(tile_map_layer, E.key));
+ undo_redo->add_undo_method(tile_map, "set_cell", tile_map_layer, E.key, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
+ }
+ undo_redo->commit_action(false);
+ } break;
+
default:
break;
}
drag_type = DRAG_TYPE_NONE;
}
+void TileMapEditorTerrainsPlugin::_mouse_exited_viewport() {
+ has_mouse = false;
+ CanvasItemEditor::get_singleton()->update_viewport();
+}
+
+void TileMapEditorTerrainsPlugin::_update_selection() {
+ TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
+ if (!tile_map) {
+ return;
+ }
+
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return;
+ }
+
+ // Get the selected terrain.
+ selected_terrains_pattern = TileSet::TerrainsPattern();
+ selected_terrain_set = -1;
+
+ TreeItem *selected_tree_item = terrains_tree->get_selected();
+ if (selected_tree_item && selected_tree_item->get_metadata(0)) {
+ Dictionary metadata_dict = selected_tree_item->get_metadata(0);
+ // Selected terrain
+ selected_terrain_set = metadata_dict["terrain_set"];
+
+ // Selected tile
+ if (erase_button->is_pressed()) {
+ selected_terrains_pattern = TileSet::TerrainsPattern(*tile_set, selected_terrain_set);
+ } else if (terrains_tile_list->is_anything_selected()) {
+ metadata_dict = terrains_tile_list->get_item_metadata(terrains_tile_list->get_selected_items()[0]);
+ selected_terrains_pattern = TileSet::TerrainsPattern(*tile_set, selected_terrain_set);
+ selected_terrains_pattern.set_terrains_from_array(metadata_dict["terrains_pattern"]);
+ }
+ }
+}
+
bool TileMapEditorTerrainsPlugin::forward_canvas_gui_input(const Ref<InputEvent> &p_event) {
if (!main_vbox_container->is_visible_in_tree()) {
// If the bottom editor is not visible, we ignore inputs.
@@ -2454,46 +2731,19 @@ bool TileMapEditorTerrainsPlugin::forward_canvas_gui_input(const Ref<InputEvent>
}
ERR_FAIL_COND_V(tile_map_layer >= tile_map->get_layers_count(), false);
- // Get the selected terrain.
- TileSet::TerrainsPattern selected_terrains_pattern;
- int selected_terrain_set = -1;
-
- TreeItem *selected_tree_item = terrains_tree->get_selected();
- if (selected_tree_item && selected_tree_item->get_metadata(0)) {
- Dictionary metadata_dict = selected_tree_item->get_metadata(0);
- // Selected terrain
- selected_terrain_set = metadata_dict["terrain_set"];
-
- // Selected tile
- if (erase_button->is_pressed()) {
- selected_terrains_pattern.clear();
- for (uint32_t i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
- TileSet::CellNeighbor side = TileSet::CellNeighbor(i);
- if (tile_set->is_valid_peering_bit_terrain(selected_terrain_set, side)) {
- selected_terrains_pattern.push_back(-1);
- }
- }
- } else if (terrains_tile_list->is_anything_selected()) {
- metadata_dict = terrains_tile_list->get_item_metadata(terrains_tile_list->get_selected_items()[0]);
- selected_terrains_pattern = metadata_dict["terrains_pattern"];
- }
- }
+ _update_selection();
Ref<InputEventMouseMotion> mm = p_event;
if (mm.is_valid()) {
+ has_mouse = true;
Transform2D xform = CanvasItemEditor::get_singleton()->get_canvas_transform() * tile_map->get_global_transform();
Vector2 mpos = xform.affine_inverse().xform(mm->get_position());
switch (drag_type) {
case DRAG_TYPE_PAINT: {
if (selected_terrain_set >= 0) {
- Vector<Vector2i> line = TileMapEditor::get_line(tile_map, tile_map->world_to_map(drag_last_mouse_pos), tile_map->world_to_map(mpos));
- Map<Vector2i, TileSet::TerrainsPattern> to_draw;
- for (int i = 0; i < line.size(); i++) {
- to_draw[line[i]] = selected_terrains_pattern;
- }
- Map<Vector2i, TileMapCell> modified = _draw_terrains(to_draw, selected_terrain_set);
- for (const KeyValue<Vector2i, TileMapCell> &E : modified) {
+ Map<Vector2i, TileMapCell> to_draw = _draw_line(tile_map->world_to_map(drag_last_mouse_pos), tile_map->world_to_map(mpos), drag_erasing);
+ for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
if (!drag_modified.has(E.key)) {
drag_modified[E.key] = tile_map->get_cell(tile_map_layer, E.key);
}
@@ -2512,35 +2762,79 @@ bool TileMapEditorTerrainsPlugin::forward_canvas_gui_input(const Ref<InputEvent>
Ref<InputEventMouseButton> mb = p_event;
if (mb.is_valid()) {
+ has_mouse = true;
Transform2D xform = CanvasItemEditor::get_singleton()->get_canvas_transform() * tile_map->get_global_transform();
Vector2 mpos = xform.affine_inverse().xform(mb->get_position());
- if (mb->get_button_index() == MOUSE_BUTTON_LEFT) {
+ if (mb->get_button_index() == MOUSE_BUTTON_LEFT || mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
if (mb->is_pressed()) {
// Pressed
+ if (erase_button->is_pressed() || mb->get_button_index() == MOUSE_BUTTON_RIGHT) {
+ drag_erasing = true;
+ }
+
if (picker_button->is_pressed()) {
drag_type = DRAG_TYPE_PICK;
} else {
// Paint otherwise.
- if (selected_terrain_set >= 0 && !selected_terrains_pattern.is_empty() && tool_buttons_group->get_pressed_button() == paint_tool_button) {
+ if (tool_buttons_group->get_pressed_button() == paint_tool_button && !Input::get_singleton()->is_key_pressed(KEY_CTRL) && !Input::get_singleton()->is_key_pressed(KEY_SHIFT)) {
+ if (selected_terrain_set < 0 || !selected_terrains_pattern.is_valid()) {
+ return true;
+ }
+
drag_type = DRAG_TYPE_PAINT;
drag_start_mouse_pos = mpos;
drag_modified.clear();
-
- Map<Vector2i, TileSet::TerrainsPattern> terrains_to_draw;
- terrains_to_draw[tile_map->world_to_map(mpos)] = selected_terrains_pattern;
-
- Map<Vector2i, TileMapCell> to_draw = _draw_terrains(terrains_to_draw, selected_terrain_set);
+ Vector2i cell = tile_map->world_to_map(mpos);
+ Map<Vector2i, TileMapCell> to_draw = _draw_line(cell, cell, drag_erasing);
for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
drag_modified[E.key] = tile_map->get_cell(tile_map_layer, E.key);
tile_map->set_cell(tile_map_layer, E.key, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
}
+ } else if (tool_buttons_group->get_pressed_button() == line_tool_button || (tool_buttons_group->get_pressed_button() == paint_tool_button && Input::get_singleton()->is_key_pressed(KEY_SHIFT) && !Input::get_singleton()->is_key_pressed(KEY_CTRL))) {
+ if (selected_terrain_set < 0 || !selected_terrains_pattern.is_valid()) {
+ return true;
+ }
+ drag_type = DRAG_TYPE_LINE;
+ drag_start_mouse_pos = mpos;
+ drag_modified.clear();
+ } else if (tool_buttons_group->get_pressed_button() == rect_tool_button || (tool_buttons_group->get_pressed_button() == paint_tool_button && Input::get_singleton()->is_key_pressed(KEY_SHIFT) && Input::get_singleton()->is_key_pressed(KEY_CTRL))) {
+ if (selected_terrain_set < 0 || !selected_terrains_pattern.is_valid()) {
+ return true;
+ }
+ drag_type = DRAG_TYPE_RECT;
+ drag_start_mouse_pos = mpos;
+ drag_modified.clear();
+ } else if (tool_buttons_group->get_pressed_button() == bucket_tool_button) {
+ if (selected_terrain_set < 0 || !selected_terrains_pattern.is_valid()) {
+ return true;
+ }
+ drag_type = DRAG_TYPE_BUCKET;
+ drag_start_mouse_pos = mpos;
+ drag_modified.clear();
+ Vector<Vector2i> line = TileMapEditor::get_line(tile_map, tile_map->world_to_map(drag_last_mouse_pos), tile_map->world_to_map(mpos));
+ for (int i = 0; i < line.size(); i++) {
+ if (!drag_modified.has(line[i])) {
+ Map<Vector2i, TileMapCell> to_draw = _draw_bucket_fill(line[i], bucket_contiguous_checkbox->is_pressed(), drag_erasing);
+ for (const KeyValue<Vector2i, TileMapCell> &E : to_draw) {
+ if (!drag_erasing && E.value.source_id == TileSet::INVALID_SOURCE) {
+ continue;
+ }
+ Vector2i coords = E.key;
+ if (!drag_modified.has(coords)) {
+ drag_modified.insert(coords, tile_map->get_cell(tile_map_layer, coords));
+ }
+ tile_map->set_cell(tile_map_layer, coords, E.value.source_id, E.value.get_atlas_coords(), E.value.alternative_tile);
+ }
+ }
+ }
}
}
} else {
// Released
_stop_dragging();
+ drag_erasing = false;
}
CanvasItemEditor::get_singleton()->update_viewport();
@@ -2553,6 +2847,135 @@ bool TileMapEditorTerrainsPlugin::forward_canvas_gui_input(const Ref<InputEvent>
return false;
}
+void TileMapEditorTerrainsPlugin::forward_canvas_draw_over_viewport(Control *p_overlay) {
+ TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
+ if (!tile_map) {
+ return;
+ }
+
+ if (tile_map_layer < 0) {
+ return;
+ }
+ ERR_FAIL_INDEX(tile_map_layer, tile_map->get_layers_count());
+
+ Ref<TileSet> tile_set = tile_map->get_tileset();
+ if (!tile_set.is_valid()) {
+ return;
+ }
+
+ if (!tile_map->is_visible_in_tree()) {
+ return;
+ }
+
+ Transform2D xform = CanvasItemEditor::get_singleton()->get_canvas_transform() * tile_map->get_global_transform();
+ Vector2i tile_shape_size = tile_set->get_tile_size();
+
+ // Handle the preview of the tiles to be placed.
+ if (main_vbox_container->is_visible_in_tree() && has_mouse) { // Only if the tilemap editor is opened and the viewport is hovered.
+ Set<Vector2i> preview;
+ Rect2i drawn_grid_rect;
+
+ if (drag_type == DRAG_TYPE_PICK) {
+ // Draw the area being picked.
+ Vector2i coords = tile_map->world_to_map(drag_last_mouse_pos);
+ if (tile_map->get_cell_source_id(tile_map_layer, coords) != TileSet::INVALID_SOURCE) {
+ Transform2D tile_xform;
+ tile_xform.set_origin(tile_map->map_to_world(coords));
+ tile_xform.set_scale(tile_shape_size);
+ tile_set->draw_tile_shape(p_overlay, xform * tile_xform, Color(1.0, 1.0, 1.0), false);
+ }
+ } else if (!picker_button->is_pressed() && !(drag_type == DRAG_TYPE_NONE && Input::get_singleton()->is_key_pressed(KEY_CTRL) && !Input::get_singleton()->is_key_pressed(KEY_SHIFT))) {
+ bool expand_grid = false;
+ if (tool_buttons_group->get_pressed_button() == paint_tool_button && drag_type == DRAG_TYPE_NONE) {
+ // Preview for a single tile.
+ preview.insert(tile_map->world_to_map(drag_last_mouse_pos));
+ expand_grid = true;
+ } else if (tool_buttons_group->get_pressed_button() == line_tool_button || drag_type == DRAG_TYPE_LINE) {
+ if (drag_type == DRAG_TYPE_NONE) {
+ // Preview for a single tile.
+ preview.insert(tile_map->world_to_map(drag_last_mouse_pos));
+ } else if (drag_type == DRAG_TYPE_LINE) {
+ // Preview for a line.
+ Vector<Vector2i> line = TileMapEditor::get_line(tile_map, tile_map->world_to_map(drag_start_mouse_pos), tile_map->world_to_map(drag_last_mouse_pos));
+ for (int i = 0; i < line.size(); i++) {
+ preview.insert(line[i]);
+ }
+ expand_grid = true;
+ }
+ } else if (drag_type == DRAG_TYPE_RECT) {
+ // Preview for a rect.
+ Rect2i rect;
+ rect.set_position(tile_map->world_to_map(drag_start_mouse_pos));
+ rect.set_end(tile_map->world_to_map(drag_last_mouse_pos));
+ rect = rect.abs();
+
+ Map<Vector2i, TileSet::TerrainsPattern> to_draw;
+ for (int x = rect.position.x; x <= rect.get_end().x; x++) {
+ for (int y = rect.position.y; y <= rect.get_end().y; y++) {
+ preview.insert(Vector2i(x, y));
+ }
+ }
+ expand_grid = true;
+ } else if (tool_buttons_group->get_pressed_button() == bucket_tool_button && drag_type == DRAG_TYPE_NONE) {
+ // Preview for a fill.
+ preview = _get_cells_for_bucket_fill(tile_map->world_to_map(drag_last_mouse_pos), bucket_contiguous_checkbox->is_pressed());
+ }
+
+ // Expand the grid if needed
+ if (expand_grid && !preview.is_empty()) {
+ drawn_grid_rect = Rect2i(preview.front()->get(), Vector2i(1, 1));
+ for (const Vector2i &E : preview) {
+ drawn_grid_rect.expand_to(E);
+ }
+ }
+ }
+
+ if (!preview.is_empty()) {
+ const int fading = 5;
+
+ // Draw the lines of the grid behind the preview.
+ bool display_grid = EditorSettings::get_singleton()->get("editors/tiles_editor/display_grid");
+ if (display_grid) {
+ Color grid_color = EditorSettings::get_singleton()->get("editors/tiles_editor/grid_color");
+ if (drawn_grid_rect.size.x > 0 && drawn_grid_rect.size.y > 0) {
+ drawn_grid_rect = drawn_grid_rect.grow(fading);
+ for (int x = drawn_grid_rect.position.x; x < (drawn_grid_rect.position.x + drawn_grid_rect.size.x); x++) {
+ for (int y = drawn_grid_rect.position.y; y < (drawn_grid_rect.position.y + drawn_grid_rect.size.y); y++) {
+ Vector2i pos_in_rect = Vector2i(x, y) - drawn_grid_rect.position;
+
+ // Fade out the border of the grid.
+ float left_opacity = CLAMP(Math::inverse_lerp(0.0f, (float)fading, (float)pos_in_rect.x), 0.0f, 1.0f);
+ float right_opacity = CLAMP(Math::inverse_lerp((float)drawn_grid_rect.size.x, (float)(drawn_grid_rect.size.x - fading), (float)pos_in_rect.x), 0.0f, 1.0f);
+ float top_opacity = CLAMP(Math::inverse_lerp(0.0f, (float)fading, (float)pos_in_rect.y), 0.0f, 1.0f);
+ float bottom_opacity = CLAMP(Math::inverse_lerp((float)drawn_grid_rect.size.y, (float)(drawn_grid_rect.size.y - fading), (float)pos_in_rect.y), 0.0f, 1.0f);
+ float opacity = CLAMP(MIN(left_opacity, MIN(right_opacity, MIN(top_opacity, bottom_opacity))) + 0.1, 0.0f, 1.0f);
+
+ Transform2D tile_xform;
+ tile_xform.set_origin(tile_map->map_to_world(Vector2(x, y)));
+ tile_xform.set_scale(tile_shape_size);
+ Color color = grid_color;
+ color.a = color.a * opacity;
+ tile_set->draw_tile_shape(p_overlay, xform * tile_xform, color, false);
+ }
+ }
+ }
+ }
+
+ // Draw the preview.
+ for (const Vector2i &E : preview) {
+ Transform2D tile_xform;
+ tile_xform.set_origin(tile_map->map_to_world(E));
+ tile_xform.set_scale(tile_set->get_tile_size());
+ if (drag_erasing || erase_button->is_pressed()) {
+ tile_set->draw_tile_shape(p_overlay, xform * tile_xform, Color(0.0, 0.0, 0.0, 0.5), true);
+ } else {
+ tile_set->draw_tile_shape(p_overlay, xform * tile_xform, Color(1.0, 1.0, 1.0, 0.5), true);
+ }
+ }
+ }
+ }
+}
+
void TileMapEditorTerrainsPlugin::_update_terrains_cache() {
TileMap *tile_map = Object::cast_to<TileMap>(ObjectDB::get_instance(tile_map_id));
if (!tile_map) {
@@ -2595,12 +3018,14 @@ void TileMapEditorTerrainsPlugin::_update_terrains_cache() {
cell.alternative_tile = alternative_id;
TileSet::TerrainsPattern terrains_pattern = tile_data->get_terrains_pattern();
-
// Terrain bits.
- for (int i = 0; i < terrains_pattern.size(); i++) {
- int terrain = terrains_pattern[i];
- if (terrain >= 0 && terrain < (int)per_terrain_terrains_patterns[terrain_set].size()) {
- per_terrain_terrains_patterns[terrain_set][terrain].insert(terrains_pattern);
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ TileSet::CellNeighbor bit = TileSet::CellNeighbor(i);
+ if (tile_set->is_valid_peering_bit_terrain(terrain_set, bit)) {
+ int terrain = terrains_pattern.get_terrain(bit);
+ if (terrain >= 0 && terrain < (int)per_terrain_terrains_patterns[terrain_set].size()) {
+ per_terrain_terrains_patterns[terrain_set][terrain].insert(terrains_pattern);
+ }
}
}
}
@@ -2686,8 +3111,9 @@ void TileMapEditorTerrainsPlugin::_update_tiles_list() {
// Count the number of matching sides/terrains.
int count = 0;
- for (int i = 0; i < E->get().size(); i++) {
- if (int(E->get()[i]) == selected_terrain_id) {
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ TileSet::CellNeighbor bit = TileSet::CellNeighbor(i);
+ if (tile_set->is_valid_peering_bit_terrain(selected_terrain_set, bit) && E->get().get_terrain(bit) == selected_terrain_id) {
count++;
}
}
@@ -2733,7 +3159,7 @@ void TileMapEditorTerrainsPlugin::_update_tiles_list() {
terrains_tile_list->set_item_icon_region(item_index, region);
terrains_tile_list->set_item_icon_transposed(item_index, transpose);
Dictionary list_metadata_dict;
- list_metadata_dict["terrains_pattern"] = terrains_pattern;
+ list_metadata_dict["terrains_pattern"] = terrains_pattern.get_terrains_as_array();
terrains_tile_list->set_item_metadata(item_index, list_metadata_dict);
}
}
@@ -2745,6 +3171,10 @@ void TileMapEditorTerrainsPlugin::_update_tiles_list() {
void TileMapEditorTerrainsPlugin::_update_theme() {
paint_tool_button->set_icon(main_vbox_container->get_theme_icon(SNAME("Edit"), SNAME("EditorIcons")));
+ line_tool_button->set_icon(main_vbox_container->get_theme_icon(SNAME("CurveLinear"), SNAME("EditorIcons")));
+ rect_tool_button->set_icon(main_vbox_container->get_theme_icon(SNAME("Rectangle"), SNAME("EditorIcons")));
+ bucket_tool_button->set_icon(main_vbox_container->get_theme_icon(SNAME("Bucket"), SNAME("EditorIcons")));
+
picker_button->set_icon(main_vbox_container->get_theme_icon(SNAME("ColorPick"), SNAME("EditorIcons")));
erase_button->set_icon(main_vbox_container->get_theme_icon(SNAME("Eraser"), SNAME("EditorIcons")));
}
@@ -2804,6 +3234,30 @@ TileMapEditorTerrainsPlugin::TileMapEditorTerrainsPlugin() {
paint_tool_button->connect("pressed", callable_mp(this, &TileMapEditorTerrainsPlugin::_update_toolbar));
tilemap_tiles_tools_buttons->add_child(paint_tool_button);
+ line_tool_button = memnew(Button);
+ line_tool_button->set_flat(true);
+ line_tool_button->set_toggle_mode(true);
+ line_tool_button->set_button_group(tool_buttons_group);
+ line_tool_button->set_shortcut(ED_SHORTCUT("tiles_editor/line_tool", "Line", KEY_L));
+ line_tool_button->connect("pressed", callable_mp(this, &TileMapEditorTerrainsPlugin::_update_toolbar));
+ tilemap_tiles_tools_buttons->add_child(line_tool_button);
+
+ rect_tool_button = memnew(Button);
+ rect_tool_button->set_flat(true);
+ rect_tool_button->set_toggle_mode(true);
+ rect_tool_button->set_button_group(tool_buttons_group);
+ rect_tool_button->set_shortcut(ED_SHORTCUT("tiles_editor/rect_tool", "Rect", KEY_R));
+ rect_tool_button->connect("pressed", callable_mp(this, &TileMapEditorTerrainsPlugin::_update_toolbar));
+ tilemap_tiles_tools_buttons->add_child(rect_tool_button);
+
+ bucket_tool_button = memnew(Button);
+ bucket_tool_button->set_flat(true);
+ bucket_tool_button->set_toggle_mode(true);
+ bucket_tool_button->set_button_group(tool_buttons_group);
+ bucket_tool_button->set_shortcut(ED_SHORTCUT("tiles_editor/bucket_tool", "Bucket", KEY_B));
+ bucket_tool_button->connect("pressed", callable_mp(this, &TileMapEditorTerrainsPlugin::_update_toolbar));
+ tilemap_tiles_tools_buttons->add_child(bucket_tool_button);
+
toolbar->add_child(tilemap_tiles_tools_buttons);
// -- TileMap tool settings --
@@ -2828,6 +3282,17 @@ TileMapEditorTerrainsPlugin::TileMapEditorTerrainsPlugin() {
erase_button->set_shortcut(ED_SHORTCUT("tiles_editor/eraser", "Eraser", KEY_E));
erase_button->connect("pressed", callable_mp(CanvasItemEditor::get_singleton(), &CanvasItemEditor::update_viewport));
tools_settings->add_child(erase_button);
+
+ // Separator 2.
+ tools_settings_vsep_2 = memnew(VSeparator);
+ tools_settings->add_child(tools_settings_vsep_2);
+
+ // Continuous checkbox.
+ bucket_contiguous_checkbox = memnew(CheckBox);
+ bucket_contiguous_checkbox->set_flat(true);
+ bucket_contiguous_checkbox->set_text(TTR("Contiguous"));
+ bucket_contiguous_checkbox->set_pressed(true);
+ tools_settings->add_child(bucket_contiguous_checkbox);
}
TileMapEditorTerrainsPlugin::~TileMapEditorTerrainsPlugin() {
diff --git a/editor/plugins/tiles/tile_map_editor.h b/editor/plugins/tiles/tile_map_editor.h
index 0513a7b365..f462119727 100644
--- a/editor/plugins/tiles/tile_map_editor.h
+++ b/editor/plugins/tiles/tile_map_editor.h
@@ -75,14 +75,15 @@ private:
Button *line_tool_button;
Button *rect_tool_button;
Button *bucket_tool_button;
- Button *picker_button;
HBoxContainer *tools_settings;
+
VSeparator *tools_settings_vsep;
+ Button *picker_button;
Button *erase_button;
- CheckBox *bucket_continuous_checkbox;
VSeparator *tools_settings_vsep_2;
+ CheckBox *bucket_contiguous_checkbox;
CheckBox *random_tile_checkbox;
float scattering = 0.0;
Label *scatter_label;
@@ -108,17 +109,16 @@ private:
DRAG_TYPE_CLIPBOARD_PASTE,
};
DragType drag_type = DRAG_TYPE_NONE;
+ bool drag_erasing = false;
Vector2 drag_start_mouse_pos;
Vector2 drag_last_mouse_pos;
Map<Vector2i, TileMapCell> drag_modified;
- bool rmb_erasing = false;
TileMapCell _pick_random_tile(Ref<TileMapPattern> p_pattern);
- Map<Vector2i, TileMapCell> _draw_line(Vector2 p_start_drag_mouse_pos, Vector2 p_from_mouse_pos, Vector2 p_to_mouse_pos);
- Map<Vector2i, TileMapCell> _draw_rect(Vector2i p_start_cell, Vector2i p_end_cell);
- Map<Vector2i, TileMapCell> _draw_bucket_fill(Vector2i p_coords, bool p_contiguous);
+ Map<Vector2i, TileMapCell> _draw_line(Vector2 p_start_drag_mouse_pos, Vector2 p_from_mouse_pos, Vector2 p_to_mouse_pos, bool p_erase);
+ Map<Vector2i, TileMapCell> _draw_rect(Vector2i p_start_cell, Vector2i p_end_cell, bool p_erase);
+ Map<Vector2i, TileMapCell> _draw_bucket_fill(Vector2i p_coords, bool p_contiguous, bool p_erase);
void _stop_dragging();
- bool _is_erasing() const;
///// Selection system. /////
Set<Vector2i> tile_map_selection;
@@ -220,32 +220,53 @@ private:
Ref<ButtonGroup> tool_buttons_group;
Button *paint_tool_button;
+ Button *line_tool_button;
+ Button *rect_tool_button;
+ Button *bucket_tool_button;
HBoxContainer *tools_settings;
+
VSeparator *tools_settings_vsep;
Button *picker_button;
Button *erase_button;
+ VSeparator *tools_settings_vsep_2;
+ CheckBox *bucket_contiguous_checkbox;
void _update_toolbar();
// Main vbox.
VBoxContainer *main_vbox_container;
// TileMap editing.
+ bool has_mouse = false;
+ void _mouse_exited_viewport();
+
enum DragType {
DRAG_TYPE_NONE = 0,
DRAG_TYPE_PAINT,
+ DRAG_TYPE_LINE,
+ DRAG_TYPE_RECT,
+ DRAG_TYPE_BUCKET,
DRAG_TYPE_PICK,
};
DragType drag_type = DRAG_TYPE_NONE;
+ bool drag_erasing = false;
Vector2 drag_start_mouse_pos;
Vector2 drag_last_mouse_pos;
Map<Vector2i, TileMapCell> drag_modified;
// Painting
Map<Vector2i, TileMapCell> _draw_terrains(const Map<Vector2i, TileSet::TerrainsPattern> &p_to_paint, int p_terrain_set) const;
+ Map<Vector2i, TileMapCell> _draw_line(Vector2i p_start_cell, Vector2i p_end_cell, bool p_erase);
+ Map<Vector2i, TileMapCell> _draw_rect(Vector2i p_start_cell, Vector2i p_end_cell, bool p_erase);
+ Set<Vector2i> _get_cells_for_bucket_fill(Vector2i p_coords, bool p_contiguous);
+ Map<Vector2i, TileMapCell> _draw_bucket_fill(Vector2i p_coords, bool p_contiguous, bool p_erase);
void _stop_dragging();
+ int selected_terrain_set = -1;
+ TileSet::TerrainsPattern selected_terrains_pattern;
+ void _update_selection();
+
// Bottom panel.
Tree *terrains_tree;
ItemList *terrains_tile_list;
@@ -265,7 +286,7 @@ private:
public:
virtual Vector<TabData> get_tabs() const override;
virtual bool forward_canvas_gui_input(const Ref<InputEvent> &p_event) override;
- //virtual void forward_canvas_draw_over_viewport(Control *p_overlay) override;
+ virtual void forward_canvas_draw_over_viewport(Control *p_overlay) override;
TileMapEditorTerrainsPlugin();
~TileMapEditorTerrainsPlugin();
diff --git a/editor/plugins/tiles/tile_set_editor.cpp b/editor/plugins/tiles/tile_set_editor.cpp
index 0fbb9a98c7..915ce50836 100644
--- a/editor/plugins/tiles/tile_set_editor.cpp
+++ b/editor/plugins/tiles/tile_set_editor.cpp
@@ -41,10 +41,10 @@
TileSetEditor *TileSetEditor::singleton = nullptr;
-void TileSetEditor::drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) {
+void TileSetEditor::_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) {
ERR_FAIL_COND(!tile_set.is_valid());
- if (!can_drop_data_fw(p_point, p_data, p_from)) {
+ if (!_can_drop_data_fw(p_point, p_data, p_from)) {
return;
}
@@ -81,7 +81,7 @@ void TileSetEditor::drop_data_fw(const Point2 &p_point, const Variant &p_data, C
}
}
-bool TileSetEditor::can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const {
+bool TileSetEditor::_can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const {
ERR_FAIL_COND_V(!tile_set.is_valid(), false);
if (p_from == sources_list) {
@@ -608,8 +608,8 @@ void TileSetEditor::_undo_redo_inspector_callback(Object *p_undo_redo, Object *p
}
void TileSetEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_can_drop_data_fw"), &TileSetEditor::can_drop_data_fw);
- ClassDB::bind_method(D_METHOD("_drop_data_fw"), &TileSetEditor::drop_data_fw);
+ ClassDB::bind_method(D_METHOD("_can_drop_data_fw"), &TileSetEditor::_can_drop_data_fw);
+ ClassDB::bind_method(D_METHOD("_drop_data_fw"), &TileSetEditor::_drop_data_fw);
}
void TileSetEditor::edit(Ref<TileSet> p_tile_set) {
diff --git a/editor/plugins/tiles/tile_set_editor.h b/editor/plugins/tiles/tile_set_editor.h
index cda38760cf..58312ce3df 100644
--- a/editor/plugins/tiles/tile_set_editor.h
+++ b/editor/plugins/tiles/tile_set_editor.h
@@ -59,6 +59,9 @@ private:
UndoRedo *undo_redo = EditorNode::get_undo_redo();
+ void _drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from);
+ bool _can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const;
+
void _update_sources_list(int force_selected_id = -1);
// Sources management.
@@ -98,9 +101,6 @@ public:
void edit(Ref<TileSet> p_tile_set);
- void drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from);
- bool can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const;
-
TileSetEditor();
~TileSetEditor();
};
diff --git a/editor/plugins/tiles/tile_set_scenes_collection_source_editor.cpp b/editor/plugins/tiles/tile_set_scenes_collection_source_editor.cpp
index dc26d380b8..d687d9651d 100644
--- a/editor/plugins/tiles/tile_set_scenes_collection_source_editor.cpp
+++ b/editor/plugins/tiles/tile_set_scenes_collection_source_editor.cpp
@@ -385,8 +385,8 @@ void TileSetScenesCollectionSourceEditor::edit(Ref<TileSet> p_tile_set, TileSetS
_update_tile_inspector();
}
-void TileSetScenesCollectionSourceEditor::drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) {
- if (!can_drop_data_fw(p_point, p_data, p_from)) {
+void TileSetScenesCollectionSourceEditor::_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) {
+ if (!_can_drop_data_fw(p_point, p_data, p_from)) {
return;
}
@@ -412,7 +412,7 @@ void TileSetScenesCollectionSourceEditor::drop_data_fw(const Point2 &p_point, co
}
}
-bool TileSetScenesCollectionSourceEditor::can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const {
+bool TileSetScenesCollectionSourceEditor::_can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const {
if (p_from == scene_tiles_list) {
Dictionary d = p_data;
@@ -447,8 +447,8 @@ void TileSetScenesCollectionSourceEditor::_bind_methods() {
ADD_SIGNAL(MethodInfo("source_id_changed", PropertyInfo(Variant::INT, "source_id")));
ClassDB::bind_method(D_METHOD("_scene_thumbnail_done"), &TileSetScenesCollectionSourceEditor::_scene_thumbnail_done);
- ClassDB::bind_method(D_METHOD("can_drop_data_fw"), &TileSetScenesCollectionSourceEditor::can_drop_data_fw);
- ClassDB::bind_method(D_METHOD("drop_data_fw"), &TileSetScenesCollectionSourceEditor::drop_data_fw);
+ ClassDB::bind_method(D_METHOD("_can_drop_data_fw"), &TileSetScenesCollectionSourceEditor::_can_drop_data_fw);
+ ClassDB::bind_method(D_METHOD("_drop_data_fw"), &TileSetScenesCollectionSourceEditor::_drop_data_fw);
}
TileSetScenesCollectionSourceEditor::TileSetScenesCollectionSourceEditor() {
diff --git a/editor/plugins/tiles/tile_set_scenes_collection_source_editor.h b/editor/plugins/tiles/tile_set_scenes_collection_source_editor.h
index 3be7bee714..4e33128be5 100644
--- a/editor/plugins/tiles/tile_set_scenes_collection_source_editor.h
+++ b/editor/plugins/tiles/tile_set_scenes_collection_source_editor.h
@@ -125,14 +125,15 @@ private:
void _update_scenes_list();
void _update_action_buttons();
+ void _drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from);
+ bool _can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const;
+
protected:
void _notification(int p_what);
static void _bind_methods();
public:
void edit(Ref<TileSet> p_tile_set, TileSetScenesCollectionSource *p_tile_set_scenes_collection_source, int p_source_id);
- void drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from);
- bool can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const;
TileSetScenesCollectionSourceEditor();
~TileSetScenesCollectionSourceEditor();
};
diff --git a/editor/plugins/tiles/tiles_editor_plugin.cpp b/editor/plugins/tiles/tiles_editor_plugin.cpp
index f1918073fb..47dfc57b0f 100644
--- a/editor/plugins/tiles/tiles_editor_plugin.cpp
+++ b/editor/plugins/tiles/tiles_editor_plugin.cpp
@@ -47,8 +47,12 @@
TilesEditorPlugin *TilesEditorPlugin::singleton = nullptr;
-void TilesEditorPlugin::_pattern_preview_done(const Variant &p_udata) {
- pattern_preview_done.set();
+void TilesEditorPlugin::_preview_frame_started() {
+ RS::get_singleton()->request_frame_drawn_callback(callable_mp(const_cast<TilesEditorPlugin *>(this), &TilesEditorPlugin::_pattern_preview_done));
+}
+
+void TilesEditorPlugin::_pattern_preview_done() {
+ pattern_preview_done.post();
}
void TilesEditorPlugin::_thread_func(void *ud) {
@@ -112,12 +116,9 @@ void TilesEditorPlugin::_thread() {
// Add the viewport at the lasst moment to avoid rendering too early.
EditorNode::get_singleton()->add_child(viewport);
- pattern_preview_done.clear();
- RS::get_singleton()->request_frame_drawn_callback(const_cast<TilesEditorPlugin *>(this), "_pattern_preview_done", Variant());
+ RS::get_singleton()->connect(SNAME("frame_pre_draw"), callable_mp(const_cast<TilesEditorPlugin *>(this), &TilesEditorPlugin::_preview_frame_started), Vector<Variant>(), Object::CONNECT_ONESHOT);
- while (!pattern_preview_done.is_set()) {
- OS::get_singleton()->delay_usec(10);
- }
+ pattern_preview_done.wait();
Ref<Image> image = viewport->get_texture()->get_image();
Ref<ImageTexture> image_texture;
@@ -274,10 +275,6 @@ bool TilesEditorPlugin::handles(Object *p_object) const {
return p_object->is_class("TileMap") || p_object->is_class("TileSet");
}
-void TilesEditorPlugin::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_pattern_preview_done", "pattern"), &TilesEditorPlugin::_pattern_preview_done);
-}
-
TilesEditorPlugin::TilesEditorPlugin(EditorNode *p_node) {
set_process_internal(true);
diff --git a/editor/plugins/tiles/tiles_editor_plugin.h b/editor/plugins/tiles/tiles_editor_plugin.h
index dd52bdc31a..33493040f6 100644
--- a/editor/plugins/tiles/tiles_editor_plugin.h
+++ b/editor/plugins/tiles/tiles_editor_plugin.h
@@ -77,14 +77,14 @@ private:
Thread pattern_preview_thread;
SafeFlag pattern_thread_exit;
SafeFlag pattern_thread_exited;
- mutable SafeFlag pattern_preview_done;
- void _pattern_preview_done(const Variant &p_udata);
+ Semaphore pattern_preview_done;
+ void _preview_frame_started();
+ void _pattern_preview_done();
static void _thread_func(void *ud);
void _thread();
protected:
void _notification(int p_what);
- static void _bind_methods();
public:
_FORCE_INLINE_ static TilesEditorPlugin *get_singleton() { return singleton; }
diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp
index 9189c75162..10a9b2bb10 100644
--- a/editor/plugins/visual_shader_editor_plugin.cpp
+++ b/editor/plugins/visual_shader_editor_plugin.cpp
@@ -104,7 +104,6 @@ void VisualShaderGraphPlugin::_bind_methods() {
ClassDB::bind_method("connect_nodes", &VisualShaderGraphPlugin::connect_nodes);
ClassDB::bind_method("disconnect_nodes", &VisualShaderGraphPlugin::disconnect_nodes);
ClassDB::bind_method("set_node_position", &VisualShaderGraphPlugin::set_node_position);
- ClassDB::bind_method("set_node_size", &VisualShaderGraphPlugin::set_node_size);
ClassDB::bind_method("update_node", &VisualShaderGraphPlugin::update_node);
ClassDB::bind_method("update_node_deferred", &VisualShaderGraphPlugin::update_node_deferred);
ClassDB::bind_method("set_input_port_default_value", &VisualShaderGraphPlugin::set_input_port_default_value);
@@ -292,12 +291,6 @@ void VisualShaderGraphPlugin::set_node_position(VisualShader::Type p_type, int p
}
}
-void VisualShaderGraphPlugin::set_node_size(VisualShader::Type p_type, int p_id, const Vector2 &p_size) {
- if (visual_shader->get_shader_type() == p_type && links.has(p_id)) {
- links[p_id].graph_node->set_size(p_size);
- }
-}
-
bool VisualShaderGraphPlugin::is_preview_visible(int p_id) const {
return links[p_id].preview_visible;
}
@@ -1047,7 +1040,6 @@ void VisualShaderEditor::edit(VisualShader *p_visual_shader) {
hide();
} else {
if (changed) { // to avoid tree collapse
- _clear_buffer();
_update_options_menu();
_update_preview();
_update_graph();
@@ -2765,9 +2757,6 @@ void VisualShaderEditor::_delete_nodes(int p_type, const List<int> &p_nodes) {
undo_redo->add_undo_method(visual_shader.ptr(), "add_node", type, node, visual_shader->get_node_position(type, F), F);
undo_redo->add_undo_method(graph_plugin.ptr(), "add_node", type, F);
- undo_redo->add_do_method(this, "_clear_buffer");
- undo_redo->add_undo_method(this, "_clear_buffer");
-
// restore size, inputs and outputs if node is group
VisualShaderNodeGroupBase *group = Object::cast_to<VisualShaderNodeGroupBase>(node.ptr());
if (group) {
@@ -3103,13 +3092,15 @@ void VisualShaderEditor::_graph_gui_input(const Ref<InputEvent> &p_event) {
selected_float_constant = -1;
}
- if (to_change.is_empty() && copy_nodes_buffer.is_empty()) {
+ if (to_change.is_empty() && copy_items_buffer.is_empty()) {
_show_members_dialog(true);
} else {
+ popup_menu->set_item_disabled(NodeMenuOptions::CUT, to_change.is_empty());
popup_menu->set_item_disabled(NodeMenuOptions::COPY, to_change.is_empty());
- popup_menu->set_item_disabled(NodeMenuOptions::PASTE, copy_nodes_buffer.is_empty());
+ popup_menu->set_item_disabled(NodeMenuOptions::PASTE, copy_items_buffer.is_empty());
popup_menu->set_item_disabled(NodeMenuOptions::DELETE, to_change.is_empty());
popup_menu->set_item_disabled(NodeMenuOptions::DUPLICATE, to_change.is_empty());
+ popup_menu->set_item_disabled(NodeMenuOptions::CLEAR_COPY_BUFFER, copy_items_buffer.is_empty());
int temp = popup_menu->get_item_index(NodeMenuOptions::SEPARATOR2);
if (temp != -1) {
@@ -3329,69 +3320,88 @@ void VisualShaderEditor::_node_changed(int p_id) {
}
}
-void VisualShaderEditor::_dup_update_excluded(int p_type, Set<int> &r_excluded) {
- r_excluded.clear();
- VisualShader::Type type = (VisualShader::Type)p_type;
-
- for (int i = 0; i < graph->get_child_count(); i++) {
- GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
- if (gn) {
- int id = String(gn->get_name()).to_int();
- Ref<VisualShaderNode> node = visual_shader->get_node(type, id);
- Ref<VisualShaderNodeOutput> output = node;
- if (output.is_valid()) {
- r_excluded.insert(id);
- continue;
- }
- r_excluded.insert(id);
- }
- }
-}
-
-void VisualShaderEditor::_dup_copy_nodes(int p_type, List<int> &r_nodes, Set<int> &r_excluded) {
+void VisualShaderEditor::_dup_copy_nodes(int p_type, List<CopyItem> &r_items, List<VisualShader::Connection> &r_connections) {
VisualShader::Type type = (VisualShader::Type)p_type;
selection_center.x = 0.0f;
selection_center.y = 0.0f;
+ Set<int> nodes;
+
for (int i = 0; i < graph->get_child_count(); i++) {
GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
if (gn) {
int id = String(gn->get_name()).to_int();
+
Ref<VisualShaderNode> node = visual_shader->get_node(type, id);
Ref<VisualShaderNodeOutput> output = node;
if (output.is_valid()) { // can't duplicate output
- r_excluded.insert(id);
continue;
}
+
if (node.is_valid() && gn->is_selected()) {
Vector2 pos = visual_shader->get_node_position(type, id);
selection_center += pos;
- r_nodes.push_back(id);
+
+ CopyItem item;
+ item.id = id;
+ item.node = visual_shader->get_node(type, id)->duplicate();
+ item.position = visual_shader->get_node_position(type, id);
+
+ Ref<VisualShaderNodeResizableBase> resizable_base = node;
+ if (resizable_base.is_valid()) {
+ item.size = resizable_base->get_size();
+ }
+
+ Ref<VisualShaderNodeGroupBase> group = node;
+ if (group.is_valid()) {
+ item.group_inputs = group->get_inputs();
+ item.group_outputs = group->get_outputs();
+ }
+
+ Ref<VisualShaderNodeExpression> expression = node;
+ if (expression.is_valid()) {
+ item.expression = expression->get_expression();
+ }
+
+ r_items.push_back(item);
+
+ nodes.insert(id);
}
- r_excluded.insert(id);
}
}
- selection_center /= (float)r_nodes.size();
+ List<VisualShader::Connection> connections;
+ visual_shader->get_node_connections(type, &connections);
+
+ for (const VisualShader::Connection &E : connections) {
+ if (nodes.has(E.from_node) && nodes.has(E.to_node)) {
+ r_connections.push_back(E);
+ }
+ }
+
+ selection_center /= (float)r_items.size();
}
-void VisualShaderEditor::_dup_paste_nodes(int p_type, int p_pasted_type, List<int> &r_nodes, Set<int> &r_excluded, const Vector2 &p_offset, bool p_select) {
+void VisualShaderEditor::_dup_paste_nodes(int p_type, List<CopyItem> &r_items, const List<VisualShader::Connection> &p_connections, const Vector2 &p_offset, bool p_duplicate) {
+ if (p_duplicate) {
+ undo_redo->create_action(TTR("Duplicate VisualShader Node(s)"));
+ } else {
+ undo_redo->create_action(TTR("Paste VisualShader Node(s)"));
+ }
+
VisualShader::Type type = (VisualShader::Type)p_type;
- VisualShader::Type pasted_type = (VisualShader::Type)p_pasted_type;
int base_id = visual_shader->get_valid_node_id(type);
int id_from = base_id;
Map<int, int> connection_remap;
Set<int> unsupported_set;
+ Set<int> added_set;
- for (int &E : r_nodes) {
- connection_remap[E] = id_from;
- Ref<VisualShaderNode> node = visual_shader->get_node(pasted_type, E);
-
+ for (CopyItem &item : r_items) {
bool unsupported = false;
for (int i = 0; i < add_options.size(); i++) {
- if (add_options[i].type == node->get_class_name()) {
+ if (add_options[i].type == item.node->get_class_name()) {
if (!_is_available(add_options[i].mode)) {
unsupported = true;
}
@@ -3399,48 +3409,47 @@ void VisualShaderEditor::_dup_paste_nodes(int p_type, int p_pasted_type, List<in
}
}
if (unsupported) {
- unsupported_set.insert(E);
+ unsupported_set.insert(item.id);
continue;
}
+ connection_remap[item.id] = id_from;
+ Ref<VisualShaderNode> node = item.node->duplicate();
- Ref<VisualShaderNode> dupli = node->duplicate();
-
- undo_redo->add_do_method(visual_shader.ptr(), "add_node", type, dupli, visual_shader->get_node_position(pasted_type, E) + p_offset, id_from);
- undo_redo->add_do_method(graph_plugin.ptr(), "add_node", type, id_from);
+ Ref<VisualShaderNodeResizableBase> resizable_base = Object::cast_to<VisualShaderNodeResizableBase>(node.ptr());
+ if (resizable_base.is_valid()) {
+ undo_redo->add_do_method(node.ptr(), "set_size", item.size);
+ }
- // duplicate size, inputs and outputs if node is group
Ref<VisualShaderNodeGroupBase> group = Object::cast_to<VisualShaderNodeGroupBase>(node.ptr());
- if (!group.is_null()) {
- undo_redo->add_do_method(dupli.ptr(), "set_size", group->get_size());
- undo_redo->add_do_method(graph_plugin.ptr(), "set_node_size", type, id_from, group->get_size());
- undo_redo->add_do_method(dupli.ptr(), "set_inputs", group->get_inputs());
- undo_redo->add_do_method(dupli.ptr(), "set_outputs", group->get_outputs());
+ if (group.is_valid()) {
+ undo_redo->add_do_method(node.ptr(), "set_inputs", item.group_inputs);
+ undo_redo->add_do_method(node.ptr(), "set_outputs", item.group_outputs);
}
- // duplicate expression text if node is expression
+
Ref<VisualShaderNodeExpression> expression = Object::cast_to<VisualShaderNodeExpression>(node.ptr());
- if (!expression.is_null()) {
- undo_redo->add_do_method(dupli.ptr(), "set_expression", expression->get_expression());
+ if (expression.is_valid()) {
+ undo_redo->add_do_method(node.ptr(), "set_expression", item.expression);
}
+ undo_redo->add_do_method(visual_shader.ptr(), "add_node", type, node, item.position + p_offset, id_from);
+ undo_redo->add_do_method(graph_plugin.ptr(), "add_node", type, id_from);
+
+ added_set.insert(id_from);
id_from++;
}
- List<VisualShader::Connection> conns;
- visual_shader->get_node_connections(pasted_type, &conns);
-
- for (const VisualShader::Connection &E : conns) {
+ for (const VisualShader::Connection &E : p_connections) {
if (unsupported_set.has(E.from_node) || unsupported_set.has(E.to_node)) {
continue;
}
- if (connection_remap.has(E.from_node) && connection_remap.has(E.to_node)) {
- undo_redo->add_do_method(visual_shader.ptr(), "connect_nodes", type, connection_remap[E.from_node], E.from_port, connection_remap[E.to_node], E.to_port);
- undo_redo->add_do_method(graph_plugin.ptr(), "connect_nodes", type, connection_remap[E.from_node], E.from_port, connection_remap[E.to_node], E.to_port);
- undo_redo->add_undo_method(graph_plugin.ptr(), "disconnect_nodes", type, connection_remap[E.from_node], E.from_port, connection_remap[E.to_node], E.to_port);
- }
+
+ undo_redo->add_do_method(visual_shader.ptr(), "connect_nodes", type, connection_remap[E.from_node], E.from_port, connection_remap[E.to_node], E.to_port);
+ undo_redo->add_do_method(graph_plugin.ptr(), "connect_nodes", type, connection_remap[E.from_node], E.from_port, connection_remap[E.to_node], E.to_port);
+ undo_redo->add_undo_method(graph_plugin.ptr(), "disconnect_nodes", type, connection_remap[E.from_node], E.from_port, connection_remap[E.to_node], E.to_port);
}
id_from = base_id;
- for (int i = 0; i < r_nodes.size(); i++) {
+ for (int i = 0; i < r_items.size(); i++) {
undo_redo->add_undo_method(visual_shader.ptr(), "remove_node", type, id_from);
undo_redo->add_undo_method(graph_plugin.ptr(), "remove_node", type, id_from);
id_from++;
@@ -3448,54 +3457,61 @@ void VisualShaderEditor::_dup_paste_nodes(int p_type, int p_pasted_type, List<in
undo_redo->commit_action();
- if (p_select) {
- // reselect duplicated nodes by excluding the other ones
- for (int i = 0; i < graph->get_child_count(); i++) {
- GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
- if (gn) {
- int id = String(gn->get_name()).to_int();
- if (!r_excluded.has(id)) {
- gn->set_selected(true);
- } else {
- gn->set_selected(false);
- }
+ // reselect nodes by excluding the other ones
+ for (int i = 0; i < graph->get_child_count(); i++) {
+ GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
+ if (gn) {
+ int id = String(gn->get_name()).to_int();
+ if (added_set.has(id)) {
+ gn->set_selected(true);
+ } else {
+ gn->set_selected(false);
}
}
}
}
-void VisualShaderEditor::_clear_buffer() {
- copy_nodes_buffer.clear();
- copy_nodes_excluded_buffer.clear();
+void VisualShaderEditor::_clear_copy_buffer() {
+ copy_items_buffer.clear();
+ copy_connections_buffer.clear();
}
void VisualShaderEditor::_duplicate_nodes() {
int type = get_current_shader_type();
- List<int> nodes;
- Set<int> excluded;
+ List<CopyItem> items;
+ List<VisualShader::Connection> connections;
- _dup_copy_nodes(type, nodes, excluded);
+ _dup_copy_nodes(type, items, connections);
- if (nodes.is_empty()) {
+ if (items.is_empty()) {
return;
}
- undo_redo->create_action(TTR("Duplicate VisualShader Node(s)"));
-
- _dup_paste_nodes(type, type, nodes, excluded, Vector2(10, 10) * EDSCALE, true);
+ _dup_paste_nodes(type, items, connections, Vector2(10, 10) * EDSCALE, true);
}
-void VisualShaderEditor::_copy_nodes() {
- copy_type = get_current_shader_type();
+void VisualShaderEditor::_copy_nodes(bool p_cut) {
+ _clear_copy_buffer();
+
+ _dup_copy_nodes(get_current_shader_type(), copy_items_buffer, copy_connections_buffer);
+
+ if (p_cut) {
+ undo_redo->create_action(TTR("Cut VisualShader Node(s)"));
+
+ List<int> ids;
+ for (const CopyItem &E : copy_items_buffer) {
+ ids.push_back(E.id);
+ }
- _clear_buffer();
+ _delete_nodes(get_current_shader_type(), ids);
- _dup_copy_nodes(copy_type, copy_nodes_buffer, copy_nodes_excluded_buffer);
+ undo_redo->commit_action();
+ }
}
void VisualShaderEditor::_paste_nodes(bool p_use_custom_position, const Vector2 &p_custom_position) {
- if (copy_nodes_buffer.is_empty()) {
+ if (copy_items_buffer.is_empty()) {
return;
}
@@ -3510,11 +3526,7 @@ void VisualShaderEditor::_paste_nodes(bool p_use_custom_position, const Vector2
mpos = graph->get_local_mouse_position();
}
- undo_redo->create_action(TTR("Paste VisualShader Node(s)"));
-
- _dup_paste_nodes(type, copy_type, copy_nodes_buffer, copy_nodes_excluded_buffer, (graph->get_scroll_ofs() / scale + mpos / scale - selection_center), false);
-
- _dup_update_excluded(type, copy_nodes_excluded_buffer); // to prevent selection of previous copies at new paste
+ _dup_paste_nodes(type, copy_items_buffer, copy_connections_buffer, graph->get_scroll_ofs() / scale + mpos / scale - selection_center, false);
}
void VisualShaderEditor::_mode_selected(int p_id) {
@@ -3540,6 +3552,8 @@ void VisualShaderEditor::_mode_selected(int p_id) {
visual_shader->set_shader_type(VisualShader::Type(p_id + offset));
_update_options_menu();
_update_graph();
+
+ graph->grab_focus();
}
void VisualShaderEditor::_custom_mode_toggled(bool p_enabled) {
@@ -3742,8 +3756,11 @@ void VisualShaderEditor::_node_menu_id_pressed(int p_idx) {
case NodeMenuOptions::ADD:
_show_members_dialog(true);
break;
+ case NodeMenuOptions::CUT:
+ _copy_nodes(true);
+ break;
case NodeMenuOptions::COPY:
- _copy_nodes();
+ _copy_nodes(false);
break;
case NodeMenuOptions::PASTE:
_paste_nodes(true, menu_point);
@@ -3754,6 +3771,9 @@ void VisualShaderEditor::_node_menu_id_pressed(int p_idx) {
case NodeMenuOptions::DUPLICATE:
_duplicate_nodes();
break;
+ case NodeMenuOptions::CLEAR_COPY_BUFFER:
+ _clear_copy_buffer();
+ break;
case NodeMenuOptions::CONVERT_CONSTANTS_TO_UNIFORMS:
_convert_constants_to_uniforms(false);
break;
@@ -3968,7 +3988,7 @@ void VisualShaderEditor::_bind_methods() {
ClassDB::bind_method("_input_select_item", &VisualShaderEditor::_input_select_item);
ClassDB::bind_method("_uniform_select_item", &VisualShaderEditor::_uniform_select_item);
ClassDB::bind_method("_set_node_size", &VisualShaderEditor::_set_node_size);
- ClassDB::bind_method("_clear_buffer", &VisualShaderEditor::_clear_buffer);
+ ClassDB::bind_method("_clear_copy_buffer", &VisualShaderEditor::_clear_copy_buffer);
ClassDB::bind_method("_update_uniforms", &VisualShaderEditor::_update_uniforms);
ClassDB::bind_method("_set_mode", &VisualShaderEditor::_set_mode);
ClassDB::bind_method("_nodes_dragged", &VisualShaderEditor::_nodes_dragged);
@@ -4022,7 +4042,7 @@ VisualShaderEditor::VisualShaderEditor() {
graph->connect("node_selected", callable_mp(this, &VisualShaderEditor::_node_selected));
graph->connect("scroll_offset_changed", callable_mp(this, &VisualShaderEditor::_scroll_changed));
graph->connect("duplicate_nodes_request", callable_mp(this, &VisualShaderEditor::_duplicate_nodes));
- graph->connect("copy_nodes_request", callable_mp(this, &VisualShaderEditor::_copy_nodes));
+ graph->connect("copy_nodes_request", callable_mp(this, &VisualShaderEditor::_copy_nodes), varray(false));
graph->connect("paste_nodes_request", callable_mp(this, &VisualShaderEditor::_paste_nodes), varray(false, Point2()));
graph->connect("delete_nodes_request", callable_mp(this, &VisualShaderEditor::_delete_nodes_request));
graph->connect("gui_input", callable_mp(this, &VisualShaderEditor::_graph_gui_input));
@@ -4148,10 +4168,12 @@ VisualShaderEditor::VisualShaderEditor() {
add_child(popup_menu);
popup_menu->add_item(TTR("Add Node"), NodeMenuOptions::ADD);
popup_menu->add_separator();
+ popup_menu->add_item(TTR("Cut"), NodeMenuOptions::CUT);
popup_menu->add_item(TTR("Copy"), NodeMenuOptions::COPY);
popup_menu->add_item(TTR("Paste"), NodeMenuOptions::PASTE);
popup_menu->add_item(TTR("Delete"), NodeMenuOptions::DELETE);
popup_menu->add_item(TTR("Duplicate"), NodeMenuOptions::DUPLICATE);
+ popup_menu->add_item(TTR("Clear Copy Buffer"), NodeMenuOptions::CLEAR_COPY_BUFFER);
popup_menu->connect("id_pressed", callable_mp(this, &VisualShaderEditor::_node_menu_id_pressed));
///////////////////////////////////////
@@ -4955,7 +4977,7 @@ public:
}
}
- void setup(Ref<Resource> p_parent_resource, Vector<EditorProperty *> p_properties, const Vector<StringName> &p_names, Ref<VisualShaderNode> p_node) {
+ void setup(Ref<Resource> p_parent_resource, Vector<EditorProperty *> p_properties, const Vector<StringName> &p_names, const Map<StringName, String> &p_overrided_names, Ref<VisualShaderNode> p_node) {
parent_resource = p_parent_resource;
updating = false;
node = p_node;
@@ -4971,7 +4993,11 @@ public:
Label *prop_name = memnew(Label);
String prop_name_str = p_names[i];
- prop_name_str = prop_name_str.capitalize() + ":";
+ if (p_overrided_names.has(p_names[i])) {
+ prop_name_str = p_overrided_names[p_names[i]] + ":";
+ } else {
+ prop_name_str = prop_name_str.capitalize() + ":";
+ }
prop_name->set_text(prop_name_str);
prop_name->set_visible(false);
hbox->add_child(prop_name);
@@ -5063,7 +5089,7 @@ Control *VisualShaderNodePluginDefault::create_editor(const Ref<Resource> &p_par
properties.push_back(pinfo[i].name);
}
VisualShaderNodePluginDefaultEditor *editor = memnew(VisualShaderNodePluginDefaultEditor);
- editor->setup(p_parent_resource, editors, properties, p_node);
+ editor->setup(p_parent_resource, editors, properties, p_node->get_editable_properties_names(), p_node);
return editor;
}
diff --git a/editor/plugins/visual_shader_editor_plugin.h b/editor/plugins/visual_shader_editor_plugin.h
index 58bbcb7113..c4a392469b 100644
--- a/editor/plugins/visual_shader_editor_plugin.h
+++ b/editor/plugins/visual_shader_editor_plugin.h
@@ -111,7 +111,6 @@ public:
void disconnect_nodes(VisualShader::Type p_type, int p_from_node, int p_from_port, int p_to_node, int p_to_port);
void show_port_preview(VisualShader::Type p_type, int p_node_id, int p_port_id);
void set_node_position(VisualShader::Type p_type, int p_id, const Vector2 &p_position);
- void set_node_size(VisualShader::Type p_type, int p_id, const Vector2 &p_size);
void refresh_node_ports(VisualShader::Type p_type, int p_node);
void set_input_port_default_value(VisualShader::Type p_type, int p_node_id, int p_port_id, Variant p_value);
void update_uniform_refs();
@@ -217,10 +216,12 @@ class VisualShaderEditor : public VBoxContainer {
enum NodeMenuOptions {
ADD,
SEPARATOR, // ignore
+ CUT,
COPY,
PASTE,
DELETE,
DUPLICATE,
+ CLEAR_COPY_BUFFER,
SEPARATOR2, // ignore
FLOAT_CONSTANTS,
CONVERT_CONSTANTS_TO_UNIFORMS,
@@ -380,19 +381,27 @@ class VisualShaderEditor : public VBoxContainer {
void _port_name_focus_out(Object *line_edit, int p_node_id, int p_port_id, bool p_output);
- void _dup_copy_nodes(int p_type, List<int> &r_nodes, Set<int> &r_excluded);
- void _dup_update_excluded(int p_type, Set<int> &r_excluded);
- void _dup_paste_nodes(int p_type, int p_pasted_type, List<int> &r_nodes, Set<int> &r_excluded, const Vector2 &p_offset, bool p_select);
+ struct CopyItem {
+ int id;
+ Ref<VisualShaderNode> node;
+ Vector2 position;
+ Vector2 size;
+ String group_inputs;
+ String group_outputs;
+ String expression;
+ };
+
+ void _dup_copy_nodes(int p_type, List<CopyItem> &r_nodes, List<VisualShader::Connection> &r_connections);
+ void _dup_paste_nodes(int p_type, List<CopyItem> &r_items, const List<VisualShader::Connection> &p_connections, const Vector2 &p_offset, bool p_duplicate);
void _duplicate_nodes();
Vector2 selection_center;
- int copy_type; // shader type
- List<int> copy_nodes_buffer;
- Set<int> copy_nodes_excluded_buffer;
+ List<CopyItem> copy_items_buffer;
+ List<VisualShader::Connection> copy_connections_buffer;
- void _clear_buffer();
- void _copy_nodes();
+ void _clear_copy_buffer();
+ void _copy_nodes(bool p_cut);
void _paste_nodes(bool p_use_custom_position = false, const Vector2 &p_custom_position = Vector2());
Vector<Ref<VisualShaderNodePlugin>> plugins;
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index dc35e01a56..150dde79e5 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -475,13 +475,6 @@ private:
}
ProjectSettings::CustomMap initial_settings;
initial_settings["rendering/vulkan/rendering/back_end"] = rasterizer_button_group->get_pressed_button()->get_meta(SNAME("driver_name"));
- if (rasterizer_button_group->get_pressed_button()->get_meta("driver_name") == "Vulkan") {
- initial_settings["rendering/driver/driver_name"] = "Vulkan";
- } else {
- initial_settings["rendering/driver/driver_name"] = "OpenGL3";
- initial_settings["rendering/textures/vram_compression/import_etc2"] = false;
- initial_settings["rendering/textures/vram_compression/import_etc"] = true;
- }
initial_settings["application/config/name"] = project_name->get_text().strip_edges();
initial_settings["application/config/icon"] = "res://icon.png";
initial_settings["rendering/environment/defaults/default_environment"] = "res://default_env.tres";
@@ -1304,8 +1297,7 @@ void ProjectList::update_dock_menu() {
void ProjectList::_global_menu_new_window(const Variant &p_tag) {
List<String> args;
args.push_back("-p");
- String exec = OS::get_singleton()->get_executable_path();
- OS::get_singleton()->create_process(exec, args);
+ OS::get_singleton()->create_instance(args);
}
void ProjectList::_global_menu_open_project(const Variant &p_tag) {
@@ -1315,8 +1307,7 @@ void ProjectList::_global_menu_open_project(const Variant &p_tag) {
String conf = _projects[idx].path.plus_file("project.godot");
List<String> args;
args.push_back(conf);
- String exec = OS::get_singleton()->get_executable_path();
- OS::get_singleton()->create_process(exec, args);
+ OS::get_singleton()->create_instance(args);
}
}
@@ -2062,8 +2053,7 @@ void ProjectManager::_open_selected_projects() {
args.push_back("--single-window");
}
- String exec = OS::get_singleton()->get_executable_path();
- Error err = OS::get_singleton()->create_process(exec, args);
+ Error err = OS::get_singleton()->create_instance(args);
ERR_FAIL_COND(err);
}
@@ -2148,8 +2138,7 @@ void ProjectManager::_run_project_confirm() {
args.push_back("--disable-crash-handler");
}
- String exec = OS::get_singleton()->get_executable_path();
- Error err = OS::get_singleton()->create_process(exec, args);
+ Error err = OS::get_singleton()->create_instance(args);
ERR_FAIL_COND(err);
}
}
@@ -2278,8 +2267,7 @@ void ProjectManager::_language_selected(int p_id) {
void ProjectManager::_restart_confirm() {
List<String> args = OS::get_singleton()->get_cmdline_args();
- String exec = OS::get_singleton()->get_executable_path();
- Error err = OS::get_singleton()->create_process(exec, args);
+ Error err = OS::get_singleton()->create_instance(args);
ERR_FAIL_COND(err);
_dim_window();
diff --git a/editor/property_editor.cpp b/editor/property_editor.cpp
index db560af657..62c5cc5cc1 100644
--- a/editor/property_editor.cpp
+++ b/editor/property_editor.cpp
@@ -1671,7 +1671,7 @@ void CustomPropertyEditor::_focus_exit() {
}
void CustomPropertyEditor::config_action_buttons(const List<String> &p_strings) {
- Ref<StyleBox> sb = action_buttons[0]->get_theme_stylebox(SNAME("panel"));
+ Ref<StyleBox> sb = action_buttons[0]->get_theme_stylebox(SNAME("button"));
int margin_top = sb->get_margin(SIDE_TOP);
int margin_left = sb->get_margin(SIDE_LEFT);
int margin_bottom = sb->get_margin(SIDE_BOTTOM);
@@ -1804,26 +1804,18 @@ CustomPropertyEditor::CustomPropertyEditor() {
}
text_edit = memnew(TextEdit);
- add_child(text_edit);
+ value_vbox->add_child(text_edit);
text_edit->set_anchors_and_offsets_preset(Control::PRESET_WIDE, Control::PRESET_MODE_MINSIZE, 5);
+ text_edit->set_v_size_flags(Control::SIZE_EXPAND_FILL);
text_edit->set_offset(SIDE_BOTTOM, -30);
text_edit->hide();
text_edit->connect("text_changed", callable_mp(this, &CustomPropertyEditor::_text_edit_changed));
- for (int i = 0; i < MAX_ACTION_BUTTONS; i++) {
- action_buttons[i] = memnew(Button);
- action_buttons[i]->hide();
- add_child(action_buttons[i]);
- Vector<Variant> binds;
- binds.push_back(i);
- action_buttons[i]->connect("pressed", callable_mp(this, &CustomPropertyEditor::_action_pressed), binds);
- }
-
color_picker = nullptr;
file = memnew(EditorFileDialog);
- add_child(file);
+ value_vbox->add_child(file);
file->hide();
file->connect("file_selected", callable_mp(this, &CustomPropertyEditor::_file_selected));
@@ -1831,46 +1823,58 @@ CustomPropertyEditor::CustomPropertyEditor() {
error = memnew(ConfirmationDialog);
error->set_title(TTR("Error!"));
- add_child(error);
+ value_vbox->add_child(error);
scene_tree = memnew(SceneTreeDialog);
- add_child(scene_tree);
+ value_vbox->add_child(scene_tree);
scene_tree->connect("selected", callable_mp(this, &CustomPropertyEditor::_node_path_selected));
scene_tree->get_scene_tree()->set_show_enabled_subscene(true);
texture_preview = memnew(TextureRect);
- add_child(texture_preview);
+ value_vbox->add_child(texture_preview);
texture_preview->hide();
easing_draw = memnew(Control);
- add_child(easing_draw);
+ value_vbox->add_child(easing_draw);
easing_draw->hide();
easing_draw->connect("draw", callable_mp(this, &CustomPropertyEditor::_draw_easing));
easing_draw->connect("gui_input", callable_mp(this, &CustomPropertyEditor::_drag_easing));
easing_draw->set_default_cursor_shape(Control::CURSOR_MOVE);
type_button = memnew(MenuButton);
- add_child(type_button);
+ value_vbox->add_child(type_button);
type_button->hide();
type_button->get_popup()->connect("id_pressed", callable_mp(this, &CustomPropertyEditor::_type_create_selected));
menu = memnew(PopupMenu);
// menu->set_pass_on_modal_close_click(false);
- add_child(menu);
+ value_vbox->add_child(menu);
menu->connect("id_pressed", callable_mp(this, &CustomPropertyEditor::_menu_option));
evaluator = nullptr;
spinbox = memnew(SpinBox);
- add_child(spinbox);
+ value_vbox->add_child(spinbox);
spinbox->set_anchors_and_offsets_preset(Control::PRESET_WIDE, Control::PRESET_MODE_MINSIZE, 5);
spinbox->connect("value_changed", callable_mp(this, &CustomPropertyEditor::_range_modified));
slider = memnew(HSlider);
- add_child(slider);
+ value_vbox->add_child(slider);
slider->set_anchors_and_offsets_preset(Control::PRESET_WIDE, Control::PRESET_MODE_MINSIZE, 5);
slider->connect("value_changed", callable_mp(this, &CustomPropertyEditor::_range_modified));
+ action_hboxes = memnew(HBoxContainer);
+ action_hboxes->set_alignment(BoxContainer::ALIGN_CENTER);
+ value_vbox->add_child(action_hboxes);
+ for (int i = 0; i < MAX_ACTION_BUTTONS; i++) {
+ action_buttons[i] = memnew(Button);
+ action_buttons[i]->hide();
+ action_hboxes->add_child(action_buttons[i]);
+ Vector<Variant> binds;
+ binds.push_back(i);
+ action_buttons[i]->connect("pressed", callable_mp(this, &CustomPropertyEditor::_action_pressed), binds);
+ }
+
create_dialog = nullptr;
property_select = nullptr;
}
diff --git a/editor/property_editor.h b/editor/property_editor.h
index 23771b7494..2565c6ee27 100644
--- a/editor/property_editor.h
+++ b/editor/property_editor.h
@@ -110,6 +110,7 @@ class CustomPropertyEditor : public PopupPanel {
int focused_value_editor;
Label *value_label[MAX_VALUE_EDITORS];
HScrollBar *scroll[4];
+ HBoxContainer *action_hboxes;
Button *action_buttons[MAX_ACTION_BUTTONS];
MenuButton *type_button;
Vector<String> inheritors_array;
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp
index 4a59eb4fb3..921befbb6b 100644
--- a/editor/scene_tree_dock.cpp
+++ b/editor/scene_tree_dock.cpp
@@ -47,6 +47,7 @@
#include "editor/plugins/script_editor_plugin.h"
#include "editor/shader_create_dialog.h"
#include "scene/main/window.h"
+#include "scene/property_utils.h"
#include "scene/resources/packed_scene.h"
#include "servers/display_server.h"
#include "servers/rendering_server.h"
@@ -2153,7 +2154,7 @@ void SceneTreeDock::_do_create(Node *p_parent) {
editor_data->get_undo_redo().create_action(TTR("Create Node"));
if (edited_scene) {
- editor_data->get_undo_redo().add_do_method(p_parent, "add_child", child);
+ editor_data->get_undo_redo().add_do_method(p_parent, "add_child", child, true);
editor_data->get_undo_redo().add_do_method(child, "set_owner", edited_scene);
editor_data->get_undo_redo().add_do_method(editor_selection, "clear");
editor_data->get_undo_redo().add_do_method(editor_selection, "add_node", child);
@@ -2943,7 +2944,7 @@ void SceneTreeDock::open_script_dialog(Node *p_for_node, bool p_extend) {
}
}
-void SceneTreeDock::attach_shader_to_selected() {
+void SceneTreeDock::attach_shader_to_selected(int p_preferred_mode) {
if (selected_shader_material.is_null()) {
return;
}
@@ -2970,13 +2971,13 @@ void SceneTreeDock::attach_shader_to_selected() {
shader_create_dialog->connect("shader_created", callable_mp(this, &SceneTreeDock::_shader_created));
shader_create_dialog->connect("confirmed", callable_mp(this, &SceneTreeDock::_shader_creation_closed));
shader_create_dialog->connect("cancelled", callable_mp(this, &SceneTreeDock::_shader_creation_closed));
- shader_create_dialog->config(path);
+ shader_create_dialog->config(path, true, true, p_preferred_mode);
shader_create_dialog->popup_centered();
}
-void SceneTreeDock::open_shader_dialog(Ref<ShaderMaterial> &p_for_material) {
+void SceneTreeDock::open_shader_dialog(Ref<ShaderMaterial> &p_for_material, int p_preferred_mode) {
selected_shader_material = p_for_material;
- attach_shader_to_selected();
+ attach_shader_to_selected(p_preferred_mode);
}
void SceneTreeDock::open_add_child_dialog() {
@@ -3132,7 +3133,9 @@ void SceneTreeDock::_clear_clipboard() {
void SceneTreeDock::_create_remap_for_node(Node *p_node, Map<RES, RES> &r_remap) {
List<PropertyInfo> props;
p_node->get_property_list(&props);
- bool is_instantiated = EditorPropertyRevert::may_node_be_in_instance(p_node);
+
+ Vector<SceneState::PackState> states_stack;
+ bool states_stack_ready = false;
for (const PropertyInfo &E : props) {
if (!(E.usage & PROPERTY_USAGE_STORAGE)) {
@@ -3143,16 +3146,17 @@ void SceneTreeDock::_create_remap_for_node(Node *p_node, Map<RES, RES> &r_remap)
if (v.is_ref()) {
RES res = v;
if (res.is_valid()) {
- if (is_instantiated) {
- Variant orig;
- if (EditorPropertyRevert::get_instantiated_node_original_property(p_node, E.name, orig)) {
- if (!EditorPropertyRevert::is_node_property_different(p_node, v, orig)) {
- continue;
- }
- }
+ if (!states_stack_ready) {
+ states_stack = PropertyUtils::get_node_states_stack(p_node);
+ states_stack_ready = true;
+ }
+
+ Variant orig = PropertyUtils::get_property_default_value(p_node, E.name, &states_stack);
+ if (!PropertyUtils::is_property_value_different(v, orig)) {
+ continue;
}
- if ((res->get_path() == "" || res->get_path().find("::") > -1) && !r_remap.has(res)) {
+ if (res->is_built_in() && !r_remap.has(res)) {
_create_remap_for_resource(res, r_remap);
}
}
@@ -3179,7 +3183,7 @@ void SceneTreeDock::_create_remap_for_resource(RES p_resource, Map<RES, RES> &r_
if (v.is_ref()) {
RES res = v;
if (res.is_valid()) {
- if ((res->get_path() == "" || res->get_path().find("::") > -1) && !r_remap.has(res)) {
+ if (res->is_built_in() && !r_remap.has(res)) {
_create_remap_for_resource(res, r_remap);
}
}
diff --git a/editor/scene_tree_dock.h b/editor/scene_tree_dock.h
index 66000602fa..8de9884019 100644
--- a/editor/scene_tree_dock.h
+++ b/editor/scene_tree_dock.h
@@ -300,8 +300,8 @@ public:
void attach_script_to_selected(bool p_extend);
void open_script_dialog(Node *p_for_node, bool p_extend);
- void attach_shader_to_selected();
- void open_shader_dialog(Ref<ShaderMaterial> &p_for_material);
+ void attach_shader_to_selected(int p_preferred_mode = -1);
+ void open_shader_dialog(Ref<ShaderMaterial> &p_for_material, int p_preferred_mode = -1);
void open_add_child_dialog();
void open_instance_child_dialog();
diff --git a/editor/shader_create_dialog.cpp b/editor/shader_create_dialog.cpp
index 8b02544156..23bdc06f95 100644
--- a/editor/shader_create_dialog.cpp
+++ b/editor/shader_create_dialog.cpp
@@ -324,7 +324,7 @@ void ShaderCreateDialog::_path_submitted(const String &p_path) {
ok_pressed();
}
-void ShaderCreateDialog::config(const String &p_base_path, bool p_built_in_enabled, bool p_load_enabled) {
+void ShaderCreateDialog::config(const String &p_base_path, bool p_built_in_enabled, bool p_load_enabled, int p_preferred_mode) {
if (p_base_path != "") {
initial_base_path = p_base_path.get_basename();
file_path->set_text(initial_base_path + "." + language_data[language_menu->get_selected()].default_extension);
@@ -338,6 +338,11 @@ void ShaderCreateDialog::config(const String &p_base_path, bool p_built_in_enabl
built_in_enabled = p_built_in_enabled;
load_enabled = p_load_enabled;
+ if (p_preferred_mode > -1) {
+ mode_menu->select(p_preferred_mode);
+ _mode_changed(p_preferred_mode);
+ }
+
_language_changed(current_language);
_path_changed(file_path->get_text());
}
diff --git a/editor/shader_create_dialog.h b/editor/shader_create_dialog.h
index 6962fa3d8d..be0a0cad06 100644
--- a/editor/shader_create_dialog.h
+++ b/editor/shader_create_dialog.h
@@ -108,7 +108,7 @@ protected:
static void _bind_methods();
public:
- void config(const String &p_base_path, bool p_built_in_enabled = true, bool p_load_enabled = true);
+ void config(const String &p_base_path, bool p_built_in_enabled = true, bool p_load_enabled = true, int p_preferred_mode = -1);
ShaderCreateDialog();
};
diff --git a/editor/translations/af.po b/editor/translations/af.po
index a38a5103d2..2e733a4fb8 100644
--- a/editor/translations/af.po
+++ b/editor/translations/af.po
@@ -11143,11 +11143,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/ar.po b/editor/translations/ar.po
index 67b76771d2..a32b919cf2 100644
--- a/editor/translations/ar.po
+++ b/editor/translations/ar.po
@@ -61,8 +61,8 @@ msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-09-19 11:14+0000\n"
-"Last-Translator: Mohammed Mubarak <modymu9@gmail.com>\n"
+"PO-Revision-Date: 2021-10-30 00:50+0000\n"
+"Last-Translator: HASSAN GAMER - حسن جيمر <gamerhassan55@gmail.com>\n"
"Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/"
"godot/ar/>\n"
"Language: ar\n"
@@ -641,9 +641,8 @@ msgid "Go to Previous Step"
msgstr "إذهب إلى الخطوة السابقة"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Apply Reset"
-msgstr "إعادة تعيين"
+msgstr "طَبق إعادة تعيين"
#: editor/animation_track_editor.cpp
msgid "Optimize Animation"
@@ -1108,17 +1107,16 @@ msgid "Owners Of:"
msgstr "ملاك:"
#: editor/dependency_editor.cpp
-#, fuzzy
msgid ""
"Remove the selected files from the project? (Cannot be undone.)\n"
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
-"حذ٠الملÙات المختارة من المشروع؟ (لا يمكن استعادتها)\n"
-"يمكنك إيجاد الملÙات المحذوÙØ© ÙÙŠ سلة مهملات النظام حيث يمكنك إسترجاعها."
+"حذ٠الملÙات المÙختارة من المشروع؟ (لا يمكن استعادتها).\n"
+"حسب Ø¥Ùعدادات Ù…Ùدير ملÙاتÙÙƒ, Ø¥Ùما سيتم نقل الملقات Ø¥Ùلى سلة المÙهملات Ø£ÙŽÙˆ سيتم حذÙها "
+"نهائياً."
#: editor/dependency_editor.cpp
-#, fuzzy
msgid ""
"The files being removed are required by other resources in order for them to "
"work.\n"
@@ -1126,9 +1124,10 @@ msgid ""
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
-"الملÙات التي يتم إزالتها مطلوبة من قبل موارد أخرى من اجل ان تعمل.\n"
-"هل تريد إزالتها على أي حال؟ (لا تراجع)\n"
-"يمكنك العثور على الملÙات التي تمت إزالتها ÙÙŠ مهملات النظام لاستعادتها."
+"الملÙات التي يتم إزالتها مطلوبة من قبل موارد أخرى من اجل Ø£ÙŽÙ† تعمل.\n"
+"هل تريد إزالتها على أي حال؟ (لا تراجع).\n"
+"حسب Ø¥Ùعدادات Ù…Ùدير ملÙاتÙÙƒ, Ø¥Ùما سيتم نقل الملقات Ø¥Ùلى سلة المÙهملات Ø£ÙŽÙˆ سيتم حذÙها "
+"نهائياً."
#: editor/dependency_editor.cpp
msgid "Cannot remove:"
@@ -11284,14 +11283,14 @@ msgstr ""
"عنه query على الأقل حر٠`/` واحد."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "زر "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "الزر الÙيزيائي"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "زر "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "زر Joy"
diff --git a/editor/translations/az.po b/editor/translations/az.po
index 76fb760ac1..77470b2db5 100644
--- a/editor/translations/az.po
+++ b/editor/translations/az.po
@@ -10699,11 +10699,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/bg.po b/editor/translations/bg.po
index c4ad5a3993..11a94b8796 100644
--- a/editor/translations/bg.po
+++ b/editor/translations/bg.po
@@ -10720,11 +10720,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/bn.po b/editor/translations/bn.po
index 96a57f9dd5..b3efe37fe4 100644
--- a/editor/translations/bn.po
+++ b/editor/translations/bn.po
@@ -11793,14 +11793,14 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "কী/চাবি "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "কী/চাবি "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "জয়সà§à¦Ÿà¦¿à¦• বোতাম"
diff --git a/editor/translations/br.po b/editor/translations/br.po
index 071e1f021c..690ede66ef 100644
--- a/editor/translations/br.po
+++ b/editor/translations/br.po
@@ -10614,11 +10614,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/ca.po b/editor/translations/ca.po
index 26f7646086..92dd5fff63 100644
--- a/editor/translations/ca.po
+++ b/editor/translations/ca.po
@@ -11447,14 +11447,14 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Tecla "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Tecla "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Botó de la Maneta"
diff --git a/editor/translations/cs.po b/editor/translations/cs.po
index 598ff4163c..721a03dfc5 100644
--- a/editor/translations/cs.po
+++ b/editor/translations/cs.po
@@ -26,13 +26,14 @@
# Václav Blažej <vaclavblazej@seznam.cz>, 2020, 2021.
# ProfJack <profjackcz@gmail.com>, 2021.
# swifterik <blaha.j502@gmail.com>, 2021.
+# Daniel <dan@ger.cz>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-09-15 00:46+0000\n"
-"Last-Translator: Zbyněk <zbynek.fiala@gmail.com>\n"
+"PO-Revision-Date: 2021-10-27 21:45+0000\n"
+"Last-Translator: Daniel <dan@ger.cz>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/"
"cs/>\n"
"Language: cs\n"
@@ -389,15 +390,13 @@ msgstr "Animace: vložit"
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "node '%s'"
-msgstr "Nelze otevřít '%s'."
+msgstr "uzel '%s'"
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "animation"
-msgstr "Animace"
+msgstr "animace"
#: editor/animation_track_editor.cpp
msgid "AnimationPlayer can't animate itself, only other players."
@@ -405,9 +404,8 @@ msgstr "AnimationPlayer nemůže animovat sám sebe, pouze ostatní pÅ™ehrávaÄ
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "property '%s'"
-msgstr "Vlastnost '%s' neexistuje."
+msgstr "vlastnost '%s'"
#: editor/animation_track_editor.cpp
msgid "Anim Create & Insert"
@@ -554,7 +552,7 @@ msgstr "Seskupit stopy podle uzlu nebo je zobrazit jako jednoduchý seznam."
#: editor/animation_track_editor.cpp
msgid "Snap:"
-msgstr "Přichycení:"
+msgstr "Přichytit:"
#: editor/animation_track_editor.cpp
msgid "Animation step value."
@@ -965,7 +963,6 @@ msgid "Edit..."
msgstr "Upravit..."
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Go to Method"
msgstr "Přejít na metodu"
@@ -987,7 +984,7 @@ msgstr "Žádné výsledky pro \"%s\"."
#: editor/create_dialog.cpp editor/property_selector.cpp
msgid "No description available for %s."
-msgstr ""
+msgstr "Pro %s není dostupný popis."
#: editor/create_dialog.cpp editor/editor_file_dialog.cpp
#: editor/filesystem_dock.cpp
@@ -1087,17 +1084,16 @@ msgid "Owners Of:"
msgstr "Vlastníci:"
#: editor/dependency_editor.cpp
-#, fuzzy
msgid ""
"Remove the selected files from the project? (Cannot be undone.)\n"
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
-"Odebrat vybrané soubory z projektu? (Nelze vrátit zpět)\n"
-"Odebrané soubory budou v systémovém koši a obnovit je."
+"Odebrat vybrané soubory z projektu? (Nelze vrátit zpět.)\n"
+"V závislosti na konfiguraci souborového systému budou soubory buÄ pÅ™esunuty "
+"do systémového koše, nebo trvale odstraněny."
#: editor/dependency_editor.cpp
-#, fuzzy
msgid ""
"The files being removed are required by other resources in order for them to "
"work.\n"
@@ -1105,9 +1101,10 @@ msgid ""
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
-"Soubory ke smazání potÅ™ebují jiné zdroje ke své Äinnosti.\n"
-"Přesto je chcete smazat? (nelze vrátit zpět)\n"
-"Odebrané soubory budou v systémovém koši a obnovit je."
+"Odstraňované soubory potÅ™ebují jiné zdroje ke své Äinnosti.\n"
+"Chcete je přesto odstranit? (Nelze vrátit zpět.)\n"
+"V závislosti na konfiguraci souborového systému budou soubory buÄ pÅ™esunuty "
+"do systémového koše, nebo trvale odstraněny."
#: editor/dependency_editor.cpp
msgid "Cannot remove:"
@@ -1179,7 +1176,7 @@ msgstr "Děkujeme za komunitu Godotu!"
#: editor/editor_about.cpp editor/editor_node.cpp editor/project_manager.cpp
msgid "Click to copy."
-msgstr ""
+msgstr "Klikněte pro zkopírování."
#: editor/editor_about.cpp
msgid "Godot Engine contributors"
@@ -1277,41 +1274,37 @@ msgid "Licenses"
msgstr "Licence"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Error opening asset file for \"%s\" (not in ZIP format)."
-msgstr "Chyba pÅ™i otevírání balíÄku (není ve formátu ZIP)."
+msgstr "Chyba pÅ™i otevírání balíÄku \"%s\" (není ve formátu ZIP)."
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "%s (already exists)"
msgstr "%s (již existuje)"
#: editor/editor_asset_installer.cpp
msgid "Contents of asset \"%s\" - %d file(s) conflict with your project:"
-msgstr ""
+msgstr "Obsah balíÄku \"%s\" - %d souborů koliduje s vaším projektem:"
#: editor/editor_asset_installer.cpp
msgid "Contents of asset \"%s\" - No files conflict with your project:"
msgstr ""
+"Obsah balíÄku \"%s\" - Žádné soubory nejsou v konfliktu s vaším projektem:"
#: editor/editor_asset_installer.cpp
msgid "Uncompressing Assets"
msgstr "Dekomprese uživatelského obsahu"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "The following files failed extraction from asset \"%s\":"
-msgstr "Selhala extrakce následujících souborů z balíÄku:"
+msgstr "Následující soubory se nepodaÅ™ilo extrahovat z balíÄku \"%s\":"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "(and %s more files)"
-msgstr "A %s dalších souborů."
+msgstr "(a %s dalších souborů)"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Asset \"%s\" installed successfully!"
-msgstr "BalíÄek byl úspěšnÄ› nainstalován!"
+msgstr "BalíÄek \"%s\" byl úspěšnÄ› nainstalován!"
#: editor/editor_asset_installer.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -1323,7 +1316,6 @@ msgid "Install"
msgstr "Instalovat"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Asset Installer"
msgstr "Instalátor balíÄků"
@@ -1556,13 +1548,12 @@ msgid "Can't add autoload:"
msgstr "Nelze pÅ™idat auto-naÄítání:"
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "%s is an invalid path. File does not exist."
-msgstr "Soubor neexistuje."
+msgstr "%s je neplatná cesta. Soubor neexistuje."
#: editor/editor_autoload_settings.cpp
msgid "%s is an invalid path. Not in resource path (res://)."
-msgstr ""
+msgstr "%s je neplatná cesta. Není v cestě ke zdrojům (res://)."
#: editor/editor_autoload_settings.cpp
msgid "Add AutoLoad"
@@ -1586,9 +1577,8 @@ msgid "Name"
msgstr "Název"
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "Global Variable"
-msgstr "Proměnná"
+msgstr "Globální proměnná"
#: editor/editor_data.cpp
msgid "Paste Params"
@@ -1762,48 +1752,50 @@ msgstr "Importovat panel"
#: editor/editor_feature_profile.cpp
msgid "Allows to view and edit 3D scenes."
-msgstr ""
+msgstr "Umožňuje prohlížet a upravovat 3D scény."
#: editor/editor_feature_profile.cpp
msgid "Allows to edit scripts using the integrated script editor."
-msgstr ""
+msgstr "Umožňuje upravovat skripty pomocí integrovaného editoru skriptů."
#: editor/editor_feature_profile.cpp
msgid "Provides built-in access to the Asset Library."
-msgstr ""
+msgstr "Poskytuje integrovaný přístup ke KnihovnÄ› balíÄků."
#: editor/editor_feature_profile.cpp
msgid "Allows editing the node hierarchy in the Scene dock."
-msgstr ""
+msgstr "Umožňuje upravovat hierarchii uzlů v doku scény."
#: editor/editor_feature_profile.cpp
msgid ""
"Allows to work with signals and groups of the node selected in the Scene "
"dock."
-msgstr ""
+msgstr "Umožňuje pracovat se signály a skupinami uzlu vybraného v doku scény."
#: editor/editor_feature_profile.cpp
msgid "Allows to browse the local file system via a dedicated dock."
msgstr ""
+"Umožňuje procházet místní souborový systém prostřednictvím vyhrazeného doku."
#: editor/editor_feature_profile.cpp
msgid ""
"Allows to configure import settings for individual assets. Requires the "
"FileSystem dock to function."
msgstr ""
+"Umožňuje konfigurovat nastavení importu pro jednotlivé zdroje. Pro svou "
+"funkci vyžaduje dok Souborový systém."
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "(current)"
-msgstr "(Aktuální)"
+msgstr "(aktuální)"
#: editor/editor_feature_profile.cpp
msgid "(none)"
-msgstr ""
+msgstr "(žádný)"
#: editor/editor_feature_profile.cpp
msgid "Remove currently selected profile, '%s'? Cannot be undone."
-msgstr ""
+msgstr "Odstranit aktuálně vybraný profil, '%s'? Nelze vrátit zpět."
#: editor/editor_feature_profile.cpp
msgid "Profile must be a valid filename and must not contain '.'"
@@ -1834,19 +1826,16 @@ msgid "Enable Contextual Editor"
msgstr "Aktivovat kontextový editor"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Class Properties:"
-msgstr "Vlastnosti:"
+msgstr "Vlastnosti třídy:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Main Features:"
-msgstr "Vlastnosti"
+msgstr "Hlavní funkce:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Nodes and Classes:"
-msgstr "Povolené třídy:"
+msgstr "Uzly a třídy:"
#: editor/editor_feature_profile.cpp
msgid "File '%s' format is invalid, import aborted."
@@ -1863,7 +1852,6 @@ msgid "Error saving profile to path: '%s'."
msgstr "Chyba při ukládání profilu do cesty: '%s '."
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Reset to Default"
msgstr "Obnovit výchozí"
@@ -1872,14 +1860,12 @@ msgid "Current Profile:"
msgstr "Aktuální profil:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Create Profile"
-msgstr "Smazat profil"
+msgstr "Vytvořit profil"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Remove Profile"
-msgstr "Odstranit dlaždici"
+msgstr "Odstranit profil"
#: editor/editor_feature_profile.cpp
msgid "Available Profiles:"
@@ -1899,18 +1885,16 @@ msgid "Export"
msgstr "Export"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Configure Selected Profile:"
-msgstr "Aktuální profil:"
+msgstr "Konfigurace vybraného profilu:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Extra Options:"
-msgstr "Možnosti třídy:"
+msgstr "Další možnosti:"
#: editor/editor_feature_profile.cpp
msgid "Create or import a profile to edit available classes and properties."
-msgstr ""
+msgstr "Vytvořte nebo importujte profil a upravte dostupné třídy a vlastnosti."
#: editor/editor_feature_profile.cpp
msgid "New profile name:"
@@ -1937,9 +1921,8 @@ msgid "Select Current Folder"
msgstr "Vybrat stávající složku"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
-#, fuzzy
msgid "File exists, overwrite?"
-msgstr "Soubor už existuje. Přepsat?"
+msgstr "Soubor existuje, přepsat?"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Select This Folder"
@@ -2337,6 +2320,9 @@ msgid ""
"Update Continuously is enabled, which can increase power usage. Click to "
"disable it."
msgstr ""
+"Aktivuje se při překreslování okna editoru.\n"
+"Je zapnuta funkce Průběžná aktualizace, která může zvýšit spotřebu energie. "
+"Klepnutím ji zakážete."
#: editor/editor_node.cpp
msgid "Spins when the editor window redraws."
@@ -2433,9 +2419,8 @@ msgstr ""
"(instance nebo dÄ›diÄnosti)."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Could not save one or more scenes!"
-msgstr "Nelze spustit podproces!"
+msgstr "Nelze uložit jednu nebo více scén!"
#: editor/editor_node.cpp
msgid "Save All Scenes"
@@ -2577,20 +2562,23 @@ msgstr "Uložit změny '%s' před zavřením?"
#: editor/editor_node.cpp
msgid "%s no longer exists! Please specify a new save location."
-msgstr ""
+msgstr "%s již neexistuje! Zadejte prosím nové umístění pro uložení."
#: editor/editor_node.cpp
msgid ""
"The current scene has no root node, but %d modified external resource(s) "
"were saved anyway."
msgstr ""
+"Aktuální scéna nemá kořenový uzel, ale přesto bylo uloženo %d upravených "
+"externích zdrojů."
#: editor/editor_node.cpp
-#, fuzzy
msgid ""
"A root node is required to save the scene. You can add a root node using the "
"Scene tree dock."
-msgstr "Pro uložení scény je vyžadován kořenový uzel."
+msgstr ""
+"Pro uložení scény je nutný kořenový uzel. Kořenový uzel můžete přidat pomocí "
+"doku Strom scény."
#: editor/editor_node.cpp
msgid "Save Scene As..."
@@ -2622,29 +2610,27 @@ msgstr "Aktuální scéna neuložena. Přesto otevřít?"
#: editor/editor_node.cpp
msgid "Can't undo while mouse buttons are pressed."
-msgstr ""
+msgstr "Nelze vrátit zpÄ›t, když jsou stisknuta tlaÄítka myÅ¡i."
#: editor/editor_node.cpp
msgid "Nothing to undo."
-msgstr ""
+msgstr "Není co vracet."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Undo: %s"
-msgstr "Zpět"
+msgstr "Zpět: %s"
#: editor/editor_node.cpp
msgid "Can't redo while mouse buttons are pressed."
-msgstr ""
+msgstr "Nelze opakovat, když jsou stisknuta tlaÄítka myÅ¡i."
#: editor/editor_node.cpp
msgid "Nothing to redo."
-msgstr ""
+msgstr "Není co opakovat."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Redo: %s"
-msgstr "Znovu"
+msgstr "Opakovat: %s"
#: editor/editor_node.cpp
msgid "Can't reload a scene that was never saved."
@@ -2929,11 +2915,11 @@ msgstr "Konvertovat na..."
#: editor/editor_node.cpp
msgid "MeshLibrary..."
-msgstr "MeshLibrary..."
+msgstr "Knihovna modelů..."
#: editor/editor_node.cpp
msgid "TileSet..."
-msgstr "TileSet..."
+msgstr "Sada dlaždic..."
#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
@@ -2991,9 +2977,8 @@ msgid "Orphan Resource Explorer..."
msgstr "Průzkumník osiřelých zdrojů..."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Reload Current Project"
-msgstr "Přejmenovat projekt"
+msgstr "Znovu naÄíst aktuální projekt"
#: editor/editor_node.cpp
msgid "Quit to Project List"
@@ -3151,13 +3136,12 @@ msgid "Help"
msgstr "Nápověda"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Online Documentation"
-msgstr "Otevřít dokumentaci"
+msgstr "Online dokumentace"
#: editor/editor_node.cpp
msgid "Questions & Answers"
-msgstr ""
+msgstr "Otázky & odpovědi"
#: editor/editor_node.cpp
msgid "Report a Bug"
@@ -3165,7 +3149,7 @@ msgstr "Nahlásit chybu"
#: editor/editor_node.cpp
msgid "Suggest a Feature"
-msgstr ""
+msgstr "Navrhnout funkci"
#: editor/editor_node.cpp
msgid "Send Docs Feedback"
@@ -3176,9 +3160,8 @@ msgid "Community"
msgstr "Komunita"
#: editor/editor_node.cpp
-#, fuzzy
msgid "About Godot"
-msgstr "O aplikaci"
+msgstr "O aplikaci Godot"
#: editor/editor_node.cpp
msgid "Support Godot Development"
@@ -3271,14 +3254,12 @@ msgid "Manage Templates"
msgstr "Spravovat Å¡ablony"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Install from file"
msgstr "Instalovat ze souboru"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Select android sources file"
-msgstr "Vyberte zdrojovou síť:"
+msgstr "Vyberte soubor se zdroji pro Android"
#: editor/editor_node.cpp
msgid ""
@@ -3326,9 +3307,8 @@ msgid "Merge With Existing"
msgstr "SlouÄit s existující"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Apply MeshInstance Transforms"
-msgstr "Animace: Změna transformace"
+msgstr "Použít transformace MeshInstance"
#: editor/editor_node.cpp
msgid "Open & Run a Script"
@@ -3365,9 +3345,8 @@ msgid "Select"
msgstr "Vybrat"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Select Current"
-msgstr "Vybrat stávající složku"
+msgstr "Vybrat aktuální"
#: editor/editor_node.cpp
msgid "Open 2D Editor"
@@ -3402,9 +3381,8 @@ msgid "No sub-resources found."
msgstr "Nebyly nalezeny žádné dílÄí zdroje."
#: editor/editor_path.cpp
-#, fuzzy
msgid "Open a list of sub-resources."
-msgstr "Nebyly nalezeny žádné dílÄí zdroje."
+msgstr "OtevÅ™ete seznam dílÄích zdrojů."
#: editor/editor_plugin.cpp
msgid "Creating Mesh Previews"
@@ -3431,14 +3409,12 @@ msgid "Update"
msgstr "Aktualizovat"
#: editor/editor_plugin_settings.cpp
-#, fuzzy
msgid "Version"
-msgstr "Verze:"
+msgstr "Verze"
#: editor/editor_plugin_settings.cpp
-#, fuzzy
msgid "Author"
-msgstr "Autoři"
+msgstr "Autor"
#: editor/editor_plugin_settings.cpp
#: editor/plugins/version_control_editor_plugin.cpp
@@ -3451,14 +3427,12 @@ msgid "Measure:"
msgstr "Měření:"
#: editor/editor_profiler.cpp
-#, fuzzy
msgid "Frame Time (ms)"
-msgstr "Čas snímku (sek.)"
+msgstr "Čas snímku (ms)"
#: editor/editor_profiler.cpp
-#, fuzzy
msgid "Average Time (ms)"
-msgstr "PrůmÄ›rný Äas (sek.)"
+msgstr "PrůmÄ›rný Äas (ms)"
#: editor/editor_profiler.cpp
msgid "Frame %"
@@ -3485,6 +3459,12 @@ msgid ""
"functions called by that function.\n"
"Use this to find individual functions to optimize."
msgstr ""
+"VÄetnÄ›: Zahrnuje Äas z jiných funkcí volaných touto funkcí.\n"
+"Slouží k odhalení úzkých míst.\n"
+"\n"
+"Vlastní: ZapoÄítává pouze Äas strávený v samotné funkci, nikoli v jiných "
+"funkcích volaných touto funkcí.\n"
+"Použijte k vyhledání jednotlivých funkcí, které je třeba optimalizovat."
#: editor/editor_profiler.cpp
msgid "Frame #:"
@@ -3589,7 +3569,7 @@ msgstr ""
#: editor/editor_resource_picker.cpp
msgid "Quick Load"
-msgstr ""
+msgstr "Rychlé naÄtení"
#: editor/editor_resource_picker.cpp editor/property_editor.cpp
msgid "Make Unique"
@@ -3610,9 +3590,8 @@ msgid "Paste"
msgstr "Vložit"
#: editor/editor_resource_picker.cpp editor/property_editor.cpp
-#, fuzzy
msgid "Convert to %s"
-msgstr "Konvertovat na %s"
+msgstr "Převést na %s"
#: editor/editor_resource_picker.cpp editor/property_editor.cpp
msgid "New %s"
@@ -3662,11 +3641,9 @@ msgid "Did you forget the '_run' method?"
msgstr "Nezapoměl jste metodu '_run'?"
#: editor/editor_spin_slider.cpp
-#, fuzzy
msgid "Hold %s to round to integers. Hold Shift for more precise changes."
msgstr ""
-"Podržte Ctrl pro zaokrouhlení na celá Äísla. Podržte Shift pro pÅ™esnÄ›jší "
-"úpravy."
+"Podržte %s pro zaokrouhlení na celá Äísla. Pro pÅ™esnÄ›jší zmÄ›ny podržte Shift."
#: editor/editor_sub_scene.cpp
msgid "Select Node(s) to Import"
@@ -3686,49 +3663,43 @@ msgstr "Import z uzlu:"
#: editor/export_template_manager.cpp
msgid "Open the folder containing these templates."
-msgstr ""
+msgstr "Otevřít složku obsahující tyto šablony."
#: editor/export_template_manager.cpp
msgid "Uninstall these templates."
-msgstr ""
+msgstr "Odinstalovat tyto Å¡ablony."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "There are no mirrors available."
-msgstr "Neexistuje '%s' soubor."
+msgstr "Nejsou k dispozici žádná zrcadla."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Retrieving the mirror list..."
-msgstr "Získávání zrcadel, prosím Äekejte..."
+msgstr "Získávání seznamu zrcadel..."
#: editor/export_template_manager.cpp
msgid "Starting the download..."
-msgstr ""
+msgstr "Zahájení stahování..."
#: editor/export_template_manager.cpp
msgid "Error requesting URL:"
msgstr "Chyba žádosti o URL:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Connecting to the mirror..."
-msgstr "Připojuji se k zrcadlu..."
+msgstr "Připojení k zrcadlu..."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Can't resolve the requested address."
-msgstr "Nelze přeložit název hostitele:"
+msgstr "Nelze dohledat požadovanou adresu."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Can't connect to the mirror."
-msgstr "Nelze se připojit k hostiteli:"
+msgstr "Nelze se připojit k zrcadlu."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "No response from the mirror."
-msgstr "Žádná odpovÄ›Ä od hostitele:"
+msgstr "Zrcadlo neodpovídá."
#: editor/export_template_manager.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -3736,18 +3707,16 @@ msgid "Request failed."
msgstr "Požadavek selhal."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Request ended up in a redirect loop."
-msgstr "Požadavek se nezdařil, příliš mnoho přesměrování"
+msgstr "Požadavek skonÄil ve smyÄce pÅ™esmÄ›rování."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Request failed:"
-msgstr "Požadavek selhal."
+msgstr "Požadavek selhal:"
#: editor/export_template_manager.cpp
msgid "Download complete; extracting templates..."
-msgstr ""
+msgstr "Stažení dokonÄeno; extrahování Å¡ablon..."
#: editor/export_template_manager.cpp
msgid "Cannot remove temporary file:"
@@ -3766,13 +3735,13 @@ msgid "Error getting the list of mirrors."
msgstr "Chyba při získávání seznamu zrcadel."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Error parsing JSON with the list of mirrors. Please report this issue!"
-msgstr "Chyba parsování JSON mirror list. Prosím nahlaste tuto chybu!"
+msgstr ""
+"Chyba při parsování JSON se seznamem zrcadel. Nahlaste prosím tento problém!"
#: editor/export_template_manager.cpp
msgid "Best available mirror"
-msgstr ""
+msgstr "Nejlepší dostupné zrcadlo"
#: editor/export_template_manager.cpp
msgid ""
@@ -3825,24 +3794,20 @@ msgid "SSL Handshake Error"
msgstr "Selhání SSL handshaku"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Can't open the export templates file."
-msgstr "Nelze otevřít zip soubor exportních šablon."
+msgstr "Nelze otevřít soubor exportních šablon."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Invalid version.txt format inside the export templates file: %s."
-msgstr "Neplatný formát version.txt uvnitř šablon: %s."
+msgstr "Nesprávný formát version.txt uvnitř souboru exportních šablon: %s."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "No version.txt found inside the export templates file."
-msgstr "Nenalezena version.txt uvnitÅ™ Å¡ablon."
+msgstr "V souboru exportních šablon nebyl nalezen soubor version.txt."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Error creating path for extracting templates:"
-msgstr "Chyba při vytváření cesty pro šablony:"
+msgstr "Chyba při vytváření cesty pro extrakci šablon:"
#: editor/export_template_manager.cpp
msgid "Extracting Export Templates"
@@ -3853,9 +3818,8 @@ msgid "Importing:"
msgstr "Importování:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Remove templates for the version '%s'?"
-msgstr "Odstranit Å¡ablonu verze '%s'?"
+msgstr "Odstranit Å¡ablony pro verzi '%s'?"
#: editor/export_template_manager.cpp
msgid "Uncompressing Android Build Sources"
@@ -3872,67 +3836,62 @@ msgstr "Aktuální verze:"
#: editor/export_template_manager.cpp
msgid "Export templates are missing. Download them or install from a file."
msgstr ""
+"Chybí šablony pro export. Stáhněte si je nebo je nainstalujte ze souboru."
#: editor/export_template_manager.cpp
msgid "Export templates are installed and ready to be used."
-msgstr ""
+msgstr "Exportní šablony jsou nainstalovány a připraveny k použití."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Open Folder"
-msgstr "Otevřít soubor"
+msgstr "Otevřít složku"
#: editor/export_template_manager.cpp
msgid "Open the folder containing installed templates for the current version."
-msgstr ""
+msgstr "Otevře složku obsahující nainstalované šablony pro aktuální verzi."
#: editor/export_template_manager.cpp
msgid "Uninstall"
msgstr "Odinstalovat"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Uninstall templates for the current version."
-msgstr "PoÄáteÄní hodnota pro poÄítadlo"
+msgstr "Odinstalování šablon pro aktuální verzi."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Download from:"
-msgstr "Chyba při stahování"
+msgstr "Stáhnout z:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Open in Web Browser"
-msgstr "Spustit v prohlížeÄi"
+msgstr "Otevřít v prohlížeÄi"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Copy Mirror URL"
-msgstr "Kopírovat chybu"
+msgstr "Kopírovat URL zrcadla"
#: editor/export_template_manager.cpp
msgid "Download and Install"
-msgstr ""
+msgstr "Stáhnout a instalovat"
#: editor/export_template_manager.cpp
msgid ""
"Download and install templates for the current version from the best "
"possible mirror."
msgstr ""
+"Stáhnutí a instalace šablon pro aktuální verzi z nejlepšího možného zrcadla."
#: editor/export_template_manager.cpp
msgid "Official export templates aren't available for development builds."
msgstr "Oficiální šablony exportu nejsou k dispozici pro vývojová sestavení."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Install from File"
msgstr "Instalovat ze souboru"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Install templates from a local file."
-msgstr "Importovat Å¡ablony ze ZIP souboru"
+msgstr "Instalace šablon z místního souboru."
#: editor/export_template_manager.cpp editor/find_in_files.cpp
#: editor/progress_dialog.cpp scene/gui/dialogs.cpp
@@ -3940,19 +3899,16 @@ msgid "Cancel"
msgstr "Zrušit"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Cancel the download of the templates."
-msgstr "Nelze otevřít zip soubor exportních šablon."
+msgstr "Zrušit stahování šablon."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Other Installed Versions:"
-msgstr "Instalované verze:"
+msgstr "Další nainstalované verze:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Uninstall Template"
-msgstr "Odinstalovat"
+msgstr "Odinstalovat Å¡ablonu"
#: editor/export_template_manager.cpp
msgid "Select Template File"
@@ -3967,6 +3923,8 @@ msgid ""
"The templates will continue to download.\n"
"You may experience a short editor freeze when they finish."
msgstr ""
+"Šablony se budou stahovat i nadále.\n"
+"Po dokonÄení může dojít ke krátkému zamrznutí editoru."
#: editor/filesystem_dock.cpp
msgid "Favorites"
@@ -4113,35 +4071,32 @@ msgid "Collapse All"
msgstr "Sbalit vše"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Sort files"
-msgstr "Hledat soubory"
+msgstr "Seřadit soubory"
#: editor/filesystem_dock.cpp
msgid "Sort by Name (Ascending)"
-msgstr ""
+msgstr "Seřadit podle názvu (vzestupně)"
#: editor/filesystem_dock.cpp
msgid "Sort by Name (Descending)"
-msgstr ""
+msgstr "Seřadit podle názvu (sestupně)"
#: editor/filesystem_dock.cpp
msgid "Sort by Type (Ascending)"
-msgstr ""
+msgstr "Seřadit podle typu (vzestupně)"
#: editor/filesystem_dock.cpp
msgid "Sort by Type (Descending)"
-msgstr ""
+msgstr "Seřadit podle typu (sestupně)"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Sort by Last Modified"
-msgstr "Datum modifikace"
+msgstr "Seřadit podle poslední změny"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Sort by First Modified"
-msgstr "Datum modifikace"
+msgstr "Seřadit podle první změny"
#: editor/filesystem_dock.cpp
msgid "Duplicate..."
@@ -4153,7 +4108,7 @@ msgstr "Přejmenovat..."
#: editor/filesystem_dock.cpp
msgid "Focus the search box"
-msgstr ""
+msgstr "Přejít do vyhledávacího pole"
#: editor/filesystem_dock.cpp
msgid "Previous Folder/File"
@@ -4440,6 +4395,10 @@ msgid ""
"Selecting another resource in the FileSystem dock without clicking Reimport "
"first will discard changes made in the Import dock."
msgstr ""
+"Máte Äekající zmÄ›ny, které jeÅ¡tÄ› nebyly použity. Klepnutím na tlaÄítko Znovu "
+"importovat uplatníte změny provedené v možnostech importu.\n"
+"Výběrem jiného zdroje v doku Souborový systém bez předchozího kliknutí na "
+"tlaÄítko Znovu importovat se zmÄ›ny provedené v doku Import zruší."
#: editor/import_dock.cpp
msgid "Import As:"
@@ -4469,14 +4428,12 @@ msgid "Failed to load resource."
msgstr "Selhalo nahrání zdroje."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Copy Properties"
-msgstr "Vlastnosti"
+msgstr "Kopírovat vlastnosti"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Paste Properties"
-msgstr "Vlastnosti"
+msgstr "Vložit vlastnosti"
#: editor/inspector_dock.cpp
msgid "Make Sub-Resources Unique"
@@ -4501,23 +4458,20 @@ msgid "Save As..."
msgstr "Uložit jako..."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Extra resource options."
-msgstr "Není v cestě ke zdroji."
+msgstr "Další možnosti zdrojů."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Edit Resource from Clipboard"
-msgstr "Editovat schránku zdrojů"
+msgstr "Upravit zdroj ze schránky"
#: editor/inspector_dock.cpp
msgid "Copy Resource"
msgstr "Kopírovat zdroj"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Make Resource Built-In"
-msgstr "Vytvořit vestavěný"
+msgstr "Vytvořit vestavěný zdroj"
#: editor/inspector_dock.cpp
msgid "Go to the previous edited object in history."
@@ -4532,9 +4486,8 @@ msgid "History of recently edited objects."
msgstr "Historie naposledy upravených objektů."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Open documentation for this object."
-msgstr "Otevřít dokumentaci"
+msgstr "Otevřít dokumentaci k tomuto objektu."
#: editor/inspector_dock.cpp editor/scene_tree_dock.cpp
msgid "Open Documentation"
@@ -4545,9 +4498,8 @@ msgid "Filter properties"
msgstr "Filtrovat vlastnosti"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Manage object properties."
-msgstr "Vlastnosti objektu."
+msgstr "Spravovat vlastnosti objektu."
#: editor/inspector_dock.cpp
msgid "Changes may be lost!"
@@ -4791,9 +4743,8 @@ msgid "Blend:"
msgstr "Prolínání:"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
-#, fuzzy
msgid "Parameter Changed:"
-msgstr "Parametr změněn"
+msgstr "Změněný parametr:"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
@@ -5519,11 +5470,11 @@ msgstr "všichni"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Search templates, projects, and demos"
-msgstr ""
+msgstr "Vyhledávání šablon, projektů a ukázek"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Search assets (excluding templates, projects, and demos)"
-msgstr ""
+msgstr "Vyhledávání zdrojů (kromě šablon, projektů a ukázek)"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Import..."
@@ -5567,7 +5518,7 @@ msgstr "ZIP soubor asetů"
#: editor/plugins/audio_stream_editor_plugin.cpp
msgid "Audio Preview Play/Pause"
-msgstr ""
+msgstr "Náhled zvuku Přehrát/Pozastavit"
#: editor/plugins/baked_lightmap_editor_plugin.cpp
msgid ""
@@ -5578,13 +5529,12 @@ msgstr ""
"Uložte scénu a zkuste to znovu."
#: editor/plugins/baked_lightmap_editor_plugin.cpp
-#, fuzzy
msgid ""
"No meshes to bake. Make sure they contain an UV2 channel and that the 'Use "
"In Baked Light' and 'Generate Lightmap' flags are on."
msgstr ""
-"Žádné sítÄ› k zapeÄení. UjistÄ›te se, že obsahují kanál UV2 a že je nastaven "
-"příznak \"Zapéct světlo\"."
+"Žádné sítÄ› k zapeÄení. UjistÄ›te se, že obsahují kanál UV2 a že jsou zapnuté "
+"pÅ™epínaÄe \"Použít v zapeÄeném svÄ›tle\" a \"Generovat svÄ›telnou mapu\"."
#: editor/plugins/baked_lightmap_editor_plugin.cpp
msgid "Failed creating lightmap images, make sure path is writable."
@@ -5727,15 +5677,13 @@ msgstr "Přemístit CanvasItem \"%s\" na (%d, %d)"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Locked"
-msgstr "UzamÄít vybraný"
+msgstr "ZamÄeno"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Grouped"
-msgstr "Skupiny"
+msgstr "Seskupené"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid ""
@@ -5839,13 +5787,12 @@ msgstr "Upravit kotvy"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid ""
"Project Camera Override\n"
"Overrides the running project's camera with the editor viewport camera."
msgstr ""
-"Přepsat herní kameru\n"
-"Herní kamera se nahradí kamerou z pohledu editoru."
+"Přepsání projektové kamery\n"
+"Přepíše kameru spuštěného projektu kamerou v pohledu editoru."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
@@ -5854,6 +5801,9 @@ msgid ""
"No project instance running. Run the project from the editor to use this "
"feature."
msgstr ""
+"Přepsání projektové kamery\n"
+"Není spuštěna žádná instance projektu. Chcete-li tuto funkci použít, spusťte "
+"projekt z editoru."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
@@ -5921,31 +5871,26 @@ msgstr "Režim výběru"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Drag: Rotate selected node around pivot."
-msgstr "Odstranit vybraný uzel nebo přechod."
+msgstr "PÅ™etažení: OtáÄení vybraného uzlu kolem pivotu."
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Alt+Drag: Move selected node."
-msgstr "Alt+Táhnutí: Přemístit"
+msgstr "Alt+přetažení: Přesun vybraného uzlu."
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "V: Set selected node's pivot position."
-msgstr "Odstranit vybraný uzel nebo přechod."
+msgstr "V: Nastavení polohy pivotu vybraného uzlu."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Alt+RMB: Show list of all nodes at position clicked, including locked."
msgstr ""
-"Zobrazit seznam objektů v bodě kliknutí\n"
-"(stejné jako Alt+PTM v režimu výběru)."
+"Alt+PTM: Zobrazí seznam vÅ¡ech uzlů na kliknuté pozici, vÄetnÄ› uzamÄených."
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "RMB: Add node at position clicked."
-msgstr ""
+msgstr "PTM: Přidání uzlu na pozici, na kterou bylo kliknuto."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
@@ -6183,14 +6128,12 @@ msgid "Clear Pose"
msgstr "Vymazat pózu"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Add Node Here"
-msgstr "Přidat uzel"
+msgstr "Přidání uzlu sem"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Instance Scene Here"
-msgstr "Scéna/Scény instance"
+msgstr "Instance scény sem"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Multiply grid step by 2"
@@ -6206,49 +6149,43 @@ msgstr "Přesunout pohled"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Zoom to 3.125%"
-msgstr ""
+msgstr "Přiblížení na 3,125 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Zoom to 6.25%"
-msgstr ""
+msgstr "Přiblížení na 6,25 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Zoom to 12.5%"
-msgstr ""
+msgstr "Přiblížení na 12,5 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 25%"
-msgstr "Zmenšit"
+msgstr "Přiblížení na 25 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 50%"
-msgstr "Zmenšit"
+msgstr "Přiblížení na 50 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 100%"
-msgstr "Zmenšit"
+msgstr "Přiblížení na 100 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 200%"
-msgstr "Zmenšit"
+msgstr "Přiblížení na 200 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 400%"
-msgstr "Zmenšit"
+msgstr "Přiblížení na 400 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 800%"
-msgstr "Zmenšit"
+msgstr "Přiblížení na 800 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Zoom to 1600%"
-msgstr ""
+msgstr "Přiblížení na 1600 %"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Add %s"
@@ -6493,9 +6430,8 @@ msgid "Couldn't create a single convex collision shape."
msgstr "Vytvoření jediného konvexního kolizního tvaru se nezdařilo."
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Create Simplified Convex Shape"
-msgstr "Vytvořit jediný konvexní tvar"
+msgstr "Vytvoření zjednodušeného konvexního tvaru"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Single Convex Shape"
@@ -6530,9 +6466,8 @@ msgid "No mesh to debug."
msgstr "Žádná mesh pro debugování."
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Mesh has no UV in layer %d."
-msgstr "Model nemá UV v této vrstvě"
+msgstr "Model nemá ve vrstvě %d žádné UV."
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "MeshInstance lacks a Mesh!"
@@ -6607,6 +6542,9 @@ msgid ""
"This is similar to single collision shape, but can result in a simpler "
"geometry in some cases, at the cost of accuracy."
msgstr ""
+"Vytvoří zjednodušený konvexní kolizní tvar.\n"
+"Je podobný jednoduchému koliznímu tvaru, ale v některých případech může vést "
+"k jednodušší geometrii na úkor přesnosti."
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Multiple Convex Collision Siblings"
@@ -6652,7 +6590,7 @@ msgstr "Rozbalit UV2 pro Lightmapu/AO"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Outline Mesh"
-msgstr "Vytvořit síť obrysu"
+msgstr "Vytvoření obrysového modelu"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Outline Size:"
@@ -6676,7 +6614,7 @@ msgstr ""
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Mesh Library"
-msgstr "Knihovna síťí"
+msgstr "Knihovna modelů"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Add Item"
@@ -6739,7 +6677,7 @@ msgstr "Povrch je neplatný (žádné stěny)."
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Select a Source Mesh:"
-msgstr "Vyberte zdrojovou síť:"
+msgstr "Vyberte zdrojový model:"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Select a Target Surface:"
@@ -7272,14 +7210,12 @@ msgid "Flip Portals"
msgstr "Převrátit horizontálně"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Room Generate Points"
-msgstr "PoÄet vygenerovaných bodů:"
+msgstr "Generovat body místnosti"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Generate Points"
-msgstr "PoÄet vygenerovaných bodů:"
+msgstr "Generovat body"
#: editor/plugins/room_manager_editor_plugin.cpp
#, fuzzy
@@ -7894,12 +7830,12 @@ msgstr "Perspektivní"
#. TRANSLATORS: This will be appended to the view name when Auto Orthogonal is enabled.
#: editor/plugins/spatial_editor_plugin.cpp
msgid " [auto]"
-msgstr ""
+msgstr " [auto]"
#. TRANSLATORS: This will be appended to the view name when Portal Occulusion is enabled.
#: editor/plugins/spatial_editor_plugin.cpp
msgid " [portals active]"
-msgstr ""
+msgstr " [aktivní portály]"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Transform Aborted."
@@ -7928,20 +7864,17 @@ msgid "None"
msgstr "Žádné"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Rotate"
-msgstr "Režim otáÄení"
+msgstr "OtoÄit"
#. TRANSLATORS: This refers to the movement that changes the position of an object.
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Translate"
-msgstr "Posunout:"
+msgstr "Posunout"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Scale"
-msgstr "Zvětšení:"
+msgstr "Zvětšit"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Scaling: "
@@ -7964,52 +7897,44 @@ msgid "Animation Key Inserted."
msgstr "AnimaÄní klÃ­Ä vložen."
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Pitch:"
-msgstr "Stoupání"
+msgstr "Stoupání:"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Yaw:"
-msgstr ""
+msgstr "Odklon (Yaw):"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Size:"
-msgstr "Velikost: "
+msgstr "Velikost:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Objects Drawn:"
-msgstr "Objekty vykreslené"
+msgstr "Kreslené objekty:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Material Changes:"
-msgstr "Změny materiálu"
+msgstr "Změny materiálu:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Shader Changes:"
-msgstr "Změny shaderu"
+msgstr "Změny shaderu:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Surface Changes:"
-msgstr "Změny povrchu"
+msgstr "Změny povrchu:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Draw Calls:"
-msgstr "Vykreslovací volání"
+msgstr "Vykreslovací volání:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Vertices:"
-msgstr "Vrcholy"
+msgstr "Vrcholy:"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "FPS: %d (%s ms)"
-msgstr ""
+msgstr "FPS: %d (%s ms)"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Top View."
@@ -8156,6 +8081,8 @@ msgstr "Rotace pohledu uzamknuta"
msgid ""
"To zoom further, change the camera's clipping planes (View -> Settings...)"
msgstr ""
+"Chcete-li přiblížení zvětšit, změňte roviny oříznutí kamery (Zobrazit -> "
+"Nastavení...)"
#: editor/plugins/spatial_editor_plugin.cpp
msgid ""
@@ -8172,7 +8099,7 @@ msgstr "Konvertovat na %s"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "XForm Dialog"
-msgstr "XForm Dialog"
+msgstr "XForm dialog"
#: editor/plugins/spatial_editor_plugin.cpp
msgid ""
@@ -8313,7 +8240,7 @@ msgstr "4 výřezy"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Gizmos"
-msgstr "Gizmos"
+msgstr "Gizma"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Origin"
@@ -8609,7 +8536,7 @@ msgstr "VytvoÅ™it rámeÄky ze Sprite Sheet"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "SpriteFrames"
-msgstr "SpriteFrames"
+msgstr "Snímky spritu"
#: editor/plugins/texture_region_editor_plugin.cpp
msgid "Set Region Rect"
@@ -8695,18 +8622,16 @@ msgid "{num} font(s)"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "No fonts found."
-msgstr "Nenalezeno!"
+msgstr "Nebyla nalezena žádná písma."
#: editor/plugins/theme_editor_plugin.cpp
msgid "{num} icon(s)"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "No icons found."
-msgstr "Nenalezeno!"
+msgstr "Nebyly nalezeny žádné ikony."
#: editor/plugins/theme_editor_plugin.cpp
msgid "{num} stylebox(es)"
@@ -8735,9 +8660,8 @@ msgid "Importing items {n}/{n}"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Updating the editor"
-msgstr "UkonÄit editor?"
+msgstr "Aktualizace editoru"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -8754,14 +8678,12 @@ msgid "With Data"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select by data type:"
-msgstr "Vybrat uzel"
+msgstr "Výběr podle typu dat:"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible color items."
-msgstr "Vyberte složku pro skenování"
+msgstr "Vybrat všechny viditelné barevné položky."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible color items and their data."
@@ -8772,9 +8694,8 @@ msgid "Deselect all visible color items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible constant items."
-msgstr "Nejprve vyberte nastavení ze seznamu!"
+msgstr "Vybrat všechny viditelné konstantní položky."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible constant items and their data."
@@ -8785,9 +8706,8 @@ msgid "Deselect all visible constant items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible font items."
-msgstr "Nejprve vyberte nastavení ze seznamu!"
+msgstr "Vybrat všechny viditelné položky písma."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible font items and their data."
@@ -8798,19 +8718,16 @@ msgid "Deselect all visible font items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible icon items."
-msgstr "Nejprve vyberte nastavení ze seznamu!"
+msgstr "Vybrat všechny viditelné položky ikon."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible icon items and their data."
-msgstr "Nejprve vyberte nastavení ze seznamu!"
+msgstr "Vybrat všechny viditelné položky ikon a jejich data."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Deselect all visible icon items."
-msgstr "Nejprve vyberte nastavení ze seznamu!"
+msgstr "Zrušit výběr všech viditelných položek ikon."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible stylebox items."
@@ -8831,19 +8748,16 @@ msgid ""
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Collapse types."
-msgstr "Sbalit vše"
+msgstr "Sbalit typy."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Expand types."
-msgstr "Rozbalit vše"
+msgstr "Rozbalit typy."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all Theme items."
-msgstr "Vybrat soubor Å¡ablony"
+msgstr "Vybrat všechny položky motivu."
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -8997,9 +8911,8 @@ msgid "Add Type:"
msgstr "Typ:"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Item:"
-msgstr "Přidat položku"
+msgstr "Přidat položku:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9007,9 +8920,8 @@ msgid "Add StyleBox Item"
msgstr "Přidat všechny položky"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove Items:"
-msgstr "Odstranit položku"
+msgstr "Odstranit položky:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove Class Items"
@@ -9050,9 +8962,8 @@ msgid "Editor Theme"
msgstr "Editovat téma"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select Another Theme Resource:"
-msgstr "Smazat zdroj"
+msgstr "Vybrerte jiný zdroj motivu:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9095,9 +9006,8 @@ msgid "Add Item Type"
msgstr "Přidat položku"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Node Types:"
-msgstr "Typ uzlu"
+msgstr "Typy uzlu:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9118,9 +9028,8 @@ msgid "Override all default type items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Theme:"
-msgstr "Téma"
+msgstr "Motiv:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9142,9 +9051,8 @@ msgid "Default Preview"
msgstr "Obnovit náhled"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select UI Scene:"
-msgstr "Vyberte zdrojovou síť:"
+msgstr "Vyberte scénu uživatelského rozhraní:"
#: editor/plugins/theme_editor_preview.cpp
msgid ""
@@ -9421,7 +9329,7 @@ msgstr "Bitmaska"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Priority"
-msgstr "Priority"
+msgstr "Priorita"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Icon"
@@ -9796,7 +9704,7 @@ msgstr "Boolean"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Sampler"
-msgstr "Sampler"
+msgstr "VzorkovaÄ"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Add input port"
@@ -10642,12 +10550,11 @@ msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "VisualShader"
-msgstr "VisualShader"
+msgstr "Vizuální shader"
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Edit Visual Property:"
-msgstr "Upravit vizuální vlastnost"
+msgstr "Upravit vizuální vlastnost:"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Visual Shader Mode Changed"
@@ -10959,7 +10866,7 @@ msgstr "InstalaÄní cesta k projektu:"
#: editor/project_manager.cpp
msgid "Renderer:"
-msgstr "Renderer:"
+msgstr "VykreslovaÄ:"
#: editor/project_manager.cpp
msgid "OpenGL ES 3.0"
@@ -11092,14 +10999,12 @@ msgid "Are you sure to run %d projects at once?"
msgstr "Jste si jisti, že chcete spustit %d projektů najednou?"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove %d projects from the list?"
-msgstr "Vyberte zařízení ze seznamu"
+msgstr "Odstranit %d projektů ze seznamu?"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove this project from the list?"
-msgstr "Vyberte zařízení ze seznamu"
+msgstr "Odstranit tento projekt ze seznamu?"
#: editor/project_manager.cpp
msgid ""
@@ -11235,14 +11140,14 @@ msgstr ""
"jeden znak \"/\"."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Klávesa "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Klávesa "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "TlaÄítko gamepadu"
@@ -12747,7 +12652,7 @@ msgstr "GridMap Vyplnit výběr"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Grid Map"
-msgstr "Grid Map"
+msgstr "Mřížková mapa"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Snap View"
@@ -12880,7 +12785,7 @@ msgstr "Zapéct NavMesh"
#: modules/recast/navigation_mesh_editor_plugin.cpp
msgid "Clear the navigation mesh."
-msgstr "Vymazat navigaÄní síť."
+msgstr "Vymazat navigaÄní model."
#: modules/recast/navigation_mesh_generator.cpp
msgid "Setting up Configuration..."
@@ -13382,14 +13287,12 @@ msgid "Running on %s"
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Exporting APK..."
-msgstr "Exportování všeho"
+msgstr "Exportování APK..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Uninstalling..."
-msgstr "Odinstalovat"
+msgstr "Odinstalování..."
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -13397,9 +13300,8 @@ msgid "Installing to device, please wait..."
msgstr "NaÄítání, prosím Äekejte..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not install to device: %s"
-msgstr "Nelze spustit podproces!"
+msgstr "Nepodařilo se nainstalovat do zařízení: %s"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -13521,16 +13423,12 @@ msgid "Signing debug %s..."
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Signing release %s..."
-msgstr ""
-"Skenování souborů,\n"
-"Prosím, Äekejte..."
+msgstr "Podepisování vydání %s..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not find keystore, unable to export."
-msgstr "Nelze otevřít šablonu pro export:"
+msgstr "NepodaÅ™ilo se najít úložiÅ¡tÄ› klíÄů, nelze exportovat."
#: platform/android/export/export_plugin.cpp
msgid "'apksigner' returned with error #%d"
@@ -13591,14 +13489,12 @@ msgid ""
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files to gradle project\n"
-msgstr "Nelze upravit project.godot v umístění projektu."
+msgstr "Nelze exportovat soubory projektu do projektu gradle\n"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not write expansion package file!"
-msgstr "Nelze zapsat soubor:"
+msgstr "Nelze zapsat soubor rozÅ¡iÅ™ujícího balíÄku!"
#: platform/android/export/export_plugin.cpp
msgid "Building Android Project (gradle)"
@@ -13635,11 +13531,12 @@ msgid "Creating APK..."
msgstr "Vytvářím kontury..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Could not find template APK to export:\n"
"%s"
-msgstr "Nelze otevřít šablonu pro export:"
+msgstr ""
+"Nepodařilo se najít šablonu APK pro export:\n"
+"%s"
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -13655,9 +13552,8 @@ msgid "Adding files..."
msgstr "Přidávám %s..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files"
-msgstr "Nelze zapsat soubor:"
+msgstr "Nelze exportovat soubory projektu"
#: platform/android/export/export_plugin.cpp
msgid "Aligning APK..."
@@ -13722,14 +13618,12 @@ msgid "Could not read HTML shell:"
msgstr "Nebylo možné pÅ™eÄíst HTML shell:"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not create HTTP server directory:"
-msgstr "Nelze vytvořit složku."
+msgstr "Nepodařilo se vytvořit adresář serveru HTTP:"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Error starting HTTP server:"
-msgstr "Chyba při ukládání scény."
+msgstr "Chyba při spuštění serveru HTTP:"
#: platform/osx/export/export.cpp
#, fuzzy
@@ -14361,7 +14255,7 @@ msgstr ""
#: scene/3d/soft_body.cpp
msgid "This body will be ignored until you set a mesh."
-msgstr "Toto tělo bude ignorováno dokud nenastavíte síť."
+msgstr "Toto těleso bude ignorováno, dokud nenastavíte model."
#: scene/3d/soft_body.cpp
msgid ""
@@ -14475,7 +14369,7 @@ msgstr "HSV"
#: scene/gui/color_picker.cpp
msgid "Raw"
-msgstr "Raw"
+msgstr "Surový"
#: scene/gui/color_picker.cpp
msgid "Switch between hexadecimal and code values."
diff --git a/editor/translations/da.po b/editor/translations/da.po
index af1038552e..fcef08f4e1 100644
--- a/editor/translations/da.po
+++ b/editor/translations/da.po
@@ -23,7 +23,7 @@ msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-04-26 22:31+0000\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
"Last-Translator: Kim Nielsen <kimmowich@stofanet.dk>\n"
"Language-Team: Danish <https://hosted.weblate.org/projects/godot-engine/"
"godot/da/>\n"
@@ -32,7 +32,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.7-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -5291,7 +5291,7 @@ msgstr "Slut"
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Immediate"
-msgstr "Umiddelbart"
+msgstr "Umiddelbar"
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Sync"
@@ -5332,8 +5332,8 @@ msgid ""
"Shift+LMB to create connections."
msgstr ""
"Vælg og flyt nodes.\n"
-"RMB for at tilføje ny nodes.\n"
-"Shift+LMB for at oprette forbindelse."
+"RMB for at tilføje nye nodes.\n"
+"Shift+LMB for at oprette forbindelser."
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Create new nodes."
@@ -5367,7 +5367,7 @@ msgstr "Afspil Mode:"
#: editor/plugins/animation_tree_editor_plugin.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "AnimationTree"
-msgstr "Animation Tree"
+msgstr "Animation Træ"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "New name:"
@@ -5380,11 +5380,11 @@ msgstr "Skalér:"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Fade In (s):"
-msgstr ""
+msgstr "Fade ind (s):"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Fade Out (s):"
-msgstr ""
+msgstr "Fade Ud (s):"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Blend"
@@ -5409,7 +5409,7 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Start!"
-msgstr ""
+msgstr "Start!"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/plugins/multimesh_editor_plugin.cpp
@@ -5442,11 +5442,11 @@ msgstr "Tilføj Input"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Clear Auto-Advance"
-msgstr ""
+msgstr "Ryd Automatisk Fremrykning"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Set Auto-Advance"
-msgstr ""
+msgstr "Sæt Automatisk Fremrykning"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#, fuzzy
@@ -5463,7 +5463,7 @@ msgstr "Animationstræ er ugyldigt."
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Animation Node"
-msgstr ""
+msgstr "Animations Node"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "OneShot Node"
@@ -5487,15 +5487,15 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "TimeScale Node"
-msgstr ""
+msgstr "Tidsskala Node"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "TimeSeek Node"
-msgstr ""
+msgstr "Tidssøgning Node"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Transition Node"
-msgstr ""
+msgstr "Overgangs Node"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#, fuzzy
@@ -5525,52 +5525,49 @@ msgid "Download"
msgstr "Download"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Connection error, please try again."
msgstr "Forbindelsesfejl, prøv venligst igen."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Can't connect."
-msgstr "Ingen forbindelse."
+msgstr "Kan ikke oprette forbindelse."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Can't connect to host:"
-msgstr "Kan ikke forbinde til host:"
+msgstr "Kan ikke forbinde til værten:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "No response from host:"
-msgstr "Ingen respons fra host:"
+msgstr "Intet svar fra værten:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "No response."
-msgstr "Ingen reaktion."
+msgstr "Intet svar."
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Can't resolve hostname:"
-msgstr ""
+msgstr "Kan ikke løse værtsnavnet:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Can't resolve."
msgstr "Kan ikke løses."
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Request failed, return code:"
msgstr "Forespørgsel mislykkedes, returkode:"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Cannot save response to:"
-msgstr "Kan ikke gemme respons i:"
+msgstr "Kan ikke gemme svar til:"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Write error."
msgstr "Skrivefejl."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Request failed, too many redirects"
-msgstr ""
+msgstr "Anmodningen mislykkedes, for mange omdirigeringer"
#: editor/plugins/asset_library_editor_plugin.cpp
#, fuzzy
@@ -5578,12 +5575,10 @@ msgid "Redirect loop."
msgstr "Omdiriger Løkke."
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Request failed, timeout"
msgstr "Forespørgsel mislykkedes, tiden udløb."
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Timeout."
msgstr "Tiden udløb."
@@ -5593,23 +5588,24 @@ msgstr "Fejlet:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Bad download hash, assuming file has been tampered with."
-msgstr ""
+msgstr "DÃ¥rligt download-hash, formoder at filen er blevet manipuleret."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Expected:"
-msgstr ""
+msgstr "Forventet:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Got:"
-msgstr ""
+msgstr "Fik:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Failed SHA-256 hash check"
-msgstr ""
+msgstr "Mislykkedes SHA-256 hash-tjek"
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Asset Download Error:"
-msgstr ""
+msgstr "Asset Download Fejl:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Downloading (%s / %s)..."
@@ -5620,8 +5616,9 @@ msgid "Downloading..."
msgstr "Downloader..."
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Resolving..."
-msgstr ""
+msgstr "Løser..."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Error making request"
@@ -5632,9 +5629,8 @@ msgid "Idle"
msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Install..."
-msgstr "Installér..."
+msgstr "Installere.."
#: editor/plugins/asset_library_editor_plugin.cpp
#, fuzzy
@@ -5643,19 +5639,20 @@ msgstr "Prøv igen"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Download Error"
-msgstr ""
+msgstr "Fejl i Download"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Download for this asset is already in progress!"
-msgstr ""
+msgstr "Download for dette asset er allerede i gang!"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Recently Updated"
-msgstr ""
+msgstr "Nyligt Opdateret"
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Least Recently Updated"
-msgstr ""
+msgstr "Seneste Nyligt Opdateret"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Name (A-Z)"
@@ -5678,9 +5675,8 @@ msgid "First"
msgstr "Første"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Previous"
-msgstr "Forrige fane"
+msgstr "Forrige"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Next"
@@ -5696,11 +5692,12 @@ msgstr "Alle"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Search templates, projects, and demos"
-msgstr ""
+msgstr "Søg skabeloner, projekter og demoer"
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Search assets (excluding templates, projects, and demos)"
-msgstr ""
+msgstr "Søge assets (undtagen skabeloner, projekter og demoer)"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Import..."
@@ -5743,14 +5740,18 @@ msgid "Assets ZIP File"
msgstr "Assets zipfil"
#: editor/plugins/audio_stream_editor_plugin.cpp
+#, fuzzy
msgid "Audio Preview Play/Pause"
-msgstr ""
+msgstr "Lyd forhåndsvisning Afspil/pause"
#: editor/plugins/baked_lightmap_editor_plugin.cpp
+#, fuzzy
msgid ""
"Can't determine a save path for lightmap images.\n"
"Save your scene and try again."
msgstr ""
+"Kan ikke finde et sted at gemme lightmap images.\n"
+"Gem din scene, og prøv igen."
#: editor/plugins/baked_lightmap_editor_plugin.cpp
msgid ""
@@ -11420,11 +11421,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/de.po b/editor/translations/de.po
index 9f6f7ee0bf..ecc7ec9611 100644
--- a/editor/translations/de.po
+++ b/editor/translations/de.po
@@ -73,13 +73,14 @@
# jmih03 <joerni@mail.de>, 2021.
# Dominik Moos <dominik.moos@protonmail.com>, 2021.
# Zae Chao <zaevi@live.com>, 2021.
+# Tim <tim14speckenwirth@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-23 10:13+0000\n"
-"Last-Translator: Zae Chao <zaevi@live.com>\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
+"Last-Translator: Tim <tim14speckenwirth@gmail.com>\n"
"Language-Team: German <https://hosted.weblate.org/projects/godot-engine/"
"godot/de/>\n"
"Language: de\n"
@@ -11218,14 +11219,14 @@ msgstr ""
"der Suchanfrage vorhanden sein."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Taste "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Physische Taste"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Taste "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Joysticktaste"
@@ -14383,7 +14384,7 @@ msgid ""
"Please check the RoomList branch has been assigned in the RoomManager."
msgstr ""
"RoomList-Pfad ist ungültig.\n"
-"Wurde der RoomList-Zweig im RoomManager zugewiesen?"
+"Bitte überprüfen Sie, ob der RoomList-Zweig im RoomManager zugewiesen wurde."
#: scene/3d/room_manager.cpp
msgid "RoomList contains no Rooms, aborting."
@@ -14420,8 +14421,9 @@ msgid ""
"Error calculating room bounds.\n"
"Ensure all rooms contain geometry or manual bounds."
msgstr ""
-"Fehler beim Berechnen der Raumbegrenzungen.\n"
-"Enthalten alle Räume Geometrie oder manuelle Begrenzungen?"
+"Fehler bei der Berechnung von Raumbegrenzungen.\n"
+"Stellen Sie sicher, dass alle Räume Geometrie oder manuelle Begrenzungen "
+"enthalten."
#: scene/3d/soft_body.cpp
msgid "This body will be ignored until you set a mesh."
diff --git a/editor/translations/editor.pot b/editor/translations/editor.pot
index 60507c472d..778947373b 100644
--- a/editor/translations/editor.pot
+++ b/editor/translations/editor.pot
@@ -10587,11 +10587,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/el.po b/editor/translations/el.po
index d8d6251838..07e55d9a90 100644
--- a/editor/translations/el.po
+++ b/editor/translations/el.po
@@ -11340,14 +11340,14 @@ msgstr ""
"πεÏιέχει τουλάχιστον έναν χαÏακτήÏα `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Κλειδί "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Κλειδί "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Κουμπί Joystick"
diff --git a/editor/translations/eo.po b/editor/translations/eo.po
index c0aa10e89f..9ccaacaa39 100644
--- a/editor/translations/eo.po
+++ b/editor/translations/eo.po
@@ -11061,14 +11061,14 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Klavo "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Klavo "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Butono de stirstango"
diff --git a/editor/translations/es.po b/editor/translations/es.po
index bc314e8294..b1b3ba6b69 100644
--- a/editor/translations/es.po
+++ b/editor/translations/es.po
@@ -70,13 +70,14 @@
# Erick Figueroa <querecuto@hotmail.com>, 2021.
# jonagamerpro1234 ss <js398704@gmail.com>, 2021.
# davidrogel <david.rogel.pernas@icloud.com>, 2021.
+# Anderson Guzman Abreu <chicobello1111@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-23 10:13+0000\n"
-"Last-Translator: Lisandro Lorea <lisandrolorea@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
+"Last-Translator: Anderson Guzman Abreu <chicobello1111@gmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/"
"godot/es/>\n"
"Language: es\n"
@@ -2233,7 +2234,7 @@ msgstr "Buscar en la Ayuda"
#: editor/editor_help_search.cpp
msgid "Case Sensitive"
-msgstr "Respetar Mayus./Minus."
+msgstr "Respeta Mayus./Minus."
#: editor/editor_help_search.cpp
msgid "Show Hierarchy"
@@ -11212,14 +11213,14 @@ msgstr ""
"al menos un carácter `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Tecla "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Tecla Física"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Tecla "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Botón del Mando"
diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po
index dbff18af4e..1276ebe607 100644
--- a/editor/translations/es_AR.po
+++ b/editor/translations/es_AR.po
@@ -11148,14 +11148,14 @@ msgstr ""
"al menos un carácter `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Tecla "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Tecla Física"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Tecla "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Bottón de Joystick"
diff --git a/editor/translations/et.po b/editor/translations/et.po
index ccc2681d0f..bc58f54d39 100644
--- a/editor/translations/et.po
+++ b/editor/translations/et.po
@@ -10768,11 +10768,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/eu.po b/editor/translations/eu.po
index 9a2948582e..54b7590858 100644
--- a/editor/translations/eu.po
+++ b/editor/translations/eu.po
@@ -10726,11 +10726,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/fa.po b/editor/translations/fa.po
index e61aa0a6c7..cc894bba12 100644
--- a/editor/translations/fa.po
+++ b/editor/translations/fa.po
@@ -11249,11 +11249,11 @@ msgstr ""
"`کاراکتر باشد."
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/fi.po b/editor/translations/fi.po
index a7dca1dd0d..830a83ccd8 100644
--- a/editor/translations/fi.po
+++ b/editor/translations/fi.po
@@ -17,7 +17,7 @@ msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-18 15:35+0000\n"
+"PO-Revision-Date: 2021-10-28 22:09+0000\n"
"Last-Translator: Tapani Niemi <tapani.niemi@kapsi.fi>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/"
"godot/fi/>\n"
@@ -1302,7 +1302,7 @@ msgstr "Assettien asentaja"
#: editor/editor_audio_buses.cpp
msgid "Speakers"
-msgstr "Kaiuttimiet"
+msgstr "Kaiuttimet"
#: editor/editor_audio_buses.cpp
msgid "Add Effect"
@@ -2210,7 +2210,7 @@ msgstr "Signaali"
#: editor/editor_help_search.cpp
msgid "Constant"
-msgstr "Muuttumaton"
+msgstr "Vakio"
#: editor/editor_help_search.cpp
msgid "Property"
@@ -5027,7 +5027,7 @@ msgstr "Pakota valkoisen modulaatio"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Include Gizmos (3D)"
-msgstr "Näytä 3D-muokkaimet"
+msgstr "Näytä 3D-vempaimet"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Pin AnimationPlayer"
@@ -7997,7 +7997,7 @@ msgstr "Näytä ympäristö"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Gizmos"
-msgstr "Näytä muokkaimet"
+msgstr "Näytä vempaimet"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Information"
@@ -8100,9 +8100,9 @@ msgid ""
msgstr ""
"Napsauta vaihtaaksesi näkyvyystilojen välillä.\n"
"\n"
-"Avoin silmä: muokkain on näkyvissä.\n"
-"Suljettu silmä: muokkain on piilotettu.\n"
-"Puoliavoin silmä: muokkain on näkyvissä myös läpikuultamattomien pintojen "
+"Avoin silmä: vempain on näkyvissä.\n"
+"Suljettu silmä: vempain on piilotettu.\n"
+"Puoliavoin silmä: vempain on näkyvissä myös läpikuultamattomien pintojen "
"läpi (\"röntgen\")."
#: editor/plugins/spatial_editor_plugin.cpp
@@ -8228,7 +8228,7 @@ msgstr "4 Näyttöruutua"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Gizmos"
-msgstr "Muokkaimet"
+msgstr "Vempaimet"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View Origin"
@@ -8313,7 +8313,7 @@ msgstr "Jälki"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Unnamed Gizmo"
-msgstr "Nimetön muokkain"
+msgstr "Nimetön vempain"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Create Mesh2D"
@@ -8481,7 +8481,7 @@ msgstr "Lisää tekstuuri tiedostosta"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Add Frames from a Sprite Sheet"
-msgstr "Lisää ruudut Sprite Sheetistä"
+msgstr "Lisää ruudut sprite-arkista"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Insert Empty (Before)"
@@ -8517,7 +8517,7 @@ msgstr "Valitse tai tyhjää kaikki ruudut"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Create Frames from Sprite Sheet"
-msgstr "Luo ruudut Sprite Sheetistä"
+msgstr "Luo ruudut sprite-arkista"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "SpriteFrames"
@@ -11083,14 +11083,14 @@ msgstr ""
"mukana vähintään yksi `/` merkki."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Näppäin "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Fyysinen avain"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Näppäin "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Ohjaimen painike"
diff --git a/editor/translations/fil.po b/editor/translations/fil.po
index 44176ea6bc..6452afd85e 100644
--- a/editor/translations/fil.po
+++ b/editor/translations/fil.po
@@ -10636,11 +10636,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/fr.po b/editor/translations/fr.po
index 872b22322e..5661d9bb62 100644
--- a/editor/translations/fr.po
+++ b/editor/translations/fr.po
@@ -11266,14 +11266,14 @@ msgstr ""
"recherche doit inclure au moins un caractère `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Touche "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Touche physique"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Touche "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Bouton de joystick"
diff --git a/editor/translations/ga.po b/editor/translations/ga.po
index de8d178967..25b6ffc4eb 100644
--- a/editor/translations/ga.po
+++ b/editor/translations/ga.po
@@ -10617,11 +10617,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/gl.po b/editor/translations/gl.po
index ff6fc36818..7d310fe7f9 100644
--- a/editor/translations/gl.po
+++ b/editor/translations/gl.po
@@ -11089,14 +11089,14 @@ msgstr ""
"polo menos un carácter '/'."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Botón: "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Botón: "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Botón Joystick"
diff --git a/editor/translations/he.po b/editor/translations/he.po
index 9e41b7f9c4..094b9c7850 100644
--- a/editor/translations/he.po
+++ b/editor/translations/he.po
@@ -11249,14 +11249,14 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "מקש "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "מקש "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr ""
diff --git a/editor/translations/hi.po b/editor/translations/hi.po
index 585fb5e33c..637ce36b91 100644
--- a/editor/translations/hi.po
+++ b/editor/translations/hi.po
@@ -14,13 +14,14 @@
# Bishwajeet Parhi <bishwajeet.techmaster@gmail.com>, 2020.
# l4KKY <greenforcesave@gmail.com>, 2020.
# harvinder rathor <harvinderr09@gmail.com>, 2021.
+# Sumanyu Aggarwal <sumanyu.code@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-05-03 21:29+0000\n"
-"Last-Translator: harvinder rathor <harvinderr09@gmail.com>\n"
+"PO-Revision-Date: 2021-10-28 22:09+0000\n"
+"Last-Translator: Sumanyu Aggarwal <sumanyu.code@gmail.com>\n"
"Language-Team: Hindi <https://hosted.weblate.org/projects/godot-engine/godot/"
"hi/>\n"
"Language: hi\n"
@@ -28,7 +29,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.7-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -383,7 +384,7 @@ msgstr ""
#: editor/animation_track_editor.cpp
#, fuzzy
msgid "animation"
-msgstr "कारà¥à¤¯à¥‹à¤‚:"
+msgstr "à¤à¤¨à¤¿à¤®à¥‡à¤¶à¤¨"
#: editor/animation_track_editor.cpp
msgid "AnimationPlayer can't animate itself, only other players."
@@ -3677,14 +3678,12 @@ msgid "Can't resolve the requested address."
msgstr ""
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Can't connect to the mirror."
-msgstr "कनेकà¥à¤Ÿ नहीं कर सकते।"
+msgstr "शीशे से जोड़ नहीं सकते|"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "No response from the mirror."
-msgstr "कोई जवाब नहीं।"
+msgstr "शीशे से कोई जवाब नहीं।"
#: editor/export_template_manager.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -10996,11 +10995,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/hr.po b/editor/translations/hr.po
index a61ff60a0e..bc30be7c08 100644
--- a/editor/translations/hr.po
+++ b/editor/translations/hr.po
@@ -10692,11 +10692,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/hu.po b/editor/translations/hu.po
index 3ceb60fa99..fbce7de381 100644
--- a/editor/translations/hu.po
+++ b/editor/translations/hu.po
@@ -17,13 +17,14 @@
# Újvári Marcell <mmarci72@gmail.com>, 2021.
# Gergő Pistai <gergopistai@gmail.com>, 2021.
# Misi <varady.misi@gmail.com>, 2021.
+# Looky1173 <lgl1173and2006@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-09 16:52+0000\n"
-"Last-Translator: Misi <varady.misi@gmail.com>\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
+"Last-Translator: Looky1173 <lgl1173and2006@gmail.com>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/godot-engine/"
"godot/hu/>\n"
"Language: hu\n"
@@ -490,7 +491,7 @@ msgstr "Animáció - Kulcsok Mozgatása"
#: editor/animation_track_editor.cpp
#: modules/visual_script/visual_script_editor.cpp
msgid "Clipboard is empty!"
-msgstr ""
+msgstr "A vágólap üres!"
#: editor/animation_track_editor.cpp
msgid "Paste Tracks"
@@ -1173,7 +1174,7 @@ msgstr "Köszönet a Godot közösségétől!"
#: editor/editor_about.cpp editor/editor_node.cpp editor/project_manager.cpp
msgid "Click to copy."
-msgstr ""
+msgstr "Kattints a másoláshoz."
#: editor/editor_about.cpp
msgid "Godot Engine contributors"
@@ -1558,6 +1559,8 @@ msgstr "A fájl nem létezik."
#: editor/editor_autoload_settings.cpp
msgid "%s is an invalid path. Not in resource path (res://)."
msgstr ""
+"%s egy érvénytelen elérési útvonal. Nincs az erőforrás elérési útvonalában "
+"(res://)."
#: editor/editor_autoload_settings.cpp
msgid "Add AutoLoad"
@@ -1756,8 +1759,9 @@ msgid "Import Dock"
msgstr "Dock importálása"
#: editor/editor_feature_profile.cpp
+#, fuzzy
msgid "Allows to view and edit 3D scenes."
-msgstr ""
+msgstr "Lehetővé teszi a 3D jelenetek megtekintését és szerkesztését."
#: editor/editor_feature_profile.cpp
msgid "Allows to edit scripts using the integrated script editor."
@@ -11019,14 +11023,14 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Kulcs "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Kulcs "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Joy gomb"
diff --git a/editor/translations/id.po b/editor/translations/id.po
index b45942a7c4..784409cddb 100644
--- a/editor/translations/id.po
+++ b/editor/translations/id.po
@@ -11169,14 +11169,14 @@ msgstr ""
"mengandung paling tidak satu karakter `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Kunci "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Kunci "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Tombol Joystick"
diff --git a/editor/translations/is.po b/editor/translations/is.po
index 0d4f9a00f5..4c9221925a 100644
--- a/editor/translations/is.po
+++ b/editor/translations/is.po
@@ -10757,11 +10757,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/it.po b/editor/translations/it.po
index 8ec6f16734..5dfecbf0e8 100644
--- a/editor/translations/it.po
+++ b/editor/translations/it.po
@@ -66,8 +66,8 @@ msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-11 15:44+0000\n"
-"Last-Translator: Luigi <luibass92@live.it>\n"
+"PO-Revision-Date: 2021-10-24 20:52+0000\n"
+"Last-Translator: Riteo Siuga <riteo@posteo.net>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/"
"godot/it/>\n"
"Language: it\n"
@@ -1948,7 +1948,7 @@ msgstr "Rendi attuale"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp
msgid "Import"
-msgstr "Importazione"
+msgstr "Importa"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
@@ -11471,14 +11471,14 @@ msgstr ""
"contenere almeno un carattere `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Tasto "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Tasto "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Pulsante Joy"
diff --git a/editor/translations/ja.po b/editor/translations/ja.po
index 4a2075e20b..0f9ea94f57 100644
--- a/editor/translations/ja.po
+++ b/editor/translations/ja.po
@@ -11092,14 +11092,14 @@ msgstr ""
"ã¨ã‚‚1ã¤å¿…è¦ã§ã™ã€‚"
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "キー "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "物ç†ã‚­ãƒ¼"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "キー "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "ゲームパッドã®ãƒœã‚¿ãƒ³"
diff --git a/editor/translations/ka.po b/editor/translations/ka.po
index 548e016719..1ce6deba73 100644
--- a/editor/translations/ka.po
+++ b/editor/translations/ka.po
@@ -11004,11 +11004,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/km.po b/editor/translations/km.po
index 860accd0c5..e54ab26b7b 100644
--- a/editor/translations/km.po
+++ b/editor/translations/km.po
@@ -10596,11 +10596,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/ko.po b/editor/translations/ko.po
index b9faa4762e..649e623c63 100644
--- a/editor/translations/ko.po
+++ b/editor/translations/ko.po
@@ -25,13 +25,15 @@
# Postive_ Cloud <postive12@gmail.com>, 2021.
# dewcked <dewcked@protonmail.ch>, 2021.
# SteamB23 <steamb23@outlook.com>, 2021.
+# Jaemin Park <ppparkje@naver.com>, 2021.
+# ì‹ ë™ê·œ <rlsl0422@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-07 10:25+0000\n"
-"Last-Translator: SteamB23 <steamb23@outlook.com>\n"
+"PO-Revision-Date: 2021-11-03 13:15+0000\n"
+"Last-Translator: Myeongjin Lee <aranet100@gmail.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/"
"godot/ko/>\n"
"Language: ko\n"
@@ -522,18 +524,18 @@ msgid ""
"Alternatively, use an import preset that imports animations to separate "
"files."
msgstr ""
-"ì´ ì• ë‹ˆë©”ì´ì…˜ì€ 불러온 ì”¬ì— ì†í•´ 있습니다. 불러온 íŠ¸ëž™ì˜ ë³€ê²½ì‚¬í•­ì€ ì €ìž¥ë˜ì§€ "
+"ì´ ì• ë‹ˆë©”ì´ì…˜ì€ 가져온 ì”¬ì— ì†í•´ 있습니다. 가져온 íŠ¸ëž™ì˜ ë³€ê²½ì‚¬í•­ì€ ì €ìž¥ë˜ì§€ "
"않습니다.\n"
"\n"
-"저장 ê¸°ëŠ¥ì„ í™œì„±í™”í•˜ë ¤ë©´ 커스텀 íŠ¸ëž™ì„ ì¶”ê°€í•˜ê³ , ì”¬ì˜ ë¶ˆëŸ¬ì˜¤ê¸°ê¸° 설정으로 ê°€"
+"저장 ê¸°ëŠ¥ì„ í™œì„±í™”í•˜ë ¤ë©´ 커스텀 íŠ¸ëž™ì„ ì¶”ê°€í•˜ê³ , ì”¬ì˜ ê°€ì ¸ì˜¤ê¸° 설정으로 ê°€"
"서\n"
"\"Animation > Storage\" ì„¤ì •ì„ \"Files\"ë¡œ, \"Animation > Keep Custom Tracks"
"\" ì„¤ì •ì„ í™œì„±í™”í•œ ë’¤, 다시 가져오십시오.\n"
-"아니면 불러오기 프리셋으로 애니메ì´ì…˜ì„ 별ë„ì˜ íŒŒì¼ë¡œ 불러올 ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤."
+"아니면 가져오기 프리셋으로 애니메ì´ì…˜ì„ 별ë„ì˜ íŒŒì¼ë¡œ 가져올 ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤."
#: editor/animation_track_editor.cpp
msgid "Warning: Editing imported animation"
-msgstr "경고: 불러온 애니메ì´ì…˜ì„ 편집하고 있ìŒ"
+msgstr "경고: 가져온 애니메ì´ì…˜ì„ 편집하고 있ìŒ"
#: editor/animation_track_editor.cpp
msgid "Select an AnimationPlayer node to create and edit animations."
@@ -1740,7 +1742,7 @@ msgstr "파ì¼ì‹œìŠ¤í…œ ë…"
#: editor/editor_feature_profile.cpp
msgid "Import Dock"
-msgstr "ë… ë¶ˆëŸ¬ì˜¤ê¸°"
+msgstr "ë… ê°€ì ¸ì˜¤ê¸°"
#: editor/editor_feature_profile.cpp
msgid "Allows to view and edit 3D scenes."
@@ -1773,7 +1775,7 @@ msgid ""
"Allows to configure import settings for individual assets. Requires the "
"FileSystem dock to function."
msgstr ""
-"개별 ì• ì…‹ì— ëŒ€í•œ 불러오기 ì„¤ì •ì„ êµ¬ì„±í•  수 있게 합니다. ìž‘ë™í•˜ë ¤ë©´ 파ì¼ì‹œìŠ¤"
+"개별 ì• ì…‹ì— ëŒ€í•œ 가져오기 ì„¤ì •ì„ êµ¬ì„±í•  수 있게 합니다. ìž‘ë™í•˜ë ¤ë©´ 파ì¼ì‹œìŠ¤"
"í…œ ë…ì´ í•„ìš”í•©ë‹ˆë‹¤."
#: editor/editor_feature_profile.cpp
@@ -1830,15 +1832,15 @@ msgstr "노드와 í´ëž˜ìŠ¤:"
#: editor/editor_feature_profile.cpp
msgid "File '%s' format is invalid, import aborted."
-msgstr "íŒŒì¼ '%s' 형ì‹ì´ 올바르지 않습니다. 불러오기를 중단합니다."
+msgstr "íŒŒì¼ '%s' 형ì‹ì´ 올바르지 않습니다. 가져오기를 중단합니다."
#: editor/editor_feature_profile.cpp
msgid ""
"Profile '%s' already exists. Remove it first before importing, import "
"aborted."
msgstr ""
-"프로필 '%s'ì´(ê°€) ì´ë¯¸ 있습니다. 불러오기 ì „ì— ì´ë¯¸ 있는 í”„ë¡œí•„ì„ ë¨¼ì € 제거하"
-"세요. 불러오기를 중단합니다."
+"프로필 '%s'ì´(ê°€) ì´ë¯¸ 있습니다. 가져오기 ì „ì— ì´ë¯¸ 있는 í”„ë¡œí•„ì„ ë¨¼ì € 제거하"
+"세요. 가져오기를 중단합니다."
#: editor/editor_feature_profile.cpp
msgid "Error saving profile to path: '%s'."
@@ -1871,7 +1873,7 @@ msgstr "현재 프로필로 설정"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp
msgid "Import"
-msgstr "불러오기"
+msgstr "가져오기"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
@@ -1887,7 +1889,7 @@ msgstr "별ë„ì˜ ì˜µì…˜:"
#: editor/editor_feature_profile.cpp
msgid "Create or import a profile to edit available classes and properties."
-msgstr "사용 가능한 í´ëž˜ìŠ¤ì™€ ì†ì„±ì„ 편집하려면 í”„ë¡œí•„ì„ ë§Œë“¤ê±°ë‚˜ 불러오세요."
+msgstr "사용 가능한 í´ëž˜ìŠ¤ì™€ ì†ì„±ì„ 편집하려면 í”„ë¡œí•„ì„ ë§Œë“¤ê±°ë‚˜ 가져오세요."
#: editor/editor_feature_profile.cpp
msgid "New profile name:"
@@ -1899,7 +1901,7 @@ msgstr "Godot 기능 프로필"
#: editor/editor_feature_profile.cpp
msgid "Import Profile(s)"
-msgstr "프로필 불러오기"
+msgstr "프로필 가져오기"
#: editor/editor_feature_profile.cpp
msgid "Export Profile"
@@ -2074,7 +2076,7 @@ msgstr ""
#: editor/editor_file_system.cpp
msgid "(Re)Importing Assets"
-msgstr "애셋 (다시) 불러오기"
+msgstr "애셋 (다시) 가져오는 중"
#: editor/editor_help.cpp
msgid "Top"
@@ -2323,7 +2325,7 @@ msgstr "ì—디터 ì°½ì— ë³€í™”ê°€ ìžˆì„ ë•Œë§ˆë‹¤ 회전합니다."
#: editor/editor_node.cpp
msgid "Imported resources can't be saved."
-msgstr "불러온 리소스를 저장할 수 없습니다."
+msgstr "가져온 리소스를 저장할 수 없습니다."
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/theme_editor_plugin.cpp
@@ -2412,9 +2414,8 @@ msgstr ""
"는 것 같습니다."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Could not save one or more scenes!"
-msgstr "ë³€í™˜ëœ í…스ì³ë¥¼ 저장할 수 ì—†ìŒ:"
+msgstr "하나 ì´ìƒì˜ ìž¥ë©´ì„ ì €ìž¥í• ìˆ˜ 없습니다!"
#: editor/editor_node.cpp
msgid "Save All Scenes"
@@ -2472,8 +2473,8 @@ msgid ""
"Please read the documentation relevant to importing scenes to better "
"understand this workflow."
msgstr ""
-"ì´ ë¦¬ì†ŒìŠ¤ëŠ” 불러온 ì”¬ì— ì†í•œ 리소스ì´ë¯€ë¡œ 편집할 수 없습니다.\n"
-"ì´ ì›Œí¬í”Œë¡œë¥¼ ì´í•´í•˜ë ¤ë©´ 씬 불러오기(Importing Scenes)와 ê´€ë ¨ëœ ë¬¸ì„œë¥¼ ì½ì–´ì£¼"
+"ì´ ë¦¬ì†ŒìŠ¤ëŠ” 가져온 ì”¬ì— ì†í•œ 리소스ì´ë¯€ë¡œ 편집할 수 없습니다.\n"
+"ì´ ì›Œí¬í”Œë¡œë¥¼ ì´í•´í•˜ë ¤ë©´ 씬 가져오기(Importing Scenes)와 ê´€ë ¨ëœ ë¬¸ì„œë¥¼ ì½ì–´ì£¼"
"세요."
#: editor/editor_node.cpp
@@ -2489,8 +2490,8 @@ msgid ""
"This resource was imported, so it's not editable. Change its settings in the "
"import panel and then re-import."
msgstr ""
-"ì´ ë¦¬ì†ŒìŠ¤ëŠ” 불러온 것ì´ë¯€ë¡œ 편집할 수 없습니다. 불러오기 패ë„ì—ì„œ ì„¤ì •ì„ ë³€ê²½"
-"한 뒤 다시 불러오세요."
+"ì´ ë¦¬ì†ŒìŠ¤ëŠ” 가져온 것ì´ë¯€ë¡œ 편집할 수 없습니다. 가져오기 패ë„ì—ì„œ ì„¤ì •ì„ ë³€ê²½"
+"한 뒤 다시 가져오세요."
#: editor/editor_node.cpp
msgid ""
@@ -2499,9 +2500,9 @@ msgid ""
"Please read the documentation relevant to importing scenes to better "
"understand this workflow."
msgstr ""
-"ì´ ì”¬ì€ ë¶ˆëŸ¬ì˜¨ 것ì´ë¯€ë¡œ ë³€ê²½ì‚¬í•­ì´ ìœ ì§€ë˜ì§€ 않습니다.\n"
+"ì´ ì”¬ì€ ê°€ì ¸ì˜¨ 것ì´ë¯€ë¡œ ë³€ê²½ì‚¬í•­ì´ ìœ ì§€ë˜ì§€ 않습니다.\n"
"ì´ ì”¬ì„ ì¸ìŠ¤í„´ìŠ¤í™”하거나 ìƒì†í•˜ë©´ 편집할 수 있습니다.\n"
-"ì´ ì›Œí¬í”Œë¡œë¥¼ ì´í•´í•˜ë ¤ë©´ 씬 불러오기(Importing Scenes)와 ê´€ë ¨ëœ ë¬¸ì„œë¥¼ ì½ì–´ì£¼"
+"ì´ ì›Œí¬í”Œë¡œë¥¼ ì´í•´í•˜ë ¤ë©´ 씬 가져오기(Importing Scenes)와 ê´€ë ¨ëœ ë¬¸ì„œë¥¼ ì½ì–´ì£¼"
"세요."
#: editor/editor_node.cpp
@@ -2555,7 +2556,7 @@ msgstr "닫기 ì „ì— '%s'ì— ë³€ê²½ì‚¬í•­ì„ ì €ìž¥í•˜ì‹œê² ìŠµë‹ˆê¹Œ?"
#: editor/editor_node.cpp
msgid "%s no longer exists! Please specify a new save location."
-msgstr ""
+msgstr "%sì€(는) ë” ì´ìƒ 존재하지 않습니다! 새 저장 위치를 지정해 주세요."
#: editor/editor_node.cpp
msgid ""
@@ -2736,7 +2737,7 @@ msgid ""
"Scene '%s' was automatically imported, so it can't be modified.\n"
"To make changes to it, a new inherited scene can be created."
msgstr ""
-"씬 '%s'ì„(를) ìžë™ìœ¼ë¡œ 불러왔으므로 수정할 수 없습니다.\n"
+"씬 '%s'ì„(를) ìžë™ìœ¼ë¡œ 가져왔으므로 수정할 수 없습니다.\n"
"ì´ ì”¬ì„ íŽ¸ì§‘í•˜ë ¤ë©´ 새로운 ìƒì† ì”¬ì„ ë§Œë“¤ì–´ì•¼ 합니다."
#: editor/editor_node.cpp
@@ -2745,7 +2746,7 @@ msgid ""
"open the scene, then save it inside the project path."
msgstr ""
"ì”¬ì„ ë¶ˆëŸ¬ì˜¤ëŠ” 중 오류가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. ì”¬ì€ í”„ë¡œì íŠ¸ 경로 ì•ˆì— ìžˆì–´ì•¼ 합니다. "
-"'불러오기'를 사용해서 ì”¬ì„ ì—´ê³ , ê·¸ ì”¬ì„ í”„ë¡œì íŠ¸ 경로 ì•ˆì— ì €ìž¥í•˜ì„¸ìš”."
+"'가져오기'를 사용해서 ì”¬ì„ ì—´ê³ , ê·¸ ì”¬ì„ í”„ë¡œì íŠ¸ 경로 ì•ˆì— ì €ìž¥í•˜ì„¸ìš”."
#: editor/editor_node.cpp
msgid "Scene '%s' has broken dependencies:"
@@ -3285,7 +3286,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Import Templates From ZIP File"
-msgstr "ZIP 파ì¼ì—ì„œ 템플릿 불러오기"
+msgstr "ZIP 파ì¼ì—ì„œ 템플릿 가져오기"
#: editor/editor_node.cpp
msgid "Template Package"
@@ -3636,7 +3637,7 @@ msgstr "%s를 눌러 정수로 반올림합니다. Shift를 눌러 좀 ë” ì •ë°
#: editor/editor_sub_scene.cpp
msgid "Select Node(s) to Import"
-msgstr "불러올 노드 ì„ íƒ"
+msgstr "가져올 노드 ì„ íƒ"
#: editor/editor_sub_scene.cpp editor/project_manager.cpp
msgid "Browse"
@@ -3648,7 +3649,7 @@ msgstr "씬 경로:"
#: editor/editor_sub_scene.cpp
msgid "Import From Node:"
-msgstr "노드ì—ì„œ 불러오기:"
+msgstr "노드ì—ì„œ 가져오기:"
#: editor/export_template_manager.cpp
msgid "Open the folder containing these templates."
@@ -3803,7 +3804,7 @@ msgstr "내보내기 템플릿 압축 푸는 중"
#: editor/export_template_manager.cpp
msgid "Importing:"
-msgstr "불러오는 중:"
+msgstr "가져오는 중:"
#: editor/export_template_manager.cpp
msgid "Remove templates for the version '%s'?"
@@ -3921,14 +3922,14 @@ msgstr "ì¦ê²¨ì°¾ê¸°"
#: editor/filesystem_dock.cpp
msgid "Status: Import of file failed. Please fix file and reimport manually."
msgstr ""
-"ìƒíƒœ: íŒŒì¼ ë¶ˆëŸ¬ì˜¤ê¸°ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤. 수ë™ìœ¼ë¡œ 파ì¼ì„ 수정하고 다시 불러와주세"
+"ìƒíƒœ: íŒŒì¼ ê°€ì ¸ì˜¤ê¸°ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤. 수ë™ìœ¼ë¡œ 파ì¼ì„ 수정하고 다시 가져와주세"
"ìš”."
#: editor/filesystem_dock.cpp
msgid ""
"Importing has been disabled for this file, so it can't be opened for editing."
msgstr ""
-"ì´ íŒŒì¼ì— 대해 불러오기가 비활성화ë˜ì—ˆìœ¼ë©°, íŽ¸ì§‘ì„ ìœ„í•´ ì—´ 수 없습니다."
+"ì´ íŒŒì¼ì— 대해 가져오기가 비활성화ë˜ì—ˆìœ¼ë©°, íŽ¸ì§‘ì„ ìœ„í•´ ì—´ 수 없습니다."
#: editor/filesystem_dock.cpp
msgid "Cannot move/rename resources root."
@@ -4264,52 +4265,52 @@ msgstr "그룹 관리"
#: editor/import/resource_importer_scene.cpp
msgid "Import as Single Scene"
-msgstr "ë‹¨ì¼ ì”¬ìœ¼ë¡œ 불러오기"
+msgstr "ë‹¨ì¼ ì”¬ìœ¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Animations"
-msgstr "별ë„ì˜ ì• ë‹ˆë©”ì´ì…˜ìœ¼ë¡œ 불러오기"
+msgstr "별ë„ì˜ ì• ë‹ˆë©”ì´ì…˜ìœ¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Materials"
-msgstr "별ë„ì˜ ë¨¸í‹°ë¦¬ì–¼ë¡œ 불러오기"
+msgstr "별ë„ì˜ ë¨¸í‹°ë¦¬ì–¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Objects"
-msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸ë¡œ 불러오기"
+msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Objects+Materials"
-msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸ì™€ 머티리얼로 불러오기"
+msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸ì™€ 머티리얼로 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Objects+Animations"
-msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸ì™€ 애니메ì´ì…˜ìœ¼ë¡œ 불러오기"
+msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸ì™€ 애니메ì´ì…˜ìœ¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Materials+Animations"
-msgstr "별ë„ì˜ ë¨¸í‹°ë¦¬ì–¼ê³¼ 애니메ì´ì…˜ìœ¼ë¡œ 불러오기"
+msgstr "별ë„ì˜ ë¨¸í‹°ë¦¬ì–¼ê³¼ 애니메ì´ì…˜ìœ¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import with Separate Objects+Materials+Animations"
-msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸, 머티리얼과 애니메ì´ì…˜ìœ¼ë¡œ 불러오기"
+msgstr "별ë„ì˜ ì˜¤ë¸Œì íŠ¸, 머티리얼과 애니메ì´ì…˜ìœ¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import as Multiple Scenes"
-msgstr "여러 ê°œì˜ ì”¬ìœ¼ë¡œ 불러오기"
+msgstr "여러 ê°œì˜ ì”¬ìœ¼ë¡œ 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Import as Multiple Scenes+Materials"
-msgstr "여러 ê°œì˜ ì”¬ê³¼ 머티리얼로 불러오기"
+msgstr "여러 ê°œì˜ ì”¬ê³¼ 머티리얼로 가져오기"
#: editor/import/resource_importer_scene.cpp
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Import Scene"
-msgstr "씬 불러오기"
+msgstr "씬 가져오기"
#: editor/import/resource_importer_scene.cpp
msgid "Importing Scene..."
-msgstr "씬 불러오는 중..."
+msgstr "씬 가져오는 중..."
#: editor/import/resource_importer_scene.cpp
msgid "Generating Lightmaps"
@@ -4357,7 +4358,7 @@ msgstr "ë””í´íŠ¸ë¡œ 재설정"
#: editor/import_dock.cpp
msgid "Keep File (No Import)"
-msgstr "íŒŒì¼ ìœ ì§€ (불러오기 ì—†ìŒ)"
+msgstr "íŒŒì¼ ìœ ì§€ (가져오기 ì—†ìŒ)"
#: editor/import_dock.cpp
msgid "%d Files"
@@ -4365,7 +4366,7 @@ msgstr "íŒŒì¼ %dê°œ"
#: editor/import_dock.cpp
msgid "Set as Default for '%s'"
-msgstr "'%s'ì„(를) ë””í´íŠ¸ìœ¼ë¡œ 설정"
+msgstr "'%s'ì„(를) ë””í´íŠ¸ë¡œ 설정"
#: editor/import_dock.cpp
msgid "Clear Default for '%s'"
@@ -4373,7 +4374,7 @@ msgstr "'%s'ì„(를) ë””í´íŠ¸ì—ì„œ 지우기"
#: editor/import_dock.cpp
msgid "Reimport"
-msgstr "다시 불러오기"
+msgstr "다시 가져오기"
#: editor/import_dock.cpp
msgid ""
@@ -4385,7 +4386,7 @@ msgstr ""
#: editor/import_dock.cpp
msgid "Import As:"
-msgstr "ë‹¤ìŒ í˜•ì‹ìœ¼ë¡œ 불러오기:"
+msgstr "ë‹¤ìŒ í˜•ì‹ìœ¼ë¡œ 가져오기:"
#: editor/import_dock.cpp
msgid "Preset"
@@ -4393,11 +4394,11 @@ msgstr "프리셋"
#: editor/import_dock.cpp
msgid "Save Scenes, Re-Import, and Restart"
-msgstr "씬 저장, 다시 불러오기 ë° ë‹¤ì‹œ 시작"
+msgstr "씬 저장, 다시 가져오기 ë° ë‹¤ì‹œ 시작"
#: editor/import_dock.cpp
msgid "Changing the type of an imported file requires editor restart."
-msgstr "불러온 파ì¼ì˜ íƒ€ìž…ì„ ë°”ê¾¸ë ¤ë©´ ì—디터를 다시 시작해야 합니다."
+msgstr "가져온 파ì¼ì˜ íƒ€ìž…ì„ ë°”ê¾¸ë ¤ë©´ ì—디터를 다시 시작해야 합니다."
#: editor/import_dock.cpp
msgid ""
@@ -5271,7 +5272,7 @@ msgstr "전환 노드"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Import Animations..."
-msgstr "애니메ì´ì…˜ 불러오기..."
+msgstr "애니메ì´ì…˜ 가져오기..."
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Edit Node Filters"
@@ -5355,7 +5356,7 @@ msgstr "실패함:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Bad download hash, assuming file has been tampered with."
-msgstr "ìž˜ëª»ëœ ë‹¤ìš´ë¡œë“œ í•´ì‹œ. 파ì¼ì´ ë³€ì¡°ëœ ê²ƒ 같아요."
+msgstr "ìž˜ëª»ëœ ë‹¤ìš´ë¡œë“œ í•´ì‹œ. 파ì¼ì´ ë³€ì¡°ëœ ê²ƒ 같습니다."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Expected:"
@@ -5463,7 +5464,7 @@ msgstr "ì• ì…‹ 검색 (템플릿, 프로ì íŠ¸, ë° ë°ëª¨ 제외)"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Import..."
-msgstr "불러오기..."
+msgstr "가져오기..."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Plugins..."
@@ -6600,11 +6601,11 @@ msgstr "ì„ íƒí•œ 항목 제거"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Import from Scene (Ignore Transforms)"
-msgstr "씬ì—ì„œ 불러오기 (변형 무시)"
+msgstr "씬ì—ì„œ 가져오기 (변형 무시)"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Import from Scene (Apply Transforms)"
-msgstr "씬ì—ì„œ 불러오기 (변형 ì ìš©)"
+msgstr "씬ì—ì„œ 가져오기 (변형 ì ìš©)"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Update from Scene"
@@ -7240,11 +7241,11 @@ msgstr "저장 중 오류"
#: editor/plugins/script_editor_plugin.cpp
msgid "Error importing theme."
-msgstr "테마 불러오는 중 오류."
+msgstr "테마 가져오는 중 오류."
#: editor/plugins/script_editor_plugin.cpp
msgid "Error Importing"
-msgstr "불러오는 중 오류"
+msgstr "가져오는 중 오류"
#: editor/plugins/script_editor_plugin.cpp
msgid "New Text File..."
@@ -7279,7 +7280,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "Import Theme"
-msgstr "테마 불러오기"
+msgstr "테마 가져오기"
#: editor/plugins/script_editor_plugin.cpp
msgid "Error while saving theme"
@@ -7336,12 +7337,10 @@ msgid "Move Down"
msgstr "아래로 ì´ë™"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Next Script"
msgstr "ë‹¤ìŒ ìŠ¤í¬ë¦½íŠ¸"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Previous Script"
msgstr "ì´ì „ 스í¬ë¦½íŠ¸"
@@ -7384,7 +7383,7 @@ msgstr "테마"
#: editor/plugins/script_editor_plugin.cpp
msgid "Import Theme..."
-msgstr "테마 불러오기..."
+msgstr "테마 가져오기..."
#: editor/plugins/script_editor_plugin.cpp
msgid "Reload Theme"
@@ -7759,9 +7758,8 @@ msgid "Left Orthogonal"
msgstr "좌측 ì§êµ"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Left Perspective"
-msgstr "ì›ê·¼"
+msgstr "좌측 ì›ê·¼"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Right Orthogonal"
@@ -8116,25 +8114,29 @@ msgid "Right View"
msgstr "우측 뷰"
#: editor/plugins/spatial_editor_plugin.cpp
+#, fuzzy
msgid "Orbit View Down"
-msgstr ""
+msgstr "선회 뷰 아래로"
#: editor/plugins/spatial_editor_plugin.cpp
+#, fuzzy
msgid "Orbit View Left"
-msgstr ""
+msgstr "선회 뷰 왼쪽으로"
#: editor/plugins/spatial_editor_plugin.cpp
+#, fuzzy
msgid "Orbit View Right"
-msgstr ""
+msgstr "선회 뷰 오른쪽으로"
#: editor/plugins/spatial_editor_plugin.cpp
#, fuzzy
msgid "Orbit View Up"
-msgstr "ì •ë©´ ë·°"
+msgstr "선회 뷰 위로"
#: editor/plugins/spatial_editor_plugin.cpp
+#, fuzzy
msgid "Orbit View 180"
-msgstr ""
+msgstr "선회 뷰 180으로"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Switch Perspective/Orthogonal View"
@@ -8592,15 +8594,15 @@ msgstr "현재 ì„ íƒ {num}ê°œ"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Nothing was selected for the import."
-msgstr "불러올 ê²ƒì´ ì„ íƒë˜ì§€ 않았습니다."
+msgstr "가져올 ê²ƒì´ ì„ íƒë˜ì§€ 않았습니다."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Importing Theme Items"
-msgstr "테마 í•­ëª©ì„ ë¶ˆëŸ¬ì˜¤ëŠ” 중"
+msgstr "테마 í•­ëª©ì„ ê°€ì ¸ì˜¤ëŠ” 중"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Importing items {n}/{n}"
-msgstr "í•­ëª©ì„ ë¶ˆëŸ¬ì˜¤ëŠ” 중 {n}/{n}"
+msgstr "항목 {n}/{n}ì„ ê°€ì ¸ì˜¤ëŠ” 중"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Updating the editor"
@@ -8719,7 +8721,7 @@ msgstr "모든 테마 í•­ëª©ì„ ì„ íƒ í•´ì œí•©ë‹ˆë‹¤."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Import Selected"
-msgstr "ì„ íƒëœ 항목 불러오기"
+msgstr "ì„ íƒëœ 항목 가져오기"
#: editor/plugins/theme_editor_plugin.cpp
msgid ""
@@ -8727,7 +8729,7 @@ msgid ""
"closing this window.\n"
"Close anyway?"
msgstr ""
-"항목 불러오기 íƒ­ì— ì¼ë¶€ í•­ëª©ì´ ì„ íƒë˜ì–´ 있습니다. ì´ ì°½ì„ ë‹«ìœ¼ë©´ ì„ íƒì„ 잃게 "
+"항목 가져오기 íƒ­ì— ì¼ë¶€ í•­ëª©ì´ ì„ íƒë˜ì–´ 있습니다. ì´ ì°½ì„ ë‹«ìœ¼ë©´ ì„ íƒì„ 잃게 "
"ë©ë‹ˆë‹¤.\n"
"무시하고 닫으시겠습니까?"
@@ -8737,7 +8739,7 @@ msgid ""
"You can add a custom type or import a type with its items from another theme."
msgstr ""
"í…Œë§ˆì˜ í•­ëª©ì„ íŽ¸ì§‘í•˜ë ¤ë©´ 목ë¡ì—ì„œ 테마 íƒ€ìž…ì„ ì„ íƒí•˜ì„¸ìš”.\n"
-"커스텀 íƒ€ìž…ì„ ì¶”ê°€í•˜ê±°ë‚˜ 다른 í…Œë§ˆì˜ í•­ëª©ê³¼ 함께 íƒ€ìž…ì„ ë¶ˆëŸ¬ì˜¬ 수 있습니다."
+"커스텀 íƒ€ìž…ì„ ì¶”ê°€í•˜ê±°ë‚˜ 다른 í…Œë§ˆì˜ í•­ëª©ê³¼ 함께 íƒ€ìž…ì„ ê°€ì ¸ì˜¬ 수 있습니다."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove All Color Items"
@@ -8769,7 +8771,7 @@ msgid ""
"Add more items to it manually or by importing from another theme."
msgstr ""
"ì´ í…Œë§ˆ íƒ€ìž…ì€ ë¹„ì–´ 있습니다.\n"
-"ì§ì ‘ ë˜ëŠ” 다른 테마ì—ì„œ 불러와서 í…Œë§ˆì— ë” ë§Žì€ í•­ëª©ì„ ì¶”ê°€í•˜ì„¸ìš”."
+"ì§ì ‘ ë˜ëŠ” 다른 테마ì—ì„œ 가져와서 í…Œë§ˆì— ë” ë§Žì€ í•­ëª©ì„ ì¶”ê°€í•˜ì„¸ìš”."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Add Color Item"
@@ -8869,7 +8871,7 @@ msgstr "ì´ì „ ì´ë¦„:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Import Items"
-msgstr "항목 불러오기"
+msgstr "항목 가져오기"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Default Theme"
@@ -8949,7 +8951,7 @@ msgstr "항목 관리..."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Add, remove, organize and import Theme items."
-msgstr "테마 í•­ëª©ì„ ì¶”ê°€, 제거, 구성 ë° ë¶ˆëŸ¬ì˜µë‹ˆë‹¤."
+msgstr "테마 í•­ëª©ì„ ì¶”ê°€, 제거, 구성 ë° ê°€ì ¸ì˜µë‹ˆë‹¤."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Add Preview"
@@ -9020,7 +9022,6 @@ msgid "Subitem 2"
msgstr "하위 항목 2"
#: editor/plugins/theme_editor_preview.cpp
-#, fuzzy
msgid "Has"
msgstr "갖춤"
@@ -9053,9 +9054,8 @@ msgid "Subtree"
msgstr "하위 트리"
#: editor/plugins/theme_editor_preview.cpp
-#, fuzzy
msgid "Has,Many,Options"
-msgstr "많ì€,옵션,갖춤"
+msgstr "갖춤,많ì€,옵션"
#: editor/plugins/theme_editor_preview.cpp
msgid "Invalid path, the PackedScene resource was probably moved or removed."
@@ -10665,7 +10665,7 @@ msgstr "새 게임 프로ì íŠ¸"
#: editor/project_manager.cpp
msgid "Imported Project"
-msgstr "불러온 프로ì íŠ¸"
+msgstr "가져온 프로ì íŠ¸"
#: editor/project_manager.cpp
msgid "Invalid project name."
@@ -10721,11 +10721,11 @@ msgstr "프로ì íŠ¸ ì´ë¦„ 바꾸기"
#: editor/project_manager.cpp
msgid "Import Existing Project"
-msgstr "기존 프로ì íŠ¸ 불러오기"
+msgstr "기존 프로ì íŠ¸ 가져오기"
#: editor/project_manager.cpp
msgid "Import & Edit"
-msgstr "불러오기 & 편집"
+msgstr "가져오기 & 편집"
#: editor/project_manager.cpp
msgid "Create New Project"
@@ -10880,8 +10880,8 @@ msgid ""
"Can't run project: Assets need to be imported.\n"
"Please edit the project to trigger the initial import."
msgstr ""
-"프로ì íŠ¸ë¥¼ 실행할 수 ì—†ìŒ: ì• ì…‹ì„ ë¶ˆëŸ¬ì™€ì•¼ 합니다.\n"
-"프로ì íŠ¸ë¥¼ 편집해서 최초 불러오기가 실행ë˜ë„ë¡ í•˜ì„¸ìš”."
+"프로ì íŠ¸ë¥¼ 실행할 수 ì—†ìŒ: ì• ì…‹ì„ ê°€ì ¸ì™€ì•¼ 합니다.\n"
+"프로ì íŠ¸ë¥¼ 편집해서 최초 가져오기가 실행ë˜ë„ë¡ í•˜ì„¸ìš”."
#: editor/project_manager.cpp
msgid "Are you sure to run %d projects at once?"
@@ -10962,7 +10962,7 @@ msgstr "새 프로ì íŠ¸"
#: editor/project_manager.cpp
msgid "Import Project"
-msgstr "프로ì íŠ¸ 불러오기"
+msgstr "프로ì íŠ¸ 가져오기"
#: editor/project_manager.cpp
msgid "Remove Project"
@@ -11019,14 +11019,14 @@ msgstr ""
"ìƒ í¬í•¨ì‹œì¼œì•¼ 합니다."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "키 "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "물리 키"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "키 "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "ì¡°ì´ìŠ¤í‹± 버튼"
@@ -11144,7 +11144,7 @@ msgstr "ì´ë²¤íŠ¸ 추가"
#: editor/project_settings_editor.cpp
msgid "Button"
-msgstr "Button"
+msgstr "버튼"
#: editor/project_settings_editor.cpp
msgid "Left Button."
@@ -11348,7 +11348,7 @@ msgstr "플러그ì¸(Plugin)"
#: editor/project_settings_editor.cpp
msgid "Import Defaults"
-msgstr "ë””í´íŠ¸ 불러오기"
+msgstr "ë””í´íŠ¸ 가져오기"
#: editor/property_editor.cpp
msgid "Preset..."
@@ -12247,7 +12247,7 @@ msgstr "형ì‹"
#: editor/script_editor_debugger.cpp
msgid "Usage"
-msgstr "사용"
+msgstr "사용례"
#: editor/script_editor_debugger.cpp
msgid "Misc"
diff --git a/editor/translations/lt.po b/editor/translations/lt.po
index 404f9f5096..a4d205e4b1 100644
--- a/editor/translations/lt.po
+++ b/editor/translations/lt.po
@@ -10989,11 +10989,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/lv.po b/editor/translations/lv.po
index 68dd8370bd..91d9e7e3d2 100644
--- a/editor/translations/lv.po
+++ b/editor/translations/lv.po
@@ -8,13 +8,14 @@
# Anonymous <noreply@weblate.org>, 2020.
# StiLins <aigars.skilins@gmail.com>, 2020.
# Rihards Kubilis <oldcar@inbox.lv>, 2020.
+# M E <gruffy7932@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2020-11-15 12:43+0000\n"
-"Last-Translator: Rihards Kubilis <oldcar@inbox.lv>\n"
+"PO-Revision-Date: 2021-11-03 13:53+0000\n"
+"Last-Translator: M E <gruffy7932@gmail.com>\n"
"Language-Team: Latvian <https://hosted.weblate.org/projects/godot-engine/"
"godot/lv/>\n"
"Language: lv\n"
@@ -23,7 +24,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n % 10 == 0 || n % 100 >= 11 && n % 100 <= "
"19) ? 0 : ((n % 10 == 1 && n % 100 != 11) ? 1 : 2);\n"
-"X-Generator: Weblate 4.4-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -47,7 +48,7 @@ msgstr "NederÄ«ga ievade %i (nav padota) izteikumÄ"
#: core/math/expression.cpp
msgid "self can't be used because instance is null (not passed)"
-msgstr "'self' nevar izmantot, jo instance ir 'null' (nav padota)"
+msgstr "'self' nevar izmantot, jo instance ir tukÅ¡a (nav norÄdÄ«ta)"
#: core/math/expression.cpp
msgid "Invalid operands to operator %s, %s and %s."
@@ -373,13 +374,12 @@ msgstr "Anim ievietot"
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
msgid "node '%s'"
-msgstr ""
+msgstr "mezgls '%s'"
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "animation"
-msgstr "Funkcijas:"
+msgstr "animÄcija"
#: editor/animation_track_editor.cpp
msgid "AnimationPlayer can't animate itself, only other players."
@@ -388,7 +388,7 @@ msgstr "AnimationPlayer nevar animÄ“t pats sevi, tikai citus spÄ“lÄ“tÄjus."
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
msgid "property '%s'"
-msgstr ""
+msgstr "vērtība '%s'"
#: editor/animation_track_editor.cpp
msgid "Anim Create & Insert"
@@ -477,7 +477,7 @@ msgstr "Anim PÄrvietot AtslÄ“gas"
#: editor/animation_track_editor.cpp
#: modules/visual_script/visual_script_editor.cpp
msgid "Clipboard is empty!"
-msgstr ""
+msgstr "Starpliktuve ir tukša!"
#: editor/animation_track_editor.cpp
msgid "Paste Tracks"
@@ -595,12 +595,11 @@ msgstr "Doties uz NÄkamo Soli"
#: editor/animation_track_editor.cpp
msgid "Go to Previous Step"
-msgstr "Doties uz Iepriekšējo Soli"
+msgstr "Doties uz iepriekšejo soli"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Apply Reset"
-msgstr "AtiestatÄ«t tÄlummaiņu"
+msgstr "Pielietot atiestatīšanu"
#: editor/animation_track_editor.cpp
msgid "Optimize Animation"
@@ -619,9 +618,8 @@ msgid "Use Bezier Curves"
msgstr "Izmanto Bezjē Līknes"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Create RESET Track(s)"
-msgstr "Ielīmēt celiņus"
+msgstr "Izveidot atiestatīšanas celiņu(s)"
#: editor/animation_track_editor.cpp
msgid "Anim. Optimizer"
@@ -788,9 +786,8 @@ msgid "Method in target node must be specified."
msgstr "Metodi mÄ“rÄ·a mezglÄ nepiecieÅ¡ams specificÄ“t."
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Method name must be a valid identifier."
-msgstr "Metodi mÄ“rÄ·a mezglÄ nepiecieÅ¡ams specificÄ“t."
+msgstr "Metodes nosaukumam jÄbÅ«t korektam identifikÄtoram."
#: editor/connections_dialog.cpp
msgid ""
@@ -910,7 +907,7 @@ msgstr "Savieno..."
#: editor/connections_dialog.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Disconnect"
-msgstr "Atvieno"
+msgstr "Atvienot"
#: editor/connections_dialog.cpp
msgid "Connect a Signal to a Method"
@@ -930,9 +927,8 @@ msgid "Signals"
msgstr "SignÄli"
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Filter signals"
-msgstr "No SignÄla:"
+msgstr "FiltrÄ“t signÄlus"
#: editor/connections_dialog.cpp
msgid "Are you sure you want to remove all connections from this signal?"
@@ -941,16 +937,15 @@ msgstr ""
#: editor/connections_dialog.cpp
msgid "Disconnect All"
-msgstr "Atvienot Visu"
+msgstr "Atvienot visu"
#: editor/connections_dialog.cpp
msgid "Edit..."
msgstr "Rediģēt..."
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Go to Method"
-msgstr "Doties Uz Metodi"
+msgstr "Doties uz Metodi"
#: editor/create_dialog.cpp
msgid "Change %s Type"
@@ -966,11 +961,11 @@ msgstr "Izveidot Jaunu %s"
#: editor/create_dialog.cpp editor/plugins/asset_library_editor_plugin.cpp
msgid "No results for \"%s\"."
-msgstr ""
+msgstr "Nav rezultÄtu \"%s\"."
#: editor/create_dialog.cpp editor/property_selector.cpp
msgid "No description available for %s."
-msgstr ""
+msgstr "Apraksts nav pieejams priekš %s."
#: editor/create_dialog.cpp editor/editor_file_dialog.cpp
#: editor/filesystem_dock.cpp
@@ -1070,15 +1065,16 @@ msgid "Owners Of:"
msgstr "Īpašnieki:"
#: editor/dependency_editor.cpp
-#, fuzzy
msgid ""
"Remove the selected files from the project? (Cannot be undone.)\n"
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
-msgstr "Vai noņemt izvēlētos failus no projekta? (Netiks atjaunoti)"
+msgstr ""
+"Vai noņemt izvēlētos failus no projekta? (Netiks atjaunoti)\n"
+"AtÅ¡Ä·irÄ«bÄ no failu sistÄ“mas konfigurÄcijas, faili tiks aizvÄkti uz sistÄ“mas "
+"atkritni vai dzÄ“sti pilnÄ«bÄ."
#: editor/dependency_editor.cpp
-#, fuzzy
msgid ""
"The files being removed are required by other resources in order for them to "
"work.\n"
@@ -1086,9 +1082,11 @@ msgid ""
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
-"Faili, kurus Jūs vēlaties noņemt ir nepieciešami citiem resursiem lai tie "
+"Faili, kurus Jūs vēlaties noņemt ir nepieciešami citiem resursiem, lai tie "
"varÄ“tu strÄdÄt.\n"
-"Tik un tÄ noņemt tos? (Nevar atsaukt)"
+"Tik un tÄ noņemt tos? (Nevar atsaukt)\n"
+"AtÅ¡Ä·irÄ«bÄ no jÅ«su failu sistÄ“mas konfigurÄcijas, faili tiks aizvÄkti uz "
+"sistÄ“mas atkritni vai dzÄ“sti pilnÄ«bÄ."
#: editor/dependency_editor.cpp
msgid "Cannot remove:"
@@ -1160,7 +1158,7 @@ msgstr "Paldies no Godot sabiedrības!"
#: editor/editor_about.cpp editor/editor_node.cpp editor/project_manager.cpp
msgid "Click to copy."
-msgstr ""
+msgstr "Klikšķini, lai kopētu."
#: editor/editor_about.cpp
msgid "Godot Engine contributors"
@@ -1198,14 +1196,12 @@ msgid "Gold Sponsors"
msgstr "Zelta Sponsori"
#: editor/editor_about.cpp
-#, fuzzy
msgid "Silver Sponsors"
-msgstr "Sudraba Donors"
+msgstr "Sudraba Sponsors"
#: editor/editor_about.cpp
-#, fuzzy
msgid "Bronze Sponsors"
-msgstr "Bronzas Donors"
+msgstr "Bronzas Sponsors"
#: editor/editor_about.cpp
msgid "Mini Sponsors"
@@ -1260,41 +1256,36 @@ msgid "Licenses"
msgstr "Licences"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Error opening asset file for \"%s\" (not in ZIP format)."
-msgstr "Kļūme atverot arhÄ«vu failu, nav ZIP formÄtÄ."
+msgstr "Kļūme atverot pakotnes failu \"%s\" (nav ZIP formÄtÄ)."
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "%s (already exists)"
-msgstr "%s (Jau Eksistē)"
+msgstr "%s (jau eksistē)"
#: editor/editor_asset_installer.cpp
msgid "Contents of asset \"%s\" - %d file(s) conflict with your project:"
-msgstr ""
+msgstr "Pakotnes \"%s\" saturs - %d fails(-i) konfliktē ar tavu projektu:"
#: editor/editor_asset_installer.cpp
msgid "Contents of asset \"%s\" - No files conflict with your project:"
-msgstr ""
+msgstr "Pakotnes \"%s\" saturs - Neviens fails nekonfliktē ar tavu projektu:"
#: editor/editor_asset_installer.cpp
msgid "Uncompressing Assets"
msgstr "Nekompresēti Līdzekļi"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "The following files failed extraction from asset \"%s\":"
-msgstr "Sekojošie faili netika izvilkti no paketes:"
+msgstr "Sekojošie faili netika izvilkti no paketes \"%s\":"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "(and %s more files)"
-msgstr "Un %s vēl faili."
+msgstr "(un vēl %s faili)"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Asset \"%s\" installed successfully!"
-msgstr "Pakete instalēta sekmīgi!"
+msgstr "Pakete \"%s\" instalēta sekmīgi!"
#: editor/editor_asset_installer.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -1306,7 +1297,6 @@ msgid "Install"
msgstr "Ieinstalēt"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Asset Installer"
msgstr "Paketes InstalÄ“tÄjs"
@@ -1360,7 +1350,7 @@ msgstr "Velc un atlaid, lai pÄrkÄrtotu."
#: editor/editor_audio_buses.cpp
msgid "Solo"
-msgstr "Solo"
+msgstr "IndividuÄli"
#: editor/editor_audio_buses.cpp
msgid "Mute"
@@ -1371,9 +1361,8 @@ msgid "Bypass"
msgstr "Å unts"
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Bus Options"
-msgstr "Kopnes iestatījumi"
+msgstr "Kopnes Iestatījumi"
#: editor/editor_audio_buses.cpp editor/filesystem_dock.cpp
#: editor/plugins/animation_player_editor_plugin.cpp editor/scene_tree_dock.cpp
@@ -1382,7 +1371,7 @@ msgstr "Izveidot DublikÄtu"
#: editor/editor_audio_buses.cpp
msgid "Reset Volume"
-msgstr ""
+msgstr "Atiestatīt Skaļumu"
#: editor/editor_audio_buses.cpp
msgid "Delete Effect"
@@ -1398,47 +1387,47 @@ msgstr "Pievienot Audio Kopni"
#: editor/editor_audio_buses.cpp
msgid "Master bus can't be deleted!"
-msgstr ""
+msgstr "Master kopni nevar idzēst!"
#: editor/editor_audio_buses.cpp
msgid "Delete Audio Bus"
-msgstr ""
+msgstr "Izdzēst Audio Kopni"
#: editor/editor_audio_buses.cpp
msgid "Duplicate Audio Bus"
-msgstr ""
+msgstr "Dubultot Audio Kopni"
#: editor/editor_audio_buses.cpp
msgid "Reset Bus Volume"
-msgstr ""
+msgstr "Atiestatīt Kopnes Skaļumu"
#: editor/editor_audio_buses.cpp
msgid "Move Audio Bus"
-msgstr ""
+msgstr "PÄrvietot Audio Kopni"
#: editor/editor_audio_buses.cpp
msgid "Save Audio Bus Layout As..."
-msgstr ""
+msgstr "SaglabÄt Audio Kopņu IzkÄrtojumu KÄ...."
#: editor/editor_audio_buses.cpp
msgid "Location for New Layout..."
-msgstr ""
+msgstr "JaunÄ izkÄrtojuma lokÄcija..."
#: editor/editor_audio_buses.cpp
msgid "Open Audio Bus Layout"
-msgstr ""
+msgstr "AtvÄ“rt audio kopnes izkÄrtojumu"
#: editor/editor_audio_buses.cpp
msgid "There is no '%s' file."
-msgstr ""
+msgstr "Fails '%s' neeksistē."
#: editor/editor_audio_buses.cpp editor/plugins/canvas_item_editor_plugin.cpp
msgid "Layout"
-msgstr ""
+msgstr "IzkÄrtojums"
#: editor/editor_audio_buses.cpp
msgid "Invalid file, not an audio bus layout."
-msgstr ""
+msgstr "Nepareizs fails, nav audio kopnes izkÄrtojuma."
#: editor/editor_audio_buses.cpp
msgid "Error saving file: %s"
@@ -1450,7 +1439,7 @@ msgstr "Pievienot Kopni"
#: editor/editor_audio_buses.cpp
msgid "Add a new Audio Bus to this layout."
-msgstr ""
+msgstr "Pievienot jaunu Audio Kopni Å¡im izkÄrtojumam."
#: editor/editor_audio_buses.cpp editor/editor_resource_picker.cpp
#: editor/plugins/animation_player_editor_plugin.cpp editor/property_editor.cpp
@@ -1480,7 +1469,7 @@ msgstr "IelÄdÄ“t Kopnes IzkÄrtojuma noklusÄ“jumu."
#: editor/editor_audio_buses.cpp
msgid "Create a new Bus Layout."
-msgstr ""
+msgstr "Izveidot jaunu Kopnes izkÄrtojumu."
#: editor/editor_autoload_settings.cpp
msgid "Invalid name."
@@ -1506,27 +1495,27 @@ msgstr ""
#: editor/editor_autoload_settings.cpp
msgid "Keyword cannot be used as an autoload name."
-msgstr ""
+msgstr "AtslÄ“gvÄrdu nedrÄ«kst lietot kÄ auto-ielÄdes vÄrdu."
#: editor/editor_autoload_settings.cpp
msgid "Autoload '%s' already exists!"
-msgstr ""
+msgstr "Auto-ielÄde '%s' jau eksistÄ“!"
#: editor/editor_autoload_settings.cpp
msgid "Rename Autoload"
-msgstr ""
+msgstr "PÄrsaukt Auto-ielÄdi"
#: editor/editor_autoload_settings.cpp
msgid "Toggle AutoLoad Globals"
-msgstr ""
+msgstr "PÄrslÄ“gt Auto-ielÄdes GlobÄlÄs vÄ“rtÄ«bas"
#: editor/editor_autoload_settings.cpp
msgid "Move Autoload"
-msgstr ""
+msgstr "PÄrvietot Auto-ielÄdi"
#: editor/editor_autoload_settings.cpp
msgid "Remove Autoload"
-msgstr ""
+msgstr "IzdzÄ“st Auto-ielÄdi"
#: editor/editor_autoload_settings.cpp editor/editor_plugin_settings.cpp
msgid "Enable"
@@ -1534,34 +1523,34 @@ msgstr "Iespējot"
#: editor/editor_autoload_settings.cpp
msgid "Rearrange Autoloads"
-msgstr ""
+msgstr "PÄrkÄrtot Auto-ielÄdes"
#: editor/editor_autoload_settings.cpp
msgid "Can't add autoload:"
-msgstr ""
+msgstr "Nevar pievienot Auto-ielÄdi:"
#: editor/editor_autoload_settings.cpp
msgid "%s is an invalid path. File does not exist."
-msgstr ""
+msgstr "%s ir nederīgs ceļš. Fails neeksistē."
#: editor/editor_autoload_settings.cpp
msgid "%s is an invalid path. Not in resource path (res://)."
-msgstr ""
+msgstr "%s ir nederÄ«gs ceļš. Nav resursu ceÄ¼Ä (res://)."
#: editor/editor_autoload_settings.cpp
msgid "Add AutoLoad"
-msgstr ""
+msgstr "Pievienot Auto-ielÄdi"
#: editor/editor_autoload_settings.cpp editor/editor_file_dialog.cpp
#: editor/editor_plugin_settings.cpp
#: editor/plugins/animation_tree_editor_plugin.cpp
#: editor/script_create_dialog.cpp scene/gui/file_dialog.cpp
msgid "Path:"
-msgstr ""
+msgstr "Ceļš:"
#: editor/editor_autoload_settings.cpp
msgid "Node Name:"
-msgstr ""
+msgstr "Mezgla VÄrds:"
#: editor/editor_autoload_settings.cpp editor/editor_help_search.cpp
#: editor/editor_plugin_settings.cpp editor/editor_profiler.cpp
@@ -1571,11 +1560,11 @@ msgstr "Nosaukums"
#: editor/editor_autoload_settings.cpp
msgid "Global Variable"
-msgstr ""
+msgstr "GlobÄls mainÄ«gais"
#: editor/editor_data.cpp
msgid "Paste Params"
-msgstr ""
+msgstr "Ielīmēt Parametrus"
#: editor/editor_data.cpp
msgid "Updating Scene"
@@ -1583,11 +1572,11 @@ msgstr "Atjaunina Ainu"
#: editor/editor_data.cpp
msgid "Storing local changes..."
-msgstr ""
+msgstr "SaglabÄ lokÄlÄs izmaiņas..."
#: editor/editor_data.cpp
msgid "Updating scene..."
-msgstr ""
+msgstr "Atjauno ainu...."
#: editor/editor_data.cpp editor/editor_resource_picker.cpp
msgid "[empty]"
@@ -1599,57 +1588,61 @@ msgstr "[nesaglabÄts]"
#: editor/editor_dir_dialog.cpp
msgid "Please select a base directory first."
-msgstr ""
+msgstr "LÅ«dzu vispirms izvÄ“laties bÄzes mapi."
#: editor/editor_dir_dialog.cpp
msgid "Choose a Directory"
-msgstr ""
+msgstr "Izvēlēties Direktoriju"
#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp
#: editor/filesystem_dock.cpp editor/project_manager.cpp
#: scene/gui/file_dialog.cpp
msgid "Create Folder"
-msgstr ""
+msgstr "Izveidot mapi"
#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp
#: editor/editor_plugin_settings.cpp editor/filesystem_dock.cpp
#: editor/plugins/theme_editor_plugin.cpp editor/project_export.cpp
#: modules/visual_script/visual_script_editor.cpp scene/gui/file_dialog.cpp
msgid "Name:"
-msgstr ""
+msgstr "Nosaukums:"
#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp
#: editor/filesystem_dock.cpp scene/gui/file_dialog.cpp
msgid "Could not create folder."
-msgstr ""
+msgstr "NeizdevÄs izveidot mapi."
#: editor/editor_dir_dialog.cpp
msgid "Choose"
-msgstr ""
+msgstr "Izvēlaties"
#: editor/editor_export.cpp
msgid "Storing File:"
-msgstr ""
+msgstr "Faila saglabÄÅ¡ana:"
#: editor/editor_export.cpp
msgid "No export template found at the expected path:"
-msgstr ""
+msgstr "NorÄdÄ«tajÄ ceÄ¼Ä nav atrasta eksporta veidne:"
#: editor/editor_export.cpp
msgid "Packing"
-msgstr ""
+msgstr "Pako"
#: editor/editor_export.cpp
msgid ""
"Target platform requires 'ETC' texture compression for GLES2. Enable 'Import "
"Etc' in Project Settings."
msgstr ""
+"Mērķa platforma pieprasa 'ETC' tekstūru saspiešanu priekš GLES2. Iespējo "
+"'Importēt Etc' projekta iestatījumos."
#: editor/editor_export.cpp
msgid ""
"Target platform requires 'ETC2' texture compression for GLES3. Enable "
"'Import Etc 2' in Project Settings."
msgstr ""
+"Mērķa platforma pieprasa 'ETC2' tekstūru saspiešanu priekš GLES3. Iespējo "
+"'Importēt Etc 2' projekta iestatījumos."
#: editor/editor_export.cpp
msgid ""
@@ -1658,18 +1651,26 @@ msgid ""
"Enable 'Import Etc' in Project Settings, or disable 'Driver Fallback "
"Enabled'."
msgstr ""
+"MÄ“rÄ·a platforma pieprasa 'ETC' tekstÅ«ru saspieÅ¡anu priekÅ¡ draivera atkÄpes "
+"uz GLES2.\n"
+"IespÄ“jo 'ImportÄ“t Etc' projekta iestatÄ«jumos vai atslÄ“dz 'Draivera atkÄpe "
+"ieslēgta'."
#: editor/editor_export.cpp
msgid ""
"Target platform requires 'PVRTC' texture compression for GLES2. Enable "
"'Import Pvrtc' in Project Settings."
msgstr ""
+"Mērķa platforma pieprasa 'PVRTV' tekstūru saspiešanu priekš GLES2. Iespējo "
+"'Importēt Pvrtc' projekta iestatījumos."
#: editor/editor_export.cpp
msgid ""
"Target platform requires 'ETC2' or 'PVRTC' texture compression for GLES3. "
"Enable 'Import Etc 2' or 'Import Pvrtc' in Project Settings."
msgstr ""
+"Mērķa platforma pieprasa 'ETC2' vai 'PVRTC' tekstūru saspiešanu priekš "
+"GLES3. Iespējo 'Importēt Etc 2' vai 'Importēt Pvrtc' projekta iestatījumos."
#: editor/editor_export.cpp
msgid ""
@@ -1678,26 +1679,30 @@ msgid ""
"Enable 'Import Pvrtc' in Project Settings, or disable 'Driver Fallback "
"Enabled'."
msgstr ""
+"MÄ“rÄ·a platforma pieprasa 'PVRTC' tekstÅ«ru saspieÅ¡anu priekÅ¡ draivera atkÄpes "
+"uz GLES2.\n"
+"IespÄ“jo 'ImportÄ“t Pvrtc' projekta iestatÄ«jumos vai atslÄ“dz 'Draivera atkÄpe "
+"ieslēgta'."
#: editor/editor_export.cpp platform/android/export/export_plugin.cpp
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp platform/uwp/export/export.cpp
msgid "Custom debug template not found."
-msgstr ""
+msgstr "PielÄgots atkļūdoÅ¡anas Å¡ablons nav atrasts."
#: editor/editor_export.cpp platform/android/export/export_plugin.cpp
#: 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 "PielÄgots relÄ«zes sablons nav atrasts."
#: editor/editor_export.cpp platform/javascript/export/export.cpp
msgid "Template file not found:"
-msgstr ""
+msgstr "Å ablona fails nav atrasts:"
#: editor/editor_export.cpp
msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB."
-msgstr ""
+msgstr "Pie 32-bitu eksportÄ“Å¡anas, iepakotais PCK nevar bÅ«t lielÄks par 4GB."
#: editor/editor_feature_profile.cpp
msgid "3D Editor"
@@ -1705,87 +1710,90 @@ msgstr "3D Redaktors"
#: editor/editor_feature_profile.cpp
msgid "Script Editor"
-msgstr ""
+msgstr "Skripta redaktors"
#: editor/editor_feature_profile.cpp
msgid "Asset Library"
-msgstr ""
+msgstr "Līdzekļu bibliotēka"
#: editor/editor_feature_profile.cpp
msgid "Scene Tree Editing"
-msgstr ""
+msgstr "Ainas koka rediģēšana"
#: editor/editor_feature_profile.cpp
msgid "Node Dock"
-msgstr ""
+msgstr "Mezgla doks"
#: editor/editor_feature_profile.cpp
msgid "FileSystem Dock"
-msgstr ""
+msgstr "Failu sistēmas doks"
#: editor/editor_feature_profile.cpp
msgid "Import Dock"
-msgstr ""
+msgstr "Importēt doku"
#: editor/editor_feature_profile.cpp
msgid "Allows to view and edit 3D scenes."
-msgstr ""
+msgstr "Atļauj skatīt un rediģēt visas 3D ainas."
#: editor/editor_feature_profile.cpp
msgid "Allows to edit scripts using the integrated script editor."
-msgstr ""
+msgstr "Atļauj rediģēt skriptus izmantojot iebūvēto skriptu redaktoru."
#: editor/editor_feature_profile.cpp
msgid "Provides built-in access to the Asset Library."
-msgstr ""
+msgstr "Nodrošina iebūvēto piekļuvi līdzekļu bibliotēkai."
#: editor/editor_feature_profile.cpp
msgid "Allows editing the node hierarchy in the Scene dock."
-msgstr ""
+msgstr "Atļauj mezgla hierarhijas rediģēšanu ainu dokÄ."
#: editor/editor_feature_profile.cpp
msgid ""
"Allows to work with signals and groups of the node selected in the Scene "
"dock."
-msgstr ""
+msgstr "Atļauj strÄdÄt ar signÄliem un grupÄm izvÄ“lÄ“tÄ mezgla ainu dokÄ."
#: editor/editor_feature_profile.cpp
msgid "Allows to browse the local file system via a dedicated dock."
-msgstr ""
+msgstr "Atļauj pÄrlÅ«kot lokÄlo failu sistÄ“mu atvÄ“lÄ“tajÄ dokÄ."
#: editor/editor_feature_profile.cpp
msgid ""
"Allows to configure import settings for individual assets. Requires the "
"FileSystem dock to function."
msgstr ""
+"Atļauj konfigurÄ“t importÄ“Å¡anas iestatÄ«jumus individuÄliem lÄ«dzekļiem. "
+"Pieprasa failu sistēmas doku, lai funkcionētu."
#: editor/editor_feature_profile.cpp
msgid "(current)"
-msgstr ""
+msgstr "(current) / pašreizējs"
#: editor/editor_feature_profile.cpp
msgid "(none)"
-msgstr ""
+msgstr "(neviens)"
#: editor/editor_feature_profile.cpp
msgid "Remove currently selected profile, '%s'? Cannot be undone."
-msgstr ""
+msgstr "Noņemt pašreiz izvēlēto profilu '%s' ? Nevar atsaukt."
#: editor/editor_feature_profile.cpp
msgid "Profile must be a valid filename and must not contain '.'"
msgstr ""
+"Profila nosaukumam jÄbÅ«t derÄ«gam faila nosaukumam un tas nedrÄ«kst iekļaut '.'"
#: editor/editor_feature_profile.cpp
msgid "Profile with this name already exists."
-msgstr ""
+msgstr "Profils ar Å¡Ädu nosaukumu jau eksistÄ“."
#: editor/editor_feature_profile.cpp
msgid "(Editor Disabled, Properties Disabled)"
-msgstr ""
+msgstr "(Redaktors atslēgts, iestatījumi atslēgti)"
#: editor/editor_feature_profile.cpp
msgid "(Properties Disabled)"
-msgstr ""
+msgstr "(Iestatījumi atslēgti)"
#: editor/editor_feature_profile.cpp
msgid "(Editor Disabled)"
@@ -1797,53 +1805,51 @@ msgstr "Klases Iespējas:"
#: editor/editor_feature_profile.cpp
msgid "Enable Contextual Editor"
-msgstr ""
+msgstr "IespÄ“jot kontekstuÄlo redaktoru"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Class Properties:"
-msgstr "Ieslēgtie Mainīgie:"
+msgstr "Klases iestatījumi:"
#: editor/editor_feature_profile.cpp
msgid "Main Features:"
-msgstr ""
+msgstr "GalvenÄs iespÄ“jas:"
#: editor/editor_feature_profile.cpp
msgid "Nodes and Classes:"
-msgstr ""
+msgstr "Mezgli un klases:"
#: editor/editor_feature_profile.cpp
msgid "File '%s' format is invalid, import aborted."
-msgstr ""
+msgstr "Faila '%s' formÄts ir nepareizs, importÄ“Å¡ana atcelta."
#: editor/editor_feature_profile.cpp
msgid ""
"Profile '%s' already exists. Remove it first before importing, import "
"aborted."
msgstr ""
+"Profils '%s' jau eksistē. Vispirms to noņem pirms importēšanas. Importēšana "
+"atcelta."
#: editor/editor_feature_profile.cpp
msgid "Error saving profile to path: '%s'."
msgstr "Kļūda saglabÄjot profilu uz ceļu: '%s'."
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Reset to Default"
-msgstr "IelÄdÄ“t NoklusÄ“jumu"
+msgstr "Atiestatīt uz noklusējumu"
#: editor/editor_feature_profile.cpp
msgid "Current Profile:"
-msgstr ""
+msgstr "Pašreizējais profils:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Create Profile"
-msgstr "Izveidot"
+msgstr "Izveidot profilu"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Remove Profile"
-msgstr "Noņemt"
+msgstr "Noņemt profilu"
#: editor/editor_feature_profile.cpp
msgid "Available Profiles:"
@@ -1856,52 +1862,52 @@ msgstr "Aktualizēt"
#: editor/editor_feature_profile.cpp editor/editor_node.cpp
#: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp
msgid "Import"
-msgstr ""
+msgstr "Importēt"
#: editor/editor_feature_profile.cpp editor/project_export.cpp
msgid "Export"
-msgstr ""
+msgstr "Eksportēt"
#: editor/editor_feature_profile.cpp
msgid "Configure Selected Profile:"
-msgstr ""
+msgstr "Konfigurēt izvēlēto profilu:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Extra Options:"
-msgstr "Klases Iespējas:"
+msgstr "Papildus iespējas:"
#: editor/editor_feature_profile.cpp
msgid "Create or import a profile to edit available classes and properties."
msgstr ""
+"Izveidot vai importÄ“t profilu, lai rediģētu pieejamÄs klases un iestatÄ«jumus."
#: editor/editor_feature_profile.cpp
msgid "New profile name:"
-msgstr ""
+msgstr "Jaunais profila nosaukums:"
#: editor/editor_feature_profile.cpp
msgid "Godot Feature Profile"
-msgstr ""
+msgstr "Godot iespēju profils"
#: editor/editor_feature_profile.cpp
msgid "Import Profile(s)"
-msgstr ""
+msgstr "Importēt profilu(s)"
#: editor/editor_feature_profile.cpp
msgid "Export Profile"
-msgstr ""
+msgstr "Eksportēt profilu"
#: editor/editor_feature_profile.cpp
msgid "Manage Editor Feature Profiles"
-msgstr ""
+msgstr "PÄrvaldÄ«t redaktora iespÄ“ju profilus"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Select Current Folder"
-msgstr ""
+msgstr "Izvēlēties pašreizējo mapi"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "File exists, overwrite?"
-msgstr ""
+msgstr "Fails eksistÄ“. PÄrrakstÄ«t ?"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Select This Folder"
@@ -1909,7 +1915,7 @@ msgstr "Izvēlēties Šo Mapi"
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
msgid "Copy Path"
-msgstr ""
+msgstr "Kopēt celiņu"
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
msgid "Open in File Manager"
@@ -1918,40 +1924,40 @@ msgstr "AtvÄ“rt Failu PÄrlÅ«kÄ"
#: editor/editor_file_dialog.cpp editor/editor_node.cpp
#: editor/filesystem_dock.cpp editor/project_manager.cpp
msgid "Show in File Manager"
-msgstr ""
+msgstr "ParÄdÄ«t failu menedžerÄ«"
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
msgid "New Folder..."
-msgstr ""
+msgstr "Jauna mape..."
#: editor/editor_file_dialog.cpp editor/find_in_files.cpp
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Refresh"
-msgstr ""
+msgstr "AtsvaidzinÄt"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "All Recognized"
-msgstr ""
+msgstr "Viss atpazīts"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "All Files (*)"
-msgstr ""
+msgstr "Visi faili (*)"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Open a File"
-msgstr ""
+msgstr "Atvērt failu"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Open File(s)"
-msgstr ""
+msgstr "Atvērt failu(s)"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Open a Directory"
-msgstr ""
+msgstr "Atvērt mapi"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Open a File or Directory"
-msgstr ""
+msgstr "Atvērt failu vai mapi"
#: editor/editor_file_dialog.cpp editor/editor_node.cpp
#: editor/editor_resource_picker.cpp editor/import_defaults_editor.cpp
@@ -1959,47 +1965,47 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/theme_editor_plugin.cpp scene/gui/file_dialog.cpp
msgid "Save"
-msgstr ""
+msgstr "SaglabÄt"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Save a File"
-msgstr ""
+msgstr "SaglabÄt failu"
#: editor/editor_file_dialog.cpp
msgid "Go Back"
-msgstr ""
+msgstr "Doties atpakaļ"
#: editor/editor_file_dialog.cpp
msgid "Go Forward"
-msgstr ""
+msgstr "Doties tÄlÄk"
#: editor/editor_file_dialog.cpp
msgid "Go Up"
-msgstr ""
+msgstr "Doties augšup"
#: editor/editor_file_dialog.cpp
msgid "Toggle Hidden Files"
-msgstr ""
+msgstr "PÄrslÄ“gt slÄ“ptos failus"
#: editor/editor_file_dialog.cpp
msgid "Toggle Favorite"
-msgstr ""
+msgstr "PÄrslÄ“gt favorÄ«tu"
#: editor/editor_file_dialog.cpp
msgid "Toggle Mode"
-msgstr ""
+msgstr "PÄrslÄ“gt režīmu"
#: editor/editor_file_dialog.cpp
msgid "Focus Path"
-msgstr ""
+msgstr "Fokusa ceļš"
#: editor/editor_file_dialog.cpp
msgid "Move Favorite Up"
-msgstr ""
+msgstr "PÄrvietot favorÄ«tu augÅ¡up"
#: editor/editor_file_dialog.cpp
msgid "Move Favorite Down"
-msgstr ""
+msgstr "PÄrvietot favorÄ«tu lejup"
#: editor/editor_file_dialog.cpp
msgid "Go to previous folder."
@@ -2011,7 +2017,7 @@ msgstr "Doties uz nÄkamo mapi."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Go to parent folder."
-msgstr ""
+msgstr "AtvÄ“rt mÄtes mapi."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Refresh files."
@@ -2019,63 +2025,65 @@ msgstr "Atjaunot failus."
#: editor/editor_file_dialog.cpp
msgid "(Un)favorite current folder."
-msgstr ""
+msgstr "Pievienot/noņemt pašreizējo mapi pie/no favorītiem."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Toggle the visibility of hidden files."
-msgstr ""
+msgstr "PÄrslÄ“gt slÄ“pto failu redzamÄ«bu."
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
msgid "View items as a grid of thumbnails."
-msgstr ""
+msgstr "SkatÄ«t vienumus kÄ režģi ar sÄ«ktÄ“liem."
#: editor/editor_file_dialog.cpp editor/filesystem_dock.cpp
msgid "View items as a list."
-msgstr ""
+msgstr "SkatÄ«t lietas kÄ sarakstu."
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Directories & Files:"
-msgstr ""
+msgstr "Mapes & Faili:"
#: editor/editor_file_dialog.cpp editor/plugins/sprite_editor_plugin.cpp
#: editor/plugins/style_box_editor_plugin.cpp editor/rename_dialog.cpp
msgid "Preview:"
-msgstr ""
+msgstr "Priekškatījums:"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "File:"
-msgstr ""
+msgstr "Fails:"
#: editor/editor_file_system.cpp
msgid "ScanSources"
-msgstr ""
+msgstr "ScanSources / Skenēšanas Avoti"
#: editor/editor_file_system.cpp
msgid ""
"There are multiple importers for different types pointing to file %s, import "
"aborted"
msgstr ""
+"Ir vairÄki importÄ“tÄji dažÄdiem tipiem, kas norÄda uz failu %s, importÄ“Å¡ana "
+"atcelta"
#: editor/editor_file_system.cpp
msgid "(Re)Importing Assets"
-msgstr ""
+msgstr "(Re)Importē līdzekļus"
#: editor/editor_help.cpp
msgid "Top"
-msgstr ""
+msgstr "Virsotne"
#: editor/editor_help.cpp
msgid "Class:"
-msgstr ""
+msgstr "Klase:"
#: editor/editor_help.cpp editor/scene_tree_editor.cpp
#: editor/script_create_dialog.cpp
msgid "Inherits:"
-msgstr ""
+msgstr "Manto:"
#: editor/editor_help.cpp
msgid "Inherited by:"
-msgstr ""
+msgstr "Manto uz:"
#: editor/editor_help.cpp
msgid "Description"
@@ -2083,15 +2091,15 @@ msgstr "Apraksts"
#: editor/editor_help.cpp
msgid "Online Tutorials"
-msgstr ""
+msgstr "Online PamÄcÄ«bas"
#: editor/editor_help.cpp
msgid "Properties"
-msgstr ""
+msgstr "Iestatījumi"
#: editor/editor_help.cpp
msgid "override:"
-msgstr ""
+msgstr "pÄrrakstÄ«Å¡ana:"
#: editor/editor_help.cpp
msgid "default:"
@@ -2099,15 +2107,15 @@ msgstr "pēc noklusējuma:"
#: editor/editor_help.cpp
msgid "Methods"
-msgstr ""
+msgstr "Metodes"
#: editor/editor_help.cpp
msgid "Theme Properties"
-msgstr ""
+msgstr "Motīva iestatījumi"
#: editor/editor_help.cpp
msgid "Enumerations"
-msgstr ""
+msgstr "Uzskaitījumi"
#: editor/editor_help.cpp editor/plugins/theme_editor_plugin.cpp
msgid "Constants"
@@ -2115,17 +2123,19 @@ msgstr "Konstantes"
#: editor/editor_help.cpp
msgid "Property Descriptions"
-msgstr "Mainīgo Apraksts"
+msgstr "Iestatījumu apraksti"
#: editor/editor_help.cpp
msgid "(value)"
-msgstr ""
+msgstr "(vērtība)"
#: editor/editor_help.cpp
msgid ""
"There is currently no description for this property. Please help us by "
"[color=$color][url=$url]contributing one[/url][/color]!"
msgstr ""
+"Pašreiz šim mainīgajam nav apraksta. Lūdzu, palīdzi mums [color=$color][url="
+"$url]izveidot to[/url][/color]!"
#: editor/editor_help.cpp
msgid "Method Descriptions"
@@ -2136,31 +2146,33 @@ msgid ""
"There is currently no description for this method. Please help us by [color="
"$color][url=$url]contributing one[/url][/color]!"
msgstr ""
+"Pašreiz šai metodei nav apraksta. Lūdzu, palīdzi mums [color=$color][url="
+"$url]pievienojot vienu[/url][/color]!"
#: editor/editor_help_search.cpp editor/editor_node.cpp
#: editor/plugins/script_editor_plugin.cpp
msgid "Search Help"
-msgstr ""
+msgstr "Meklēt Palīdzību"
#: editor/editor_help_search.cpp
msgid "Case Sensitive"
-msgstr ""
+msgstr "Reģistrjūtīgs"
#: editor/editor_help_search.cpp
msgid "Show Hierarchy"
-msgstr ""
+msgstr "RÄdÄ«t Hierarhiju"
#: editor/editor_help_search.cpp
msgid "Display All"
-msgstr ""
+msgstr "ParÄdÄ«t Visu"
#: editor/editor_help_search.cpp
msgid "Classes Only"
-msgstr ""
+msgstr "Tikai Klases"
#: editor/editor_help_search.cpp
msgid "Methods Only"
-msgstr ""
+msgstr "Tikai Metodes"
#: editor/editor_help_search.cpp
msgid "Signals Only"
@@ -2168,27 +2180,27 @@ msgstr "Tikai SignÄli"
#: editor/editor_help_search.cpp
msgid "Constants Only"
-msgstr ""
+msgstr "Tikai Konstantes"
#: editor/editor_help_search.cpp
msgid "Properties Only"
-msgstr ""
+msgstr "Tikai Iestatījumus"
#: editor/editor_help_search.cpp
msgid "Theme Properties Only"
-msgstr ""
+msgstr "Tikai Motīva Iestatījumus"
#: editor/editor_help_search.cpp
msgid "Member Type"
-msgstr ""
+msgstr "Dalībnieka veids"
#: editor/editor_help_search.cpp
msgid "Class"
-msgstr ""
+msgstr "Klase"
#: editor/editor_help_search.cpp
msgid "Method"
-msgstr ""
+msgstr "Metode"
#: editor/editor_help_search.cpp editor/plugins/script_text_editor.cpp
msgid "Signal"
@@ -2196,32 +2208,32 @@ msgstr "SignÄls"
#: editor/editor_help_search.cpp
msgid "Constant"
-msgstr ""
+msgstr "Konstante"
#: editor/editor_help_search.cpp
msgid "Property"
-msgstr ""
+msgstr "Mainīgais"
#: editor/editor_help_search.cpp
msgid "Theme Property"
-msgstr ""
+msgstr "Motīva Mainīgais"
#: editor/editor_inspector.cpp editor/project_settings_editor.cpp
msgid "Property:"
-msgstr ""
+msgstr "Parametrs:"
#: editor/editor_inspector.cpp editor/scene_tree_dock.cpp
#: modules/visual_script/visual_script_property_selector.cpp
msgid "Set %s"
-msgstr ""
+msgstr "Likt %s"
#: editor/editor_inspector.cpp
msgid "Set Multiple:"
-msgstr ""
+msgstr "Uzlikt vairÄkus:"
#: editor/editor_log.cpp
msgid "Output:"
-msgstr ""
+msgstr "Izeja:"
#: editor/editor_log.cpp editor/plugins/tile_map_editor_plugin.cpp
msgid "Copy Selection"
@@ -2235,57 +2247,57 @@ msgstr "Kopēt Izvēlēto"
#: modules/gdnative/gdnative_library_editor_plugin.cpp scene/gui/line_edit.cpp
#: scene/gui/text_edit.cpp
msgid "Clear"
-msgstr ""
+msgstr "Notītīt"
#: editor/editor_log.cpp
msgid "Clear Output"
-msgstr ""
+msgstr "Notīrīt Izeju"
#: editor/editor_network_profiler.cpp editor/editor_node.cpp
#: editor/editor_profiler.cpp
msgid "Stop"
-msgstr ""
+msgstr "PÄrtraukt"
#: editor/editor_network_profiler.cpp editor/editor_profiler.cpp
#: editor/plugins/animation_state_machine_editor.cpp editor/rename_dialog.cpp
msgid "Start"
-msgstr ""
+msgstr "SÄkt"
#: editor/editor_network_profiler.cpp
msgid "%s/s"
-msgstr ""
+msgstr "%s/s"
#: editor/editor_network_profiler.cpp
msgid "Down"
-msgstr ""
+msgstr "Lejup"
#: editor/editor_network_profiler.cpp
msgid "Up"
-msgstr ""
+msgstr "Augšup"
#: editor/editor_network_profiler.cpp editor/editor_node.cpp
msgid "Node"
-msgstr ""
+msgstr "Mezgls"
#: editor/editor_network_profiler.cpp
msgid "Incoming RPC"
-msgstr ""
+msgstr "IenÄkoÅ¡s RPC"
#: editor/editor_network_profiler.cpp
msgid "Incoming RSET"
-msgstr ""
+msgstr "IenÄkoÅ¡s RSET"
#: editor/editor_network_profiler.cpp
msgid "Outgoing RPC"
-msgstr ""
+msgstr "Izejošs RPC"
#: editor/editor_network_profiler.cpp
msgid "Outgoing RSET"
-msgstr ""
+msgstr "Izejošs RSET"
#: editor/editor_node.cpp editor/project_manager.cpp
msgid "New Window"
-msgstr ""
+msgstr "Jauns logs"
#: editor/editor_node.cpp
msgid ""
@@ -2293,98 +2305,107 @@ msgid ""
"Update Continuously is enabled, which can increase power usage. Click to "
"disable it."
msgstr ""
+"Griežas, kad redaktora logs atjauninas.\n"
+"AtjauninÄt konstanti ir iespÄ“jots, kas var palielinÄt jaudas izmantoÅ¡anu. "
+"Klikšķini, lai atslēgtu."
#: editor/editor_node.cpp
msgid "Spins when the editor window redraws."
-msgstr ""
+msgstr "Griežas, kad redaktora logs atjauninas."
#: editor/editor_node.cpp
msgid "Imported resources can't be saved."
-msgstr ""
+msgstr "ImportÄ“tie resursi nevar tikt saglabÄti."
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/theme_editor_plugin.cpp
#: modules/gltf/editor_scene_exporter_gltf_plugin.cpp scene/gui/dialogs.cpp
msgid "OK"
-msgstr ""
+msgstr "Labi"
#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp
msgid "Error saving resource!"
-msgstr ""
+msgstr "Kļūda saglabÄjot resursu!"
#: editor/editor_node.cpp
msgid ""
"This resource can't be saved because it does not belong to the edited scene. "
"Make it unique first."
msgstr ""
+"Å o resursu nevar saglabÄt, jo tas nepieder rediģētajai ainai. Vispirms "
+"uztaisi to unikÄlu."
#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp
msgid "Save Resource As..."
-msgstr ""
+msgstr "SaglabÄt Resursu KÄ..."
#: editor/editor_node.cpp
msgid "Can't open file for writing:"
-msgstr ""
+msgstr "Nevar atvērt failu rakstīšanai:"
#: editor/editor_node.cpp
msgid "Requested file format unknown:"
-msgstr ""
+msgstr "PieprasÄ«tais faila formÄts ir nezinÄms:"
#: editor/editor_node.cpp
msgid "Error while saving."
-msgstr ""
+msgstr "Kļūda saglabÄjot."
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
msgid "Can't open '%s'. The file could have been moved or deleted."
-msgstr ""
+msgstr "Nevar atvÄ“rt '%s'. Fails ir pÄrvietots vai dzÄ“sts."
#: editor/editor_node.cpp
msgid "Error while parsing '%s'."
-msgstr ""
+msgstr "Kļūda pÄrsienot '%s'."
#: editor/editor_node.cpp
msgid "Unexpected end of file '%s'."
-msgstr ""
+msgstr "Negaidītas faila beigas '%s'."
#: editor/editor_node.cpp
msgid "Missing '%s' or its dependencies."
-msgstr ""
+msgstr "IztrÅ«kst '%s' vai tÄ atkarÄ«bas."
#: editor/editor_node.cpp
msgid "Error while loading '%s'."
-msgstr ""
+msgstr "Kļūda ielÄdÄ“jot '%s'."
#: editor/editor_node.cpp
msgid "Saving Scene"
-msgstr ""
+msgstr "SaglabÄ Ainu"
#: editor/editor_node.cpp
msgid "Analyzing"
-msgstr ""
+msgstr "Analizē"
#: editor/editor_node.cpp
msgid "Creating Thumbnail"
-msgstr ""
+msgstr "Izveido sīktēlu"
#: editor/editor_node.cpp
msgid "This operation can't be done without a tree root."
-msgstr ""
+msgstr "Nevar veikt šo darbību bez koka cilmes."
#: editor/editor_node.cpp
msgid ""
"This scene can't be saved because there is a cyclic instancing inclusion.\n"
"Please resolve it and then attempt to save again."
msgstr ""
+"Å o ainu nevar saglabÄt, jo ir konstatÄ“ta cikliska instancÄ“Å¡anas cilpa.\n"
+"LÅ«dzu, atrisini to un tad mÄ“gini saglabÄt ainu vÄ“lreiz."
#: editor/editor_node.cpp
msgid ""
"Couldn't save scene. Likely dependencies (instances or inheritance) couldn't "
"be satisfied."
msgstr ""
+"Nevar saglabÄt ainu. DroÅ¡ivien atkarÄ«bas (instances vai mantojumi) ir "
+"kļūdainas."
#: editor/editor_node.cpp
msgid "Could not save one or more scenes!"
-msgstr ""
+msgstr "Nevar saglabÄt vienu vai vairÄkas ainas!"
#: editor/editor_node.cpp
msgid "Save All Scenes"
@@ -2392,29 +2413,31 @@ msgstr "SaglabÄt Visas Ainas"
#: editor/editor_node.cpp editor/scene_tree_dock.cpp
msgid "Can't overwrite scene that is still open!"
-msgstr ""
+msgstr "Nevar pÄrrakstÄ«t ainu, kas joprojÄm ir atvÄ“rta!"
#: editor/editor_node.cpp
msgid "Can't load MeshLibrary for merging!"
-msgstr ""
+msgstr "NevarÄ“ja ielÄdÄ“t tÄ«klu bibliotÄ“ku sapludinÄÅ¡anai!"
#: editor/editor_node.cpp
msgid "Error saving MeshLibrary!"
-msgstr ""
+msgstr "Kļūda saglabÄjot tÄ«kla bibliotÄ“ku!"
#: editor/editor_node.cpp
msgid "Can't load TileSet for merging!"
-msgstr ""
+msgstr "Nevar ielÄdÄ“t flīžu karti sapludinÄÅ¡anai!"
#: editor/editor_node.cpp
msgid "Error saving TileSet!"
-msgstr ""
+msgstr "Kļūda saglabÄjot flīžu komplektu!"
#: editor/editor_node.cpp
msgid ""
"An error occurred while trying to save the editor layout.\n"
"Make sure the editor's user data path is writable."
msgstr ""
+"Notika gļūda saglabÄjot redaktora izkÄrtojumu.\n"
+"PÄrliecinies, ka redaktora lietotÄja datu mape ir rakstÄma."
#: editor/editor_node.cpp
msgid ""
@@ -2425,11 +2448,11 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Layout name not found!"
-msgstr ""
+msgstr "IzkÄrtojuma nosaukums nav atrasts!"
#: editor/editor_node.cpp
msgid "Restored the Default layout to its base settings."
-msgstr ""
+msgstr "NoklusÄ“juma izkÄrtojums atjaunots uz bÄzes iestatÄ«jumiem."
#: editor/editor_node.cpp
msgid ""
@@ -2467,23 +2490,23 @@ msgstr ""
#: editor/editor_node.cpp
msgid "There is no defined scene to run."
-msgstr ""
+msgstr "Nav definēta aina, kuru palaist."
#: editor/editor_node.cpp
msgid "Save scene before running..."
-msgstr ""
+msgstr "SaglabÄ ainu pirms palaiÅ¡anas..."
#: editor/editor_node.cpp
msgid "Could not start subprocess!"
-msgstr ""
+msgstr "Nevar palaist sub-procesu!"
#: editor/editor_node.cpp editor/filesystem_dock.cpp
msgid "Open Scene"
-msgstr ""
+msgstr "Atvērt ainu"
#: editor/editor_node.cpp
msgid "Open Base Scene"
-msgstr ""
+msgstr "AtvÄ“rt bÄzes ainu"
#: editor/editor_node.cpp
msgid "Quick Open..."
@@ -2491,23 +2514,23 @@ msgstr "Ātri Atvērt..."
#: editor/editor_node.cpp
msgid "Quick Open Scene..."
-msgstr ""
+msgstr "Ātri atvērt ainu..."
#: editor/editor_node.cpp
msgid "Quick Open Script..."
-msgstr ""
+msgstr "Ätri atvÄ“rt skriptu..."
#: editor/editor_node.cpp
msgid "Save & Close"
-msgstr ""
+msgstr "SaglabÄt & aizvÄ“rt"
#: editor/editor_node.cpp
msgid "Save changes to '%s' before closing?"
-msgstr ""
+msgstr "SaglabÄt izmaiņas '%s' pirms aizvÄ“rÅ¡anas ?"
#: editor/editor_node.cpp
msgid "%s no longer exists! Please specify a new save location."
-msgstr ""
+msgstr "%s vairs neeksistÄ“! LÅ«dzu norÄdi jaunu saglabÄÅ¡anas lokÄciju."
#: editor/editor_node.cpp
msgid ""
@@ -2523,43 +2546,43 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Save Scene As..."
-msgstr ""
+msgstr "SaglabÄt ainu kÄ..."
#: editor/editor_node.cpp modules/gltf/editor_scene_exporter_gltf_plugin.cpp
msgid "This operation can't be done without a scene."
-msgstr ""
+msgstr "Å o operÄciju nevar veikt bez ainas."
#: editor/editor_node.cpp
msgid "Export Mesh Library"
-msgstr ""
+msgstr "Ekportēt tīkla bibliotēku"
#: editor/editor_node.cpp
msgid "This operation can't be done without a root node."
-msgstr ""
+msgstr "Šī darbība nevar tikt veikta bez cilmes mezgla."
#: editor/editor_node.cpp
msgid "Export Tile Set"
-msgstr ""
+msgstr "Eksportēt flīžu kopumu"
#: editor/editor_node.cpp
msgid "This operation can't be done without a selected node."
-msgstr ""
+msgstr "Šo darbību nevar veikt bez izvēlēta mezgla."
#: editor/editor_node.cpp
msgid "Current scene not saved. Open anyway?"
-msgstr ""
+msgstr "PaÅ¡reizÄ“jÄ aina nav saglabÄta. Vienalga atvÄ“rt ?"
#: editor/editor_node.cpp
msgid "Can't undo while mouse buttons are pressed."
-msgstr ""
+msgstr "Nevar atgriezt, kad peles pogas ir nospiestas."
#: editor/editor_node.cpp
msgid "Nothing to undo."
-msgstr ""
+msgstr "Nav ko atgriezt."
#: editor/editor_node.cpp
msgid "Undo: %s"
-msgstr ""
+msgstr "Atgriezts: %s"
#: editor/editor_node.cpp
msgid "Can't redo while mouse buttons are pressed."
@@ -2575,12 +2598,11 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Can't reload a scene that was never saved."
-msgstr ""
+msgstr "Nevar pÄrlÄdÄ“t ainu, kas nav bijusi saglabÄta."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Reload Saved Scene"
-msgstr "Atvērt Aizvērto Ainu"
+msgstr "PÄrlÄdÄ“t saglabÄto ainu"
#: editor/editor_node.cpp
msgid ""
@@ -2590,49 +2612,52 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Quick Run Scene..."
-msgstr ""
+msgstr "Ä€tri palaist ainu..."
#: editor/editor_node.cpp
msgid "Quit"
-msgstr ""
+msgstr "Iziet"
#: editor/editor_node.cpp
msgid "Yes"
-msgstr ""
+msgstr "JÄ"
#: editor/editor_node.cpp
msgid "Exit the editor?"
-msgstr ""
+msgstr "Iziet no redaktora?"
#: editor/editor_node.cpp
msgid "Open Project Manager?"
-msgstr ""
+msgstr "Atvērt projektu menedžeri ?"
#: editor/editor_node.cpp
msgid "Save & Quit"
-msgstr ""
+msgstr "SaglabÄt & iziet"
#: editor/editor_node.cpp
msgid "Save changes to the following scene(s) before quitting?"
-msgstr ""
+msgstr "SaglabÄt izmaiņas sekojoÅ¡ai ainai(-Äm) pirms izieÅ¡anas ?"
#: editor/editor_node.cpp
msgid "Save changes to the following scene(s) before opening Project Manager?"
msgstr ""
+"SaglabÄt izmaiņas sekojoÅ¡ai ainai(-Äm) pirms projektu menedžera atvÄ“rÅ¡anas ?"
#: editor/editor_node.cpp
msgid ""
"This option is deprecated. Situations where refresh must be forced are now "
"considered a bug. Please report."
msgstr ""
+"Å Ä« iespÄ“ja in novecojusi. SituÄcijas, kad atsvaidzinÄÅ¡ana ir jÄveic "
+"piespiedu kÄrtÄ, ir uzskatÄma par kļūdu, lÅ«dzu ziņojiet."
#: editor/editor_node.cpp
msgid "Pick a Main Scene"
-msgstr ""
+msgstr "Izvēlēties galveno ainu"
#: editor/editor_node.cpp
msgid "Close Scene"
-msgstr ""
+msgstr "Aizvērt ainu"
#: editor/editor_node.cpp
msgid "Reopen Closed Scene"
@@ -2644,11 +2669,11 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Unable to find script field for addon plugin at: '%s'."
-msgstr ""
+msgstr "Nevarēja atrast skripta lauku spraudnim: '%s'."
#: editor/editor_node.cpp
msgid "Unable to load addon script from path: '%s'."
-msgstr ""
+msgstr "NevarÄ“ja ielÄdÄ“t spraudņa skriptu no: '%s'."
#: editor/editor_node.cpp
msgid ""
@@ -2665,6 +2690,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Unable to load addon script from path: '%s' Script is not in tool mode."
msgstr ""
+"NevarÄ“ja ielÄdÄ“t spraudÅ†Ä skriptu no mapes: '%s' Skripts nav rÄ«ka režīmÄ."
#: editor/editor_node.cpp
msgid ""
@@ -2680,11 +2706,11 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Scene '%s' has broken dependencies:"
-msgstr ""
+msgstr "Ainai '%s' ir bojÄtas atkarÄ«bas:"
#: editor/editor_node.cpp
msgid "Clear Recent Scenes"
-msgstr ""
+msgstr "NotÄ«rÄ«t nesenÄs ainas"
#: editor/editor_node.cpp
msgid ""
@@ -2709,25 +2735,25 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Save Layout"
-msgstr ""
+msgstr "SaglabÄt izkÄrtojumu"
#: editor/editor_node.cpp
msgid "Delete Layout"
-msgstr ""
+msgstr "DzÄ“st izkÄrtojumu"
#: editor/editor_node.cpp editor/import_dock.cpp
#: editor/script_create_dialog.cpp
msgid "Default"
-msgstr ""
+msgstr "Noklusējuma"
#: editor/editor_node.cpp editor/editor_resource_picker.cpp
#: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp
msgid "Show in FileSystem"
-msgstr ""
+msgstr "ParÄdÄ«t failu sistÄ“mÄ"
#: editor/editor_node.cpp
msgid "Play This Scene"
-msgstr ""
+msgstr "Spēlēt šo ainu"
#: editor/editor_node.cpp
msgid "Close Tab"
@@ -2739,11 +2765,11 @@ msgstr "Atcelt Cilnes Aizvēršanu"
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
msgid "Close Other Tabs"
-msgstr ""
+msgstr "AizvÄ“rt pÄrÄ“jÄs cilnes"
#: editor/editor_node.cpp
msgid "Close Tabs to the Right"
-msgstr ""
+msgstr "Aizvērt cilnes pa labi"
#: editor/editor_node.cpp
msgid "Close All Tabs"
@@ -2751,23 +2777,23 @@ msgstr "Aizvērt Visas Cilnes"
#: editor/editor_node.cpp
msgid "Switch Scene Tab"
-msgstr ""
+msgstr "PÄrslÄ“gt ainas cilni"
#: editor/editor_node.cpp
msgid "%d more files or folders"
-msgstr ""
+msgstr "%d vēl faili vai mapes"
#: editor/editor_node.cpp
msgid "%d more folders"
-msgstr ""
+msgstr "%s vēl mapes"
#: editor/editor_node.cpp
msgid "%d more files"
-msgstr ""
+msgstr "%d vēl faili"
#: editor/editor_node.cpp
msgid "Dock Position"
-msgstr ""
+msgstr "Doka pozīcija"
#: editor/editor_node.cpp
msgid "Distraction Free Mode"
@@ -2779,15 +2805,15 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Add a new scene."
-msgstr ""
+msgstr "Pievienot jaunu ainu."
#: editor/editor_node.cpp
msgid "Scene"
-msgstr ""
+msgstr "Aina"
#: editor/editor_node.cpp
msgid "Go to previously opened scene."
-msgstr ""
+msgstr "Iet uz iepriekš atvērto ainu."
#: editor/editor_node.cpp
msgid "Copy Text"
@@ -2795,15 +2821,15 @@ msgstr "Kopēt Tekstu"
#: editor/editor_node.cpp
msgid "Next tab"
-msgstr ""
+msgstr "NÄkamÄ cilne"
#: editor/editor_node.cpp
msgid "Previous tab"
-msgstr ""
+msgstr "IepriekÅ¡Ä“jÄ cilne"
#: editor/editor_node.cpp
msgid "Filter Files..."
-msgstr ""
+msgstr "Filtrēt failus..."
#: editor/editor_node.cpp
msgid "Operations with scene files."
@@ -2823,15 +2849,15 @@ msgstr ""
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
msgid "Open Recent"
-msgstr ""
+msgstr "Atvērt nesenu"
#: editor/editor_node.cpp
msgid "Save Scene"
-msgstr ""
+msgstr "SaglabÄt ainu"
#: editor/editor_node.cpp
msgid "Convert To..."
-msgstr ""
+msgstr "Konvertēt Uz..."
#: editor/editor_node.cpp
msgid "MeshLibrary..."
@@ -2844,12 +2870,12 @@ msgstr ""
#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
msgid "Undo"
-msgstr ""
+msgstr "Atsaukt"
#: editor/editor_node.cpp editor/plugins/script_text_editor.cpp
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
msgid "Redo"
-msgstr ""
+msgstr "PÄrtaisÄ«t"
#: editor/editor_node.cpp
msgid "Miscellaneous project or scene-wide tools."
@@ -2858,31 +2884,31 @@ msgstr ""
#: editor/editor_node.cpp editor/project_manager.cpp
#: editor/script_create_dialog.cpp
msgid "Project"
-msgstr ""
+msgstr "Projekts"
#: editor/editor_node.cpp
msgid "Project Settings..."
-msgstr ""
+msgstr "Projekta iestatjumi..."
#: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp
msgid "Version Control"
-msgstr ""
+msgstr "Versiju Kontrole"
#: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp
msgid "Set Up Version Control"
-msgstr ""
+msgstr "UzstÄdÄ«t Versiju Kontroli"
#: editor/editor_node.cpp
msgid "Shut Down Version Control"
-msgstr ""
+msgstr "Izbeigt Versiju Kontroli"
#: editor/editor_node.cpp
msgid "Export..."
-msgstr ""
+msgstr "Eksportēt..."
#: editor/editor_node.cpp
msgid "Install Android Build Template..."
-msgstr ""
+msgstr "Instalēt Android būves šablonu..."
#: editor/editor_node.cpp
msgid "Open Project Data Folder"
@@ -2890,28 +2916,28 @@ msgstr "Atvērt Projekta Datu Mapi"
#: editor/editor_node.cpp editor/plugins/tile_set_editor_plugin.cpp
msgid "Tools"
-msgstr ""
+msgstr "RÄ«ki"
#: editor/editor_node.cpp
msgid "Orphan Resource Explorer..."
-msgstr ""
+msgstr "BÄreņu resursu pÄrlÅ«ks..."
#: editor/editor_node.cpp
msgid "Reload Current Project"
-msgstr ""
+msgstr "PÄrlÄdÄ“t paÅ¡reizÄ“jo projektu"
#: editor/editor_node.cpp
msgid "Quit to Project List"
-msgstr ""
+msgstr "Iziet uz projektu sarakstu"
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: editor/project_export.cpp
msgid "Debug"
-msgstr ""
+msgstr "Atkļūdot"
#: editor/editor_node.cpp
msgid "Deploy with Remote Debug"
-msgstr ""
+msgstr "Palaist ar tÄlvadÄ«bas atkļūdoÅ¡anu"
#: editor/editor_node.cpp
msgid ""
@@ -2922,10 +2948,16 @@ msgid ""
"mobile device).\n"
"You don't need to enable it to use the GDScript debugger locally."
msgstr ""
+"Kad Å¡Ä« opcija ir ieslÄ“gta, izmantojot viena klikÅ¡Ä·a palaiÅ¡anu, tÄ liks "
+"spēlei savienoties ar šī datora IP adresi, lai pašreizējais projekts varētu "
+"tik atkļūdots attÄlinÄti.\n"
+"Å Ä« opcija ir paredzÄ“ta izmantoÅ¡anai tÄlvadÄ«bas atkļūdoÅ¡anai (parasti ar "
+"mobilu ierīci).\n"
+"Jums tÄ nav jÄieslÄ“dz, lai izmantotu GDScript atkļūdotÄju lokÄli."
#: editor/editor_node.cpp
msgid "Small Deploy with Network Filesystem"
-msgstr ""
+msgstr "MazÄ palaiÅ¡ana ar tÄ«kla failu sistÄ“mu"
#: editor/editor_node.cpp
msgid ""
@@ -2936,10 +2968,15 @@ msgid ""
"On Android, deploying will use the USB cable for faster performance. This "
"option speeds up testing for projects with large assets."
msgstr ""
+"Kad Å¡Ä« opcija ir ieslÄ“gta, izmantojot viena klikÅ¡Ä·a palaiÅ¡anu uz Android, tÄ "
+"eksportēs tikai spēles palaišanas failu bez projekta datiem.\n"
+"Projekta failu sistÄ“ma tiks nodroÅ¡inÄta attÄlinÄti, caur internetu.\n"
+"Uz Android, palaiÅ¡ana izmantos USB kabeli, lai nodroÅ¡inÄtu ÄtrÄku "
+"izpildÄ«jumu. Å Ä« opcija paÄtrina projektu testÄ“Å¡anu ar milzÄ«giem resursiem."
#: editor/editor_node.cpp
msgid "Visible Collision Shapes"
-msgstr ""
+msgstr "Redzamas sadursmes formas"
#: editor/editor_node.cpp
msgid ""
@@ -2949,7 +2986,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Visible Navigation"
-msgstr ""
+msgstr "Redzama navigÄcija"
#: editor/editor_node.cpp
msgid ""
@@ -2959,7 +2996,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Synchronize Scene Changes"
-msgstr ""
+msgstr "Sinhronizēt ainas izmaiņas"
#: editor/editor_node.cpp
msgid ""
@@ -2971,7 +3008,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Synchronize Script Changes"
-msgstr ""
+msgstr "Sinhronizēt skripta izmaiņas"
#: editor/editor_node.cpp
msgid ""
@@ -2983,108 +3020,107 @@ msgstr ""
#: editor/editor_node.cpp editor/script_create_dialog.cpp
msgid "Editor"
-msgstr ""
+msgstr "Redaktors"
#: editor/editor_node.cpp
msgid "Editor Settings..."
-msgstr ""
+msgstr "Redaktora iestatījumi..."
#: editor/editor_node.cpp
msgid "Editor Layout"
-msgstr ""
+msgstr "Redaktora izkÄrtojums"
#: editor/editor_node.cpp
msgid "Take Screenshot"
-msgstr ""
+msgstr "Uzņemt EkrÄnÅ¡Äviņu"
#: editor/editor_node.cpp
msgid "Screenshots are stored in the Editor Data/Settings Folder."
-msgstr ""
+msgstr "EkrÄnÅ¡Äviņi tiek saglabÄti redaktora datu / iestatÄ«jumu mapÄ“."
#: editor/editor_node.cpp
msgid "Toggle Fullscreen"
-msgstr ""
+msgstr "PÄrslÄ“gt PilnekrÄnu"
#: editor/editor_node.cpp
msgid "Toggle System Console"
-msgstr ""
+msgstr "PÄrslÄ“gt sistÄ“mas konsoli"
#: editor/editor_node.cpp
msgid "Open Editor Data/Settings Folder"
-msgstr ""
+msgstr "Atvērt redaktora datu / iestatījumu mapi"
#: editor/editor_node.cpp
msgid "Open Editor Data Folder"
-msgstr ""
+msgstr "Atvērt redaktora datu mapi"
#: editor/editor_node.cpp
msgid "Open Editor Settings Folder"
-msgstr ""
+msgstr "Atvērt redaktora iestatījumu mapi"
#: editor/editor_node.cpp
msgid "Manage Editor Features..."
-msgstr ""
+msgstr "PÄrcaldÄ«t redaktora iespÄ“jas..."
#: editor/editor_node.cpp
msgid "Manage Export Templates..."
-msgstr ""
+msgstr "PÄrvaldÄ«t eksporta Å¡ablonus..."
#: editor/editor_node.cpp editor/plugins/shader_editor_plugin.cpp
msgid "Help"
-msgstr ""
+msgstr "Palīdzība"
#: editor/editor_node.cpp
msgid "Online Documentation"
-msgstr ""
+msgstr "TieÅ¡saistes DokumentÄcija"
#: editor/editor_node.cpp
msgid "Questions & Answers"
-msgstr ""
+msgstr "JautÄjumi & Atbildes"
#: editor/editor_node.cpp
msgid "Report a Bug"
-msgstr ""
+msgstr "Ziņot par kļūmi"
#: editor/editor_node.cpp
msgid "Suggest a Feature"
-msgstr ""
+msgstr "Ieteikt Iespēju"
#: editor/editor_node.cpp
msgid "Send Docs Feedback"
-msgstr ""
+msgstr "Sūtīt dokumentu atsauksmi"
#: editor/editor_node.cpp editor/plugins/asset_library_editor_plugin.cpp
msgid "Community"
-msgstr "Sabiedrība"
+msgstr "Komūns"
#: editor/editor_node.cpp
-#, fuzzy
msgid "About Godot"
-msgstr "Par"
+msgstr "Par Godot"
#: editor/editor_node.cpp
msgid "Support Godot Development"
-msgstr ""
+msgstr "AtbalstÄ«t Godot izstrÄdi"
#: editor/editor_node.cpp
msgid "Play the project."
-msgstr ""
+msgstr "Atskaņot projektu."
#: editor/editor_node.cpp
msgid "Play"
-msgstr ""
+msgstr "Atskaņot"
#: editor/editor_node.cpp
msgid "Pause the scene execution for debugging."
-msgstr ""
+msgstr "Pauzēt ainas izpildi priekš atkļūdošanas."
#: editor/editor_node.cpp
msgid "Pause Scene"
-msgstr ""
+msgstr "Pauzēt ainu"
#: editor/editor_node.cpp
msgid "Stop the scene."
-msgstr ""
+msgstr "ApstÄdinÄt ainu."
#: editor/editor_node.cpp
msgid "Play the edited scene."
@@ -3092,7 +3128,7 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Play Scene"
-msgstr ""
+msgstr "Spēlēt Ainu"
#: editor/editor_node.cpp
msgid "Play custom scene"
@@ -3109,7 +3145,7 @@ msgstr ""
#: editor/editor_node.cpp editor/project_settings_editor.cpp
#: editor/settings_config_dialog.cpp
msgid "Save & Restart"
-msgstr ""
+msgstr "SaglabÄt & pÄrstartÄ“t"
#: editor/editor_node.cpp
msgid "Update Continuously"
@@ -3117,7 +3153,7 @@ msgstr "NepÄrtraukti Atjaunot"
#: editor/editor_node.cpp
msgid "Update When Changed"
-msgstr ""
+msgstr "Atjaunot Kad Mainīts"
#: editor/editor_node.cpp
msgid "Hide Update Spinner"
@@ -3125,11 +3161,11 @@ msgstr ""
#: editor/editor_node.cpp
msgid "FileSystem"
-msgstr ""
+msgstr "Failu sistēma"
#: editor/editor_node.cpp
msgid "Inspector"
-msgstr ""
+msgstr "Inspektors"
#: editor/editor_node.cpp
msgid "Expand Bottom Panel"
@@ -3137,11 +3173,11 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Output"
-msgstr ""
+msgstr "Izeja"
#: editor/editor_node.cpp
msgid "Don't Save"
-msgstr ""
+msgstr "NesaglabÄt"
#: editor/editor_node.cpp
msgid "Android build template is missing, please install relevant templates."
@@ -3169,6 +3205,12 @@ msgid ""
"the \"Use Custom Build\" option should be enabled in the Android export "
"preset."
msgstr ""
+"Å is iestatÄ«s jÅ«su projektu priekÅ¡ pielÄgotÄm Android bÅ«vÄ“m, ieinstalÄ“jot "
+"avota Å¡ablonu uz \"res://android/build\".\n"
+"JÅ«s varat veikt izmaiņas un uzbÅ«vÄ“t paÅ¡i savu pielÄgoto APK pie "
+"eksportēšanas (pievienot moduļus, mainīt AndroidManifest.xml, utt.).\n"
+"PiezÄ«me - lai veiktu pielÄgotÄs bÅ«ves jau iebÅ«vÄ“to APK vietÄ, opcijai "
+"\"Izmantot PielÄgotu bÅ«vi\" jÄbÅ«t ieslÄ“gtai pie Android eksporta Å¡ablona."
#: editor/editor_node.cpp
msgid ""
@@ -3195,30 +3237,30 @@ msgid "Merge With Existing"
msgstr ""
#: editor/editor_node.cpp
-#, fuzzy
msgid "Apply MeshInstance Transforms"
-msgstr "Anim IzmainÄ«t TransformÄciju"
+msgstr "Pielietot MeshInstances TransformÄcijas"
#: editor/editor_node.cpp
msgid "Open & Run a Script"
msgstr ""
#: editor/editor_node.cpp
-#, fuzzy
msgid ""
"The following files are newer on disk.\n"
"What action should be taken?"
-msgstr "Sekojošie faili netika izvilkti no paketes:"
+msgstr ""
+"SekojoÅ¡ie faili ir jaunÄki uz diska.\n"
+"KÄdu darbÄ«bu veikt ?"
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/shader_editor_plugin.cpp
msgid "Reload"
-msgstr ""
+msgstr "PÄrlÄdÄ“t"
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/shader_editor_plugin.cpp
msgid "Resave"
-msgstr ""
+msgstr "PÄrglabÄt"
#: editor/editor_node.cpp
msgid "New Inherited"
@@ -3226,28 +3268,27 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Load Errors"
-msgstr ""
+msgstr "IelÄdÄ“t kļūdas"
#: editor/editor_node.cpp editor/plugins/tile_map_editor_plugin.cpp
msgid "Select"
-msgstr ""
+msgstr "Izvēlēties"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Select Current"
-msgstr "Aktualizēt"
+msgstr "Izvēlēties pašreizējo"
#: editor/editor_node.cpp
msgid "Open 2D Editor"
-msgstr ""
+msgstr "Atvērt 2D redaktoru"
#: editor/editor_node.cpp
msgid "Open 3D Editor"
-msgstr ""
+msgstr "Atvērt 3D redaktoru"
#: editor/editor_node.cpp
msgid "Open Script Editor"
-msgstr ""
+msgstr "Atvērt skriptu redaktoru"
#: editor/editor_node.cpp editor/project_manager.cpp
msgid "Open Asset Library"
@@ -3255,23 +3296,23 @@ msgstr ""
#: editor/editor_node.cpp
msgid "Open the next Editor"
-msgstr ""
+msgstr "AtvÄ“rt nÄkamo redaktoru"
#: editor/editor_node.cpp
msgid "Open the previous Editor"
-msgstr ""
+msgstr "Atvērt iepriekšējo redaktoru"
#: editor/editor_node.h
msgid "Warning!"
-msgstr ""
+msgstr "BrÄ«dinÄjums!"
#: editor/editor_path.cpp
msgid "No sub-resources found."
-msgstr ""
+msgstr "Sub-resursi nav atrasti."
#: editor/editor_path.cpp
msgid "Open a list of sub-resources."
-msgstr ""
+msgstr "Atvērt sarakstu ar sub-resursiem."
#: editor/editor_plugin.cpp
msgid "Creating Mesh Previews"
@@ -3279,7 +3320,7 @@ msgstr ""
#: editor/editor_plugin.cpp
msgid "Thumbnail..."
-msgstr ""
+msgstr "Sīktēls..."
#: editor/editor_plugin_settings.cpp
msgid "Main Script:"
@@ -3287,59 +3328,57 @@ msgstr "Galvenais Skripts:"
#: editor/editor_plugin_settings.cpp
msgid "Edit Plugin"
-msgstr ""
+msgstr "Rediģēt spraudni"
#: editor/editor_plugin_settings.cpp
msgid "Installed Plugins:"
-msgstr ""
+msgstr "Instalētie spraudņi:"
#: editor/editor_plugin_settings.cpp editor/plugin_config_dialog.cpp
msgid "Update"
-msgstr ""
+msgstr "AtjauninÄt"
#: editor/editor_plugin_settings.cpp
msgid "Version"
-msgstr ""
+msgstr "Versija"
#: editor/editor_plugin_settings.cpp
-#, fuzzy
msgid "Author"
-msgstr "Autori"
+msgstr "Autors"
#: editor/editor_plugin_settings.cpp
#: editor/plugins/version_control_editor_plugin.cpp
#: modules/gdnative/gdnative_library_singleton_editor.cpp
msgid "Status"
-msgstr ""
+msgstr "Statuss"
#: editor/editor_profiler.cpp
msgid "Measure:"
-msgstr ""
+msgstr "MÄ“rogs:"
#: editor/editor_profiler.cpp
-#, fuzzy
msgid "Frame Time (ms)"
-msgstr "Laiks (s): "
+msgstr "Kadra Laiks (ms)"
#: editor/editor_profiler.cpp
msgid "Average Time (ms)"
-msgstr ""
+msgstr "Vidējais laiks (ms)"
#: editor/editor_profiler.cpp
msgid "Frame %"
-msgstr ""
+msgstr "Kadrs %"
#: editor/editor_profiler.cpp
msgid "Physics Frame %"
-msgstr ""
+msgstr "Fizikas kadrs %"
#: editor/editor_profiler.cpp
msgid "Inclusive"
-msgstr ""
+msgstr "Iekļaujošs"
#: editor/editor_profiler.cpp
msgid "Self"
-msgstr ""
+msgstr "Sevi"
#: editor/editor_profiler.cpp
msgid ""
@@ -3353,15 +3392,15 @@ msgstr ""
#: editor/editor_profiler.cpp
msgid "Frame #:"
-msgstr ""
+msgstr "Kadrs #:"
#: editor/editor_profiler.cpp
msgid "Time"
-msgstr ""
+msgstr "Laiks"
#: editor/editor_profiler.cpp
msgid "Calls"
-msgstr ""
+msgstr "Izsaukumi"
#: editor/editor_properties.cpp
msgid "Edit Text:"
@@ -3373,19 +3412,19 @@ msgstr ""
#: editor/editor_properties.cpp
msgid "Layer"
-msgstr ""
+msgstr "KÄrta"
#: editor/editor_properties.cpp
msgid "Bit %d, value %d"
-msgstr ""
+msgstr "Bits %d, vērtība %d"
#: editor/editor_properties.cpp
msgid "[Empty]"
-msgstr ""
+msgstr "[Tukšs]"
#: editor/editor_properties.cpp editor/plugins/root_motion_editor_plugin.cpp
msgid "Assign..."
-msgstr ""
+msgstr "Pievienot..."
#: editor/editor_properties.cpp
msgid "Invalid RID"
@@ -3415,24 +3454,24 @@ msgstr ""
#: editor/editor_properties_array_dict.cpp
msgid "Size: "
-msgstr ""
+msgstr "Izmērs: "
#: editor/editor_properties_array_dict.cpp
msgid "Page: "
-msgstr ""
+msgstr "Lapa: "
#: editor/editor_properties_array_dict.cpp
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove Item"
-msgstr ""
+msgstr "Noņemt vienumu"
#: editor/editor_properties_array_dict.cpp
msgid "New Key:"
-msgstr ""
+msgstr "Jauna atslēga:"
#: editor/editor_properties_array_dict.cpp
msgid "New Value:"
-msgstr ""
+msgstr "Jauna vērtība:"
#: editor/editor_properties_array_dict.cpp
msgid "Add Key/Value Pair"
@@ -3464,12 +3503,11 @@ msgstr ""
#: editor/plugins/tile_map_editor_plugin.cpp editor/property_editor.cpp
#: editor/scene_tree_dock.cpp scene/gui/line_edit.cpp scene/gui/text_edit.cpp
msgid "Paste"
-msgstr ""
+msgstr "Ielīmēt"
#: editor/editor_resource_picker.cpp editor/property_editor.cpp
-#, fuzzy
msgid "Convert to %s"
-msgstr "Izveidot"
+msgstr "Konvertēt uz %s"
#: editor/editor_resource_picker.cpp editor/property_editor.cpp
msgid "New %s"
@@ -3477,7 +3515,7 @@ msgstr ""
#: editor/editor_resource_picker.cpp editor/property_editor.cpp
msgid "New Script"
-msgstr ""
+msgstr "Jauns skripts"
#: editor/editor_resource_picker.cpp editor/scene_tree_dock.cpp
msgid "Extend Script"
@@ -3524,7 +3562,7 @@ msgstr ""
#: editor/editor_sub_scene.cpp editor/project_manager.cpp
msgid "Browse"
-msgstr ""
+msgstr "PÄlÅ«kot"
#: editor/editor_sub_scene.cpp
msgid "Scene Path:"
@@ -3552,7 +3590,7 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Starting the download..."
-msgstr ""
+msgstr "SÄk lejuplÄdi..."
#: editor/export_template_manager.cpp
msgid "Error requesting URL:"
@@ -3621,11 +3659,11 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Disconnected"
-msgstr ""
+msgstr "Atvienots"
#: editor/export_template_manager.cpp
msgid "Resolving"
-msgstr ""
+msgstr "Atrisina"
#: editor/export_template_manager.cpp
msgid "Can't Resolve"
@@ -3634,24 +3672,24 @@ msgstr ""
#: editor/export_template_manager.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Connecting..."
-msgstr ""
+msgstr "Savienojas..."
#: editor/export_template_manager.cpp
msgid "Can't Connect"
-msgstr ""
+msgstr "Nevar Savieoties"
#: editor/export_template_manager.cpp
msgid "Connected"
-msgstr ""
+msgstr "Savienots"
#: editor/export_template_manager.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Requesting..."
-msgstr ""
+msgstr "Pieprasa..."
#: editor/export_template_manager.cpp
msgid "Downloading"
-msgstr ""
+msgstr "LejuplÄdÄ“"
#: editor/export_template_manager.cpp
msgid "Connection Error"
@@ -3683,23 +3721,23 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Importing:"
-msgstr ""
+msgstr "Importē:"
#: editor/export_template_manager.cpp
msgid "Remove templates for the version '%s'?"
-msgstr ""
+msgstr "Noņemt šablonus versijai '%s'?"
#: editor/export_template_manager.cpp
msgid "Uncompressing Android Build Sources"
-msgstr ""
+msgstr "Atspiež Android būves avotus"
#: editor/export_template_manager.cpp
msgid "Export Template Manager"
-msgstr ""
+msgstr "Eksporta šablonu menedžeris"
#: editor/export_template_manager.cpp
msgid "Current Version:"
-msgstr ""
+msgstr "PaÅ¡reizÄ“jÄ Versija:"
#: editor/export_template_manager.cpp
msgid "Export templates are missing. Download them or install from a file."
@@ -3710,9 +3748,8 @@ msgid "Export templates are installed and ready to be used."
msgstr ""
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Open Folder"
-msgstr "Atvērt"
+msgstr "Atvērt mapi"
#: editor/export_template_manager.cpp
msgid "Open the folder containing installed templates for the current version."
@@ -3720,7 +3757,7 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Uninstall"
-msgstr ""
+msgstr "Atinstalēt"
#: editor/export_template_manager.cpp
msgid "Uninstall templates for the current version."
@@ -3731,9 +3768,8 @@ msgid "Download from:"
msgstr ""
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Open in Web Browser"
-msgstr "AtvÄ“rt Failu PÄrlÅ«kÄ"
+msgstr "AtvÄ“rt interneta pÄrlÅ«kÄ"
#: editor/export_template_manager.cpp
msgid "Copy Mirror URL"
@@ -3755,7 +3791,7 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Install from File"
-msgstr ""
+msgstr "Instalēt no Faila"
#: editor/export_template_manager.cpp
msgid "Install templates from a local file."
@@ -3791,6 +3827,8 @@ msgid ""
"The templates will continue to download.\n"
"You may experience a short editor freeze when they finish."
msgstr ""
+"Å ablonu lejuplÄdes turpinÄsies.\n"
+"JÅ«s varat pieredzÄ“t Ä«slaicÄ«gu redaktora sastingÅ¡anu, kad tÄs tiks pabeigtas."
#: editor/filesystem_dock.cpp
msgid "Favorites"
@@ -3815,7 +3853,7 @@ msgstr ""
#: editor/filesystem_dock.cpp
msgid "Error moving:"
-msgstr ""
+msgstr "Kļūda parvietojot:"
#: editor/filesystem_dock.cpp
msgid "Error duplicating:"
@@ -3853,7 +3891,7 @@ msgstr ""
#: editor/filesystem_dock.cpp
msgid "Renaming file:"
-msgstr ""
+msgstr "PÄrsauc failu:"
#: editor/filesystem_dock.cpp
msgid "Renaming folder:"
@@ -3881,7 +3919,7 @@ msgstr "Atvērt Ainas"
#: editor/filesystem_dock.cpp
msgid "Instance"
-msgstr ""
+msgstr "Å ablons"
#: editor/filesystem_dock.cpp
msgid "Add to Favorites"
@@ -3909,7 +3947,7 @@ msgstr "Jauna Aina..."
#: editor/filesystem_dock.cpp editor/plugins/script_editor_plugin.cpp
msgid "New Script..."
-msgstr ""
+msgstr "Jauns Skripts..."
#: editor/filesystem_dock.cpp
msgid "New Resource..."
@@ -3928,9 +3966,8 @@ msgid "Collapse All"
msgstr ""
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Sort files"
-msgstr "Meklēt failus"
+msgstr "Å Ä·irot failus"
#: editor/filesystem_dock.cpp
msgid "Sort by Name (Ascending)"
@@ -3958,11 +3995,11 @@ msgstr ""
#: editor/filesystem_dock.cpp
msgid "Duplicate..."
-msgstr ""
+msgstr "Dublicēt..."
#: editor/filesystem_dock.cpp editor/plugins/animation_player_editor_plugin.cpp
msgid "Rename..."
-msgstr ""
+msgstr "PÄrsaukt..."
#: editor/filesystem_dock.cpp
msgid "Focus the search box"
@@ -3996,14 +4033,14 @@ msgstr ""
#: editor/filesystem_dock.cpp
msgid "Move"
-msgstr ""
+msgstr "KustinÄt"
#: editor/filesystem_dock.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/project_manager.cpp editor/rename_dialog.cpp
#: editor/scene_tree_dock.cpp
msgid "Rename"
-msgstr ""
+msgstr "PÄrsaukt"
#: editor/filesystem_dock.cpp
msgid "Overwrite"
@@ -4042,11 +4079,11 @@ msgstr ""
#: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp
msgid "Find..."
-msgstr ""
+msgstr "Meklēt..."
#: editor/find_in_files.cpp editor/plugins/script_text_editor.cpp
msgid "Replace..."
-msgstr ""
+msgstr "Aizvietot..."
#: editor/find_in_files.cpp
msgid "Find: "
@@ -4065,19 +4102,16 @@ msgid "Searching..."
msgstr "Meklē..."
#: editor/find_in_files.cpp
-#, fuzzy
msgid "%d match in %d file."
-msgstr "%d sakritības."
+msgstr "%d sakritÄ«bas %d failÄ."
#: editor/find_in_files.cpp
-#, fuzzy
msgid "%d matches in %d file."
-msgstr "%d sakritības."
+msgstr "%d sakritÄ«bas %d failÄ."
#: editor/find_in_files.cpp
-#, fuzzy
msgid "%d matches in %d files."
-msgstr "%d sakritības."
+msgstr "%d sakritības %d failos."
#: editor/groups_editor.cpp
msgid "Add to Group"
@@ -4105,7 +4139,7 @@ msgstr "Izdzēst Grupu"
#: editor/groups_editor.cpp editor/node_dock.cpp
msgid "Groups"
-msgstr ""
+msgstr "Grupas"
#: editor/groups_editor.cpp
msgid "Nodes Not in Group"
@@ -4122,7 +4156,7 @@ msgstr ""
#: editor/groups_editor.cpp
msgid "Empty groups will be automatically removed."
-msgstr ""
+msgstr "TukÅ¡Äs grupas tiks automÄtiski noņemtas."
#: editor/groups_editor.cpp
msgid "Group Editor"
@@ -4130,7 +4164,7 @@ msgstr "Grupas Redaktors"
#: editor/groups_editor.cpp
msgid "Manage Groups"
-msgstr ""
+msgstr "PÄrvaldÄ«t grupas"
#: editor/import/resource_importer_scene.cpp
msgid "Import as Single Scene"
@@ -4211,21 +4245,19 @@ msgstr ""
#: editor/import/resource_importer_scene.cpp
msgid "Saving..."
-msgstr ""
+msgstr "SaglabÄ..."
#: editor/import_defaults_editor.cpp
-#, fuzzy
msgid "Select Importer"
-msgstr "Izvēlēties Šablona Failu"
+msgstr "IzvÄ“lÄ“ties importÄ“tÄju"
#: editor/import_defaults_editor.cpp
msgid "Importer:"
msgstr ""
#: editor/import_defaults_editor.cpp
-#, fuzzy
msgid "Reset to Defaults"
-msgstr "IelÄdÄ“t NoklusÄ“jumu"
+msgstr "Atiestatīt uz noklusējumiem"
#: editor/import_dock.cpp
msgid "Keep File (No Import)"
@@ -4245,7 +4277,7 @@ msgstr ""
#: editor/import_dock.cpp
msgid "Reimport"
-msgstr ""
+msgstr "Reimportēt"
#: editor/import_dock.cpp
msgid ""
@@ -4281,14 +4313,12 @@ msgid "Failed to load resource."
msgstr ""
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Copy Properties"
-msgstr "Ieslēgtie Mainīgie:"
+msgstr "Kopēt iestatījumus"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Paste Properties"
-msgstr "Ieslēgtie Mainīgie:"
+msgstr "Ielīmēt iestatījumus"
#: editor/inspector_dock.cpp
msgid "Make Sub-Resources Unique"
@@ -4310,7 +4340,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/theme_editor_plugin.cpp
msgid "Save As..."
-msgstr ""
+msgstr "SaglabÄt kÄ..."
#: editor/inspector_dock.cpp
msgid "Extra resource options."
@@ -4353,9 +4383,8 @@ msgid "Filter properties"
msgstr ""
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Manage object properties."
-msgstr "AnimÄcijas Ä«paÅ¡Ä«bas."
+msgstr "PÄrvaldÄ«t objekta rekvizÄ«tus."
#: editor/inspector_dock.cpp
msgid "Changes may be lost!"
@@ -4367,7 +4396,7 @@ msgstr ""
#: editor/node_dock.cpp
msgid "Select a single node to edit its signals and groups."
-msgstr ""
+msgstr "IzvÄ“lies kÄdu mezglu, lai rediģētu tÄ signÄlus un grupas."
#: editor/plugin_config_dialog.cpp
msgid "Edit a Plugin"
@@ -4387,12 +4416,12 @@ msgstr ""
#: editor/plugin_config_dialog.cpp
msgid "Author:"
-msgstr ""
+msgstr "Autors:"
#: editor/plugin_config_dialog.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Version:"
-msgstr ""
+msgstr "Versija:"
#: editor/plugin_config_dialog.cpp editor/script_create_dialog.cpp
msgid "Language:"
@@ -4590,7 +4619,7 @@ msgstr ""
#: editor/plugins/animation_blend_space_2d_editor.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Blend:"
-msgstr ""
+msgstr "SapludinÄt:"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
msgid "Parameter Changed:"
@@ -4804,12 +4833,12 @@ msgstr ""
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Animation"
-msgstr ""
+msgstr "AnimÄcija"
#: editor/plugins/animation_player_editor_plugin.cpp
#: editor/plugins/version_control_editor_plugin.cpp
msgid "New"
-msgstr ""
+msgstr "Jauns"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Edit Transitions..."
@@ -4837,23 +4866,23 @@ msgstr ""
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Directions"
-msgstr ""
+msgstr "Virzieni"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Past"
-msgstr ""
+msgstr "PagÄtne"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Future"
-msgstr ""
+msgstr "NÄkotne"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Depth"
-msgstr ""
+msgstr "Dziļums"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "1 step"
-msgstr ""
+msgstr "1 solis"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "2 steps"
@@ -4892,7 +4921,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp
msgid "Error!"
-msgstr ""
+msgstr "Kļūda!"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Blend Times:"
@@ -4933,7 +4962,7 @@ msgstr ""
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Sync"
-msgstr ""
+msgstr "SinhronizÄcija"
#: editor/plugins/animation_state_machine_editor.cpp
msgid "At End"
@@ -5010,7 +5039,7 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Scale:"
-msgstr ""
+msgstr "MÄ“rogs:"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Fade In (s):"
@@ -5022,11 +5051,11 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Blend"
-msgstr ""
+msgstr "PludinÄt"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Mix"
-msgstr ""
+msgstr "Miksēt"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Auto Restart:"
@@ -5042,12 +5071,12 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Start!"
-msgstr ""
+msgstr "SÄkt!"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Amount:"
-msgstr ""
+msgstr "Daudzums:"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Blend 0:"
@@ -5063,7 +5092,7 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Current:"
-msgstr ""
+msgstr "Pašreizējs:"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/plugins/visual_shader_editor_plugin.cpp
@@ -5137,11 +5166,11 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Filters..."
-msgstr ""
+msgstr "Filtri..."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Contents:"
-msgstr ""
+msgstr "Saturs:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "View Files"
@@ -5149,7 +5178,7 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Download"
-msgstr ""
+msgstr "LejuplÄdÄ“t"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Connection error, please try again."
@@ -5209,7 +5238,7 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Failed:"
-msgstr ""
+msgstr "NeizdevÄs:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Bad download hash, assuming file has been tampered with."
@@ -5217,11 +5246,11 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Expected:"
-msgstr ""
+msgstr "SagaidÄms:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Got:"
-msgstr ""
+msgstr "Saņemts:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Failed SHA-256 hash check"
@@ -5241,7 +5270,7 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Resolving..."
-msgstr ""
+msgstr "Atrisina.."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Error making request"
@@ -5249,7 +5278,7 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Idle"
-msgstr ""
+msgstr "DÄ«kstÄve"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Install..."
@@ -5257,7 +5286,7 @@ msgstr "Instalēt..."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Retry"
-msgstr ""
+msgstr "MÄ“Ä£inÄt vÄ“lreiz"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Download Error"
@@ -5293,23 +5322,23 @@ msgstr "Licence (Z-A)"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "First"
-msgstr ""
+msgstr "Pirmais"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Previous"
-msgstr ""
+msgstr "Iepriekšējais"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Next"
-msgstr ""
+msgstr "NÄkamais"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Last"
-msgstr ""
+msgstr "Pēdējais"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "All"
-msgstr ""
+msgstr "Visi"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Search templates, projects, and demos"
@@ -5329,15 +5358,15 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp editor/project_manager.cpp
msgid "Sort:"
-msgstr ""
+msgstr "KÄrtot:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Category:"
-msgstr ""
+msgstr "Kategorija:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Site:"
-msgstr ""
+msgstr "Lapa:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Support"
@@ -5345,11 +5374,11 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Official"
-msgstr ""
+msgstr "OficiÄls"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Testing"
-msgstr ""
+msgstr "Testē"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Loading..."
@@ -5399,14 +5428,13 @@ msgid "Bake Lightmaps"
msgstr ""
#: editor/plugins/baked_lightmap_editor_plugin.cpp
-#, fuzzy
msgid "Select lightmap bake file:"
-msgstr "Izvēlēties Šablona Failu"
+msgstr "Izvēlēties gaismas kartes cepšanas failu:"
#: editor/plugins/camera_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Preview"
-msgstr ""
+msgstr "Priekšskats"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Configure Snap"
@@ -5515,9 +5543,8 @@ msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Grouped"
-msgstr "Grupa Izvēlēta"
+msgstr "Grupēts"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid ""
@@ -5694,19 +5721,16 @@ msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Drag: Rotate selected node around pivot."
-msgstr "Noņemt izvÄ“lÄ“to mezglu vai pÄreju."
+msgstr "BÄ«dÄ«t: RotÄ“ izvÄ“lÄ“to mezglu apkÄrt asij."
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Alt+Drag: Move selected node."
-msgstr "Izdzēst izvēlēto Taisnstūri."
+msgstr "Alt+BÄ«dÄ«t: PÄrvietot izvÄ“lÄ“to mezglu."
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "V: Set selected node's pivot position."
-msgstr "Noņemt izvÄ“lÄ“to mezglu vai pÄreju."
+msgstr "V: Uzlikt izvÄ“lÄ“tÄ mezgla centra pozÄ«ciju."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
@@ -5859,7 +5883,7 @@ msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View"
-msgstr ""
+msgstr "Skatīt"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Always Show Grid"
@@ -5946,14 +5970,12 @@ msgid "Clear Pose"
msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Add Node Here"
-msgstr "Pievienot Mezgla Punktu"
+msgstr "Pievienot mezglu Å¡eit"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Instance Scene Here"
-msgstr "Ievadiet Atslēgu Šeit"
+msgstr "Izveidot ainas instanci Å¡eit"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Multiply grid step by 2"
@@ -5980,34 +6002,28 @@ msgid "Zoom to 12.5%"
msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 25%"
-msgstr "AttÄlinÄt"
+msgstr "TuvinÄt uz 25%"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 50%"
-msgstr "AttÄlinÄt"
+msgstr "TuvinÄt uz 50%"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 100%"
-msgstr "AttÄlinÄt"
+msgstr "TuvinÄt uz 100%"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 200%"
-msgstr "AttÄlinÄt"
+msgstr "TuvinÄt uz 200%"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 400%"
-msgstr "AttÄlinÄt"
+msgstr "TuvinÄt uz 400%"
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "Zoom to 800%"
-msgstr "AttÄlinÄt"
+msgstr "TuvinÄt uz 800%"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Zoom to 1600%"
@@ -6082,7 +6098,7 @@ msgstr ""
#: editor/plugins/particles_2d_editor_plugin.cpp
#: editor/plugins/particles_editor_plugin.cpp
msgid "Particles"
-msgstr ""
+msgstr "Daļiņas"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
@@ -6139,7 +6155,7 @@ msgstr ""
#: editor/plugins/curve_editor_plugin.cpp
msgid "Flat 1"
-msgstr ""
+msgstr "Plakans 1"
#: editor/plugins/curve_editor_plugin.cpp editor/property_editor.cpp
msgid "Ease In"
@@ -6254,9 +6270,8 @@ msgid "Couldn't create a single convex collision shape."
msgstr ""
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Create Simplified Convex Shape"
-msgstr "Izveidot Vienu Izliektu Formu"
+msgstr "Izveidot vienkÄrÅ¡otu izliektu formu"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Single Convex Shape"
@@ -6350,9 +6365,8 @@ msgid ""
msgstr ""
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Create Simplified Convex Collision Sibling"
-msgstr "Izveidot Vienu Izliektu Sadursmes Uzmavu"
+msgstr "Izveidot vienkÄrÅ¡otu izliektu sadursmes radinieku"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid ""
@@ -6504,15 +6518,15 @@ msgstr ""
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "X-Axis"
-msgstr ""
+msgstr "X ass"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Y-Axis"
-msgstr ""
+msgstr "Y ass"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Z-Axis"
-msgstr ""
+msgstr "Z ass"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Mesh Up Axis:"
@@ -6532,7 +6546,7 @@ msgstr ""
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Populate"
-msgstr ""
+msgstr "Apdzīvot"
#: editor/plugins/navigation_polygon_editor_plugin.cpp
#: editor/plugins/tile_set_editor_plugin.cpp
@@ -6557,9 +6571,8 @@ msgid "Can only set point into a ParticlesMaterial process material"
msgstr ""
#: editor/plugins/particles_2d_editor_plugin.cpp
-#, fuzzy
msgid "Convert to CPUParticles2D"
-msgstr "Izveidot"
+msgstr "Konvertēt uz CPUParticles2D"
#: editor/plugins/particles_2d_editor_plugin.cpp
#: editor/plugins/particles_editor_plugin.cpp
@@ -6604,7 +6617,7 @@ msgstr ""
#: editor/plugins/particles_editor_plugin.cpp
msgid "Volume"
-msgstr ""
+msgstr "Tilpums"
#: editor/plugins/particles_editor_plugin.cpp
msgid "Emission Source: "
@@ -6703,7 +6716,7 @@ msgstr ""
#: editor/plugins/theme_editor_preview.cpp
#: editor/plugins/visual_shader_editor_plugin.cpp editor/project_export.cpp
msgid "Options"
-msgstr ""
+msgstr "Opcijas"
#: editor/plugins/path_2d_editor_plugin.cpp
#: editor/plugins/path_editor_plugin.cpp
@@ -6797,23 +6810,20 @@ msgid "Invalid Polygon (need 3 different vertices)"
msgstr ""
#: editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Add Custom Polygon"
-msgstr "Izveidot"
+msgstr "Pievienot pielÄgotu daudzstÅ«ri"
#: editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Remove Custom Polygon"
-msgstr "Izveidot"
+msgstr "Noņemt pielÄgotu daudzstÅ«ri"
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Transform UV Map"
msgstr ""
#: editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Transform Polygon"
-msgstr "Izveidot"
+msgstr "Transformēt daudzstūri"
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Paint Bone Weights"
@@ -6836,9 +6846,8 @@ msgid "Points"
msgstr ""
#: editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Polygons"
-msgstr "Izveidot"
+msgstr "Daudzstūri"
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Bones"
@@ -6907,9 +6916,8 @@ msgid "Copy Polygon to UV"
msgstr ""
#: editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Copy UV to Polygon"
-msgstr "Izveidot"
+msgstr "Kopēt UV uz daudzstūra"
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Clear UV"
@@ -6929,7 +6937,7 @@ msgstr ""
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Grid"
-msgstr ""
+msgstr "Režģis"
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Show Grid"
@@ -6994,7 +7002,7 @@ msgstr ""
#: editor/scene_tree_editor.cpp editor/script_editor_debugger.cpp
#: modules/visual_script/visual_script_editor.cpp
msgid "Type:"
-msgstr ""
+msgstr "Tips:"
#: editor/plugins/resource_preloader_editor_plugin.cpp
#: editor/scene_tree_dock.cpp editor/scene_tree_editor.cpp
@@ -7014,14 +7022,12 @@ msgid "Flip Portals"
msgstr ""
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Room Generate Points"
-msgstr "PÄrvietot BezjÄ“ Punktus"
+msgstr "Telpas punktu Ä£enerÄcija"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Generate Points"
-msgstr "Izveidot punktus."
+msgstr "Ģenerēt Punktus"
#: editor/plugins/room_manager_editor_plugin.cpp
msgid "Flip Portal"
@@ -7032,9 +7038,8 @@ msgid "Occluder Set Transform"
msgstr ""
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Center Node"
-msgstr "Izdzēst"
+msgstr "Centrēt mezglu"
#: editor/plugins/root_motion_editor_plugin.cpp
msgid "AnimationTree has no path set to an AnimationPlayer"
@@ -7050,7 +7055,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "Close and save changes?"
-msgstr ""
+msgstr "AizvÄ“rt un saglabÄt izmaiņas?"
#: editor/plugins/script_editor_plugin.cpp
msgid "Error writing TextFile:"
@@ -7061,9 +7066,8 @@ msgid "Could not load file at:"
msgstr ""
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Error saving file!"
-msgstr "Kļūmes lÄdÄ“jot!"
+msgstr "Kļūda saglabÄjot failu!"
#: editor/plugins/script_editor_plugin.cpp
msgid "Error while saving theme."
@@ -7074,9 +7078,8 @@ msgid "Error Saving"
msgstr "Kļūda SaglabÄjot"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Error importing theme."
-msgstr "Kļūda lÄdÄ“jot fontu."
+msgstr "Kļūda importējot motīvu."
#: editor/plugins/script_editor_plugin.cpp
msgid "Error Importing"
@@ -7084,12 +7087,11 @@ msgstr "Kļūda Importējot"
#: editor/plugins/script_editor_plugin.cpp
msgid "New Text File..."
-msgstr ""
+msgstr "Jauns teksta fails..."
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Open File"
-msgstr "Atvērt"
+msgstr "Atvērt failu"
#: editor/plugins/script_editor_plugin.cpp
msgid "Save File As..."
@@ -7126,7 +7128,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "Save Theme As..."
-msgstr ""
+msgstr "SaglabÄt motÄ«vu kÄ..."
#: editor/plugins/script_editor_plugin.cpp
msgid "%s Class Reference"
@@ -7135,7 +7137,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp
msgid "Find Next"
-msgstr ""
+msgstr "Atrast NÄkamo"
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp
@@ -7156,13 +7158,13 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "Sort"
-msgstr ""
+msgstr "Å Ä·irot"
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp
#: modules/gdnative/gdnative_library_editor_plugin.cpp
msgid "Move Up"
-msgstr ""
+msgstr "Bīdīt augšup"
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp
@@ -7171,18 +7173,16 @@ msgid "Move Down"
msgstr ""
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Next Script"
-msgstr "Galvenais Skripts:"
+msgstr "NÄkamais skripts"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Previous Script"
-msgstr "Izvēlēties šo Mapi"
+msgstr "Iepriekšējais skripts"
#: editor/plugins/script_editor_plugin.cpp
msgid "File"
-msgstr ""
+msgstr "Fails"
#: editor/plugins/script_editor_plugin.cpp
msgid "Open..."
@@ -7190,11 +7190,11 @@ msgstr "Atvērt..."
#: editor/plugins/script_editor_plugin.cpp
msgid "Reopen Closed Script"
-msgstr ""
+msgstr "Atvērt aizvērto skriptu"
#: editor/plugins/script_editor_plugin.cpp
msgid "Save All"
-msgstr ""
+msgstr "SaglabÄt visu"
#: editor/plugins/script_editor_plugin.cpp
msgid "Soft Reload Script"
@@ -7227,11 +7227,11 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "Save Theme"
-msgstr ""
+msgstr "SaglabÄt motÄ«vu"
#: editor/plugins/script_editor_plugin.cpp
msgid "Close All"
-msgstr ""
+msgstr "Aizvērt Visu"
#: editor/plugins/script_editor_plugin.cpp
msgid "Close Docs"
@@ -7239,7 +7239,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp editor/project_manager.cpp
msgid "Run"
-msgstr ""
+msgstr "Palaist"
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/script_text_editor.cpp
@@ -7247,7 +7247,7 @@ msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
#: editor/project_settings_editor.cpp editor/settings_config_dialog.cpp
msgid "Search"
-msgstr ""
+msgstr "Meklēt"
#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp
msgid "Step Into"
@@ -7259,16 +7259,16 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp
msgid "Break"
-msgstr ""
+msgstr "PÄrtraukt"
#: editor/plugins/script_editor_plugin.cpp editor/project_manager.cpp
#: editor/script_editor_debugger.cpp
msgid "Continue"
-msgstr ""
+msgstr "turpinÄt"
#: editor/plugins/script_editor_plugin.cpp
msgid "Keep Debugger Open"
-msgstr ""
+msgstr "AtstÄt atkļūdotÄju atvÄ“rtu"
#: editor/plugins/script_editor_plugin.cpp
msgid "Debug with External Editor"
@@ -7277,7 +7277,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/shader_editor_plugin.cpp
msgid "Online Docs"
-msgstr ""
+msgstr "Tiešsaistes Dokumenti"
#: editor/plugins/script_editor_plugin.cpp
msgid "Open Godot online documentation."
@@ -7297,7 +7297,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "Discard"
-msgstr ""
+msgstr "Atmest"
#: editor/plugins/script_editor_plugin.cpp
msgid ""
@@ -7307,7 +7307,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp editor/script_editor_debugger.cpp
msgid "Debugger"
-msgstr ""
+msgstr "AtkļūdotÄjs"
#: editor/plugins/script_editor_plugin.cpp
msgid "Search Results"
@@ -7322,9 +7322,8 @@ msgid "Connections to method:"
msgstr ""
#: editor/plugins/script_text_editor.cpp editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Source"
-msgstr "Resurs"
+msgstr "Avots"
#: editor/plugins/script_text_editor.cpp
msgid "Target"
@@ -7338,16 +7337,15 @@ msgstr ""
#: editor/plugins/script_text_editor.cpp
msgid "[Ignore]"
-msgstr ""
+msgstr "[Ignorēt]"
#: editor/plugins/script_text_editor.cpp
msgid "Line"
msgstr "Rinda"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Function"
-msgstr "Izveidot Funkciju"
+msgstr "Iet uz funkciju"
#: editor/plugins/script_text_editor.cpp
msgid "Only resources from filesystem can be dropped."
@@ -7392,9 +7390,8 @@ msgid "Bookmarks"
msgstr ""
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Breakpoints"
-msgstr "Izveidot"
+msgstr "PÄrrÄvumpunkts"
#: editor/plugins/script_text_editor.cpp
#: editor/plugins/shader_editor_plugin.cpp editor/plugins/text_editor.cpp
@@ -7404,7 +7401,7 @@ msgstr ""
#: editor/plugins/script_text_editor.cpp editor/scene_tree_dock.cpp
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
msgid "Cut"
-msgstr ""
+msgstr "Izgriezt"
#: editor/plugins/script_text_editor.cpp editor/plugins/theme_editor_plugin.cpp
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
@@ -7444,9 +7441,8 @@ msgid "Complete Symbol"
msgstr ""
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Evaluate Selection"
-msgstr "Mēroga Izvēle"
+msgstr "Novērtēt izvēli"
#: editor/plugins/script_text_editor.cpp
msgid "Trim Trailing Whitespace"
@@ -7477,14 +7473,12 @@ msgid "Toggle Bookmark"
msgstr ""
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Next Bookmark"
-msgstr "Doties uz nÄkamo soli"
+msgstr "Doties uz nÄkamo grÄmatzÄ«mi"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Previous Bookmark"
-msgstr "Doties uz iepriekšējo soli"
+msgstr "Doties uz iepriekÅ¡Ä“jo grÄmatzÄ«mi"
#: editor/plugins/script_text_editor.cpp
msgid "Remove All Bookmarks"
@@ -7508,14 +7502,12 @@ msgid "Remove All Breakpoints"
msgstr ""
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Next Breakpoint"
-msgstr "Doties uz nÄkamo soli"
+msgstr "Doties uz nÄkamo pÄrrÄvumpunktu"
#: editor/plugins/script_text_editor.cpp
-#, fuzzy
msgid "Go to Previous Breakpoint"
-msgstr "Doties uz iepriekšējo soli"
+msgstr "Doties uz iepriekÅ¡Ä“jo pÄrrÄvumpunktu"
#: editor/plugins/shader_editor_plugin.cpp
msgid ""
@@ -7525,7 +7517,7 @@ msgstr ""
#: editor/plugins/shader_editor_plugin.cpp
msgid "Shader"
-msgstr ""
+msgstr "Ä’notÄjs"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
msgid "This skeleton has no bones, create some children Bone2D nodes."
@@ -7544,9 +7536,8 @@ msgid "Skeleton2D"
msgstr ""
#: editor/plugins/skeleton_2d_editor_plugin.cpp
-#, fuzzy
msgid "Reset to Rest Pose"
-msgstr "IelÄdÄ“t NoklusÄ“jumu"
+msgstr "Atiestatīt uz atpūtas pozu"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
msgid "Overwrite Rest Pose"
@@ -7574,7 +7565,7 @@ msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Perspective"
-msgstr ""
+msgstr "Perspektīva"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Top Orthogonal"
@@ -7670,13 +7661,12 @@ msgid "Translate"
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Scale"
-msgstr "Mēroga Režīms"
+msgstr "MÄ“rogs"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Scaling: "
-msgstr ""
+msgstr "MÄ“rogs: "
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Translating: "
@@ -7715,14 +7705,12 @@ msgid "Material Changes:"
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Shader Changes:"
-msgstr "Nomainīt"
+msgstr "Ä’notÄja izmaiņas:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Surface Changes:"
-msgstr "Nomainīt"
+msgstr "Virsmas izmaiņas:"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Draw Calls:"
@@ -7825,9 +7813,8 @@ msgid "Audio Listener"
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Enable Doppler"
-msgstr "Nomainīt"
+msgstr "Iespējot doppler"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Cinematic Preview"
@@ -7889,9 +7876,8 @@ msgid ""
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Convert Rooms"
-msgstr "Izveidot"
+msgstr "Konvertēt telpas"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "XForm Dialog"
@@ -8044,9 +8030,8 @@ msgid "View Portal Culling"
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "View Occlusion Culling"
-msgstr "Izveidot"
+msgstr "Skatīt sķēršļu izkaušanu"
#: editor/plugins/spatial_editor_plugin.cpp
#: modules/gridmap/grid_map_editor_plugin.cpp
@@ -8107,7 +8092,7 @@ msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Pre"
-msgstr ""
+msgstr "iepriekš"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Post"
@@ -8118,42 +8103,36 @@ msgid "Unnamed Gizmo"
msgstr ""
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create Mesh2D"
-msgstr "Izveidot Jaunu %s"
+msgstr "Izveidot Mesh2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Mesh2D Preview"
msgstr ""
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create Polygon2D"
-msgstr "Izveidot"
+msgstr "Izveidot Polygon2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Polygon2D Preview"
msgstr ""
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create CollisionPolygon2D"
-msgstr "Izveidot"
+msgstr "Izveidot CollisionPolygon2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "CollisionPolygon2D Preview"
-msgstr "Izveidot"
+msgstr "CollisionPolygon2D priekšskatījums"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Create LightOccluder2D"
-msgstr "Izveidot"
+msgstr "Izveidot LightOccluder2D"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "LightOccluder2D Preview"
-msgstr "Izveidot"
+msgstr "LightOccluder2D priekšskatījums"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Sprite is empty!"
@@ -8176,18 +8155,16 @@ msgid "Invalid geometry, can't create polygon."
msgstr ""
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Convert to Polygon2D"
-msgstr "Izveidot"
+msgstr "Konvertēt uz Polygon2D"
#: 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 "Izveidot"
+msgstr "Izveidot CollisionPolygon2D radinieku"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Invalid geometry, can't create light occluder."
@@ -8222,9 +8199,8 @@ msgid "Settings:"
msgstr ""
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "No Frames Selected"
-msgstr "Savienot"
+msgstr "Nav izvēlēti kadri"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Add %d Frame(s)"
@@ -8267,14 +8243,12 @@ msgid "Move Frame"
msgstr ""
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Animations:"
-msgstr "Funkcijas:"
+msgstr "AnimÄcijas:"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "New Animation"
-msgstr "OptimizÄ“t animÄciju"
+msgstr "Jauna animÄcija"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Speed:"
@@ -8282,16 +8256,15 @@ msgstr ""
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Loop"
-msgstr ""
+msgstr "Cilpa"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Animation Frames:"
msgstr "AnimÄcijas Kadri:"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Add a Texture from File"
-msgstr "Noņemt Izvēlēto"
+msgstr "Pievienot tekstūru no faila"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Add Frames from a Sprite Sheet"
@@ -8370,9 +8343,8 @@ msgid "Step:"
msgstr ""
#: editor/plugins/texture_region_editor_plugin.cpp
-#, fuzzy
msgid "Separation:"
-msgstr "SÄ“pija funkcija."
+msgstr "Atdalījums:"
#: editor/plugins/texture_region_editor_plugin.cpp
msgid "TextureRegion"
@@ -8403,9 +8375,8 @@ msgid "No colors found."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "{num} constant(s)"
-msgstr "Konstantes"
+msgstr "{num} konstante(s)"
#: editor/plugins/theme_editor_plugin.cpp
msgid "No constants found."
@@ -8444,27 +8415,24 @@ msgid "Nothing was selected for the import."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Importing Theme Items"
-msgstr "Kļūda lÄdÄ“jot fontu."
+msgstr "Tēmas elementu importēšana"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Importing items {n}/{n}"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Updating the editor"
-msgstr "Atjaunina Ainu"
+msgstr "Atjaunina redaktoru"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Finalizing"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Filter:"
-msgstr "Nomainīt Filtru"
+msgstr "Filtrs:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "With Data"
@@ -8549,9 +8517,8 @@ msgid "Expand types."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all Theme items."
-msgstr "Izvēlēties Šablona Failu"
+msgstr "Atlasiet visus motīvu vienumus."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select With Data"
@@ -8562,18 +8529,16 @@ msgid "Select all Theme items with item data."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Deselect All"
-msgstr "Atvienot Visu"
+msgstr "Atcelt visu atlasi"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Deselect all Theme items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Import Selected"
-msgstr "Grupa Izvēlēta"
+msgstr "Importēt izvēlēto"
#: editor/plugins/theme_editor_plugin.cpp
msgid ""
@@ -8589,28 +8554,24 @@ msgid ""
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove All Color Items"
-msgstr "Noņemt no Favorītiem"
+msgstr "Noņemt visas krÄsas vienÄ«bas"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Rename Item"
-msgstr "PÄrsaukt Audio Kopni"
+msgstr "Noņemt vienību"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove All Constant Items"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove All Font Items"
-msgstr "Noņemt no Favorītiem"
+msgstr "Noņemt visus fontu vienumus"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove All Icon Items"
-msgstr "SaglabÄt Visas Ainas"
+msgstr "Noņemt visus ikonu vienumus"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove All StyleBox Items"
@@ -8623,24 +8584,20 @@ msgid ""
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Color Item"
-msgstr "Pievienot Favorītiem"
+msgstr "Pievienot krÄsas vienumu"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Constant Item"
-msgstr "Konstantes"
+msgstr "Pievienot konstantes vienumu"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Font Item"
-msgstr "Pievienot Punktu"
+msgstr "Pievienot fonta vienumu"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Icon Item"
-msgstr "Pievienot Punktu"
+msgstr "Pievienot ikonas vienumu"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Add Stylebox Item"
@@ -8679,9 +8636,8 @@ msgid "Manage Theme Items"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Edit Items"
-msgstr "Rediģēt Tekstu:"
+msgstr "Rediģēt vienumus"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Types:"
@@ -8700,18 +8656,16 @@ msgid "Add StyleBox Item"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove Items:"
-msgstr "Noņemt Izvēlēto"
+msgstr "Noņemt vienumus:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove Class Items"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove Custom Items"
-msgstr "Izveidot"
+msgstr "Noņemt pielÄgotos vienumus"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove All Items"
@@ -8722,29 +8676,24 @@ msgid "Add Theme Item"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Old Name:"
-msgstr "Nosaukums"
+msgstr "Vecais vÄrds:"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Import Items"
-msgstr "IelÄdÄ“t NoklusÄ“jumu"
+msgstr "Importēt vienumus"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Default Theme"
-msgstr "Nomainīt Noklusējuma Tipu"
+msgstr "Noklusējuma motīvs"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Editor Theme"
-msgstr "Rediģēt Tekstu:"
+msgstr "Redaktora motīvs"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select Another Theme Resource:"
-msgstr "MeklÄ“t AizstÄjÄ“ja Resursu:"
+msgstr "Izvēlēties citu motīva resursu:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Another Theme"
@@ -8773,9 +8722,8 @@ msgid ""
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Type"
-msgstr "Pievienot Trijstūri"
+msgstr "Pievienot tipu"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Add Item Type"
@@ -8786,9 +8734,8 @@ msgid "Node Types:"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Show Default"
-msgstr "IelÄdÄ“t NoklusÄ“jumu"
+msgstr "RÄdÄ«t noklusÄ“jumu"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Show default type items alongside items that have been overridden."
@@ -8803,9 +8750,8 @@ msgid "Override all default type items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Theme:"
-msgstr "Atvērt"
+msgstr "Motīvs:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Manage Items..."
@@ -8816,18 +8762,16 @@ msgid "Add, remove, organize and import Theme items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Preview"
-msgstr "Pievienot Trijstūri"
+msgstr "Pievienot priekšskatījumu"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Default Preview"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select UI Scene:"
-msgstr "IestatÄ«t KÄ Galveno Ainu"
+msgstr "Izvēlēties UI ainu:"
#: editor/plugins/theme_editor_preview.cpp
msgid ""
@@ -8840,18 +8784,16 @@ msgid "Toggle Button"
msgstr ""
#: editor/plugins/theme_editor_preview.cpp
-#, fuzzy
msgid "Disabled Button"
-msgstr "Atspējots"
+msgstr "Atspējota poga"
#: editor/plugins/theme_editor_preview.cpp
msgid "Item"
msgstr ""
#: editor/plugins/theme_editor_preview.cpp
-#, fuzzy
msgid "Disabled Item"
-msgstr "Atspējots"
+msgstr "Atspējots vienums"
#: editor/plugins/theme_editor_preview.cpp
msgid "Check Item"
@@ -8887,16 +8829,15 @@ msgstr ""
#: editor/plugins/theme_editor_preview.cpp
msgid "Has"
-msgstr ""
+msgstr "Satur"
#: editor/plugins/theme_editor_preview.cpp
msgid "Many"
-msgstr ""
+msgstr "Daudz"
#: editor/plugins/theme_editor_preview.cpp
-#, fuzzy
msgid "Disabled LineEdit"
-msgstr "Atspējots"
+msgstr "Atspējota LineEdit"
#: editor/plugins/theme_editor_preview.cpp
msgid "Tab 1"
@@ -8920,7 +8861,7 @@ msgstr ""
#: editor/plugins/theme_editor_preview.cpp
msgid "Has,Many,Options"
-msgstr ""
+msgstr "Ir,Daudz,Opcijas"
#: editor/plugins/theme_editor_preview.cpp
msgid "Invalid path, the PackedScene resource was probably moved or removed."
@@ -8948,9 +8889,8 @@ msgstr "Salabot NederÄ«gÄs FlÄ«zes"
#: editor/plugins/tile_map_editor_plugin.cpp
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Cut Selection"
-msgstr "Dzēst izvēlētos"
+msgstr "Griezt izvēlēto"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Paint TileMap"
@@ -9081,24 +9021,20 @@ msgid "Select the previous shape, subtile, or Tile."
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Region"
-msgstr "InterpolÄcijas režīms"
+msgstr "Reģions"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Collision"
-msgstr "InterpolÄcijas režīms"
+msgstr "Sadursme"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Occlusion"
-msgstr "Izveidot"
+msgstr "Å Ä·Ä“rslis"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Navigation"
-msgstr "Izveidot"
+msgstr "NavigÄcija"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Bitmask"
@@ -9110,21 +9046,19 @@ msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Icon"
-msgstr ""
+msgstr "Ikona"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Z Index"
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Region Mode"
-msgstr "InterpolÄcijas režīms"
+msgstr "Reģiona režīms"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Collision Mode"
-msgstr "InterpolÄcijas režīms"
+msgstr "Sadursmes režīms"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -9132,9 +9066,8 @@ msgid "Occlusion Mode"
msgstr "Izveidot"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Navigation Mode"
-msgstr "Izveidot"
+msgstr "NavigÄcijas režīms"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Bitmask Mode"
@@ -9169,23 +9102,20 @@ msgid "Create a new rectangle."
msgstr "Izveidot jaunu taisnstūri."
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "New Rectangle"
-msgstr "Izveidot jaunu taisnstūri."
+msgstr "Jauns taisnstūris"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Create a new polygon."
msgstr "Izveidot jaunu daudzstūri."
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "New Polygon"
-msgstr "Izveidot"
+msgstr "Jauns daudzstūris"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Delete Selected Shape"
-msgstr "IzdzÄ“st IzvÄ“lÄ“to(Äs) AtslÄ“gu(as)"
+msgstr "Izdzēst izvēlēto formu"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Keep polygon inside region Rect."
@@ -9222,9 +9152,8 @@ msgid "Merge from scene?"
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Remove Texture"
-msgstr "Noņemt Izvēlēto"
+msgstr "Noņemt tekstūru"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "%s file(s) were not added because was already on the list."
@@ -9282,9 +9211,8 @@ msgid "Set Tile Region"
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Create Tile"
-msgstr "Izveidot"
+msgstr "Izveidot flīzi"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Set Tile Icon"
@@ -9295,9 +9223,8 @@ msgid "Edit Tile Bitmask"
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Edit Collision Polygon"
-msgstr "Izveidot"
+msgstr "Rediģēt sadursmes daudzstūri"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -9305,14 +9232,12 @@ msgid "Edit Occlusion Polygon"
msgstr "Izveidot"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Edit Navigation Polygon"
-msgstr "Izveidot"
+msgstr "Rediģēt navigÄcijas daudzstÅ«ri"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Paste Tile Bitmask"
-msgstr "Ielīmēt celiņus"
+msgstr "Ielīmēt flīzes bitmasku"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Clear Tile Bitmask"
@@ -9323,14 +9248,12 @@ msgid "Make Polygon Concave"
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Make Polygon Convex"
-msgstr "Izveidot"
+msgstr "Izveidot dadzstūra izliekumu"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Remove Tile"
-msgstr "Noņemt"
+msgstr "Noņemt flīzi"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Remove Collision Polygon"
@@ -9353,19 +9276,16 @@ msgid "Edit Tile Z Index"
msgstr ""
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Make Convex"
-msgstr "Izveidot"
+msgstr "Izveidot izliekumu"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Make Concave"
-msgstr "Izveidot"
+msgstr "Izveidot ieliekumu"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Create Collision Polygon"
-msgstr "Izveidot"
+msgstr "Izveidot sadursmes daudzstūri"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -9413,47 +9333,40 @@ msgid "Staging area"
msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Detect new changes"
-msgstr "Izveidot Jaunu %s"
+msgstr "Atrast jaunas izmaiņas"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Changes"
-msgstr "Nomainīt"
+msgstr "Maiņas"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Modified"
msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Renamed"
-msgstr "PÄrsaukt Audio Kopni"
+msgstr "PÄrsaukts"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Deleted"
-msgstr "Izdzēst"
+msgstr "Dzēsts"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Typechange"
-msgstr "Nomainīt"
+msgstr "Tipa maiņa"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Stage Selected"
-msgstr "Mēroga Izvēle"
+msgstr "Posma izvēle"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Stage All"
msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Commit Changes"
-msgstr "Nomainīt"
+msgstr "Pielietot izmaiņas"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "View file diffs before committing them to the latest version"
@@ -9500,9 +9413,8 @@ msgid "Add output port"
msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Change input port type"
-msgstr "Nomainīt %s Tipu"
+msgstr "MainÄ«t ienÄkoÅ¡a porta tipu"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Change output port type"
@@ -9517,14 +9429,12 @@ msgid "Change output port name"
msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Remove input port"
-msgstr "Noņemt Izvēlēto"
+msgstr "Noņemt ienÄkoÅ¡o portu"
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Remove output port"
-msgstr "Noņemt Izvēlēto"
+msgstr "Noņemt izejas portu"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Set expression"
@@ -9547,14 +9457,12 @@ msgid "Add Node to Visual Shader"
msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Node(s) Moved"
-msgstr "Mezgls Noņemts"
+msgstr "Mezgls(-i) pÄrvietots(-i)"
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Duplicate Nodes"
-msgstr "Dublicēt atslēgvietnes"
+msgstr "Dubliēt mezglus"
#: editor/plugins/visual_shader_editor_plugin.cpp
#: modules/visual_script/visual_script_editor.cpp
@@ -9562,9 +9470,8 @@ msgid "Paste Nodes"
msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Delete Nodes"
-msgstr "Izdzēst"
+msgstr "Dzēst mezglus"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Visual Shader Input Type Changed"
@@ -9591,9 +9498,8 @@ msgid "Show resulted shader code."
msgstr "AttÄ“lot rezultÄ“joÅ¡o Ä“notÄja kodu."
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Create Shader Node"
-msgstr "Izveidot Jaunu %s"
+msgstr "Izveidot Ä“notÄja mezglu"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Color function."
@@ -10282,9 +10188,8 @@ msgid "VisualShader"
msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Edit Visual Property:"
-msgstr "Ieslēgtie Mainīgie:"
+msgstr "Rediģēt vizuÄlo mainÄ«go:"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Visual Shader Mode Changed"
@@ -10451,7 +10356,7 @@ msgstr ""
#: editor/project_export.cpp
msgid "Manage Export Templates"
-msgstr ""
+msgstr "PÄrvaldÄ«t Eksporta Å ablonus"
#: editor/project_export.cpp
msgid "Export With Debug"
@@ -10462,9 +10367,8 @@ msgid "The path specified doesn't exist."
msgstr ""
#: editor/project_manager.cpp
-#, fuzzy
msgid "Error opening package file (it's not in ZIP format)."
-msgstr "Kļūme atverot arhÄ«vu failu, nav ZIP formÄtÄ."
+msgstr "Kļūme atverot paketes failu (tÄ nav ZIP formÄtÄ)."
#: editor/project_manager.cpp
msgid ""
@@ -10485,16 +10389,15 @@ msgstr ""
#: editor/project_manager.cpp
msgid "New Game Project"
-msgstr ""
+msgstr "Jauns Spēles Projekts"
#: editor/project_manager.cpp
msgid "Imported Project"
msgstr ""
#: editor/project_manager.cpp
-#, fuzzy
msgid "Invalid project name."
-msgstr "Nederīgs grupas nosaukums."
+msgstr "Nederīgs projekta nosaukums."
#: editor/project_manager.cpp
msgid "Couldn't create folder."
@@ -10540,7 +10443,7 @@ msgstr "Pakete instalēta sekmīgi!"
#: editor/project_manager.cpp
msgid "Rename Project"
-msgstr ""
+msgstr "PÄrsaukt Projektu"
#: editor/project_manager.cpp
msgid "Import Existing Project"
@@ -10564,7 +10467,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Install & Edit"
-msgstr ""
+msgstr "Instalēt & Rediģēt"
#: editor/project_manager.cpp
msgid "Project Name:"
@@ -10616,7 +10519,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Unnamed Project"
-msgstr ""
+msgstr "Nenosaukts Projekts"
#: editor/project_manager.cpp
msgid "Missing Project"
@@ -10714,60 +10617,52 @@ msgid "Project Manager"
msgstr ""
#: editor/project_manager.cpp
-#, fuzzy
msgid "Local Projects"
-msgstr "Projekta DibinÄtÄji"
+msgstr "LokÄlie projekti"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Loading, please wait..."
-msgstr "IelÄdÄ“t..."
+msgstr "IelÄdÄ“, lÅ«dzu uzgaidi..."
#: editor/project_manager.cpp
msgid "Last Modified"
msgstr ""
#: editor/project_manager.cpp
-#, fuzzy
msgid "Edit Project"
-msgstr "Projekta DibinÄtÄji"
+msgstr "Rediģēt Projektu"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Run Project"
-msgstr "Projekta DibinÄtÄji"
+msgstr "Palaist Projektu"
#: editor/project_manager.cpp
msgid "Scan"
-msgstr ""
+msgstr "Skenēt"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Scan Projects"
-msgstr "Projekta DibinÄtÄji"
+msgstr "Skenēt Projektu"
#: editor/project_manager.cpp
msgid "Select a Folder to Scan"
-msgstr ""
+msgstr "NorÄdÄ«t mapi kuru skenÄ“t"
#: editor/project_manager.cpp
msgid "New Project"
-msgstr ""
+msgstr "Jauns Projekts"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Import Project"
-msgstr "Projekta DibinÄtÄji"
+msgstr "Importēt Projektu"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove Project"
-msgstr "Noņemt Punktu"
+msgstr "Noņemt Projektu"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove Missing"
-msgstr "Noņemt"
+msgstr "Noņemt trūkstošo"
#: editor/project_manager.cpp
msgid "About"
@@ -10779,7 +10674,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Restart Now"
-msgstr ""
+msgstr "Restartēt tagad"
#: editor/project_manager.cpp
msgid "Remove All"
@@ -10791,7 +10686,7 @@ msgstr ""
#: editor/project_manager.cpp
msgid "Can't run project"
-msgstr ""
+msgstr "Nevar palaist projektu"
#: editor/project_manager.cpp
msgid ""
@@ -10800,9 +10695,8 @@ msgid ""
msgstr ""
#: editor/project_manager.cpp
-#, fuzzy
msgid "Filter projects"
-msgstr "Projekta DibinÄtÄji"
+msgstr "Filtrēt projektus"
#: editor/project_manager.cpp
msgid ""
@@ -10812,12 +10706,12 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
-msgstr ""
+msgid "Key "
+msgstr "Atslēga "
#: editor/project_settings_editor.cpp
msgid "Joy Button"
@@ -11004,9 +10898,8 @@ msgid "Override for Feature"
msgstr ""
#: editor/project_settings_editor.cpp
-#, fuzzy
msgid "Add %d Translations"
-msgstr "Pievienot PÄreju"
+msgstr "Pievienot %d tulkojumus"
#: editor/project_settings_editor.cpp
msgid "Remove Translation"
@@ -11065,9 +10958,8 @@ msgid "Action:"
msgstr ""
#: editor/project_settings_editor.cpp
-#, fuzzy
msgid "Action"
-msgstr "Visa Izvēle"
+msgstr "Darbība"
#: editor/project_settings_editor.cpp
msgid "Deadzone"
@@ -11135,16 +11027,15 @@ msgstr ""
#: editor/project_settings_editor.cpp
msgid "Plugins"
-msgstr ""
+msgstr "Sparudņi"
#: editor/project_settings_editor.cpp
-#, fuzzy
msgid "Import Defaults"
-msgstr "IelÄdÄ“t NoklusÄ“jumu"
+msgstr "Importēt noklusējumus"
#: editor/property_editor.cpp
msgid "Preset..."
-msgstr ""
+msgstr "Priekš-iestatījums..."
#: editor/property_editor.cpp
msgid "Zero"
@@ -11203,9 +11094,8 @@ msgid "Batch Rename"
msgstr ""
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Replace:"
-msgstr "Aizvietot: "
+msgstr "Aizvietot:"
#: editor/rename_dialog.cpp
msgid "Prefix:"
@@ -11316,9 +11206,8 @@ msgid "To Uppercase"
msgstr ""
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Reset"
-msgstr "AtiestatÄ«t tÄlummaiņu"
+msgstr "Atiestatīt"
#: editor/rename_dialog.cpp
msgid "Regular Expression Error:"
@@ -11370,7 +11259,7 @@ msgstr ""
#: editor/scene_tree_dock.cpp
msgid "Error loading scene from %s"
-msgstr ""
+msgstr "Kļūda ielÄdÄ“jot ainu no %s"
#: editor/scene_tree_dock.cpp
msgid ""
@@ -11395,14 +11284,12 @@ msgid "Can't paste root node into the same scene."
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Paste Node(s)"
-msgstr "Dublicēt atslēgvietnes"
+msgstr "Ielīmēt mezglu(s)"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Detach Script"
-msgstr "Galvenais Skripts:"
+msgstr "Atvienot skriptu"
#: editor/scene_tree_dock.cpp
msgid "This operation can't be done on the tree root."
@@ -11437,9 +11324,8 @@ msgid "Make node as Root"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Delete %d nodes and any children?"
-msgstr "Izdzēst %d mezglus?"
+msgstr "Dzēst %d mezglus un to bērnus?"
#: editor/scene_tree_dock.cpp
msgid "Delete %d nodes?"
@@ -11485,7 +11371,7 @@ msgstr ""
#: editor/scene_tree_dock.cpp
msgid "Save New Scene As..."
-msgstr ""
+msgstr "SaglabÄt jaunu ainu kÄ..."
#: editor/scene_tree_dock.cpp
msgid ""
@@ -11524,9 +11410,8 @@ msgid "User Interface"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Other Node"
-msgstr "Izdzēst"
+msgstr "Cits mezgls"
#: editor/scene_tree_dock.cpp
msgid "Can't operate on nodes from a foreign scene!"
@@ -11545,9 +11430,8 @@ msgid "Attach Script"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Cut Node(s)"
-msgstr "Dublicēt atslēgvietnes"
+msgstr "Izgriezt mezglu(s)"
#: editor/scene_tree_dock.cpp
msgid "Remove Node(s)"
@@ -11607,9 +11491,8 @@ msgid "Change Type"
msgstr ""
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Reparent to New Node"
-msgstr "Izveidot Jaunu %s"
+msgstr "Pakļaut zem jauna mezgla"
#: editor/scene_tree_dock.cpp
msgid "Make Scene Root"
@@ -11621,7 +11504,7 @@ msgstr ""
#: editor/scene_tree_dock.cpp editor/script_editor_debugger.cpp
msgid "Save Branch as Scene"
-msgstr ""
+msgstr "SaglabÄt zaru kÄ ainu"
#: editor/scene_tree_dock.cpp editor/script_editor_debugger.cpp
msgid "Copy Node Path"
@@ -11643,7 +11526,7 @@ msgstr ""
#: editor/scene_tree_dock.cpp
msgid "Attach a new or existing script to the selected node."
-msgstr ""
+msgstr "Pievienot jaunu vai eksistējošu skriptu izvēlētajam mezglam."
#: editor/scene_tree_dock.cpp
msgid "Detach the script from the selected node."
@@ -11705,6 +11588,8 @@ msgid ""
"Node is in %s group(s).\n"
"Click to show groups dock."
msgstr ""
+"Mezgls ir %s grupÄs.\n"
+"KlikÅ¡Ä·ini, lai parÄdÄ«tu grupu doku."
#: editor/scene_tree_editor.cpp
msgid "Open Script:"
@@ -11765,9 +11650,8 @@ msgid "Path is not local."
msgstr ""
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Invalid base path."
-msgstr "Nederīgs nosaukums."
+msgstr "NederÄ«gs bÄzes ceļš."
#: editor/script_create_dialog.cpp
msgid "A directory with the same name exists."
@@ -11778,9 +11662,8 @@ msgid "File does not exist."
msgstr ""
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Invalid extension."
-msgstr "Nederīgs fonta izmērs."
+msgstr "NederÄ«gs paplaÅ¡inÄjums."
#: editor/script_create_dialog.cpp
msgid "Wrong extension chosen."
@@ -11823,9 +11706,8 @@ msgid "Invalid path."
msgstr "Nederīgs ceļš."
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Invalid class name."
-msgstr "Nederīgs nosaukums."
+msgstr "Nederīgs klases nosaukums."
#: editor/script_create_dialog.cpp
msgid "Invalid inherited parent name or path."
@@ -11848,9 +11730,8 @@ msgid "Will create a new script file."
msgstr "Izveidos jaunu skripta failu."
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Will load an existing script file."
-msgstr "IelÄdÄ“t eksistÄ“joÅ¡u Kopnes IzkÄrtojumu."
+msgstr "IelÄdÄ“s eksistÄ“joÅ¡u skriptu."
#: editor/script_create_dialog.cpp
msgid "Script file already exists."
@@ -11877,9 +11758,8 @@ msgid "Template:"
msgstr ""
#: editor/script_create_dialog.cpp
-#, fuzzy
msgid "Built-in Script:"
-msgstr "Savieno SignÄlu:"
+msgstr "Iebūvēts skripts:"
#: editor/script_create_dialog.cpp
msgid "Attach Node Script"
@@ -11898,9 +11778,8 @@ msgid "Warning:"
msgstr ""
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Error:"
-msgstr "Kļūme lÄdÄ“jot:"
+msgstr "Kļūda:"
#: editor/script_editor_debugger.cpp
msgid "C++ Error"
@@ -11911,9 +11790,8 @@ msgid "C++ Error:"
msgstr ""
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "C++ Source"
-msgstr "Resurs"
+msgstr "C++ avots"
#: editor/script_editor_debugger.cpp
msgid "Source:"
@@ -11948,9 +11826,8 @@ msgid "Video RAM"
msgstr ""
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Skip Breakpoints"
-msgstr "Izveidot"
+msgstr "Izlaist pÄrrÄvumpunktus"
#: editor/script_editor_debugger.cpp
msgid "Inspect Previous Instance"
@@ -12281,23 +12158,20 @@ msgid "GridMap Delete Selection"
msgstr ""
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "GridMap Fill Selection"
-msgstr "Visa Izvēle"
+msgstr "Režģkartes pildīšanas izvēle"
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "GridMap Paste Selection"
-msgstr "Visa Izvēle"
+msgstr "Režģkartes ielīmēšanas izvēle"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "GridMap Paint"
msgstr ""
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "GridMap Selection"
-msgstr "Visa Izvēle"
+msgstr "Režģkartes izvēle"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Grid Map"
@@ -12360,18 +12234,16 @@ msgid "Cursor Clear Rotation"
msgstr ""
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Paste Selects"
-msgstr "Visa Izvēle"
+msgstr "Ielīmēt izvēlnes"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Clear Selection"
msgstr ""
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Fill Selection"
-msgstr "Visa Izvēle"
+msgstr "Aizpildīt izvēlni"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "GridMap Settings"
@@ -12422,9 +12294,8 @@ msgid "Class name can't be a reserved keyword"
msgstr ""
#: modules/mono/csharp_script.cpp
-#, fuzzy
msgid "Build Solution"
-msgstr "Visa Izvēle"
+msgstr "BÅ«vÄ“t risinÄjumu"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -12488,7 +12359,7 @@ msgstr ""
#: modules/recast/navigation_mesh_generator.cpp
msgid "Done!"
-msgstr ""
+msgstr "Darīts!"
#: modules/visual_script/visual_script.cpp
msgid ""
@@ -12549,21 +12420,16 @@ msgid "Add Output Port"
msgstr "Pievienot Izejas Pieslēgvietu"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Change Port Type"
-msgstr "Nomainīt %s Tipu"
+msgstr "Mainīt porta tipu"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Change Port Name"
-msgstr "Izmainīt masīva vērtību"
+msgstr "Mainīt porta nosaukumu"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Override an existing built-in function."
-msgstr ""
-"Nederīgs nosaukums. Nedrīkst sadurties ar eksistējošu iebūvēto tipa "
-"nosaukumu."
+msgstr "PÄrrakstÄ«t eksistÄ“joÅ¡u iebÅ«vÄ“to funkciju."
#: modules/visual_script/visual_script_editor.cpp
msgid "Create a new function."
@@ -12579,7 +12445,7 @@ msgstr "Izveidot jaunu mainīgo."
#: modules/visual_script/visual_script_editor.cpp
msgid "Signals:"
-msgstr ""
+msgstr "SignÄli:"
#: modules/visual_script/visual_script_editor.cpp
msgid "Create a new signal."
@@ -12610,9 +12476,8 @@ msgid "Add Function"
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Delete input port"
-msgstr "Noņemt Izvēlēto"
+msgstr "DzÄ“st ienÄkoÅ¡o portu"
#: modules/visual_script/visual_script_editor.cpp
msgid "Add Variable"
@@ -12623,14 +12488,12 @@ msgid "Add Signal"
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Remove Input Port"
-msgstr "Noņemt Izvēlēto"
+msgstr "Noņemt ienÄkoÅ¡o portu"
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Remove Output Port"
-msgstr "Noņemt Izvēlēto"
+msgstr "Noņemt izejas portu"
#: modules/visual_script/visual_script_editor.cpp
msgid "Change Expression"
@@ -12673,9 +12536,8 @@ msgid "Add Preload Node"
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Add Node(s)"
-msgstr "Pievienot Mezglus..."
+msgstr "Pievienot Mezglu(s)"
#: modules/visual_script/visual_script_editor.cpp
msgid "Add Node(s) From Tree"
@@ -12712,9 +12574,8 @@ msgid "Connect Nodes"
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Disconnect Nodes"
-msgstr "Savienot"
+msgstr "Atvienot mezglus"
#: modules/visual_script/visual_script_editor.cpp
msgid "Connect Node Data"
@@ -12761,9 +12622,8 @@ msgid "Try to only have one sequence input in selection."
msgstr ""
#: modules/visual_script/visual_script_editor.cpp
-#, fuzzy
msgid "Create Function"
-msgstr "Izveidot Jaunu %s"
+msgstr "Izveidot funkciju"
#: modules/visual_script/visual_script_editor.cpp
msgid "Remove Function"
@@ -12940,14 +12800,12 @@ msgid "Exporting APK..."
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Uninstalling..."
-msgstr "Instalēt..."
+msgstr "Atinstalē..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Installing to device, please wait..."
-msgstr "IelÄdÄ“t..."
+msgstr "Instalē ierīcē, lūdzu uzgaidi..."
#: platform/android/export/export_plugin.cpp
msgid "Could not install to device: %s"
@@ -13146,9 +13004,8 @@ msgid ""
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Package not found: %s"
-msgstr "AnimÄcija netika atrasta: '%s'"
+msgstr "Paka nav atrasta: %s"
#: platform/android/export/export_plugin.cpp
msgid "Creating APK..."
@@ -13169,9 +13026,8 @@ msgid ""
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Adding files..."
-msgstr "Pievienot Mezglus..."
+msgstr "Failu pievienošana..."
#: platform/android/export/export_plugin.cpp
msgid "Could not export project files"
@@ -13246,9 +13102,8 @@ msgid "Error starting HTTP server:"
msgstr ""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Invalid bundle identifier:"
-msgstr "Nederīgs Identifikators:"
+msgstr "Nederīgs bunduļa identifikators:"
#: platform/osx/export/export.cpp
msgid "Notarization: code signing required."
@@ -13267,34 +13122,28 @@ msgid "Notarization: Apple ID password not specified."
msgstr ""
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid package short name."
-msgstr "Nederīgs nosaukums."
+msgstr "Nederīgs paketes īsais nosaukums."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid package unique name."
-msgstr "Nederīgs nosaukums."
+msgstr "NederÄ«gs paketes unikÄlais nosaukums."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid package publisher display name."
-msgstr "Nederīgs nosaukums."
+msgstr "NederÄ«gs paketes izdevÄ“ja displeja vÄrds."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid product GUID."
-msgstr "Nederīgs nosaukums."
+msgstr "Nederīgs produkta GUID."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid publisher GUID."
-msgstr "Nederīgs fonta izmērs."
+msgstr "Nederīgs izdevēja GUID."
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Invalid background color."
-msgstr "Nederīgs nosaukums."
+msgstr "NederÄ«ga fona krÄsa."
#: platform/uwp/export/export.cpp
msgid "Invalid Store Logo image dimensions (should be 50x50)."
@@ -13849,12 +13698,11 @@ msgstr ""
#: scene/animation/animation_tree.cpp
msgid "In node '%s', invalid animation: '%s'."
-msgstr ""
+msgstr "MezglÄ '%s', nederÄ«ga animÄcija: '%s'."
#: scene/animation/animation_tree.cpp
-#, fuzzy
msgid "Invalid animation: '%s'."
-msgstr "Nederīgs fonta izmērs."
+msgstr "NederÄ«ga animÄcija: '%s'."
#: scene/animation/animation_tree.cpp
msgid "Nothing connected to input '%s' of node '%s'."
@@ -13878,7 +13726,7 @@ msgstr ""
#: scene/animation/animation_tree_player.cpp
msgid "This node has been deprecated. Use AnimationTree instead."
-msgstr ""
+msgstr "Å is mezgls ir novecojis. TÄ vietÄ izmanto AnimationTree."
#: scene/gui/color_picker.cpp
msgid ""
@@ -13889,7 +13737,7 @@ msgstr ""
#: scene/gui/color_picker.cpp
msgid "Pick a color from the editor window."
-msgstr ""
+msgstr "IzvÄ“lÄ“ties krÄsu no redaktora loga."
#: scene/gui/color_picker.cpp
msgid "HSV"
@@ -13897,7 +13745,7 @@ msgstr ""
#: scene/gui/color_picker.cpp
msgid "Raw"
-msgstr ""
+msgstr "JÄ“ls"
#: scene/gui/color_picker.cpp
msgid "Switch between hexadecimal and code values."
@@ -13930,11 +13778,11 @@ msgstr "LÅ«dzu Apstipriniet..."
#: scene/gui/file_dialog.cpp
msgid "Must use a valid extension."
-msgstr ""
+msgstr "JÄbÅ«t derÄ«gai galotnei."
#: scene/gui/graph_edit.cpp
msgid "Enable grid minimap."
-msgstr ""
+msgstr "Iespējot režģa minikarti."
#: scene/gui/nine_patch_rect.cpp
msgid ""
@@ -13950,6 +13798,9 @@ msgid ""
"functions. Making them visible for editing is fine, but they will hide upon "
"running."
msgstr ""
+"UznirstoÅ¡ie logi ir paslÄ“pti pÄ“c noklusÄ“juma, lai tos parÄdÄ«tu, izmanto ."
+"popup() vai jebkuru no to funkcijÄm. PadarÄ«t tos redzamus rediģēšanai ir "
+"labi, bet tie tiks paslēpti pēc palaišanas."
#: scene/gui/range.cpp
msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0."
@@ -13971,6 +13822,8 @@ msgid ""
"Default Environment as specified in Project Settings (Rendering -> "
"Environment -> Default Environment) could not be loaded."
msgstr ""
+"NoklusÄ“juma vide, kas norÄdÄ«ta projekta iestatÄ«jumos, nevar tikt ielÄdÄ“ta. "
+"(Projekta iestatījumi -> Renderēšana -> vide -> noklusējuma vide)."
#: scene/main/timer.cpp
msgid ""
@@ -14005,19 +13858,16 @@ msgid ""
msgstr ""
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Invalid source for preview."
-msgstr "Nederīgs fonta izmērs."
+msgstr "Nederīgs avots priekšskatījumam."
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Invalid source for shader."
-msgstr "Nederīgs fonta izmērs."
+msgstr "NederÄ«gs fÄ“notÄja avots."
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Invalid comparison function for that type."
-msgstr "Nederīgs fonta izmērs."
+msgstr "NederÄ«gs funkcijas salÄ«dzinÄjums tÄs tipam."
#: servers/visual/shader_language.cpp
msgid "Varying may not be assigned in the '%s' function."
@@ -14049,7 +13899,7 @@ msgstr ""
#: servers/visual/shader_language.cpp
msgid "Constants cannot be modified."
-msgstr ""
+msgstr "Konstantes nevar pÄrveidot."
#~ msgid "Package Contents:"
#~ msgstr "Paketes Saturs:"
diff --git a/editor/translations/mi.po b/editor/translations/mi.po
index b51c143856..0ca7a85100 100644
--- a/editor/translations/mi.po
+++ b/editor/translations/mi.po
@@ -10584,11 +10584,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/mk.po b/editor/translations/mk.po
index d9663ce943..fb20cef0b9 100644
--- a/editor/translations/mk.po
+++ b/editor/translations/mk.po
@@ -10599,11 +10599,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/ml.po b/editor/translations/ml.po
index 21a19ba01b..8f2b461e34 100644
--- a/editor/translations/ml.po
+++ b/editor/translations/ml.po
@@ -10609,11 +10609,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/mr.po b/editor/translations/mr.po
index 0d02f7b34a..f81040488f 100644
--- a/editor/translations/mr.po
+++ b/editor/translations/mr.po
@@ -10601,11 +10601,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/ms.po b/editor/translations/ms.po
index cc9f6f797b..ff7488d454 100644
--- a/editor/translations/ms.po
+++ b/editor/translations/ms.po
@@ -10969,11 +10969,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/nb.po b/editor/translations/nb.po
index 660c01fed9..8924971039 100644
--- a/editor/translations/nb.po
+++ b/editor/translations/nb.po
@@ -18,13 +18,15 @@
# Patrick Sletvold <patricksletvold@hotmail.com>, 2021.
# Kristoffer <kskau93@gmail.com>, 2021.
# Lili Zoey <sayaks1@gmail.com>, 2021.
+# slasken06 <ask.skivdal@gmail.com>, 2021.
+# Daniel Skogly <daniel@klungo.no>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-08-12 21:32+0000\n"
-"Last-Translator: Petter Reinholdtsen <pere-weblate@hungry.com>\n"
+"PO-Revision-Date: 2021-11-03 13:15+0000\n"
+"Last-Translator: Daniel Skogly <daniel@klungo.no>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/godot-"
"engine/godot/nb_NO/>\n"
"Language: nb\n"
@@ -32,7 +34,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.8-dev\n"
+"X-Generator: Weblate 4.9-dev\n"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -11532,11 +11534,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/nl.po b/editor/translations/nl.po
index abbf9a02bf..80c2ab188d 100644
--- a/editor/translations/nl.po
+++ b/editor/translations/nl.po
@@ -55,8 +55,8 @@ msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-04 13:31+0000\n"
-"Last-Translator: Edgar <Edgar@anotherfoxguy.com>\n"
+"PO-Revision-Date: 2021-10-24 20:52+0000\n"
+"Last-Translator: Stijn Hinlopen <f.a.hinlopen@gmail.com>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/"
"nl/>\n"
"Language: nl\n"
@@ -990,9 +990,8 @@ msgid "Edit..."
msgstr "Bewerken..."
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Go to Method"
-msgstr "Naar methode springen"
+msgstr "Ga naar methode"
#: editor/create_dialog.cpp
msgid "Change %s Type"
@@ -1814,13 +1813,12 @@ msgid ""
msgstr ""
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "(current)"
-msgstr "(Huidig)"
+msgstr "(huidig)"
#: editor/editor_feature_profile.cpp
msgid "(none)"
-msgstr ""
+msgstr "(geen)"
#: editor/editor_feature_profile.cpp
msgid "Remove currently selected profile, '%s'? Cannot be undone."
@@ -11316,14 +11314,14 @@ msgstr ""
"`/` karakter bevatten."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Toets "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Toets "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Controllerknop"
diff --git a/editor/translations/or.po b/editor/translations/or.po
index 00e5009221..eebe304b07 100644
--- a/editor/translations/or.po
+++ b/editor/translations/or.po
@@ -10590,11 +10590,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/pl.po b/editor/translations/pl.po
index 5c55b0c86f..f4e73cb4ba 100644
--- a/editor/translations/pl.po
+++ b/editor/translations/pl.po
@@ -50,12 +50,14 @@
# Suchy Talerz <kacperkubis06@gmail.com>, 2021.
# Bartosz Stasiak <bs97086@amu.edu.pl>, 2021.
# Marek Malaria <to.tylko.dla.kont@gmail.com>, 2021.
+# Mateusz Żak <matisgramy@gmail.com>, 2021.
+# voltinus <voltinusmail@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-06 00:12+0000\n"
+"PO-Revision-Date: 2021-10-31 22:17+0000\n"
"Last-Translator: Tomek <kobewi4e@gmail.com>\n"
"Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/"
"godot/pl/>\n"
@@ -2439,9 +2441,8 @@ msgstr ""
"(instancjonowanie lub dziedziczenie) nie są spełnione."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Could not save one or more scenes!"
-msgstr "Nie można zapisać zkonwertowanej tekstury:"
+msgstr "Nie można zapisać jednej lub więcej scen!"
#: editor/editor_node.cpp
msgid "Save All Scenes"
@@ -2585,7 +2586,7 @@ msgstr "Zapisać zmiany w \"%s\" przed zamknięciem?"
#: editor/editor_node.cpp
msgid "%s no longer exists! Please specify a new save location."
-msgstr ""
+msgstr "%s już nie istnieje! Określ nową lokalizację zapisu."
#: editor/editor_node.cpp
msgid ""
@@ -4425,6 +4426,10 @@ msgid ""
"Selecting another resource in the FileSystem dock without clicking Reimport "
"first will discard changes made in the Import dock."
msgstr ""
+"Masz niezapisane zmiany, które nie zostały jeszcze zastosowane. Kliknij "
+"Importuj ponownie, aby zastosować zmiany dokonane w ustawieniach importu.\n"
+"Wybranie innego zasobu w systemie plików bez kliknięcia wpierw Importuj "
+"ponownie odrzuci zmiany dokonane w imporcie."
#: editor/import_dock.cpp
msgid "Import As:"
@@ -7398,12 +7403,10 @@ msgid "Move Down"
msgstr "Przesuń w dół"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Next Script"
msgstr "Następny skrypt"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Previous Script"
msgstr "Poprzedni skrypt"
@@ -7821,9 +7824,8 @@ msgid "Left Orthogonal"
msgstr "Lewo ortogonalnie"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Left Perspective"
-msgstr "Perspektywa"
+msgstr "Perspektywa z Lewej"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Right Orthogonal"
@@ -8182,24 +8184,23 @@ msgstr "Widok z prawej"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Orbit View Down"
-msgstr ""
+msgstr "Orbituj widok w dół"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Orbit View Left"
-msgstr ""
+msgstr "Orbituj widok w lewo"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Orbit View Right"
-msgstr ""
+msgstr "Orbituj widok w prawo"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Orbit View Up"
-msgstr "Widok z przodu"
+msgstr "Widok Orbitalny z Góry"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Orbit View 180"
-msgstr ""
+msgstr "Orbituj widok o 180"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Switch Perspective/Orthogonal View"
@@ -11120,14 +11121,14 @@ msgstr ""
"przynajmniej jeden znak \"/\"."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Klawisz "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Fizyczny klawisz"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Klawisz "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Przycisk joysticka"
@@ -14508,6 +14509,10 @@ msgid ""
"Consider using a script's process loop instead of relying on a Timer for "
"very low wait times."
msgstr ""
+"Bardzo niskie czasy czekania (< 0,05 sekund) mogą zachowywać się znacząco "
+"różnie w zależności od częstotliwości klatek renderowania lub fizyki\n"
+"Rozważ użycie pętli procesowej w skrypcie zamiast polegać na Timerze dla "
+"bardzo niskich czasów czekania."
#: scene/main/viewport.cpp
msgid ""
@@ -14522,11 +14527,12 @@ msgstr ""
"przyporządkuj jego teksturę dla któregoś węzła."
#: scene/main/viewport.cpp
-#, fuzzy
msgid ""
"The Viewport size must be greater than or equal to 2 pixels on both "
"dimensions to render anything."
-msgstr "Rozmiar węzła Viewport musi być większy niż 0, by coś wyrenderować."
+msgstr ""
+"Wielkość Viewportu musi być większa lub równa 2 piksele w obu wymiarach, by "
+"cokolwiek renderować."
#: scene/resources/occluder_shape.cpp
msgid "OccluderShapeSphere Set Spheres"
diff --git a/editor/translations/pr.po b/editor/translations/pr.po
index 9ea671ae8f..363fb8def5 100644
--- a/editor/translations/pr.po
+++ b/editor/translations/pr.po
@@ -11005,11 +11005,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/pt.po b/editor/translations/pt.po
index e78f560111..7b6e1eea53 100644
--- a/editor/translations/pt.po
+++ b/editor/translations/pt.po
@@ -11087,14 +11087,14 @@ msgstr ""
"pelo menos um caráter `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Tecla "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Chave Física"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Tecla "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Botão do joystick"
diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po
index 9e7d53c52e..e32cf399c8 100644
--- a/editor/translations/pt_BR.po
+++ b/editor/translations/pt_BR.po
@@ -125,13 +125,15 @@
# Zenvasca <zenvasca@gmail.com>, 2021.
# Wladimir Roberto Barbosa <wladrbarbosa@gmail.com>, 2021.
# Mário Victor Ribeiro Silva <mariovictorrs@gmail.com>, 2021.
+# jak3z <jose_renato06@outlook.com>, 2021.
+# Henrique Darko <henridark00@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: 2016-05-30\n"
-"PO-Revision-Date: 2021-10-21 10:31+0000\n"
-"Last-Translator: Mário Victor Ribeiro Silva <mariovictorrs@gmail.com>\n"
+"PO-Revision-Date: 2021-11-03 13:15+0000\n"
+"Last-Translator: jak3z <jose_renato06@outlook.com>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"godot-engine/godot/pt_BR/>\n"
"Language: pt_BR\n"
@@ -551,7 +553,7 @@ msgstr "Não é possível adicionar uma nova trilha sem uma raiz"
#: editor/animation_track_editor.cpp
msgid "Invalid track for Bezier (no suitable sub-properties)"
-msgstr "Trilha inválida para Bézier (sem subpropriedades adequadas)"
+msgstr "Trilha inválida para Bézier (sem sub-propriedades adequadas)"
#: editor/animation_track_editor.cpp
msgid "Add Bezier Track"
@@ -576,7 +578,7 @@ msgstr "Adicionar Trilha Chave"
#: editor/animation_track_editor.cpp
msgid "Track path is invalid, so can't add a method key."
msgstr ""
-"Caminho da trilha é inválido,então não pode adicionar uma chave de método."
+"Caminho da trilha é inválido, então não pode adicionar uma chave de método."
#: editor/animation_track_editor.cpp
msgid "Add Method Track Key"
@@ -607,7 +609,8 @@ msgstr "Alterar Escala das Chaves na Anim"
msgid ""
"This option does not work for Bezier editing, as it's only a single track."
msgstr ""
-"Essa opção não funciona para edição por Bezier,pois é apenas uma faixa única."
+"Essa opção não funciona para edição por Bézier, pois é apenas uma trilha "
+"única."
#: editor/animation_track_editor.cpp
msgid ""
@@ -3791,9 +3794,8 @@ msgid "There are no mirrors available."
msgstr "Não há espelhos disponíveis."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Retrieving the mirror list..."
-msgstr "Reconectando, por favor aguarde."
+msgstr "Reconectando a lista de espelhos..."
#: editor/export_template_manager.cpp
msgid "Starting the download..."
@@ -3853,7 +3855,6 @@ msgid "Error getting the list of mirrors."
msgstr "Erro ao obter a lista de espelhos."
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Error parsing JSON with the list of mirrors. Please report this issue!"
msgstr ""
"Erro ao analisar o JSON da lista de espelhos. Por favor, reporte este "
@@ -3942,9 +3943,8 @@ msgid "Importing:"
msgstr "Importando:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Remove templates for the version '%s'?"
-msgstr "Remover versão '%s' do modelo?"
+msgstr "Remover modelo para a versão '%s'?"
#: editor/export_template_manager.cpp
msgid "Uncompressing Android Build Sources"
@@ -3982,9 +3982,8 @@ msgid "Uninstall"
msgstr "Desinstalar"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Uninstall templates for the current version."
-msgstr "Valor inicial para o contador"
+msgstr "Desinstalar modelos da versão atual."
#: editor/export_template_manager.cpp
msgid "Download from:"
@@ -3995,9 +3994,8 @@ msgid "Open in Web Browser"
msgstr "Abrir no Navegador"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Copy Mirror URL"
-msgstr "Copiar Erro"
+msgstr "Copiar URL do Espelho"
#: editor/export_template_manager.cpp
msgid "Download and Install"
@@ -4022,9 +4020,8 @@ msgid "Install from File"
msgstr "Instalar a Partir do Arquivo"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Install templates from a local file."
-msgstr "Importar Modelos de um Arquivo ZIP"
+msgstr "Importar modelos de um arquivo local."
#: editor/export_template_manager.cpp editor/find_in_files.cpp
#: editor/progress_dialog.cpp scene/gui/dialogs.cpp
@@ -4034,7 +4031,7 @@ msgstr "Cancelar"
#: editor/export_template_manager.cpp
#, fuzzy
msgid "Cancel the download of the templates."
-msgstr "Não se pôde abrir zip dos modelos de exportação."
+msgstr "Cancelar download dos modelos."
#: editor/export_template_manager.cpp
msgid "Other Installed Versions:"
@@ -4226,14 +4223,12 @@ msgid "Sort by Type (Descending)"
msgstr "Ordenar por Tipo (Descendente)"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Sort by Last Modified"
-msgstr "Ultima Modificação"
+msgstr "Ordenar por Último Modificado"
#: editor/filesystem_dock.cpp
-#, fuzzy
msgid "Sort by First Modified"
-msgstr "Ultima Modificação"
+msgstr "Ordenar por Primeiro Modificado"
#: editor/filesystem_dock.cpp
msgid "Duplicate..."
@@ -4532,6 +4527,11 @@ msgid ""
"Selecting another resource in the FileSystem dock without clicking Reimport "
"first will discard changes made in the Import dock."
msgstr ""
+"Você tem mudanças pendentes que não foram aplicadas ainda. Clique em "
+"Reimportar para aplicar as mudanças feitas nas opções de importação.\n"
+"Selecionado outro recurso no painel do Sistema de Arquivos sem ter clicado "
+"em Reimportar primeiro ira descartar as mudanças feitas no painel de "
+"Importar."
#: editor/import_dock.cpp
msgid "Import As:"
@@ -4592,21 +4592,18 @@ msgid "Save As..."
msgstr "Salvar Como..."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Extra resource options."
-msgstr "Não está no caminho de recursos."
+msgstr "Opções de recursos extras."
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Edit Resource from Clipboard"
-msgstr "Editar Ãrea de Transferência de Recursos"
+msgstr "Editar Recursos da Ãrea de Transferência"
#: editor/inspector_dock.cpp
msgid "Copy Resource"
msgstr "Copiar Recurso"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Make Resource Built-In"
msgstr "Tornar Embutido"
@@ -4635,9 +4632,8 @@ msgid "Filter properties"
msgstr "Filtrar propriedades"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Manage object properties."
-msgstr "Propriedades do objeto."
+msgstr "Gerenciar propriedades do objeto."
#: editor/inspector_dock.cpp
msgid "Changes may be lost!"
@@ -5676,13 +5672,13 @@ msgstr ""
"Salve sua cena e tente novamente."
#: editor/plugins/baked_lightmap_editor_plugin.cpp
-#, fuzzy
msgid ""
"No meshes to bake. Make sure they contain an UV2 channel and that the 'Use "
"In Baked Light' and 'Generate Lightmap' flags are on."
msgstr ""
-"Não há malhas para preparar. Certifique-se de que elas possuem um canal UV2 "
-"e que a propriedade \"Preparar Luz\" está habilitada."
+"Não há malhas para pré-calcular. Certifique-se de que elas possuem um canal "
+"UV2 e que as propriedades \"Use In Baked Light\" e \"Generate Lightmap\" "
+"está habilitada."
#: editor/plugins/baked_lightmap_editor_plugin.cpp
msgid "Failed creating lightmap images, make sure path is writable."
@@ -5826,15 +5822,13 @@ msgstr "Mover CanvaItem \"%s\" para (%d, %d)"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Locked"
msgstr "Fixar Seleção"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Grouped"
-msgstr "Grupo"
+msgstr "Agrupado"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid ""
@@ -5938,13 +5932,13 @@ msgstr "Alterar Âncoras"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid ""
"Project Camera Override\n"
"Overrides the running project's camera with the editor viewport camera."
msgstr ""
-"Sobrepor Câmera de Jogo\n"
-"Sobrepõe a câmera de jogo com a janela de exibição da câmera."
+"Sobrepor câmera do projeto.\n"
+"Sobrepõe a câmera do projeto em execução com a câmera da janela de exibição "
+"do editor."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
@@ -5953,6 +5947,9 @@ msgid ""
"No project instance running. Run the project from the editor to use this "
"feature."
msgstr ""
+"Sobrepor câmera do projeto.\n"
+"Sem instâncias do projeto em execução. Execute o projeto pelo editor para "
+"usar essa funcionalidade."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
@@ -6020,25 +6017,23 @@ msgstr "Modo de Seleção"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Drag: Rotate selected node around pivot."
-msgstr "Remover nó ou trilha selecionada."
+msgstr "Arrastar: Gire nó em tono do pivô."
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Alt+Drag: Move selected node."
msgstr "Alt+Arrastar: Mover nó selecionado."
#: editor/plugins/canvas_item_editor_plugin.cpp
-#, fuzzy
msgid "V: Set selected node's pivot position."
-msgstr "Remover nó ou trilha selecionada."
+msgstr "V: Define a posição do pivô do nó selecionado."
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Alt+RMB: Show list of all nodes at position clicked, including locked."
msgstr ""
-"Alt+BDM: Mostra uma lista de todos os nodes na posição clicada, incluindo "
-"os bloqueados."
+"Alt+Botão Esquerdo do Mouse: Mostrar a lista de todos os nós na posição "
+"clicada, incluindo os bloqueados."
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "RMB: Add node at position clicked."
@@ -6582,9 +6577,8 @@ msgid "Couldn't create a single convex collision shape."
msgstr "Não foi possível criar uma forma de colisão convexa simples."
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Create Simplified Convex Shape"
-msgstr "Criar Forma(s) Convexa(s) Simples"
+msgstr "Criar Forma(s) Convexa(s) Simplificadas"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Single Convex Shape"
@@ -6619,9 +6613,8 @@ msgid "No mesh to debug."
msgstr "Nenhuma malha para depurar."
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Mesh has no UV in layer %d."
-msgstr "Modelo não tem uma UV nesta camada"
+msgstr "Modelo não tem UV na camada %d."
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "MeshInstance lacks a Mesh!"
@@ -6686,9 +6679,8 @@ msgstr ""
"Esta é a opção mais rápida (mas menos precisa) para detecção de colisão."
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid "Create Simplified Convex Collision Sibling"
-msgstr "Criar um irmão de Colisão Convexa"
+msgstr "Criar Colisão Convexa Simplificada Irmã"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid ""
@@ -6705,14 +6697,14 @@ msgid "Create Multiple Convex Collision Siblings"
msgstr "Criar Múltipla Colisão Convexa Irmã(s)"
#: editor/plugins/mesh_instance_editor_plugin.cpp
-#, fuzzy
msgid ""
"Creates a polygon-based collision shape.\n"
"This is a performance middle-ground between a single convex collision and a "
"polygon-based collision."
msgstr ""
-"Cria um polígono base de colisão forma.\n"
-"Este é um meio-termo entre as duas opções acima."
+"Cria uma forma de colisão baseada em polígonos.\n"
+"Este é um meio-termo em desempenho entre uma única colisão convexa e uma "
+"colisão baseada em polígono."
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Outline Mesh..."
@@ -6779,14 +6771,12 @@ msgid "Remove Selected Item"
msgstr "Remover Item Selecionado"
#: editor/plugins/mesh_library_editor_plugin.cpp
-#, fuzzy
msgid "Import from Scene (Ignore Transforms)"
-msgstr "Importar da Cena"
+msgstr "Importar da Cena (Ignora Transforms)"
#: editor/plugins/mesh_library_editor_plugin.cpp
-#, fuzzy
msgid "Import from Scene (Apply Transforms)"
-msgstr "Importar da Cena"
+msgstr "Importar da Cena (Aplica Transforms)"
#: editor/plugins/mesh_library_editor_plugin.cpp
msgid "Update from Scene"
@@ -7365,24 +7355,20 @@ msgid "ResourcePreloader"
msgstr "ResourcePreloader"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Flip Portals"
msgstr "Inverter Horizontalmente"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Room Generate Points"
-msgstr "Gerar Contagem de Pontos:"
+msgstr "Gerar Contagem de Pontos"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Generate Points"
-msgstr "Gerar Contagem de Pontos:"
+msgstr "Gerar Pontos"
#: editor/plugins/room_manager_editor_plugin.cpp
-#, fuzzy
msgid "Flip Portal"
-msgstr "Inverter Horizontalmente"
+msgstr "Virar Portal"
#: editor/plugins/room_manager_editor_plugin.cpp
#, fuzzy
@@ -7894,14 +7880,12 @@ msgid "Skeleton2D"
msgstr "Esqueleto2D"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
-#, fuzzy
msgid "Reset to Rest Pose"
-msgstr "Definir os ossos para descansar Pose"
+msgstr "Redefinir para Pose de Descanso"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
-#, fuzzy
msgid "Overwrite Rest Pose"
-msgstr "Sobrescrever Cena Existente"
+msgstr "Sobrescrever Pose de Descanso"
#: editor/plugins/skeleton_editor_plugin.cpp
msgid "Create physical bones"
@@ -7928,74 +7912,62 @@ msgid "Perspective"
msgstr "Perspectiva"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Top Orthogonal"
-msgstr "Ortogonal"
+msgstr "Ortogonal Topo"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Top Perspective"
-msgstr "Perspectiva"
+msgstr "Perspectiva Topo"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Bottom Orthogonal"
-msgstr "Ortogonal"
+msgstr "Ortogonal Baixo"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Bottom Perspective"
-msgstr "Perspectiva"
+msgstr "Perspectiva Baixo"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Left Orthogonal"
-msgstr "Ortogonal"
+msgstr "Ortogonal Esquerda"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Left Perspective"
-msgstr "Perspectiva"
+msgstr "Perspectiva Esquerda"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Right Orthogonal"
-msgstr "Ortogonal"
+msgstr "Ortogonal Direita"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Right Perspective"
-msgstr "Perspectiva"
+msgstr "Perspectiva Direita"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Front Orthogonal"
-msgstr "Ortogonal"
+msgstr "Ortogonal Dianteira"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Front Perspective"
-msgstr "Perspectiva"
+msgstr "Perspectiva Dianteira"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Rear Orthogonal"
-msgstr "Ortogonal"
+msgstr "Ortogonal Traseira"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Rear Perspective"
-msgstr "Perspectiva"
+msgstr "Perspectiva Traseira"
#. TRANSLATORS: This will be appended to the view name when Auto Orthogonal is enabled.
#: editor/plugins/spatial_editor_plugin.cpp
msgid " [auto]"
-msgstr ""
+msgstr " [automático]"
#. TRANSLATORS: This will be appended to the view name when Portal Occulusion is enabled.
#: editor/plugins/spatial_editor_plugin.cpp
msgid " [portals active]"
-msgstr ""
+msgstr " [portais ativados]"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Transform Aborted."
@@ -8057,9 +8029,8 @@ msgid "Animation Key Inserted."
msgstr "Chave de Animação Inserida."
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Pitch:"
-msgstr "Tom"
+msgstr "Tom:"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Yaw:"
@@ -8253,9 +8224,8 @@ msgstr ""
"Ele não deve ser usado como indicação confiável de desempenho do jogo."
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Convert Rooms"
-msgstr "Converter Para %s"
+msgstr "Converter Salas"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "XForm Dialog"
@@ -8277,9 +8247,8 @@ msgstr ""
"x\")."
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Snap Nodes to Floor"
-msgstr "Encaixar Nó(s) no Chão"
+msgstr "Atrair Nó(s) ao Chão"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Couldn't find a solid floor to snap the selection to."
@@ -8295,7 +8264,7 @@ msgstr "Use Encaixar"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Converts rooms for portal culling."
-msgstr ""
+msgstr "Converter salas para portal culling."
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Bottom View"
@@ -8741,19 +8710,16 @@ msgid "TextureRegion"
msgstr "Região da Textura"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Colors"
-msgstr "Cor"
+msgstr "Cores"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Fonts"
-msgstr "Fonte"
+msgstr "Fontes"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Icons"
-msgstr "Ãcone"
+msgstr "Ãcones"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -8762,7 +8728,7 @@ msgstr "StyleBox"
#: editor/plugins/theme_editor_plugin.cpp
msgid "{num} color(s)"
-msgstr ""
+msgstr "{num} cor(es)"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -8770,9 +8736,8 @@ msgid "No colors found."
msgstr "Nenhum sub-recurso encontrado."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "{num} constant(s)"
-msgstr "Constantes"
+msgstr "{num} constante(s)"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -8781,21 +8746,19 @@ msgstr "Cor constante."
#: editor/plugins/theme_editor_plugin.cpp
msgid "{num} font(s)"
-msgstr ""
+msgstr "{num} fonte(s)"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "No fonts found."
-msgstr "Não encontrado!"
+msgstr "Fontes não encontradas."
#: editor/plugins/theme_editor_plugin.cpp
msgid "{num} icon(s)"
-msgstr ""
+msgstr "{num} ícone(s)"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "No icons found."
-msgstr "Não encontrado!"
+msgstr "Ãcones não encontrados."
#: editor/plugins/theme_editor_plugin.cpp
msgid "{num} stylebox(es)"
@@ -8821,36 +8784,31 @@ msgstr "Importar Tema"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Importing items {n}/{n}"
-msgstr ""
+msgstr "Importando itens {n}/{n}"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Updating the editor"
-msgstr "Sair do editor?"
+msgstr "Atualizando o editor"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Finalizing"
-msgstr "Analisando"
+msgstr "Finalizando"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Filter:"
-msgstr "Filtro: "
+msgstr "Filtro:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "With Data"
-msgstr ""
+msgstr "Com Dados"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select by data type:"
-msgstr "Selecione um Nó"
+msgstr "Selecione por tipo de dados:"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible color items."
-msgstr "Selecione um item de configuração primeiro!"
+msgstr "Selecione todos os itens de cor visíveis."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible color items and their data."
@@ -8861,9 +8819,8 @@ msgid "Deselect all visible color items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible constant items."
-msgstr "Selecione um item de configuração primeiro!"
+msgstr "Selecione todos os itens constantes visíveis."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible constant items and their data."
@@ -8874,9 +8831,8 @@ msgid "Deselect all visible constant items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible font items."
-msgstr "Selecione um item de configuração primeiro!"
+msgstr "Selecione todos os itens de fonte visíveis."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible font items and their data."
@@ -8887,19 +8843,16 @@ msgid "Deselect all visible font items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible icon items."
-msgstr "Selecione um item de configuração primeiro!"
+msgstr "Selecione todos os itens de ícones visíveis."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select all visible icon items and their data."
-msgstr "Selecione um item de configuração primeiro!"
+msgstr "Selecione todos os itens de ícones visíveis e seus dados."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Deselect all visible icon items."
-msgstr "Selecione um item de configuração primeiro!"
+msgstr "Desmarque todos os itens de ícones visíveis."
#: editor/plugins/theme_editor_plugin.cpp
msgid "Select all visible stylebox items."
@@ -8955,9 +8908,8 @@ msgid "Deselect all Theme items."
msgstr "Desselecionar todos os itens do Tema."
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Import Selected"
-msgstr "Importar Cena"
+msgstr "Importar Selecionado"
#: editor/plugins/theme_editor_plugin.cpp
msgid ""
@@ -8981,9 +8933,8 @@ msgid "Remove All Color Items"
msgstr "Remover Todos os Itens"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Rename Item"
-msgstr "Remover Item"
+msgstr "Renomear Item"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9093,9 +9044,8 @@ msgid "Add Type:"
msgstr "Tipo:"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Add Item:"
-msgstr "Adicionar Item"
+msgstr "Adicionar Item:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9103,9 +9053,8 @@ msgid "Add StyleBox Item"
msgstr "Adicionar Todos os Itens"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove Items:"
-msgstr "Remover Item"
+msgstr "Remover Itens:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove Class Items"
@@ -9191,9 +9140,8 @@ msgid "Add Item Type"
msgstr "Adicionar Item"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Node Types:"
-msgstr "Tipo de nó"
+msgstr "Tipos de Nó:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9214,9 +9162,8 @@ msgid "Override all default type items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Theme:"
-msgstr "Tema"
+msgstr "Tema:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -10744,9 +10691,8 @@ msgid "VisualShader"
msgstr "VisualShader"
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Edit Visual Property:"
-msgstr "Editar Propriedade Visual"
+msgstr "Editar Propriedade Visual:"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Visual Shader Mode Changed"
@@ -11199,12 +11145,11 @@ msgstr "Tem certeza de que quer executar %d projetos ao mesmo tempo?"
#: editor/project_manager.cpp
#, fuzzy
msgid "Remove %d projects from the list?"
-msgstr "Selecione um dispositivo da lista"
+msgstr "Remover projetos %d da lista?"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove this project from the list?"
-msgstr "Selecione um dispositivo da lista"
+msgstr "Remover esse projeto da lista?"
#: editor/project_manager.cpp
msgid ""
@@ -11342,14 +11287,14 @@ msgstr ""
"conter pelo menos um caractere `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Tecla "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Tecla "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Botão do Joystick"
@@ -13521,7 +13466,7 @@ msgstr "Carregando, por favor aguarde."
#: platform/android/export/export_plugin.cpp
#, fuzzy
msgid "Could not install to device: %s"
-msgstr "Não foi possível instanciar cena!"
+msgstr "Não foi possível instalar para o dispositivo: %s"
#: platform/android/export/export_plugin.cpp
msgid "Running on device..."
@@ -13657,7 +13602,7 @@ msgstr "Assinando lançamento %s..."
#: platform/android/export/export_plugin.cpp
#, fuzzy
msgid "Could not find keystore, unable to export."
-msgstr "Não foi possível abrir o modelo para exportar:"
+msgstr "Não foi possível encontrar a keystore, incapaz de exportar."
#: platform/android/export/export_plugin.cpp
msgid "'apksigner' returned with error #%d"
@@ -13723,9 +13668,8 @@ msgstr ""
"Não foi possível exportar os arquivos do projeto ao projeto do gradle\n"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not write expansion package file!"
-msgstr "Não foi possível escrever o arquivo:"
+msgstr "Não foi possível escrever o arquivo do pacote de expansão!"
#: platform/android/export/export_plugin.cpp
msgid "Building Android Project (gradle)"
@@ -13782,9 +13726,8 @@ msgid "Adding files..."
msgstr "Adicionando arquivos..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files"
-msgstr "Não foi possível escrever o arquivo:"
+msgstr "Não foi possível exportar os arquivos do projeto"
#: platform/android/export/export_plugin.cpp
msgid "Aligning APK..."
@@ -13857,7 +13800,7 @@ msgstr "Não foi possível criar a pasta."
#: platform/javascript/export/export.cpp
#, fuzzy
msgid "Error starting HTTP server:"
-msgstr "Erro ao salvar cena."
+msgstr "Erro iniciando servidor HTTP:"
#: platform/osx/export/export.cpp
#, fuzzy
diff --git a/editor/translations/ro.po b/editor/translations/ro.po
index 12102e12dc..1ffd38d5a0 100644
--- a/editor/translations/ro.po
+++ b/editor/translations/ro.po
@@ -11270,11 +11270,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/ru.po b/editor/translations/ru.po
index df2c3c1cdf..668cfb6afa 100644
--- a/editor/translations/ru.po
+++ b/editor/translations/ru.po
@@ -11177,14 +11177,14 @@ msgstr ""
"Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ один Ñимвол `/`."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Клавиша "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "ФизичеÑÐºÐ°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Клавиша "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Кнопка геймпада"
diff --git a/editor/translations/si.po b/editor/translations/si.po
index c19727905b..698dc3040d 100644
--- a/editor/translations/si.po
+++ b/editor/translations/si.po
@@ -10693,11 +10693,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/sk.po b/editor/translations/sk.po
index 93e2cf40ab..59ddcb9fc1 100644
--- a/editor/translations/sk.po
+++ b/editor/translations/sk.po
@@ -11161,11 +11161,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/sl.po b/editor/translations/sl.po
index dc381b7d0a..0d0acd817d 100644
--- a/editor/translations/sl.po
+++ b/editor/translations/sl.po
@@ -11477,11 +11477,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/sq.po b/editor/translations/sq.po
index 2cf0327ec4..d6e23ddbe6 100644
--- a/editor/translations/sq.po
+++ b/editor/translations/sq.po
@@ -11106,11 +11106,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/sr_Cyrl.po b/editor/translations/sr_Cyrl.po
index 53a3dc6761..0301c5f380 100644
--- a/editor/translations/sr_Cyrl.po
+++ b/editor/translations/sr_Cyrl.po
@@ -12346,15 +12346,15 @@ msgstr ""
"карактер."
#: editor/project_settings_editor.cpp
+msgid "Physical Key"
+msgstr ""
+
+#: editor/project_settings_editor.cpp
#, fuzzy
msgid "Key "
msgstr "Кључ"
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
-msgstr ""
-
-#: editor/project_settings_editor.cpp
#, fuzzy
msgid "Joy Button"
msgstr "ÐÐ¾Ñ˜Ñ Ð´ÑƒÐ³Ð¼Ð¸Ð¶"
diff --git a/editor/translations/sr_Latn.po b/editor/translations/sr_Latn.po
index 668ee7d7de..66f5d9574f 100644
--- a/editor/translations/sr_Latn.po
+++ b/editor/translations/sr_Latn.po
@@ -10795,11 +10795,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/sv.po b/editor/translations/sv.po
index f22e9500e1..3b674ce0e3 100644
--- a/editor/translations/sv.po
+++ b/editor/translations/sv.po
@@ -23,13 +23,14 @@
# Marcus Toftedahl <marcus.toftedahl@his.se>, 2020.
# Alex25820 <Alexander_sjogren@hotmail.se>, 2021.
# Leon <joel.lundborg@gmail.com>, 2021.
+# Kent Jofur <kent.jofur@gmail.com>, 2021.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2021-10-21 10:31+0000\n"
-"Last-Translator: Christoffer Sundbom <christoffer_karlsson@live.se>\n"
+"PO-Revision-Date: 2021-11-03 13:15+0000\n"
+"Last-Translator: Kent Jofur <kent.jofur@gmail.com>\n"
"Language-Team: Swedish <https://hosted.weblate.org/projects/godot-engine/"
"godot/sv/>\n"
"Language: sv\n"
@@ -385,15 +386,13 @@ msgstr "Anim Infoga"
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "node '%s'"
-msgstr "Kan inte öppna '%s'."
+msgstr "nod '%s'"
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "animation"
-msgstr "Animation"
+msgstr "animering"
#: editor/animation_track_editor.cpp
msgid "AnimationPlayer can't animate itself, only other players."
@@ -402,9 +401,8 @@ msgstr ""
#. TRANSLATORS: This describes the target of new animation track, will be inserted into another string.
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "property '%s'"
-msgstr "Egenskaper"
+msgstr "egenskapen '%s'"
#: editor/animation_track_editor.cpp
msgid "Anim Create & Insert"
@@ -874,9 +872,8 @@ msgstr ""
"vilotid."
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Oneshot"
-msgstr "Oneshot"
+msgstr "Ett skott"
#: editor/connections_dialog.cpp
msgid "Disconnects the signal after its first emission."
@@ -1304,9 +1301,8 @@ msgid "(and %s more files)"
msgstr "(och %s fler filer)"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Asset \"%s\" installed successfully!"
-msgstr "Paketet installerades!"
+msgstr "Paketet \"%s\" har installerats!"
#: editor/editor_asset_installer.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -1830,9 +1826,8 @@ msgid "Enable Contextual Editor"
msgstr "Aktivera kontextuell redigerare"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "Class Properties:"
-msgstr "Expandera alla"
+msgstr "Klassegenskaper:"
#: editor/editor_feature_profile.cpp
#, fuzzy
@@ -2176,7 +2171,7 @@ msgstr ""
#: editor/editor_help.cpp
msgid "Method Descriptions"
-msgstr "Metodbeskrivningar"
+msgstr "Metodbeskrivning"
#: editor/editor_help.cpp
msgid ""
@@ -2606,13 +2601,15 @@ msgstr "Spara ändringar i '%s' innan stängning?"
#: editor/editor_node.cpp
msgid "%s no longer exists! Please specify a new save location."
-msgstr ""
+msgstr "%s finns inte längre! Vänligen ange en ny lagringsplats."
#: editor/editor_node.cpp
msgid ""
"The current scene has no root node, but %d modified external resource(s) "
"were saved anyway."
msgstr ""
+"Den aktuella scenen har ingen rotnod, men %d modifierade externa resurser "
+"sparades ändå."
#: editor/editor_node.cpp
#, fuzzy
@@ -2651,29 +2648,27 @@ msgstr "Nuvarande scen inte sparad. Öppna ändå?"
#: editor/editor_node.cpp
msgid "Can't undo while mouse buttons are pressed."
-msgstr ""
+msgstr "Det går inte att ångra medan musknapparna är nedtryckta."
#: editor/editor_node.cpp
msgid "Nothing to undo."
-msgstr ""
+msgstr "Inget att ångra."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Undo: %s"
-msgstr "Ã…ngra"
+msgstr "Ã…ngra: %s"
#: editor/editor_node.cpp
msgid "Can't redo while mouse buttons are pressed."
-msgstr ""
+msgstr "Det går inte att göra om medan musknapparna är nedtryckta."
#: editor/editor_node.cpp
msgid "Nothing to redo."
-msgstr ""
+msgstr "Inget att göra om."
#: editor/editor_node.cpp
-#, fuzzy
msgid "Redo: %s"
-msgstr "Återställ"
+msgstr "Gör om: %s"
#: editor/editor_node.cpp
msgid "Can't reload a scene that was never saved."
@@ -3278,9 +3273,8 @@ msgid "Inspector"
msgstr "Inspektör"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Expand Bottom Panel"
-msgstr "Expandera alla"
+msgstr "Expandera Nedre Panel"
#: editor/editor_node.cpp
msgid "Output"
@@ -3452,9 +3446,8 @@ msgid "Update"
msgstr "Uppdatera"
#: editor/editor_plugin_settings.cpp
-#, fuzzy
msgid "Version"
-msgstr "Version:"
+msgstr "Version"
#: editor/editor_plugin_settings.cpp
#, fuzzy
@@ -3721,9 +3714,8 @@ msgid "Error requesting URL:"
msgstr "Fel vid laddning:"
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Connecting to the mirror..."
-msgstr "Anslut Till Node:"
+msgstr "Ansluter till spegeln..."
#: editor/export_template_manager.cpp
msgid "Can't resolve the requested address."
@@ -3749,9 +3741,8 @@ msgid "Request ended up in a redirect loop."
msgstr ""
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Request failed:"
-msgstr "Förfrågning Misslyckades."
+msgstr "Förfrågning misslyckades:"
#: editor/export_template_manager.cpp
msgid "Download complete; extracting templates..."
@@ -3902,9 +3893,8 @@ msgid "Uninstall templates for the current version."
msgstr ""
#: editor/export_template_manager.cpp
-#, fuzzy
msgid "Download from:"
-msgstr "Ladda ner"
+msgstr "Ladda ner från:"
#: editor/export_template_manager.cpp
#, fuzzy
@@ -4405,19 +4395,19 @@ msgstr "Genererar Lightmaps"
#: editor/import/resource_importer_scene.cpp
msgid "Generating for Mesh: "
-msgstr ""
+msgstr "Generera för mesh: "
#: editor/import/resource_importer_scene.cpp
msgid "Running Custom Script..."
-msgstr ""
+msgstr "Kör anpassat skript..."
#: editor/import/resource_importer_scene.cpp
msgid "Couldn't load post-import script:"
-msgstr ""
+msgstr "Det gick inte att läsa in skript efter import:"
#: editor/import/resource_importer_scene.cpp
msgid "Invalid/broken script for post-import (check console):"
-msgstr ""
+msgstr "Ogiltigt/felaktigt skript för efterimport (kontrollera konsolen):"
#: editor/import/resource_importer_scene.cpp
msgid "Error running post-import script:"
@@ -4432,22 +4422,20 @@ msgid "Saving..."
msgstr "Sparar..."
#: editor/import_defaults_editor.cpp
-#, fuzzy
msgid "Select Importer"
-msgstr "Välj Node"
+msgstr "Välj Importör"
#: editor/import_defaults_editor.cpp
msgid "Importer:"
msgstr "Importör:"
#: editor/import_defaults_editor.cpp
-#, fuzzy
msgid "Reset to Defaults"
-msgstr "Ladda Standard"
+msgstr "Återställ till standardvärden"
#: editor/import_dock.cpp
msgid "Keep File (No Import)"
-msgstr ""
+msgstr "Behåll fil (ingen import)"
#: editor/import_dock.cpp
msgid "%d Files"
@@ -4472,6 +4460,10 @@ msgid ""
"Selecting another resource in the FileSystem dock without clicking Reimport "
"first will discard changes made in the Import dock."
msgstr ""
+"Du har väntande ändringar som inte har tillämpats ännu. Klicka på "
+"Återimportera för att tillämpa ändringar som gjorts i importalternativen.\n"
+"Om du väljer en annan resurs i FilSystem-dockan utan att först klicka på "
+"Återimportera kommer ändringar som gjorts i importdockan att ignoreras."
#: editor/import_dock.cpp
msgid "Import As:"
@@ -4484,16 +4476,18 @@ msgstr "Återställ Zoom"
#: editor/import_dock.cpp
msgid "Save Scenes, Re-Import, and Restart"
-msgstr ""
+msgstr "Spara scener, återimportera och starta om"
#: editor/import_dock.cpp
msgid "Changing the type of an imported file requires editor restart."
-msgstr ""
+msgstr "Att ändra typen av en importerad fil kräver omstart av editorn."
#: editor/import_dock.cpp
msgid ""
"WARNING: Assets exist that use this resource, they may stop loading properly."
msgstr ""
+"VARNING: Det finns tillgångar som använder den här resursen, de kan sluta "
+"laddas in korrekt."
#: editor/inspector_dock.cpp
msgid "Failed to load resource."
@@ -4519,7 +4513,7 @@ msgstr "Skapa en ny resurs i minnet och ändra den."
#: editor/inspector_dock.cpp
msgid "Load an existing resource from disk and edit it."
-msgstr ""
+msgstr "Ladda en befintlig resurs från disken och redigera den."
#: editor/inspector_dock.cpp
msgid "Save the currently edited resource."
@@ -4835,9 +4829,8 @@ msgid "Blend:"
msgstr ""
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
-#, fuzzy
msgid "Parameter Changed:"
-msgstr "Uppdatera Ändringar"
+msgstr "Parameter ändrad:"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
@@ -5469,9 +5462,8 @@ msgid "Request failed, timeout"
msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Timeout."
-msgstr "Tid:"
+msgstr "Tidsgräns."
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Failed:"
@@ -8028,9 +8020,8 @@ msgid "Translate"
msgstr "Översättningar"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Scale"
-msgstr "Skala:"
+msgstr "Skala"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Scaling: "
@@ -8062,28 +8053,24 @@ msgid "Yaw:"
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Size:"
-msgstr "Storlek: "
+msgstr "Storlek:"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Objects Drawn:"
msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Material Changes:"
-msgstr "Uppdatera Ändringar"
+msgstr "Materialförändringar:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Shader Changes:"
-msgstr "Ändra"
+msgstr "Shader Ändringar:"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Surface Changes:"
-msgstr "Ändra"
+msgstr "Ytförändringar:"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Draw Calls:"
@@ -8838,9 +8825,8 @@ msgid "Importing items {n}/{n}"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Updating the editor"
-msgstr "Stäng redigeraren?"
+msgstr "Uppdaterar editorn"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -8857,9 +8843,8 @@ msgid "With Data"
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select by data type:"
-msgstr "Välj en Node"
+msgstr "Välj efter datatyp:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9101,9 +9086,8 @@ msgid "Add StyleBox Item"
msgstr "Stil"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Remove Items:"
-msgstr "Ta Bort Mall"
+msgstr "Ta bort objekt:"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove Class Items"
@@ -9143,9 +9127,8 @@ msgid "Editor Theme"
msgstr "Redigera Tema"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select Another Theme Resource:"
-msgstr "Ta bort Resurs"
+msgstr "Välj en annan temaresurs:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9201,18 +9184,16 @@ msgid "Show default type items alongside items that have been overridden."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Override All"
-msgstr "skriv över:"
+msgstr "Åsidosätt Alla"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Override all default type items."
msgstr ""
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Theme:"
-msgstr "Tema"
+msgstr "Tema:"
#: editor/plugins/theme_editor_plugin.cpp
#, fuzzy
@@ -9234,9 +9215,8 @@ msgid "Default Preview"
msgstr "Förhandsgranska"
#: editor/plugins/theme_editor_plugin.cpp
-#, fuzzy
msgid "Select UI Scene:"
-msgstr "Återställ Scen"
+msgstr "Välj UI-scen:"
#: editor/plugins/theme_editor_preview.cpp
msgid ""
@@ -9386,9 +9366,8 @@ msgid "Erase TileMap"
msgstr ""
#: editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Find Tile"
-msgstr "Hitta Nästa"
+msgstr "Hitta Bricka"
#: editor/plugins/tile_map_editor_plugin.cpp
msgid "Transpose"
@@ -9559,9 +9538,8 @@ msgid "Navigation Mode"
msgstr "Animations-Node"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Bitmask Mode"
-msgstr "Raw-Läge"
+msgstr "Bitmaskläge"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -9569,9 +9547,8 @@ msgid "Priority Mode"
msgstr "Exportera Projekt"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Icon Mode"
-msgstr "Växla Läge"
+msgstr "Icon Läge"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Z Index Mode"
@@ -9857,9 +9834,8 @@ msgid "Detect new changes"
msgstr "Skapa Ny"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Changes"
-msgstr "Ändra"
+msgstr "Ändringar"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Modified"
@@ -10723,9 +10699,8 @@ msgid "VisualShader"
msgstr ""
#: editor/plugins/visual_shader_editor_plugin.cpp
-#, fuzzy
msgid "Edit Visual Property:"
-msgstr "Redigera Filter"
+msgstr "Redigera Visuell Egenskap:"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Visual Shader Mode Changed"
@@ -11147,14 +11122,12 @@ msgid "Are you sure to run %d projects at once?"
msgstr ""
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove %d projects from the list?"
-msgstr "Välj enhet från listan"
+msgstr "Ta bort %d projekt från listan?"
#: editor/project_manager.cpp
-#, fuzzy
msgid "Remove this project from the list?"
-msgstr "Välj enhet från listan"
+msgstr "Vill du ta bort det här projektet från listan?"
#: editor/project_manager.cpp
msgid ""
@@ -11279,14 +11252,14 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Nyckel "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Nyckel "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr ""
@@ -13584,9 +13557,8 @@ msgstr ""
"Snälla Vänta..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not find keystore, unable to export."
-msgstr "Kunde inte öppna mall för export:"
+msgstr "Det gick inte att hitta nyckellager, det gick inte att exportera."
#: platform/android/export/export_plugin.cpp
msgid "'apksigner' returned with error #%d"
@@ -13646,9 +13618,8 @@ msgid "Could not export project files to gradle project\n"
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not write expansion package file!"
-msgstr "Kunde inte skriva till filen:"
+msgstr "Kunde inte skriva expansionspaketfil!"
#: platform/android/export/export_plugin.cpp
msgid "Building Android Project (gradle)"
@@ -13701,9 +13672,8 @@ msgid "Adding files..."
msgstr "Lägger till %s..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files"
-msgstr "Kunde inte skriva till filen:"
+msgstr "Kunde inte exportera projektfiler"
#: platform/android/export/export_plugin.cpp
msgid "Aligning APK..."
@@ -13768,14 +13738,12 @@ msgid "Could not read HTML shell:"
msgstr "Kunde inte skriva till filen:"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not create HTTP server directory:"
-msgstr "Kunde inte skapa mapp."
+msgstr "Kunde inte skapa HTTP-serverkatalog:"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Error starting HTTP server:"
-msgstr "Fel vid sparande av scenen."
+msgstr "Fel vid start av HTTP-server:"
#: platform/osx/export/export.cpp
#, fuzzy
@@ -14574,9 +14542,8 @@ msgid "Invalid source for shader."
msgstr "Ogiltig teckenstorlek."
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Invalid comparison function for that type."
-msgstr "Ogiltig teckenstorlek."
+msgstr "Ogiltig jämförelsefunktion för den typen."
#: servers/visual/shader_language.cpp
msgid "Varying may not be assigned in the '%s' function."
@@ -14607,8 +14574,9 @@ msgid "Assignment to uniform."
msgstr ""
#: servers/visual/shader_language.cpp
+#, fuzzy
msgid "Constants cannot be modified."
-msgstr ""
+msgstr "Konstanter kan inte ändras."
#~ msgid "Bottom"
#~ msgstr "Botten"
diff --git a/editor/translations/ta.po b/editor/translations/ta.po
index d9114adc60..ac91117100 100644
--- a/editor/translations/ta.po
+++ b/editor/translations/ta.po
@@ -10697,11 +10697,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/te.po b/editor/translations/te.po
index 39cda33625..6735d08c71 100644
--- a/editor/translations/te.po
+++ b/editor/translations/te.po
@@ -10595,11 +10595,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/th.po b/editor/translations/th.po
index ef1bb3b2bb..602f593f13 100644
--- a/editor/translations/th.po
+++ b/editor/translations/th.po
@@ -11110,14 +11110,14 @@ msgstr ""
"à¹à¸šà¸šà¸ªà¸­à¸šà¸–ามต้องมีอัà¸à¸‚ระ `/` อย่างน้อยหนึ่งตัวเพื่อà¸à¸£à¸­à¸‡à¸•à¸²à¸¡à¸Šà¸·à¹ˆà¸­à¹‚ครงà¸à¸²à¸£à¹à¸¥à¸°à¸—ี่อยู่à¹à¸šà¸šà¹€à¸•à¹‡à¸¡"
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "ปุ่ม "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "ปุ่ม "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "ปุ่มจอย"
diff --git a/editor/translations/tr.po b/editor/translations/tr.po
index 5f8a365768..73896955e3 100644
--- a/editor/translations/tr.po
+++ b/editor/translations/tr.po
@@ -11177,14 +11177,14 @@ msgstr ""
"` karakteri içermesi gereklidir."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Anahtar "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Fiziksel Anahtar"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Anahtar "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Oyun Kolu Düğmesi"
diff --git a/editor/translations/tt.po b/editor/translations/tt.po
index fc5064a395..0f92208d1e 100644
--- a/editor/translations/tt.po
+++ b/editor/translations/tt.po
@@ -10593,11 +10593,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/tzm.po b/editor/translations/tzm.po
index 1911f0fde6..1b9404a393 100644
--- a/editor/translations/tzm.po
+++ b/editor/translations/tzm.po
@@ -10591,11 +10591,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/uk.po b/editor/translations/uk.po
index db324bbc2c..215937ed55 100644
--- a/editor/translations/uk.po
+++ b/editor/translations/uk.po
@@ -11131,14 +11131,14 @@ msgstr ""
"бути принаймні один Ñимвол «/»."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Клавіша "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "Фізична клавіша"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Клавіша "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "Кнопка джойÑтика"
diff --git a/editor/translations/ur_PK.po b/editor/translations/ur_PK.po
index b192d4b651..7918638d9c 100644
--- a/editor/translations/ur_PK.po
+++ b/editor/translations/ur_PK.po
@@ -10910,11 +10910,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/vi.po b/editor/translations/vi.po
index e1aa97d317..ceb4d7948e 100644
--- a/editor/translations/vi.po
+++ b/editor/translations/vi.po
@@ -11117,14 +11117,14 @@ msgstr ""
"một ký tự '/'."
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "Khoá "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "Khoá "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr ""
diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po
index 82159d534e..6fef2d2f01 100644
--- a/editor/translations/zh_CN.po
+++ b/editor/translations/zh_CN.po
@@ -10934,14 +10934,14 @@ msgstr ""
"如果è¦æ ¹æ®å称和完整路径筛选,æœç´¢å†…容应至少包å«ä¸€ä¸ªâ€œ/â€å­—符。"
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "按键 "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr "物ç†æŒ‰é”®"
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "按键 "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "手柄按键"
diff --git a/editor/translations/zh_HK.po b/editor/translations/zh_HK.po
index b3ac6dcf79..c04f392c13 100644
--- a/editor/translations/zh_HK.po
+++ b/editor/translations/zh_HK.po
@@ -11395,11 +11395,11 @@ msgid ""
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Key "
+msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
-msgid "Physical Key"
+msgid "Key "
msgstr ""
#: editor/project_settings_editor.cpp
diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po
index 6ec9a2671a..c699fc48fb 100644
--- a/editor/translations/zh_TW.po
+++ b/editor/translations/zh_TW.po
@@ -11092,14 +11092,14 @@ msgstr ""
"è‹¥è¦ä»¥å稱與完整路徑來éŽæ¿¾å°ˆæ¡ˆï¼Œæœå°‹å…§å®¹æ‡‰è‡³å°‘包å«ä¸€å€‹ã€Œ/ã€å­—元。"
#: editor/project_settings_editor.cpp
-msgid "Key "
-msgstr "æŒ‰éµ "
-
-#: editor/project_settings_editor.cpp
msgid "Physical Key"
msgstr ""
#: editor/project_settings_editor.cpp
+msgid "Key "
+msgstr "æŒ‰éµ "
+
+#: editor/project_settings_editor.cpp
msgid "Joy Button"
msgstr "控制器按鈕"
diff --git a/main/main.cpp b/main/main.cpp
index fe0f2693e4..863ffccfae 100644
--- a/main/main.cpp
+++ b/main/main.cpp
@@ -1275,14 +1275,14 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
register_core_extensions(); //before display
// possibly be worth changing the default from vulkan to something lower spec,
// for the project manager, depending on how smooth the fallback is.
- GLOBAL_DEF_RST("rendering/driver/driver_name", "Vulkan");
+ GLOBAL_DEF_RST("rendering/driver/driver_name", "vulkan");
// this list is hard coded, which makes it more difficult to add new backends.
// can potentially be changed to more of a plugin system at a later date.
ProjectSettings::get_singleton()->set_custom_property_info("rendering/driver/driver_name",
PropertyInfo(Variant::STRING,
"rendering/driver/driver_name",
- PROPERTY_HINT_ENUM, "Vulkan,OpenGL"));
+ PROPERTY_HINT_ENUM, "vulkan,opengl3"));
// if not set on the command line
if (rendering_driver == "") {
@@ -2848,9 +2848,8 @@ void Main::cleanup(bool p_force) {
if (OS::get_singleton()->is_restart_on_exit_set()) {
//attempt to restart with arguments
- String exec = OS::get_singleton()->get_executable_path();
List<String> args = OS::get_singleton()->get_restart_on_exit_arguments();
- OS::get_singleton()->create_process(exec, args);
+ OS::get_singleton()->create_instance(args);
OS::get_singleton()->set_restart_on_exit(false, List<String>()); //clear list (uses memory)
}
diff --git a/modules/bullet/area_bullet.cpp b/modules/bullet/area_bullet.cpp
index c3bd84c329..b5a7da0c38 100644
--- a/modules/bullet/area_bullet.cpp
+++ b/modules/bullet/area_bullet.cpp
@@ -94,10 +94,9 @@ void AreaBullet::dispatch_callbacks() {
void AreaBullet::call_event(CollisionObjectBullet *p_otherObject, PhysicsServer3D::AreaBodyStatus p_status) {
InOutEventCallback &event = eventsCallbacks[static_cast<int>(p_otherObject->getType())];
- Object *areaGodoObject = ObjectDB::get_instance(event.event_callback_id);
- if (!areaGodoObject) {
- event.event_callback_id = ObjectID();
+ if (!event.event_callback.is_valid()) {
+ event.event_callback = Callable();
return;
}
@@ -108,7 +107,8 @@ void AreaBullet::call_event(CollisionObjectBullet *p_otherObject, PhysicsServer3
call_event_res[4] = 0; // self_shape ID
Callable::CallError outResp;
- areaGodoObject->call(event.event_callback_method, (const Variant **)call_event_res_ptr, 5, outResp);
+ Variant ret;
+ event.event_callback.call((const Variant **)call_event_res, 5, ret, outResp);
}
void AreaBullet::scratch() {
@@ -267,13 +267,12 @@ Variant AreaBullet::get_param(PhysicsServer3D::AreaParameter p_param) const {
}
}
-void AreaBullet::set_event_callback(Type p_callbackObjectType, ObjectID p_id, const StringName &p_method) {
+void AreaBullet::set_event_callback(Type p_callbackObjectType, const Callable &p_callback) {
InOutEventCallback &ev = eventsCallbacks[static_cast<int>(p_callbackObjectType)];
- ev.event_callback_id = p_id;
- ev.event_callback_method = p_method;
+ ev.event_callback = p_callback;
/// Set if monitoring
- if (eventsCallbacks[0].event_callback_id.is_valid() || eventsCallbacks[1].event_callback_id.is_valid()) {
+ if (!eventsCallbacks[0].event_callback.is_null() || !eventsCallbacks[1].event_callback.is_null()) {
set_godot_object_flags(get_godot_object_flags() | GOF_IS_MONITORING_AREA);
} else {
set_godot_object_flags(get_godot_object_flags() & (~GOF_IS_MONITORING_AREA));
@@ -281,7 +280,7 @@ void AreaBullet::set_event_callback(Type p_callbackObjectType, ObjectID p_id, co
}
bool AreaBullet::has_event_callback(Type p_callbackObjectType) {
- return eventsCallbacks[static_cast<int>(p_callbackObjectType)].event_callback_id.is_valid();
+ return !eventsCallbacks[static_cast<int>(p_callbackObjectType)].event_callback.is_null();
}
void AreaBullet::on_enter_area(AreaBullet *p_area) {
diff --git a/modules/bullet/area_bullet.h b/modules/bullet/area_bullet.h
index c8b516c951..d96c550082 100644
--- a/modules/bullet/area_bullet.h
+++ b/modules/bullet/area_bullet.h
@@ -47,8 +47,7 @@ class AreaBullet : public RigidCollisionObjectBullet {
public:
struct InOutEventCallback {
- ObjectID event_callback_id;
- StringName event_callback_method;
+ Callable event_callback;
InOutEventCallback() {}
};
@@ -162,7 +161,7 @@ public:
void set_param(PhysicsServer3D::AreaParameter p_param, const Variant &p_value);
Variant get_param(PhysicsServer3D::AreaParameter p_param) const;
- void set_event_callback(Type p_callbackObjectType, ObjectID p_id, const StringName &p_method);
+ void set_event_callback(Type p_callbackObjectType, const Callable &p_callback);
bool has_event_callback(Type p_callbackObjectType);
virtual void on_enter_area(AreaBullet *p_area);
diff --git a/modules/bullet/bullet_physics_server.cpp b/modules/bullet/bullet_physics_server.cpp
index bb2db49c87..610d2145cd 100644
--- a/modules/bullet/bullet_physics_server.cpp
+++ b/modules/bullet/bullet_physics_server.cpp
@@ -413,18 +413,18 @@ void BulletPhysicsServer3D::area_set_monitorable(RID p_area, bool p_monitorable)
area->set_monitorable(p_monitorable);
}
-void BulletPhysicsServer3D::area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) {
+void BulletPhysicsServer3D::area_set_monitor_callback(RID p_area, const Callable &p_callback) {
AreaBullet *area = area_owner.get_or_null(p_area);
ERR_FAIL_COND(!area);
- area->set_event_callback(CollisionObjectBullet::TYPE_RIGID_BODY, p_receiver ? p_receiver->get_instance_id() : ObjectID(), p_method);
+ area->set_event_callback(CollisionObjectBullet::TYPE_RIGID_BODY, p_callback.is_valid() ? p_callback : Callable());
}
-void BulletPhysicsServer3D::area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) {
+void BulletPhysicsServer3D::area_set_area_monitor_callback(RID p_area, const Callable &p_callback) {
AreaBullet *area = area_owner.get_or_null(p_area);
ERR_FAIL_COND(!area);
- area->set_event_callback(CollisionObjectBullet::TYPE_AREA, p_receiver ? p_receiver->get_instance_id() : ObjectID(), p_method);
+ area->set_event_callback(CollisionObjectBullet::TYPE_AREA, p_callback.is_valid() ? p_callback : Callable());
}
void BulletPhysicsServer3D::area_set_ray_pickable(RID p_area, bool p_enable) {
diff --git a/modules/bullet/bullet_physics_server.h b/modules/bullet/bullet_physics_server.h
index 7c146de0c3..94635b5bfc 100644
--- a/modules/bullet/bullet_physics_server.h
+++ b/modules/bullet/bullet_physics_server.h
@@ -160,8 +160,8 @@ public:
virtual void area_set_collision_layer(RID p_area, uint32_t p_layer) override;
virtual void area_set_monitorable(RID p_area, bool p_monitorable) override;
- virtual void area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) override;
- virtual void area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) override;
+ virtual void area_set_monitor_callback(RID p_area, const Callable &p_callback) override;
+ virtual void area_set_area_monitor_callback(RID p_area, const Callable &p_callback) override;
virtual void area_set_ray_pickable(RID p_area, bool p_enable) override;
/* RIGID BODY API */
diff --git a/modules/csg/csg_shape.cpp b/modules/csg/csg_shape.cpp
index 863936ab8c..b9be7535dc 100644
--- a/modules/csg/csg_shape.cpp
+++ b/modules/csg/csg_shape.cpp
@@ -572,9 +572,9 @@ void CSGShape3D::_validate_property(PropertyInfo &property) const {
bool is_collision_prefixed = property.name.begins_with("collision_");
if ((is_collision_prefixed || property.name.begins_with("use_collision")) && is_inside_tree() && !is_root_shape()) {
//hide collision if not root
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
} else if (is_collision_prefixed && !bool(get("use_collision"))) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
GeometryInstance3D::_validate_property(property);
}
diff --git a/modules/denoise/config.py b/modules/denoise/config.py
index 6f650354cb..3aa840acb0 100644
--- a/modules/denoise/config.py
+++ b/modules/denoise/config.py
@@ -5,7 +5,13 @@ def can_build(env, platform):
# as doing lightmap generation and denoising on Android or HTML5
# would be a bit far-fetched.
desktop_platforms = ["linuxbsd", "osx", "windows"]
- supported_arch = env["bits"] == "64" and env["arch"] != "arm64" and not env["arch"].startswith("rv")
+ supported_arch = env["bits"] == "64"
+ if env["arch"] == "arm64":
+ supported_arch = False
+ if env["arch"].startswith("ppc"):
+ supported_arch = False
+ if env["arch"].startswith("rv"):
+ supported_arch = False
return env["tools"] and platform in desktop_platforms and supported_arch
diff --git a/modules/fbx/editor_scene_importer_fbx.cpp b/modules/fbx/editor_scene_importer_fbx.cpp
index 9bdeafbf91..b11c145599 100644
--- a/modules/fbx/editor_scene_importer_fbx.cpp
+++ b/modules/fbx/editor_scene_importer_fbx.cpp
@@ -843,7 +843,7 @@ Node3D *EditorSceneFormatImporterFBX::_generate_scene(
if (state.animation_player == nullptr) {
print_verbose("Creating animation player");
state.animation_player = memnew(AnimationPlayer);
- state.root->add_child(state.animation_player);
+ state.root->add_child(state.animation_player, true);
state.animation_player->set_owner(state.root_owner);
}
diff --git a/modules/gdnative/include/nativescript/godot_nativescript.h b/modules/gdnative/include/nativescript/godot_nativescript.h
index 5390d30c9f..bc53a4001d 100644
--- a/modules/gdnative/include/nativescript/godot_nativescript.h
+++ b/modules/gdnative/include/nativescript/godot_nativescript.h
@@ -102,7 +102,7 @@ typedef enum {
GODOT_PROPERTY_USAGE_DEFAULT = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_EDITOR | GODOT_PROPERTY_USAGE_NETWORK,
GODOT_PROPERTY_USAGE_DEFAULT_INTL = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_EDITOR | GODOT_PROPERTY_USAGE_NETWORK | GODOT_PROPERTY_USAGE_INTERNATIONALIZED,
- GODOT_PROPERTY_USAGE_NOEDITOR = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_NETWORK,
+ GODOT_PROPERTY_USAGE_NO_EDITOR = GODOT_PROPERTY_USAGE_STORAGE | GODOT_PROPERTY_USAGE_NETWORK,
} godot_nativescript_property_usage_flags;
typedef struct {
diff --git a/modules/gdnative/videodecoder/video_stream_gdnative.cpp b/modules/gdnative/videodecoder/video_stream_gdnative.cpp
index 4c9bfb395d..e249363016 100644
--- a/modules/gdnative/videodecoder/video_stream_gdnative.cpp
+++ b/modules/gdnative/videodecoder/video_stream_gdnative.cpp
@@ -341,7 +341,7 @@ void VideoStreamGDNative::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_file", "file"), &VideoStreamGDNative::set_file);
ClassDB::bind_method(D_METHOD("get_file"), &VideoStreamGDNative::get_file);
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "file", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_file", "get_file");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "file", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_file", "get_file");
}
void VideoStreamGDNative::set_audio_track(int p_track) {
diff --git a/modules/gdscript/gdscript.cpp b/modules/gdscript/gdscript.cpp
index 2e55506fd4..e4d3ed118c 100644
--- a/modules/gdscript/gdscript.cpp
+++ b/modules/gdscript/gdscript.cpp
@@ -979,7 +979,7 @@ bool GDScript::_set(const StringName &p_name, const Variant &p_value) {
}
void GDScript::_get_property_list(List<PropertyInfo> *p_properties) const {
- p_properties->push_back(PropertyInfo(Variant::STRING, "script/source", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_properties->push_back(PropertyInfo(Variant::STRING, "script/source", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
void GDScript::_bind_methods() {
@@ -1257,6 +1257,8 @@ bool GDScriptInstance::set(const StringName &p_name, const Variant &p_value) {
call(member->setter, &val, 1, err);
if (err.error == Callable::CallError::CALL_OK) {
return true; //function exists, call was successful
+ } else {
+ return false;
}
} else {
if (member->data_type.has_type) {
diff --git a/modules/gdscript/gdscript_tokenizer.cpp b/modules/gdscript/gdscript_tokenizer.cpp
index d4a098811a..cd247d1d26 100644
--- a/modules/gdscript/gdscript_tokenizer.cpp
+++ b/modules/gdscript/gdscript_tokenizer.cpp
@@ -1064,7 +1064,8 @@ void GDScriptTokenizer::check_indent() {
// First time indenting, choose character now.
indent_char = current_indent_char;
} else if (current_indent_char != indent_char) {
- Token error = make_error(vformat("Used \"%s\" for indentation instead \"%s\" as used before in the file.", String(&current_indent_char, 1).c_escape(), String(&indent_char, 1).c_escape()));
+ Token error = make_error(vformat("Used %s character for indentation instead of %s as used before in the file.",
+ _get_indent_char_name(current_indent_char), _get_indent_char_name(indent_char)));
error.start_line = line;
error.start_column = 1;
error.leftmost_column = 1;
@@ -1114,6 +1115,12 @@ void GDScriptTokenizer::check_indent() {
}
}
+String GDScriptTokenizer::_get_indent_char_name(char32_t ch) {
+ ERR_FAIL_COND_V(ch != ' ' && ch != '\t', String(&ch, 1).c_escape());
+
+ return ch == ' ' ? "space" : "tab";
+}
+
void GDScriptTokenizer::_skip_whitespace() {
if (pending_indents != 0) {
// Still have some indent/dedent tokens to give.
diff --git a/modules/gdscript/gdscript_tokenizer.h b/modules/gdscript/gdscript_tokenizer.h
index 84b82c07f0..b4ee11fd9a 100644
--- a/modules/gdscript/gdscript_tokenizer.h
+++ b/modules/gdscript/gdscript_tokenizer.h
@@ -233,6 +233,7 @@ private:
bool has_error() const { return !error_stack.is_empty(); }
Token pop_error();
char32_t _advance();
+ String _get_indent_char_name(char32_t ch);
void _skip_whitespace();
void check_indent();
diff --git a/modules/gdscript/language_server/gdscript_extend_parser.cpp b/modules/gdscript/language_server/gdscript_extend_parser.cpp
index f4c0c4d9bb..80f4721e2d 100644
--- a/modules/gdscript/language_server/gdscript_extend_parser.cpp
+++ b/modules/gdscript/language_server/gdscript_extend_parser.cpp
@@ -269,7 +269,7 @@ void ExtendGDScriptParser::parse_class_symbol(const GDScriptParser::ClassNode *p
if (j > 0) {
symbol.detail += ", ";
}
- symbol.detail += m.signal->parameters[i]->identifier->name;
+ symbol.detail += m.signal->parameters[j]->identifier->name;
}
symbol.detail += ")";
diff --git a/modules/gdscript/tests/scripts/parser/errors/mixing_tabs_spaces.out b/modules/gdscript/tests/scripts/parser/errors/mixing_tabs_spaces.out
index 6390de9788..31bed2dbc7 100644
--- a/modules/gdscript/tests/scripts/parser/errors/mixing_tabs_spaces.out
+++ b/modules/gdscript/tests/scripts/parser/errors/mixing_tabs_spaces.out
@@ -1,2 +1,2 @@
GDTEST_PARSER_ERROR
-Used "\t" for indentation instead " " as used before in the file.
+Used tab character for indentation instead of space as used before in the file.
diff --git a/modules/gltf/doc_classes/GLTFMesh.xml b/modules/gltf/doc_classes/GLTFMesh.xml
index 1e7199d229..58853217e2 100644
--- a/modules/gltf/doc_classes/GLTFMesh.xml
+++ b/modules/gltf/doc_classes/GLTFMesh.xml
@@ -9,6 +9,8 @@
<members>
<member name="blend_weights" type="PackedFloat32Array" setter="set_blend_weights" getter="get_blend_weights" default="PackedFloat32Array()">
</member>
+ <member name="instance_materials" type="Array" setter="set_instance_materials" getter="get_instance_materials" default="[]">
+ </member>
<member name="mesh" type="ImporterMesh" setter="set_mesh" getter="get_mesh">
</member>
</members>
diff --git a/modules/gltf/gltf_document.cpp b/modules/gltf/gltf_document.cpp
index 333fc4637d..ced80e26b5 100644
--- a/modules/gltf/gltf_document.cpp
+++ b/modules/gltf/gltf_document.cpp
@@ -795,6 +795,9 @@ Error GLTFDocument::_encode_buffer_views(Ref<GLTFState> state) {
buffers.push_back(d);
}
print_verbose("glTF: Total buffer views: " + itos(state->buffer_views.size()));
+ if (!buffers.size()) {
+ return OK;
+ }
state->json["bufferViews"] = buffers;
return OK;
}
@@ -884,6 +887,9 @@ Error GLTFDocument::_encode_accessors(Ref<GLTFState> state) {
accessors.push_back(d);
}
+ if (!accessors.size()) {
+ return OK;
+ }
state->json["accessors"] = accessors;
ERR_FAIL_COND_V(!state->json.has("accessors"), ERR_FILE_CORRUPT);
print_verbose("glTF: Total accessors: " + itos(state->accessors.size()));
@@ -2112,6 +2118,7 @@ Error GLTFDocument::_serialize_meshes(Ref<GLTFState> state) {
if (import_mesh.is_null()) {
continue;
}
+ Array instance_materials = state->meshes.write[gltf_mesh_i]->get_instance_materials();
Array primitives;
Dictionary gltf_mesh;
Array target_names;
@@ -2431,7 +2438,14 @@ Error GLTFDocument::_serialize_meshes(Ref<GLTFState> state) {
}
}
- Ref<BaseMaterial3D> mat = import_mesh->get_surface_material(surface_i);
+ Variant v;
+ if (surface_i < instance_materials.size()) {
+ v = instance_materials.get(surface_i);
+ }
+ Ref<BaseMaterial3D> mat = v;
+ if (!mat.is_valid()) {
+ mat = import_mesh->get_surface_material(surface_i);
+ }
if (mat.is_valid()) {
Map<Ref<BaseMaterial3D>, GLTFMaterialIndex>::Element *material_cache_i = state->material_cache.find(mat);
if (material_cache_i && material_cache_i->get() != -1) {
@@ -2475,6 +2489,9 @@ Error GLTFDocument::_serialize_meshes(Ref<GLTFState> state) {
meshes.push_back(gltf_mesh);
}
+ if (!meshes.size()) {
+ return OK;
+ }
state->json["meshes"] = meshes;
print_verbose("glTF: Total meshes: " + itos(meshes.size()));
@@ -3454,6 +3471,9 @@ Error GLTFDocument::_serialize_materials(Ref<GLTFState> state) {
}
materials.push_back(d);
}
+ if (!materials.size()) {
+ return OK;
+ }
state->json["materials"] = materials;
print_verbose("Total materials: " + itos(state->materials.size()));
@@ -4837,6 +4857,9 @@ Error GLTFDocument::_serialize_animations(Ref<GLTFState> state) {
}
}
+ if (!animations.size()) {
+ return OK;
+ }
state->json["animations"] = animations;
print_verbose("glTF: Total animations '" + itos(state->animations.size()) + "'.");
@@ -5057,6 +5080,18 @@ GLTFMeshIndex GLTFDocument::_convert_mesh_to_gltf(Ref<GLTFState> state, MeshInst
}
Ref<GLTFMesh> gltf_mesh;
gltf_mesh.instantiate();
+ Array instance_materials;
+ for (int32_t surface_i = 0; surface_i < current_mesh->get_surface_count(); surface_i++) {
+ Ref<Material> mat = current_mesh->get_surface_material(surface_i);
+ if (p_mesh_instance->get_surface_override_material(surface_i).is_valid()) {
+ mat = p_mesh_instance->get_surface_override_material(surface_i);
+ }
+ if (p_mesh_instance->get_material_override().is_valid()) {
+ mat = p_mesh_instance->get_material_override();
+ }
+ instance_materials.append(mat);
+ }
+ gltf_mesh->set_instance_materials(instance_materials);
gltf_mesh->set_mesh(current_mesh);
gltf_mesh->set_blend_weights(blend_weights);
GLTFMeshIndex mesh_i = state->meshes.size();
@@ -5570,7 +5605,7 @@ void GLTFDocument::_generate_scene_node(Ref<GLTFState> state, Node *scene_parent
// Bone Attachment - Parent Case
BoneAttachment3D *bone_attachment = _generate_bone_attachment(state, active_skeleton, node_index, gltf_node->parent);
- scene_parent->add_child(bone_attachment);
+ scene_parent->add_child(bone_attachment, true);
bone_attachment->set_owner(scene_root);
// There is no gltf_node that represent this, so just directly create a unique name
@@ -5593,7 +5628,7 @@ void GLTFDocument::_generate_scene_node(Ref<GLTFState> state, Node *scene_parent
current_node = _generate_spatial(state, scene_parent, node_index);
}
- scene_parent->add_child(current_node);
+ scene_parent->add_child(current_node, true);
if (current_node != scene_root) {
current_node->set_owner(scene_root);
}
@@ -5623,7 +5658,7 @@ void GLTFDocument::_generate_skeleton_bone_node(Ref<GLTFState> state, Node *scen
// Bone Attachment - Direct Parented Skeleton Case
BoneAttachment3D *bone_attachment = _generate_bone_attachment(state, active_skeleton, node_index, gltf_node->parent);
- scene_parent->add_child(bone_attachment);
+ scene_parent->add_child(bone_attachment, true);
bone_attachment->set_owner(scene_root);
// There is no gltf_node that represent this, so just directly create a unique name
@@ -5637,7 +5672,7 @@ void GLTFDocument::_generate_skeleton_bone_node(Ref<GLTFState> state, Node *scen
// Add it to the scene if it has not already been added
if (skeleton->get_parent() == nullptr) {
- scene_parent->add_child(skeleton);
+ scene_parent->add_child(skeleton, true);
skeleton->set_owner(scene_root);
}
}
@@ -5651,7 +5686,7 @@ void GLTFDocument::_generate_skeleton_bone_node(Ref<GLTFState> state, Node *scen
// Bone Attachment - Same Node Case
BoneAttachment3D *bone_attachment = _generate_bone_attachment(state, active_skeleton, node_index, node_index);
- scene_parent->add_child(bone_attachment);
+ scene_parent->add_child(bone_attachment, true);
bone_attachment->set_owner(scene_root);
// There is no gltf_node that represent this, so just directly create a unique name
@@ -5671,7 +5706,7 @@ void GLTFDocument::_generate_skeleton_bone_node(Ref<GLTFState> state, Node *scen
current_node = _generate_light(state, scene_parent, node_index);
}
- scene_parent->add_child(current_node);
+ scene_parent->add_child(current_node, true);
if (current_node != scene_root) {
current_node->set_owner(scene_root);
}
@@ -6185,7 +6220,7 @@ void GLTFDocument::_process_mesh_instances(Ref<GLTFState> state, Node *scene_roo
ERR_CONTINUE_MSG(skeleton == nullptr, vformat("Unable to find Skeleton for node %d skin %d", node_i, skin_i));
mi->get_parent()->remove_child(mi);
- skeleton->add_child(mi);
+ skeleton->add_child(mi, true);
mi->set_owner(skeleton->get_owner());
mi->set_skin(state->skins.write[skin_i]->godot_skin);
@@ -6865,7 +6900,7 @@ Node *GLTFDocument::import_scene_gltf(const String &p_path, uint32_t p_flags, in
gltf_document->_process_mesh_instances(r_state, root);
if (r_state->animations.size()) {
AnimationPlayer *ap = memnew(AnimationPlayer);
- root->add_child(ap);
+ root->add_child(ap, true);
ap->set_owner(root);
for (int i = 0; i < r_state->animations.size(); i++) {
gltf_document->_import_animation(r_state, ap, i, p_bake_fps);
diff --git a/modules/gltf/gltf_mesh.cpp b/modules/gltf/gltf_mesh.cpp
index 747820521a..7134345b30 100644
--- a/modules/gltf/gltf_mesh.cpp
+++ b/modules/gltf/gltf_mesh.cpp
@@ -36,9 +36,12 @@ void GLTFMesh::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_mesh", "mesh"), &GLTFMesh::set_mesh);
ClassDB::bind_method(D_METHOD("get_blend_weights"), &GLTFMesh::get_blend_weights);
ClassDB::bind_method(D_METHOD("set_blend_weights", "blend_weights"), &GLTFMesh::set_blend_weights);
+ ClassDB::bind_method(D_METHOD("get_instance_materials"), &GLTFMesh::get_instance_materials);
+ ClassDB::bind_method(D_METHOD("set_instance_materials", "instance_materials"), &GLTFMesh::set_instance_materials);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "mesh"), "set_mesh", "get_mesh");
ADD_PROPERTY(PropertyInfo(Variant::PACKED_FLOAT32_ARRAY, "blend_weights"), "set_blend_weights", "get_blend_weights"); // Vector<float>
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "instance_materials"), "set_instance_materials", "get_instance_materials");
}
Ref<ImporterMesh> GLTFMesh::get_mesh() {
@@ -49,6 +52,14 @@ void GLTFMesh::set_mesh(Ref<ImporterMesh> p_mesh) {
mesh = p_mesh;
}
+Array GLTFMesh::get_instance_materials() {
+ return instance_materials;
+}
+
+void GLTFMesh::set_instance_materials(Array p_instance_materials) {
+ instance_materials = p_instance_materials;
+}
+
Vector<float> GLTFMesh::get_blend_weights() {
return blend_weights;
}
diff --git a/modules/gltf/gltf_mesh.h b/modules/gltf/gltf_mesh.h
index 3aba0ede32..cc2be93c09 100644
--- a/modules/gltf/gltf_mesh.h
+++ b/modules/gltf/gltf_mesh.h
@@ -43,6 +43,7 @@ class GLTFMesh : public Resource {
private:
Ref<ImporterMesh> mesh;
Vector<float> blend_weights;
+ Array instance_materials;
protected:
static void _bind_methods();
@@ -52,5 +53,7 @@ public:
void set_mesh(Ref<ImporterMesh> p_mesh);
Vector<float> get_blend_weights();
void set_blend_weights(Vector<float> p_blend_weights);
+ Array get_instance_materials();
+ void set_instance_materials(Array p_instance_materials);
};
#endif // GLTF_MESH_H
diff --git a/modules/minimp3/audio_stream_mp3.cpp b/modules/minimp3/audio_stream_mp3.cpp
index 17ce051b67..49e9f5f97e 100644
--- a/modules/minimp3/audio_stream_mp3.cpp
+++ b/modules/minimp3/audio_stream_mp3.cpp
@@ -228,9 +228,9 @@ void AudioStreamMP3::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_loop_offset", "seconds"), &AudioStreamMP3::set_loop_offset);
ClassDB::bind_method(D_METHOD("get_loop_offset"), &AudioStreamMP3::get_loop_offset);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_BYTE_ARRAY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_data", "get_data");
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "loop", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_loop", "has_loop");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "loop_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_loop_offset", "get_loop_offset");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_BYTE_ARRAY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_data", "get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "loop", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_loop", "has_loop");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "loop_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_loop_offset", "get_loop_offset");
}
AudioStreamMP3::AudioStreamMP3() {
diff --git a/modules/mono/build_scripts/make_android_mono_config.py b/modules/mono/build_scripts/make_android_mono_config.py
index 28494bff6e..1920ef1c1a 100644
--- a/modules/mono/build_scripts/make_android_mono_config.py
+++ b/modules/mono/build_scripts/make_android_mono_config.py
@@ -8,7 +8,9 @@ def generate_compressed_config(config_src, output_dir):
decompr_size = len(buf)
import zlib
- buf = zlib.compress(buf)
+ # Use maximum zlib compression level to further reduce file size
+ # (at the cost of initial build times).
+ buf = zlib.compress(buf, zlib.Z_BEST_COMPRESSION)
compr_size = len(buf)
bytes_seq_str = ""
diff --git a/modules/mono/csharp_script.cpp b/modules/mono/csharp_script.cpp
index 6970349414..d9b291489b 100644
--- a/modules/mono/csharp_script.cpp
+++ b/modules/mono/csharp_script.cpp
@@ -2981,7 +2981,7 @@ bool CSharpScript::_set(const StringName &p_name, const Variant &p_value) {
}
void CSharpScript::_get_property_list(List<PropertyInfo> *p_properties) const {
- p_properties->push_back(PropertyInfo(Variant::STRING, CSharpLanguage::singleton->string_names._script_source, PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_properties->push_back(PropertyInfo(Variant::STRING, CSharpLanguage::singleton->string_names._script_source, PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
void CSharpScript::_bind_methods() {
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Quaternion.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Quaternion.cs
index 1694ac0320..c18f818ed2 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Quaternion.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Quaternion.cs
@@ -472,26 +472,22 @@ namespace Godot
return new Quaternion(-left.x, -left.y, -left.z, -left.w);
}
- public static Quaternion operator *(Quaternion left, Vector3 right)
+ public static Vector3 operator *(Quaternion quat, Vector3 vec)
{
- return new Quaternion
- (
- (left.w * right.x) + (left.y * right.z) - (left.z * right.y),
- (left.w * right.y) + (left.z * right.x) - (left.x * right.z),
- (left.w * right.z) + (left.x * right.y) - (left.y * right.x),
- -(left.x * right.x) - (left.y * right.y) - (left.z * right.z)
- );
+#if DEBUG
+ if (!quat.IsNormalized())
+ {
+ throw new InvalidOperationException("Quaternion is not normalized.");
+ }
+#endif
+ var u = new Vector3(quat.x, quat.y, quat.z);
+ Vector3 uv = u.Cross(vec);
+ return vec + (((uv * quat.w) + u.Cross(uv)) * 2);
}
- public static Quaternion operator *(Vector3 left, Quaternion right)
+ public static Vector3 operator *(Vector3 vec, Quaternion quat)
{
- return new Quaternion
- (
- (right.w * left.x) + (right.y * left.z) - (right.z * left.y),
- (right.w * left.y) + (right.z * left.x) - (right.x * left.z),
- (right.w * left.z) + (right.x * left.y) - (right.y * left.x),
- -(right.x * left.x) - (right.y * left.y) - (right.z * left.z)
- );
+ return quat.Inverse() * vec;
}
public static Quaternion operator *(Quaternion left, real_t right)
diff --git a/modules/ogg/ogg_packet_sequence.cpp b/modules/ogg/ogg_packet_sequence.cpp
index b7a3ad2876..abb2b67ab0 100644
--- a/modules/ogg/ogg_packet_sequence.cpp
+++ b/modules/ogg/ogg_packet_sequence.cpp
@@ -127,9 +127,9 @@ void OGGPacketSequence::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_length"), &OGGPacketSequence::get_length);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "packet_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_packet_data", "get_packet_data");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "granule_positions", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_packet_granule_positions", "get_packet_granule_positions");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "sampling_rate", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_sampling_rate", "get_sampling_rate");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "packet_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_packet_data", "get_packet_data");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "granule_positions", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_packet_granule_positions", "get_packet_granule_positions");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "sampling_rate", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_sampling_rate", "get_sampling_rate");
}
bool OGGPacketSequencePlayback::next_ogg_packet(ogg_packet **p_packet) const {
diff --git a/modules/opensimplex/doc_classes/NoiseTexture.xml b/modules/opensimplex/doc_classes/NoiseTexture.xml
index 8a10411cf6..16fea228b1 100644
--- a/modules/opensimplex/doc_classes/NoiseTexture.xml
+++ b/modules/opensimplex/doc_classes/NoiseTexture.xml
@@ -8,8 +8,9 @@
NoiseTexture can also generate normal map textures.
The class uses [Thread]s to generate the texture data internally, so [method Texture2D.get_image] 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 image and the generated byte data:
[codeblock]
- var texture = preload("res://noise.tres")
- yield(texture, "changed")
+ var texture = NoiseTexture.new()
+ texture.noise = OpenSimplexNoise.new()
+ await texture.changed
var image = texture.get_image()
var data = image.get_data()
[/codeblock]
diff --git a/modules/opensimplex/noise_texture.cpp b/modules/opensimplex/noise_texture.cpp
index 9db3f3d5fd..e36dcfcea5 100644
--- a/modules/opensimplex/noise_texture.cpp
+++ b/modules/opensimplex/noise_texture.cpp
@@ -80,7 +80,7 @@ void NoiseTexture::_bind_methods() {
void NoiseTexture::_validate_property(PropertyInfo &property) const {
if (property.name == "bump_strength") {
if (!as_normal_map) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
}
diff --git a/modules/raycast/config.py b/modules/raycast/config.py
index 2f8bacd4ae..7e8b3e9840 100644
--- a/modules/raycast/config.py
+++ b/modules/raycast/config.py
@@ -1,6 +1,6 @@
def can_build(env, platform):
# Depends on Embree library, which only supports x86_64 and aarch64.
- if env["arch"].startswith("rv"):
+ if env["arch"].startswith("rv") or env["arch"].startswith("ppc"):
return False
if platform == "android":
diff --git a/modules/theora/video_stream_theora.cpp b/modules/theora/video_stream_theora.cpp
index ef434f107e..4f5ae4afb0 100644
--- a/modules/theora/video_stream_theora.cpp
+++ b/modules/theora/video_stream_theora.cpp
@@ -673,7 +673,7 @@ void VideoStreamTheora::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_file", "file"), &VideoStreamTheora::set_file);
ClassDB::bind_method(D_METHOD("get_file"), &VideoStreamTheora::get_file);
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "file", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_file", "get_file");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "file", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_file", "get_file");
}
////////////
diff --git a/modules/visual_script/visual_script.cpp b/modules/visual_script/visual_script.cpp
index 01fc7cfca0..700cc85672 100644
--- a/modules/visual_script/visual_script.cpp
+++ b/modules/visual_script/visual_script.cpp
@@ -113,7 +113,7 @@ void VisualScriptNode::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_default_input_values", "values"), &VisualScriptNode::_set_default_input_values);
ClassDB::bind_method(D_METHOD("_get_default_input_values"), &VisualScriptNode::_get_default_input_values);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "_default_input_values", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_default_input_values", "_get_default_input_values");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "_default_input_values", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_default_input_values", "_get_default_input_values");
ADD_SIGNAL(MethodInfo("ports_changed"));
}
@@ -1172,7 +1172,7 @@ void VisualScript::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_data", "data"), &VisualScript::_set_data);
ClassDB::bind_method(D_METHOD("_get_data"), &VisualScript::_get_data);
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
ADD_SIGNAL(MethodInfo("node_ports_changed", PropertyInfo(Variant::INT, "id")));
}
diff --git a/modules/visual_script/visual_script_editor.cpp b/modules/visual_script/visual_script_editor.cpp
index b23374bfb1..7b4fbc67fc 100644
--- a/modules/visual_script/visual_script_editor.cpp
+++ b/modules/visual_script/visual_script_editor.cpp
@@ -1676,6 +1676,128 @@ String VisualScriptEditor::_validate_name(const String &p_name) const {
return valid;
}
+void VisualScriptEditor::_on_nodes_copy() {
+ clipboard->nodes.clear();
+ clipboard->data_connections.clear();
+ clipboard->sequence_connections.clear();
+
+ for (int i = 0; i < graph->get_child_count(); i++) {
+ GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
+ if (gn) {
+ if (gn->is_selected()) {
+ int id = gn->get_name().operator String().to_int();
+ Ref<VisualScriptNode> node = script->get_node(id);
+ if (Object::cast_to<VisualScriptFunction>(*node)) {
+ EditorNode::get_singleton()->show_warning(TTR("Can't copy the function node."));
+ return;
+ }
+ if (node.is_valid()) {
+ clipboard->nodes[id] = node->duplicate(true);
+ clipboard->nodes_positions[id] = script->get_node_position(id);
+ }
+ }
+ }
+ }
+
+ if (clipboard->nodes.is_empty()) {
+ return;
+ }
+
+ List<VisualScript::SequenceConnection> sequence_connections;
+ script->get_sequence_connection_list(&sequence_connections);
+
+ for (const VisualScript::SequenceConnection &E : sequence_connections) {
+ if (clipboard->nodes.has(E.from_node) && clipboard->nodes.has(E.to_node)) {
+ clipboard->sequence_connections.insert(E);
+ }
+ }
+
+ List<VisualScript::DataConnection> data_connections;
+ script->get_data_connection_list(&data_connections);
+
+ for (const VisualScript::DataConnection &E : data_connections) {
+ if (clipboard->nodes.has(E.from_node) && clipboard->nodes.has(E.to_node)) {
+ clipboard->data_connections.insert(E);
+ }
+ }
+}
+
+void VisualScriptEditor::_on_nodes_paste() {
+ if (clipboard->nodes.is_empty()) {
+ EditorNode::get_singleton()->show_warning(TTR("Clipboard is empty!"));
+ return;
+ }
+
+ Map<int, int> remap;
+
+ undo_redo->create_action(TTR("Paste VisualScript Nodes"));
+ int idc = script->get_available_id() + 1;
+
+ Set<int> to_select;
+
+ Set<Vector2> existing_positions;
+
+ {
+ List<int> nodes;
+ script->get_node_list(&nodes);
+ for (int &E : nodes) {
+ Vector2 pos = script->get_node_position(E).snapped(Vector2(2, 2));
+ existing_positions.insert(pos);
+ }
+ }
+
+ bool first_paste = true;
+ Vector2 position_offset = Vector2(0, 0);
+
+ for (KeyValue<int, Ref<VisualScriptNode>> &E : clipboard->nodes) {
+ Ref<VisualScriptNode> node = E.value->duplicate();
+
+ int new_id = idc++;
+ to_select.insert(new_id);
+
+ remap[E.key] = new_id;
+
+ Vector2 paste_pos = clipboard->nodes_positions[E.key];
+
+ if (first_paste) {
+ position_offset = _get_pos_in_graph(mouse_up_position - graph->get_global_position()) - paste_pos;
+ first_paste = false;
+ }
+
+ paste_pos += position_offset;
+
+ while (existing_positions.has(paste_pos.snapped(Vector2(2, 2)))) {
+ paste_pos += Vector2(20, 20) * EDSCALE;
+ }
+
+ undo_redo->add_do_method(script.ptr(), "add_node", new_id, node, paste_pos);
+ undo_redo->add_undo_method(script.ptr(), "remove_node", new_id);
+ }
+
+ for (Set<VisualScript::SequenceConnection>::Element *E = clipboard->sequence_connections.front(); E; E = E->next()) {
+ undo_redo->add_do_method(script.ptr(), "sequence_connect", remap[E->get().from_node], E->get().from_output, remap[E->get().to_node]);
+ undo_redo->add_undo_method(script.ptr(), "sequence_disconnect", remap[E->get().from_node], E->get().from_output, remap[E->get().to_node]);
+ }
+
+ for (Set<VisualScript::DataConnection>::Element *E = clipboard->data_connections.front(); E; E = E->next()) {
+ undo_redo->add_do_method(script.ptr(), "data_connect", remap[E->get().from_node], E->get().from_port, remap[E->get().to_node], E->get().to_port);
+ undo_redo->add_undo_method(script.ptr(), "data_disconnect", remap[E->get().from_node], E->get().from_port, remap[E->get().to_node], E->get().to_port);
+ }
+
+ undo_redo->add_do_method(this, "_update_graph");
+ undo_redo->add_undo_method(this, "_update_graph");
+
+ undo_redo->commit_action();
+
+ for (int i = 0; i < graph->get_child_count(); i++) {
+ GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
+ if (gn) {
+ int id = gn->get_name().operator String().to_int();
+ gn->set_selected(to_select.has(id));
+ }
+ }
+}
+
void VisualScriptEditor::_on_nodes_delete() {
// Delete all the selected nodes.
@@ -2073,20 +2195,20 @@ void VisualScriptEditor::drop_data_fw(const Point2 &p_point, const Variant &p_da
Ref<VisualScriptNode> vnode;
if (use_set) {
- Ref<VisualScriptVariableSet> vnodes;
- vnodes.instantiate();
- vnodes->set_variable(d["variable"]);
- vnode = vnodes;
+ Ref<VisualScriptPropertySet> pset;
+ pset.instantiate();
+ vnode = pset;
} else {
- Ref<VisualScriptVariableGet> vnodeg;
- vnodeg.instantiate();
- vnodeg->set_variable(d["variable"]);
- vnode = vnodeg;
+ Ref<VisualScriptPropertyGet> pget;
+ pget.instantiate();
+ vnode = pget;
}
int new_id = script->get_available_id();
-
undo_redo->create_action(TTR("Add Node"));
+ undo_redo->add_do_method(vnode.ptr(), "set_property", d["variable"]);
+ undo_redo->add_do_method(vnode.ptr(), "set_base_script", script->get_path());
+
undo_redo->add_do_method(script.ptr(), "add_node", new_id, vnode, pos);
undo_redo->add_undo_method(script.ptr(), "remove_node", new_id);
undo_redo->add_do_method(this, "_update_graph");
@@ -2329,12 +2451,14 @@ void VisualScriptEditor::drop_data_fw(const Point2 &p_point, const Variant &p_da
pget.instantiate();
pget->set_call_mode(VisualScriptPropertyGet::CALL_MODE_INSTANCE);
pget->set_base_type(obj->get_class());
-
vnode = pget;
}
undo_redo->add_do_method(script.ptr(), "add_node", base_id, vnode, pos);
undo_redo->add_do_method(vnode.ptr(), "set_property", d["property"]);
+ if (!obj->get_script().is_null()) {
+ undo_redo->add_do_method(vnode.ptr(), "set_base_script", Ref<Script>(obj->get_script())->get_path());
+ }
if (!use_get) {
undo_redo->add_do_method(vnode.ptr(), "set_default_input_value", 0, d["value"]);
}
@@ -2365,7 +2489,6 @@ void VisualScriptEditor::drop_data_fw(const Point2 &p_point, const Variant &p_da
pset->set_call_mode(VisualScriptPropertySet::CALL_MODE_NODE_PATH);
pset->set_base_path(sn->get_path_to(node));
}
-
vnode = pset;
} else {
Ref<VisualScriptPropertyGet> pget;
@@ -2380,9 +2503,13 @@ void VisualScriptEditor::drop_data_fw(const Point2 &p_point, const Variant &p_da
}
undo_redo->add_do_method(script.ptr(), "add_node", base_id, vnode, pos);
undo_redo->add_do_method(vnode.ptr(), "set_property", d["property"]);
+ if (!obj->get_script().is_null()) {
+ undo_redo->add_do_method(vnode.ptr(), "set_base_script", Ref<Script>(obj->get_script())->get_path());
+ }
if (!use_get) {
undo_redo->add_do_method(vnode.ptr(), "set_default_input_value", 0, d["value"]);
}
+
undo_redo->add_undo_method(script.ptr(), "remove_node", base_id);
undo_redo->add_do_method(this, "_update_graph");
@@ -2460,7 +2587,7 @@ void VisualScriptEditor::reload_text() {
String VisualScriptEditor::get_name() {
String name;
- if (script->get_path().find("local://") == -1 && script->get_path().find("::") == -1) {
+ if (!script->is_built_in()) {
name = script->get_path().get_file();
if (is_unsaved()) {
if (script->get_path().is_empty()) {
@@ -3739,120 +3866,15 @@ void VisualScriptEditor::_menu_option(int p_what) {
case EDIT_FIND_NODE_TYPE: {
_generic_search(script->get_instance_base_type());
} break;
- case EDIT_COPY_NODES:
+ case EDIT_COPY_NODES: {
+ _on_nodes_copy();
+ } break;
case EDIT_CUT_NODES: {
- clipboard->nodes.clear();
- clipboard->data_connections.clear();
- clipboard->sequence_connections.clear();
-
- for (int i = 0; i < graph->get_child_count(); i++) {
- GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
- if (gn) {
- if (gn->is_selected()) {
- int id = gn->get_name().operator String().to_int();
- Ref<VisualScriptNode> node = script->get_node(id);
- if (Object::cast_to<VisualScriptFunction>(*node)) {
- EditorNode::get_singleton()->show_warning(TTR("Can't copy the function node."));
- return;
- }
- if (node.is_valid()) {
- clipboard->nodes[id] = node->duplicate(true);
- clipboard->nodes_positions[id] = script->get_node_position(id);
- }
- }
- }
- }
-
- if (clipboard->nodes.is_empty()) {
- break;
- }
-
- List<VisualScript::SequenceConnection> sequence_connections;
- script->get_sequence_connection_list(&sequence_connections);
-
- for (const VisualScript::SequenceConnection &E : sequence_connections) {
- if (clipboard->nodes.has(E.from_node) && clipboard->nodes.has(E.to_node)) {
- clipboard->sequence_connections.insert(E);
- }
- }
-
- List<VisualScript::DataConnection> data_connections;
- script->get_data_connection_list(&data_connections);
-
- for (const VisualScript::DataConnection &E : data_connections) {
- if (clipboard->nodes.has(E.from_node) && clipboard->nodes.has(E.to_node)) {
- clipboard->data_connections.insert(E);
- }
- }
- if (p_what == EDIT_CUT_NODES) {
- _on_nodes_delete(); // oh yeah, also delete on cut
- }
-
+ _on_nodes_copy();
+ _on_nodes_delete();
} break;
case EDIT_PASTE_NODES: {
- if (clipboard->nodes.is_empty()) {
- EditorNode::get_singleton()->show_warning(TTR("Clipboard is empty!"));
- break;
- }
-
- Map<int, int> remap;
-
- undo_redo->create_action(TTR("Paste VisualScript Nodes"));
- int idc = script->get_available_id() + 1;
-
- Set<int> to_select;
-
- Set<Vector2> existing_positions;
-
- {
- List<int> nodes;
- script->get_node_list(&nodes);
- for (int &E : nodes) {
- Vector2 pos = script->get_node_position(E).snapped(Vector2(2, 2));
- existing_positions.insert(pos);
- }
- }
-
- for (KeyValue<int, Ref<VisualScriptNode>> &E : clipboard->nodes) {
- Ref<VisualScriptNode> node = E.value->duplicate();
-
- int new_id = idc++;
- to_select.insert(new_id);
-
- remap[E.key] = new_id;
-
- Vector2 paste_pos = clipboard->nodes_positions[E.key];
-
- while (existing_positions.has(paste_pos.snapped(Vector2(2, 2)))) {
- paste_pos += Vector2(20, 20) * EDSCALE;
- }
-
- undo_redo->add_do_method(script.ptr(), "add_node", new_id, node, paste_pos);
- undo_redo->add_undo_method(script.ptr(), "remove_node", new_id);
- }
-
- for (Set<VisualScript::SequenceConnection>::Element *E = clipboard->sequence_connections.front(); E; E = E->next()) {
- undo_redo->add_do_method(script.ptr(), "sequence_connect", remap[E->get().from_node], E->get().from_output, remap[E->get().to_node]);
- undo_redo->add_undo_method(script.ptr(), "sequence_disconnect", remap[E->get().from_node], E->get().from_output, remap[E->get().to_node]);
- }
-
- for (Set<VisualScript::DataConnection>::Element *E = clipboard->data_connections.front(); E; E = E->next()) {
- undo_redo->add_do_method(script.ptr(), "data_connect", remap[E->get().from_node], E->get().from_port, remap[E->get().to_node], E->get().to_port);
- undo_redo->add_undo_method(script.ptr(), "data_disconnect", remap[E->get().from_node], E->get().from_port, remap[E->get().to_node], E->get().to_port);
- }
-
- undo_redo->add_do_method(this, "_update_graph");
- undo_redo->add_undo_method(this, "_update_graph");
-
- undo_redo->commit_action();
-
- for (int i = 0; i < graph->get_child_count(); i++) {
- GraphNode *gn = Object::cast_to<GraphNode>(graph->get_child(i));
- if (gn) {
- int id = gn->get_name().operator String().to_int();
- gn->set_selected(to_select.has(id));
- }
- }
+ _on_nodes_paste();
} break;
case EDIT_CREATE_FUNCTION: {
// Create Function.
@@ -4334,6 +4356,8 @@ VisualScriptEditor::VisualScriptEditor() {
graph->connect("node_selected", callable_mp(this, &VisualScriptEditor::_node_selected));
graph->connect("begin_node_move", callable_mp(this, &VisualScriptEditor::_begin_node_move));
graph->connect("end_node_move", callable_mp(this, &VisualScriptEditor::_end_node_move));
+ graph->connect("copy_nodes_request", callable_mp(this, &VisualScriptEditor::_on_nodes_copy));
+ graph->connect("paste_nodes_request", callable_mp(this, &VisualScriptEditor::_on_nodes_paste));
graph->connect("delete_nodes_request", callable_mp(this, &VisualScriptEditor::_on_nodes_delete));
graph->connect("duplicate_nodes_request", callable_mp(this, &VisualScriptEditor::_on_nodes_duplicate));
graph->connect("gui_input", callable_mp(this, &VisualScriptEditor::_graph_gui_input));
diff --git a/modules/visual_script/visual_script_editor.h b/modules/visual_script/visual_script_editor.h
index 19f5aabac9..9467c2dea4 100644
--- a/modules/visual_script/visual_script_editor.h
+++ b/modules/visual_script/visual_script_editor.h
@@ -253,6 +253,8 @@ class VisualScriptEditor : public ScriptEditorBase {
void _node_item_selected();
void _node_item_unselected();
+ void _on_nodes_copy();
+ void _on_nodes_paste();
void _on_nodes_delete();
void _on_nodes_duplicate();
diff --git a/modules/visual_script/visual_script_expression.cpp b/modules/visual_script/visual_script_expression.cpp
index 99b7275008..55c707890f 100644
--- a/modules/visual_script/visual_script_expression.cpp
+++ b/modules/visual_script/visual_script_expression.cpp
@@ -136,7 +136,7 @@ void VisualScriptExpression::_get_property_list(List<PropertyInfo> *p_list) cons
argt += "," + Variant::get_type_name(Variant::Type(i));
}
- p_list->push_back(PropertyInfo(Variant::STRING, "expression", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING, "expression", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
p_list->push_back(PropertyInfo(Variant::INT, "out_type", PROPERTY_HINT_ENUM, argt));
p_list->push_back(PropertyInfo(Variant::INT, "input_count", PROPERTY_HINT_RANGE, "0,64,1"));
p_list->push_back(PropertyInfo(Variant::BOOL, "sequenced"));
diff --git a/modules/visual_script/visual_script_func_nodes.cpp b/modules/visual_script/visual_script_func_nodes.cpp
index 205918a5f0..a2ad38bf01 100644
--- a/modules/visual_script/visual_script_func_nodes.cpp
+++ b/modules/visual_script/visual_script_func_nodes.cpp
@@ -514,7 +514,7 @@ Dictionary VisualScriptFunctionCall::_get_argument_cache() const {
void VisualScriptFunctionCall::_validate_property(PropertyInfo &property) const {
if (property.name == "base_type") {
if (call_mode != CALL_MODE_INSTANCE) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
@@ -696,7 +696,7 @@ void VisualScriptFunctionCall::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::STRING, "singleton"), "set_singleton", "get_singleton");
ADD_PROPERTY(PropertyInfo(Variant::INT, "basic_type", PROPERTY_HINT_ENUM, bt), "set_basic_type", "get_basic_type");
ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "node_path", PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE), "set_base_path", "get_base_path");
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "argument_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_argument_cache", "_get_argument_cache");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "argument_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_argument_cache", "_get_argument_cache");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "function"), "set_function", "get_function"); //when set, if loaded properly, will override argument count.
ADD_PROPERTY(PropertyInfo(Variant::INT, "use_default_args"), "set_use_default_args", "get_use_default_args");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "validate"), "set_validate", "get_validate");
@@ -1282,7 +1282,7 @@ VisualScriptPropertySet::AssignOp VisualScriptPropertySet::get_assign_op() const
void VisualScriptPropertySet::_validate_property(PropertyInfo &property) const {
if (property.name == "base_type") {
if (call_mode != CALL_MODE_INSTANCE) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
@@ -1420,7 +1420,7 @@ void VisualScriptPropertySet::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "set_mode", PROPERTY_HINT_ENUM, "Self,Node Path,Instance,Basic Type"), "set_call_mode", "get_call_mode");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "base_type", PROPERTY_HINT_TYPE_STRING, "Object"), "set_base_type", "get_base_type");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "base_script", PROPERTY_HINT_FILE, script_ext_hint), "set_base_script", "get_base_script");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "type_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_type_cache", "_get_type_cache");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "type_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_type_cache", "_get_type_cache");
ADD_PROPERTY(PropertyInfo(Variant::INT, "basic_type", PROPERTY_HINT_ENUM, bt), "set_basic_type", "get_basic_type");
ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "node_path", PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE), "set_base_path", "get_base_path");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "property"), "set_property", "get_property");
@@ -1988,7 +1988,7 @@ StringName VisualScriptPropertyGet::get_index() const {
void VisualScriptPropertyGet::_validate_property(PropertyInfo &property) const {
if (property.name == "base_type") {
if (call_mode != CALL_MODE_INSTANCE) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
@@ -2122,7 +2122,7 @@ void VisualScriptPropertyGet::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "set_mode", PROPERTY_HINT_ENUM, "Self,Node Path,Instance,Basic Type"), "set_call_mode", "get_call_mode");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "base_type", PROPERTY_HINT_TYPE_STRING, "Object"), "set_base_type", "get_base_type");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "base_script", PROPERTY_HINT_FILE, script_ext_hint), "set_base_script", "get_base_script");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "type_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_type_cache", "_get_type_cache");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "type_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_type_cache", "_get_type_cache");
ADD_PROPERTY(PropertyInfo(Variant::INT, "basic_type", PROPERTY_HINT_ENUM, bt), "set_basic_type", "get_basic_type");
ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "node_path", PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE), "set_base_path", "get_base_path");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "property"), "set_property", "get_property");
diff --git a/modules/visual_script/visual_script_nodes.cpp b/modules/visual_script/visual_script_nodes.cpp
index ef77c0cef3..471d8ef0ae 100644
--- a/modules/visual_script/visual_script_nodes.cpp
+++ b/modules/visual_script/visual_script_nodes.cpp
@@ -3415,8 +3415,8 @@ void VisualScriptConstructor::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_constructor", "constructor"), &VisualScriptConstructor::set_constructor);
ClassDB::bind_method(D_METHOD("get_constructor"), &VisualScriptConstructor::get_constructor);
- ADD_PROPERTY(PropertyInfo(Variant::INT, "type", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_constructor_type", "get_constructor_type");
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "constructor", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_constructor", "get_constructor");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "type", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_constructor_type", "get_constructor_type");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "constructor", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_constructor", "get_constructor");
}
VisualScriptConstructor::VisualScriptConstructor() {
@@ -3958,7 +3958,7 @@ void VisualScriptDeconstruct::_bind_methods() {
}
ADD_PROPERTY(PropertyInfo(Variant::INT, "type", PROPERTY_HINT_ENUM, argt), "set_deconstruct_type", "get_deconstruct_type");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "elem_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_elem_cache", "_get_elem_cache");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "elem_cache", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_elem_cache", "_get_elem_cache");
}
VisualScriptDeconstruct::VisualScriptDeconstruct() {
diff --git a/modules/visual_script/visual_script_yield_nodes.cpp b/modules/visual_script/visual_script_yield_nodes.cpp
index c62de64a85..4b89c9ccd0 100644
--- a/modules/visual_script/visual_script_yield_nodes.cpp
+++ b/modules/visual_script/visual_script_yield_nodes.cpp
@@ -186,7 +186,7 @@ void VisualScriptYield::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_wait_time", "sec"), &VisualScriptYield::set_wait_time);
ClassDB::bind_method(D_METHOD("get_wait_time"), &VisualScriptYield::get_wait_time);
- ADD_PROPERTY(PropertyInfo(Variant::INT, "mode", PROPERTY_HINT_ENUM, "Frame,Physics Frame,Time", PROPERTY_USAGE_NOEDITOR), "set_yield_mode", "get_yield_mode");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "mode", PROPERTY_HINT_ENUM, "Frame,Physics Frame,Time", PROPERTY_USAGE_NO_EDITOR), "set_yield_mode", "get_yield_mode");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "wait_time"), "set_wait_time", "get_wait_time");
BIND_ENUM_CONSTANT(YIELD_FRAME);
@@ -415,7 +415,7 @@ VisualScriptYieldSignal::CallMode VisualScriptYieldSignal::get_call_mode() const
void VisualScriptYieldSignal::_validate_property(PropertyInfo &property) const {
if (property.name == "base_type") {
if (call_mode != CALL_MODE_INSTANCE) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/modules/vorbis/audio_stream_ogg_vorbis.cpp b/modules/vorbis/audio_stream_ogg_vorbis.cpp
index e4a80c339f..d913c115d9 100644
--- a/modules/vorbis/audio_stream_ogg_vorbis.cpp
+++ b/modules/vorbis/audio_stream_ogg_vorbis.cpp
@@ -425,7 +425,7 @@ void AudioStreamOGGVorbis::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_loop_offset", "seconds"), &AudioStreamOGGVorbis::set_loop_offset);
ClassDB::bind_method(D_METHOD("get_loop_offset"), &AudioStreamOGGVorbis::get_loop_offset);
- ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "packet_sequence", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_packet_sequence", "get_packet_sequence");
+ ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "packet_sequence", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_packet_sequence", "get_packet_sequence");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "loop"), "set_loop", "has_loop");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "loop_offset"), "set_loop_offset", "get_loop_offset");
}
diff --git a/platform/android/export/export_plugin.cpp b/platform/android/export/export_plugin.cpp
index e27274be21..5bd5648b6e 100644
--- a/platform/android/export/export_plugin.cpp
+++ b/platform/android/export/export_plugin.cpp
@@ -1612,11 +1612,11 @@ Vector<String> EditorExportPlatformAndroid::get_enabled_abis(const Ref<EditorExp
void EditorExportPlatformAndroid::get_preset_features(const Ref<EditorExportPreset> &p_preset, List<String> *r_features) {
String driver = ProjectSettings::get_singleton()->get("rendering/driver/driver_name");
- if (driver == "OpenGL3") {
+ if (driver == "opengl3") {
r_features->push_back("etc");
}
// FIXME: Review what texture formats are used for Vulkan.
- if (driver == "Vulkan") {
+ if (driver == "vulkan") {
r_features->push_back("etc2");
}
diff --git a/platform/android/java/app/config.gradle b/platform/android/java/app/config.gradle
index 3fafdf8573..2a2850df0f 100644
--- a/platform/android/java/app/config.gradle
+++ b/platform/android/java/app/config.gradle
@@ -1,8 +1,8 @@
ext.versions = [
androidGradlePlugin: '7.0.3',
compileSdk : 30,
- minSdk : 19,
- targetSdk : 30,
+ minSdk : 19, // Also update 'platform/android/java/lib/AndroidManifest.xml#minSdkVersion' value
+ targetSdk : 30, // Also update 'platform/android/java/lib/AndroidManifest.xml#targetSdkVersion' value
buildTools : '30.0.3',
kotlinVersion : '1.5.10',
fragmentVersion : '1.3.6',
diff --git a/platform/android/java/lib/AndroidManifest.xml b/platform/android/java/lib/AndroidManifest.xml
index 3034794d69..2de62271c4 100644
--- a/platform/android/java/lib/AndroidManifest.xml
+++ b/platform/android/java/lib/AndroidManifest.xml
@@ -4,6 +4,9 @@
android:versionCode="1"
android:versionName="1.0">
+ <!-- Should match the mindSdk and targetSdk values in platform/android/java/app/config.gradle -->
+ <uses-sdk android:minSdkVersion="19" android:targetSdkVersion="30" />
+
<application>
<!-- Records the version of the Godot library -->
diff --git a/platform/android/java/lib/src/org/godotengine/godot/Godot.java b/platform/android/java/lib/src/org/godotengine/godot/Godot.java
index 5de092ee7e..d39ab30cda 100644
--- a/platform/android/java/lib/src/org/godotengine/godot/Godot.java
+++ b/platform/android/java/lib/src/org/godotengine/godot/Godot.java
@@ -263,7 +263,7 @@ public class Godot extends Fragment implements SensorEventListener, IDownloaderC
GodotLib.setup(command_line);
final String videoDriver = GodotLib.getGlobal("rendering/driver/driver_name");
- if (videoDriver.equals("Vulkan")) {
+ if (videoDriver.equals("vulkan")) {
mRenderView = new GodotVulkanRenderView(activity, this);
} else {
mRenderView = new GodotGLRenderView(activity, this, xrMode, use_32_bits,
diff --git a/platform/iphone/export/export_plugin.cpp b/platform/iphone/export/export_plugin.cpp
index 54fb597c62..7450215cfb 100644
--- a/platform/iphone/export/export_plugin.cpp
+++ b/platform/iphone/export/export_plugin.cpp
@@ -33,7 +33,7 @@
void EditorExportPlatformIOS::get_preset_features(const Ref<EditorExportPreset> &p_preset, List<String> *r_features) {
String driver = ProjectSettings::get_singleton()->get("rendering/driver/driver_name");
r_features->push_back("pvrtc");
- if (driver == "Vulkan") {
+ if (driver == "vulkan") {
// FIXME: Review if this is correct.
r_features->push_back("etc2");
}
@@ -1685,8 +1685,10 @@ Error EditorExportPlatformIOS::export_project(const Ref<EditorExportPreset> &p_p
archive_args.push_back("archive");
archive_args.push_back("-archivePath");
archive_args.push_back(archive_path);
- err = OS::get_singleton()->execute("xcodebuild", archive_args);
+ String archive_str;
+ err = OS::get_singleton()->execute("xcodebuild", archive_args, &archive_str, nullptr, true);
ERR_FAIL_COND_V(err, err);
+ print_line("xcodebuild (.xcarchive):\n" + archive_str);
if (ep.step("Making .ipa", 4)) {
return ERR_SKIP;
@@ -1700,8 +1702,10 @@ Error EditorExportPlatformIOS::export_project(const Ref<EditorExportPreset> &p_p
export_args.push_back("-allowProvisioningUpdates");
export_args.push_back("-exportPath");
export_args.push_back(dest_dir);
- err = OS::get_singleton()->execute("xcodebuild", export_args);
+ String export_str;
+ err = OS::get_singleton()->execute("xcodebuild", export_args, &export_str, nullptr, true);
ERR_FAIL_COND_V(err, err);
+ print_line("xcodebuild (.ipa):\n" + export_str);
#else
print_line(".ipa can only be built on macOS. Leaving Xcode project without building the package.");
#endif
diff --git a/platform/javascript/export/export_plugin.cpp b/platform/javascript/export/export_plugin.cpp
index b4f93b9b44..018dd3b664 100644
--- a/platform/javascript/export/export_plugin.cpp
+++ b/platform/javascript/export/export_plugin.cpp
@@ -300,9 +300,9 @@ void EditorExportPlatformJavaScript::get_preset_features(const Ref<EditorExportP
if (p_preset->get("vram_texture_compression/for_mobile")) {
String driver = ProjectSettings::get_singleton()->get("rendering/driver/driver_name");
- if (driver == "OpenGL3") {
+ if (driver == "opengl3") {
r_features->push_back("etc");
- } else if (driver == "Vulkan") {
+ } else if (driver == "vulkan") {
// FIXME: Review if this is correct.
r_features->push_back("etc2");
}
diff --git a/platform/linuxbsd/detect.py b/platform/linuxbsd/detect.py
index a9e8fb64c3..07e16a982b 100644
--- a/platform/linuxbsd/detect.py
+++ b/platform/linuxbsd/detect.py
@@ -119,8 +119,16 @@ def configure(env):
if env["bits"] == "default":
env["bits"] = "64" if is64 else "32"
- if env["arch"] == "" and platform.machine() == "riscv64":
- env["arch"] = "rv64"
+ machines = {
+ "riscv64": "rv64",
+ "ppc64le": "ppc64",
+ "ppc64": "ppc64",
+ "ppcle": "ppc",
+ "ppc": "ppc",
+ }
+
+ if env["arch"] == "" and platform.machine() in machines:
+ env["arch"] = machines[platform.machine()]
if env["arch"] == "rv64":
# G = General-purpose extensions, C = Compression extension (very common).
diff --git a/platform/linuxbsd/display_server_x11.cpp b/platform/linuxbsd/display_server_x11.cpp
index d00a5794ca..c4e828bdb2 100644
--- a/platform/linuxbsd/display_server_x11.cpp
+++ b/platform/linuxbsd/display_server_x11.cpp
@@ -733,6 +733,16 @@ Size2i DisplayServerX11::screen_get_size(int p_screen) const {
return _screen_get_rect(p_screen).size;
}
+bool g_bad_window = false;
+int bad_window_error_handler(Display *display, XErrorEvent *error) {
+ if (error->error_code == BadWindow) {
+ g_bad_window = true;
+ } else {
+ ERR_PRINT("Unhandled XServer error code: " + itos(error->error_code));
+ }
+ return 0;
+}
+
Rect2i DisplayServerX11::screen_get_usable_rect(int p_screen) const {
_THREAD_SAFE_METHOD_
@@ -740,21 +750,276 @@ Rect2i DisplayServerX11::screen_get_usable_rect(int p_screen) const {
p_screen = window_get_current_screen();
}
- // Using Xinerama Extension
- int event_base, error_base;
- const Bool ext_okay = XineramaQueryExtension(x11_display, &event_base, &error_base);
- if (!ext_okay) {
- return Rect2i(0, 0, 0, 0);
+ int screen_count = get_screen_count();
+
+ // Check if screen is valid.
+ ERR_FAIL_INDEX_V(p_screen, screen_count, Rect2i(0, 0, 0, 0));
+
+ bool is_multiscreen = screen_count > 1;
+
+ // Use full monitor size as fallback.
+ Rect2i rect = _screen_get_rect(p_screen);
+
+ // There's generally only one screen reported by xlib even in multi-screen setup,
+ // in this case it's just one virtual screen composed of all physical monitors.
+ int x11_screen_count = ScreenCount(x11_display);
+ Window x11_window = RootWindow(x11_display, p_screen < x11_screen_count ? p_screen : 0);
+
+ Atom type;
+ int format = 0;
+ unsigned long remaining = 0;
+
+ // Find active desktop for the root window.
+ unsigned int desktop_index = 0;
+ Atom desktop_prop = XInternAtom(x11_display, "_NET_CURRENT_DESKTOP", True);
+ if (desktop_prop != None) {
+ unsigned long desktop_len = 0;
+ unsigned char *desktop_data = nullptr;
+ if (XGetWindowProperty(x11_display, x11_window, desktop_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &desktop_len, &remaining, &desktop_data) == Success) {
+ if ((format == 32) && (desktop_len > 0) && desktop_data) {
+ desktop_index = (unsigned int)desktop_data[0];
+ }
+ if (desktop_data) {
+ XFree(desktop_data);
+ }
+ }
}
- int count;
- XineramaScreenInfo *xsi = XineramaQueryScreens(x11_display, &count);
+ bool use_simple_method = true;
+
+ // First check for GTK work area, which is more accurate for multi-screen setup.
+ if (is_multiscreen) {
+ // Use already calculated work area when available.
+ Atom gtk_workareas_prop = XInternAtom(x11_display, "_GTK_WORKAREAS", False);
+ if (gtk_workareas_prop != None) {
+ char gtk_workarea_prop_name[32];
+ snprintf(gtk_workarea_prop_name, 32, "_GTK_WORKAREAS_D%d", desktop_index);
+ Atom gtk_workarea_prop = XInternAtom(x11_display, gtk_workarea_prop_name, True);
+ if (gtk_workarea_prop != None) {
+ unsigned long workarea_len = 0;
+ unsigned char *workarea_data = nullptr;
+ if (XGetWindowProperty(x11_display, x11_window, gtk_workarea_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &workarea_len, &remaining, &workarea_data) == Success) {
+ if ((format == 32) && (workarea_len % 4 == 0) && workarea_data) {
+ long *rect_data = (long *)workarea_data;
+ for (uint32_t data_offset = 0; data_offset < workarea_len; data_offset += 4) {
+ Rect2i workarea_rect;
+ workarea_rect.position.x = rect_data[data_offset];
+ workarea_rect.position.y = rect_data[data_offset + 1];
+ workarea_rect.size.x = rect_data[data_offset + 2];
+ workarea_rect.size.y = rect_data[data_offset + 3];
+
+ // Intersect with actual monitor size to find the correct area,
+ // because areas are not in the same order as screens from Xinerama.
+ if (rect.grow(-1).intersects(workarea_rect)) {
+ rect = rect.intersection(workarea_rect);
+ XFree(workarea_data);
+ return rect;
+ }
+ }
+ }
+ }
+ if (workarea_data) {
+ XFree(workarea_data);
+ }
+ }
+ }
- // Check if screen is valid
- ERR_FAIL_INDEX_V(p_screen, count, Rect2i(0, 0, 0, 0));
+ // Fallback to calculating work area by hand from struts.
+ Atom client_list_prop = XInternAtom(x11_display, "_NET_CLIENT_LIST", True);
+ if (client_list_prop != None) {
+ unsigned long clients_len = 0;
+ unsigned char *clients_data = nullptr;
+ if (XGetWindowProperty(x11_display, x11_window, client_list_prop, 0, LONG_MAX, False, XA_WINDOW, &type, &format, &clients_len, &remaining, &clients_data) == Success) {
+ if ((format == 32) && (clients_len > 0) && clients_data) {
+ Window *windows_data = (Window *)clients_data;
+
+ Rect2i desktop_rect;
+ bool desktop_valid = false;
+
+ // Get full desktop size.
+ {
+ Atom desktop_geometry_prop = XInternAtom(x11_display, "_NET_DESKTOP_GEOMETRY", True);
+ if (desktop_geometry_prop != None) {
+ unsigned long geom_len = 0;
+ unsigned char *geom_data = nullptr;
+ if (XGetWindowProperty(x11_display, x11_window, desktop_geometry_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &geom_len, &remaining, &geom_data) == Success) {
+ if ((format == 32) && (geom_len >= 2) && geom_data) {
+ desktop_valid = true;
+ long *size_data = (long *)geom_data;
+ desktop_rect.size.x = size_data[0];
+ desktop_rect.size.y = size_data[1];
+ }
+ }
+ if (geom_data) {
+ XFree(geom_data);
+ }
+ }
+ }
+
+ // Get full desktop position.
+ if (desktop_valid) {
+ Atom desktop_viewport_prop = XInternAtom(x11_display, "_NET_DESKTOP_VIEWPORT", True);
+ if (desktop_viewport_prop != None) {
+ unsigned long viewport_len = 0;
+ unsigned char *viewport_data = nullptr;
+ if (XGetWindowProperty(x11_display, x11_window, desktop_viewport_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &viewport_len, &remaining, &viewport_data) == Success) {
+ if ((format == 32) && (viewport_len >= 2) && viewport_data) {
+ desktop_valid = true;
+ long *pos_data = (long *)viewport_data;
+ desktop_rect.position.x = pos_data[0];
+ desktop_rect.position.y = pos_data[1];
+ }
+ }
+ if (viewport_data) {
+ XFree(viewport_data);
+ }
+ }
+ }
+
+ if (desktop_valid) {
+ use_simple_method = false;
+
+ // Handle bad window errors silently because there's no other way to check
+ // that one of the windows has been destroyed in the meantime.
+ int (*oldHandler)(Display *, XErrorEvent *) = XSetErrorHandler(&bad_window_error_handler);
+
+ for (unsigned long win_index = 0; win_index < clients_len; ++win_index) {
+ g_bad_window = false;
+
+ // Remove strut size from desktop size to get a more accurate result.
+ bool strut_found = false;
+ unsigned long strut_len = 0;
+ unsigned char *strut_data = nullptr;
+ Atom strut_partial_prop = XInternAtom(x11_display, "_NET_WM_STRUT_PARTIAL", True);
+ if (strut_partial_prop != None) {
+ if (XGetWindowProperty(x11_display, windows_data[win_index], strut_partial_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &strut_len, &remaining, &strut_data) == Success) {
+ strut_found = true;
+ }
+ }
+ // Fallback to older strut property.
+ if (!g_bad_window && !strut_found) {
+ Atom strut_prop = XInternAtom(x11_display, "_NET_WM_STRUT", True);
+ if (strut_prop != None) {
+ if (XGetWindowProperty(x11_display, windows_data[win_index], strut_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &strut_len, &remaining, &strut_data) == Success) {
+ strut_found = true;
+ }
+ }
+ }
+ if (!g_bad_window && strut_found && (format == 32) && (strut_len >= 4) && strut_data) {
+ long *struts = (long *)strut_data;
+
+ long left = struts[0];
+ long right = struts[1];
+ long top = struts[2];
+ long bottom = struts[3];
+
+ long left_start_y, left_end_y, right_start_y, right_end_y;
+ long top_start_x, top_end_x, bottom_start_x, bottom_end_x;
+
+ if (strut_len >= 12) {
+ left_start_y = struts[4];
+ left_end_y = struts[5];
+ right_start_y = struts[6];
+ right_end_y = struts[7];
+ top_start_x = struts[8];
+ top_end_x = struts[9];
+ bottom_start_x = struts[10];
+ bottom_end_x = struts[11];
+ } else {
+ left_start_y = 0;
+ left_end_y = desktop_rect.size.y;
+ right_start_y = 0;
+ right_end_y = desktop_rect.size.y;
+ top_start_x = 0;
+ top_end_x = desktop_rect.size.x;
+ bottom_start_x = 0;
+ bottom_end_x = desktop_rect.size.x;
+ }
+
+ const Point2i &pos = desktop_rect.position;
+ const Size2i &size = desktop_rect.size;
+
+ Rect2i left_rect(pos.x, pos.y + left_start_y, left, left_end_y - left_start_y);
+ if (left_rect.size.x > 0) {
+ Rect2i intersection = rect.intersection(left_rect);
+ if (!intersection.has_no_area() && intersection.size.x < rect.size.x) {
+ rect.position.x = left_rect.size.x;
+ rect.size.x = rect.size.x - intersection.size.x;
+ }
+ }
+
+ Rect2i right_rect(pos.x + size.x - right, pos.y + right_start_y, right, right_end_y - right_start_y);
+ if (right_rect.size.x > 0) {
+ Rect2i intersection = rect.intersection(right_rect);
+ if (!intersection.has_no_area() && right_rect.size.x < rect.size.x) {
+ rect.size.x = intersection.position.x - rect.position.x;
+ }
+ }
+
+ Rect2i top_rect(pos.x + top_start_x, pos.y, top_end_x - top_start_x, top);
+ if (top_rect.size.y > 0) {
+ Rect2i intersection = rect.intersection(top_rect);
+ if (!intersection.has_no_area() && intersection.size.y < rect.size.y) {
+ rect.position.y = top_rect.size.y;
+ rect.size.y = rect.size.y - intersection.size.y;
+ }
+ }
+
+ Rect2i bottom_rect(pos.x + bottom_start_x, pos.y + size.y - bottom, bottom_end_x - bottom_start_x, bottom);
+ if (bottom_rect.size.y > 0) {
+ Rect2i intersection = rect.intersection(bottom_rect);
+ if (!intersection.has_no_area() && right_rect.size.y < rect.size.y) {
+ rect.size.y = intersection.position.y - rect.position.y;
+ }
+ }
+ }
+ if (strut_data) {
+ XFree(strut_data);
+ }
+ }
+
+ // Restore default error handler.
+ XSetErrorHandler(oldHandler);
+ }
+ }
+ }
+ if (clients_data) {
+ XFree(clients_data);
+ }
+ }
+ }
+
+ // Single screen or fallback for multi screen.
+ if (use_simple_method) {
+ // Get desktop available size from the global work area.
+ Atom workarea_prop = XInternAtom(x11_display, "_NET_WORKAREA", True);
+ if (workarea_prop != None) {
+ unsigned long workarea_len = 0;
+ unsigned char *workarea_data = nullptr;
+ if (XGetWindowProperty(x11_display, x11_window, workarea_prop, 0, LONG_MAX, False, XA_CARDINAL, &type, &format, &workarea_len, &remaining, &workarea_data) == Success) {
+ if ((format == 32) && (workarea_len >= ((desktop_index + 1) * 4)) && workarea_data) {
+ long *rect_data = (long *)workarea_data;
+ int data_offset = desktop_index * 4;
+ Rect2i workarea_rect;
+ workarea_rect.position.x = rect_data[data_offset];
+ workarea_rect.position.y = rect_data[data_offset + 1];
+ workarea_rect.size.x = rect_data[data_offset + 2];
+ workarea_rect.size.y = rect_data[data_offset + 3];
+
+ // Intersect with actual monitor size to get a proper approximation in multi-screen setup.
+ if (!is_multiscreen) {
+ rect = workarea_rect;
+ } else if (rect.intersects(workarea_rect)) {
+ rect = rect.intersection(workarea_rect);
+ }
+ }
+ }
+ if (workarea_data) {
+ XFree(workarea_data);
+ }
+ }
+ }
- Rect2i rect = Rect2i(xsi[p_screen].x_org, xsi[p_screen].y_org, xsi[p_screen].width, xsi[p_screen].height);
- XFree(xsi);
return rect;
}
diff --git a/platform/osx/SCsub b/platform/osx/SCsub
index 46c13d8550..8ba106d1c2 100644
--- a/platform/osx/SCsub
+++ b/platform/osx/SCsub
@@ -13,7 +13,7 @@ files = [
"dir_access_osx.mm",
"joypad_osx.cpp",
"vulkan_context_osx.mm",
- "context_gl_osx.mm",
+ "gl_manager_osx.mm",
]
prog = env.add_program("#bin/godot", files)
diff --git a/platform/osx/context_gl_osx.mm b/platform/osx/context_gl_osx.mm
deleted file mode 100644
index eab9d8dc0c..0000000000
--- a/platform/osx/context_gl_osx.mm
+++ /dev/null
@@ -1,161 +0,0 @@
-/*************************************************************************/
-/* context_gl_osx.mm */
-/*************************************************************************/
-/* This file is part of: */
-/* GODOT ENGINE */
-/* https://godotengine.org */
-/*************************************************************************/
-/* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */
-/* Copyright (c) 2014-2021 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 "context_gl_osx.h"
-
-#if defined(GLES3_ENABLED) || defined(GLES_ENABLED)
-
-void ContextGL_OSX::release_current() {
- [NSOpenGLContext clearCurrentContext];
-}
-
-void ContextGL_OSX::make_current() {
- [context makeCurrentContext];
-}
-
-void ContextGL_OSX::update() {
- [context update];
-}
-
-void ContextGL_OSX::set_opacity(GLint p_opacity) {
- [context setValues:&p_opacity forParameter:NSOpenGLCPSurfaceOpacity];
-}
-
-int ContextGL_OSX::get_window_width() {
- return OS::get_singleton()->get_video_mode().width;
-}
-
-int ContextGL_OSX::get_window_height() {
- return OS::get_singleton()->get_video_mode().height;
-}
-
-void ContextGL_OSX::swap_buffers() {
- [context flushBuffer];
-}
-
-void ContextGL_OSX::set_use_vsync(bool p_use) {
- CGLContextObj ctx = CGLGetCurrentContext();
- if (ctx) {
- GLint swapInterval = p_use ? 1 : 0;
- CGLSetParameter(ctx, kCGLCPSwapInterval, &swapInterval);
- use_vsync = p_use;
- }
-}
-
-bool ContextGL_OSX::is_using_vsync() const {
- return use_vsync;
-}
-
-Error ContextGL_OSX::initialize() {
- framework = CFBundleGetBundleWithIdentifier(CFSTR("com.apple.opengl"));
- ERR_FAIL_COND_V(!framework, ERR_CANT_CREATE);
-
- unsigned int attributeCount = 0;
-
- // OS X needs non-zero color size, so set reasonable values
- int colorBits = 32;
-
- // Fail if a robustness strategy was requested
-
-#define ADD_ATTR(x) \
- { attributes[attributeCount++] = x; }
-#define ADD_ATTR2(x, y) \
- { \
- ADD_ATTR(x); \
- ADD_ATTR(y); \
- }
-
- // Arbitrary array size here
- NSOpenGLPixelFormatAttribute attributes[40];
-
- ADD_ATTR(NSOpenGLPFADoubleBuffer);
- ADD_ATTR(NSOpenGLPFAClosestPolicy);
-
- if (!gles3_context) {
- ADD_ATTR2(NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersionLegacy);
- } else {
- //we now need OpenGL 3 or better, maybe even change this to 3_3Core ?
- ADD_ATTR2(NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersion3_2Core);
- }
-
- ADD_ATTR2(NSOpenGLPFAColorSize, colorBits);
-
- /*
- if (fbconfig->alphaBits > 0)
- ADD_ATTR2(NSOpenGLPFAAlphaSize, fbconfig->alphaBits);
-*/
-
- ADD_ATTR2(NSOpenGLPFADepthSize, 24);
-
- ADD_ATTR2(NSOpenGLPFAStencilSize, 8);
-
- /*
- if (fbconfig->stereo)
- ADD_ATTR(NSOpenGLPFAStereo);
-*/
-
- /*
- if (fbconfig->samples > 0) {
- ADD_ATTR2(NSOpenGLPFASampleBuffers, 1);
- ADD_ATTR2(NSOpenGLPFASamples, fbconfig->samples);
- }
-*/
-
- // NOTE: All NSOpenGLPixelFormats on the relevant cards support sRGB
- // framebuffer, so there's no need (and no way) to request it
-
- ADD_ATTR(0);
-
-#undef ADD_ATTR
-#undef ADD_ATTR2
-
- pixelFormat = [[NSOpenGLPixelFormat alloc] initWithAttributes:attributes];
- ERR_FAIL_COND_V(pixelFormat == nil, ERR_CANT_CREATE);
-
- context = [[NSOpenGLContext alloc] initWithFormat:pixelFormat shareContext:nil];
-
- ERR_FAIL_COND_V(context == nil, ERR_CANT_CREATE);
-
- [context setView:window_view];
-
- [context makeCurrentContext];
-
- return OK;
-}
-
-ContextGL_OSX::ContextGL_OSX(id p_view, bool p_gles3_context) {
- gles3_context = p_gles3_context;
- window_view = p_view;
- use_vsync = false;
-}
-
-ContextGL_OSX::~ContextGL_OSX() {}
-
-#endif
diff --git a/platform/osx/detect.py b/platform/osx/detect.py
index d9b55631cd..6bd79c7d4f 100644
--- a/platform/osx/detect.py
+++ b/platform/osx/detect.py
@@ -183,10 +183,13 @@ def configure(env):
)
env.Append(LIBS=["pthread", "z"])
+ if env["opengl3"]:
+ env.Append(CPPDEFINES=["GLES_ENABLED", "GLES3_ENABLED"])
+ env.Append(CCFLAGS=["-Wno-deprecated-declarations"]) # Disable deprecation warnings
+ env.Append(LINKFLAGS=["-framework", "OpenGL"])
+
if env["vulkan"]:
env.Append(CPPDEFINES=["VULKAN_ENABLED"])
env.Append(LINKFLAGS=["-framework", "Metal", "-framework", "QuartzCore", "-framework", "IOSurface"])
if not env["use_volk"]:
env.Append(LINKFLAGS=["-L$VULKAN_SDK_PATH/MoltenVK/MoltenVK.xcframework/macos-arm64_x86_64/", "-lMoltenVK"])
-
- # env.Append(CPPDEFINES=['GLES_ENABLED', 'GLES3_ENABLED'])
diff --git a/platform/osx/display_server_osx.h b/platform/osx/display_server_osx.h
index 96baeb4dec..c45b470078 100644
--- a/platform/osx/display_server_osx.h
+++ b/platform/osx/display_server_osx.h
@@ -37,8 +37,7 @@
#include "servers/display_server.h"
#if defined(GLES3_ENABLED)
-#include "context_gl_osx.h"
-//TODO - reimplement OpenGLES
+#include "gl_manager_osx.h"
#endif
#if defined(VULKAN_ENABLED)
@@ -65,11 +64,11 @@ public:
void _menu_callback(id p_sender);
#if defined(GLES3_ENABLED)
- ContextGL_OSX *context_gles2;
+ GLManager_OSX *gl_manager = nullptr;
#endif
#if defined(VULKAN_ENABLED)
- VulkanContextOSX *context_vulkan;
- RenderingDeviceVulkan *rendering_device_vulkan;
+ VulkanContextOSX *context_vulkan = nullptr;
+ RenderingDeviceVulkan *rendering_device_vulkan = nullptr;
#endif
const NSMenu *_get_menu_root(const String &p_menu_root) const;
@@ -109,9 +108,6 @@ public:
Vector<Vector2> mpath;
-#if defined(GLES3_ENABLED)
- ContextGL_OSX *context_gles2 = nullptr;
-#endif
Point2i mouse_pos;
Size2i min_size;
@@ -287,6 +283,7 @@ public:
virtual void window_attach_instance_id(ObjectID p_instance, WindowID p_window = MAIN_WINDOW_ID) override;
virtual ObjectID window_get_attached_instance_id(WindowID p_window = MAIN_WINDOW_ID) const override;
+ virtual void gl_window_make_current(DisplayServer::WindowID p_window_id) override;
virtual void window_set_vsync_mode(DisplayServer::VSyncMode p_vsync_mode, WindowID p_window = MAIN_WINDOW_ID) override;
virtual DisplayServer::VSyncMode window_get_vsync_mode(WindowID p_vsync_mode) const override;
diff --git a/platform/osx/display_server_osx.mm b/platform/osx/display_server_osx.mm
index d89e64cd7d..03301af0af 100644
--- a/platform/osx/display_server_osx.mm
+++ b/platform/osx/display_server_osx.mm
@@ -46,7 +46,7 @@
#include <IOKit/hid/IOHIDLib.h>
#if defined(GLES3_ENABLED)
-//TODO - reimplement OpenGLES
+#include "drivers/gles3/rasterizer_gles3.h"
#import <AppKit/NSOpenGLView.h>
#endif
@@ -167,8 +167,8 @@ static NSCursor *_cursorFromSelector(SEL selector, SEL fallback = nil) {
}
#if defined(GLES3_ENABLED)
- if (DS_OSX->rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (DS_OSX->rendering_driver == "opengl3") {
+ DS_OSX->gl_manager->window_destroy(window_id);
}
#endif
#ifdef VULKAN_ENABLED
@@ -272,8 +272,8 @@ static NSCursor *_cursorFromSelector(SEL selector, SEL fallback = nil) {
}
#if defined(GLES3_ENABLED)
- if (DS_OSX->rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (DS_OSX->rendering_driver == "opengl3") {
+ DS_OSX->gl_manager->window_resize(window_id, wd.size.width, wd.size.height);
}
#endif
#if defined(VULKAN_ENABLED)
@@ -289,14 +289,6 @@ static NSCursor *_cursorFromSelector(SEL selector, SEL fallback = nil) {
Callable::CallError ce;
wd.rect_changed_callback.call((const Variant **)&sizep, 1, ret, ce);
}
-
- if (OS_OSX::get_singleton()->get_main_loop()) {
- Main::force_redraw();
- //Event retrieval blocks until resize is over. Call Main::iteration() directly.
- if (!Main::is_iterating()) { //avoid cyclic loop
- Main::iteration();
- }
- }
}
- (void)windowDidMove:(NSNotification *)notification {
@@ -377,7 +369,12 @@ static NSCursor *_cursorFromSelector(SEL selector, SEL fallback = nil) {
/* GodotContentView */
/*************************************************************************/
+#if defined(GLES3_ENABLED)
+@interface GodotContentView : NSOpenGLView <NSTextInputClient> {
+#else
@interface GodotContentView : NSView <NSTextInputClient> {
+#endif
+
DisplayServerOSX::WindowID window_id;
NSTrackingArea *trackingArea;
NSMutableAttributedString *markedText;
@@ -405,12 +402,6 @@ static NSCursor *_cursorFromSelector(SEL selector, SEL fallback = nil) {
}
- (CALayer *)makeBackingLayer {
-#if defined(GLES3_ENABLED)
- if (DS_OSX->rendering_driver == "opengl_es") {
- CALayer *layer = [[NSOpenGLLayer class] layer];
- return layer;
- }
-#endif
#if defined(VULKAN_ENABLED)
if (DS_OSX->rendering_driver == "vulkan") {
CALayer *layer = [[CAMetalLayer class] layer];
@@ -422,9 +413,8 @@ static NSCursor *_cursorFromSelector(SEL selector, SEL fallback = nil) {
- (void)updateLayer {
#if defined(GLES3_ENABLED)
- if (DS_OSX->rendering_driver == "opengl_es") {
- [super updateLayer];
- //TODO - reimplement OpenGLES
+ if (DS_OSX->rendering_driver == "opengl3") {
+ DS_OSX->gl_manager->window_update(window_id);
}
#endif
#if defined(VULKAN_ENABLED)
@@ -2587,7 +2577,7 @@ void DisplayServerOSX::_set_window_per_pixel_transparency_enabled(bool p_enabled
}
#endif
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
+ if (rendering_driver == "opengl3") {
//TODO - reimplement OpenGLES
}
#endif
@@ -2606,14 +2596,14 @@ void DisplayServerOSX::_set_window_per_pixel_transparency_enabled(bool p_enabled
}
#endif
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
+ if (rendering_driver == "opengl3") {
//TODO - reimplement OpenGLES
}
#endif
wd.layered_window = false;
}
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
+ if (rendering_driver == "opengl3") {
//TODO - reimplement OpenGLES
}
#endif
@@ -3455,18 +3445,31 @@ void DisplayServerOSX::set_icon(const Ref<Image> &p_icon) {
void DisplayServerOSX::window_set_vsync_mode(DisplayServer::VSyncMode p_vsync_mode, WindowID p_window) {
_THREAD_SAFE_METHOD_
+#if defined(GLES3_ENABLED)
+ if (rendering_driver == "opengl3") {
+ gl_manager->swap_buffers();
+ }
+#endif
#if defined(VULKAN_ENABLED)
- context_vulkan->set_vsync_mode(p_window, p_vsync_mode);
+ if (rendering_driver == "vulkan") {
+ context_vulkan->set_vsync_mode(p_window, p_vsync_mode);
+ }
#endif
}
DisplayServer::VSyncMode DisplayServerOSX::window_get_vsync_mode(WindowID p_window) const {
_THREAD_SAFE_METHOD_
+#if defined(GLES3_ENABLED)
+ if (rendering_driver == "opengl3") {
+ return (gl_manager->is_using_vsync() ? DisplayServer::VSyncMode::VSYNC_ENABLED : DisplayServer::VSyncMode::VSYNC_DISABLED);
+ }
+#endif
#if defined(VULKAN_ENABLED)
- return context_vulkan->get_vsync_mode(p_window);
-#else
- return DisplayServer::VSYNC_ENABLED;
+ if (rendering_driver == "vulkan") {
+ return context_vulkan->get_vsync_mode(p_window);
+ }
#endif
+ return DisplayServer::VSYNC_ENABLED;
}
Vector<String> DisplayServerOSX::get_rendering_drivers_func() {
@@ -3476,12 +3479,18 @@ Vector<String> DisplayServerOSX::get_rendering_drivers_func() {
drivers.push_back("vulkan");
#endif
#if defined(GLES3_ENABLED)
- drivers.push_back("opengl_es");
+ drivers.push_back("opengl3");
#endif
return drivers;
}
+void DisplayServerOSX::gl_window_make_current(DisplayServer::WindowID p_window_id) {
+#if defined(GLES3_ENABLED)
+ gl_manager->window_make_current(p_window_id);
+#endif
+}
+
Point2i DisplayServerOSX::ime_get_selection() const {
return im_selection;
}
@@ -3522,7 +3531,7 @@ ObjectID DisplayServerOSX::window_get_attached_instance_id(WindowID p_window) co
DisplayServer *DisplayServerOSX::create_func(const String &p_rendering_driver, WindowMode p_mode, VSyncMode p_vsync_mode, uint32_t p_flags, const Vector2i &p_resolution, Error &r_error) {
DisplayServer *ds = memnew(DisplayServerOSX(p_rendering_driver, p_mode, p_vsync_mode, p_flags, p_resolution, r_error));
if (r_error != OK) {
- OS::get_singleton()->alert("Your video card driver does not support any of the supported Metal versions.", "Unable to initialize Video driver");
+ OS::get_singleton()->alert("Your video card driver does not support any of the supported Vulkan or OpenGL versions.", "Unable to initialize Video driver");
}
return ds;
}
@@ -3580,8 +3589,11 @@ DisplayServerOSX::WindowID DisplayServerOSX::_create_window(WindowMode p_mode, V
}
#endif
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (rendering_driver == "opengl3") {
+ if (gl_manager) {
+ Error err = gl_manager->window_create(window_id_counter, wd.window_view, p_rect.size.width, p_rect.size.height);
+ ERR_FAIL_COND_V_MSG(err != OK, INVALID_WINDOW_ID, "Can't create an OpenGL context");
+ }
}
#endif
id = window_id_counter++;
@@ -3601,8 +3613,8 @@ DisplayServerOSX::WindowID DisplayServerOSX::_create_window(WindowMode p_mode, V
}
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (rendering_driver == "opengl3") {
+ gl_manager->window_resize(id, wd.size.width, wd.size.height);
}
#endif
#if defined(VULKAN_ENABLED)
@@ -3654,15 +3666,15 @@ void DisplayServerOSX::_dispatch_input_event(const Ref<InputEvent> &p_event) {
}
void DisplayServerOSX::release_rendering_thread() {
- //TODO - reimplement OpenGLES
}
void DisplayServerOSX::make_rendering_thread() {
- //TODO - reimplement OpenGLES
}
void DisplayServerOSX::swap_buffers() {
- //TODO - reimplement OpenGLES
+#if defined(GLES3_ENABLED)
+ gl_manager->swap_buffers();
+#endif
}
void DisplayServerOSX::console_set_visible(bool p_enabled) {
@@ -3753,14 +3765,17 @@ DisplayServerOSX::DisplayServerOSX(const String &p_rendering_driver, WindowMode
//TODO - do Vulkan and OpenGL support checks, driver selection and fallback
rendering_driver = p_rendering_driver;
-#ifndef _MSC_VER
-#warning Forcing vulkan rendering driver because OpenGL not implemented yet
-#endif
- rendering_driver = "vulkan";
-
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (rendering_driver == "opengl3") {
+ GLManager_OSX::ContextType opengl_api_type = GLManager_OSX::GLES_3_0_COMPATIBLE;
+ gl_manager = memnew(GLManager_OSX(opengl_api_type));
+ if (gl_manager->initialize() != OK) {
+ memdelete(gl_manager);
+ gl_manager = nullptr;
+ r_error = ERR_UNAVAILABLE;
+ ERR_FAIL_MSG("Could not initialize OpenGL");
+ return;
+ }
}
#endif
#if defined(VULKAN_ENABLED)
@@ -3788,8 +3803,8 @@ DisplayServerOSX::DisplayServerOSX(const String &p_rendering_driver, WindowMode
show_window(MAIN_WINDOW_ID);
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (rendering_driver == "opengl3") {
+ RasterizerGLES3::make_current();
}
#endif
#if defined(VULKAN_ENABLED)
@@ -3821,20 +3836,21 @@ DisplayServerOSX::~DisplayServerOSX() {
//destroy drivers
#if defined(GLES3_ENABLED)
- if (rendering_driver == "opengl_es") {
- //TODO - reimplement OpenGLES
+ if (gl_manager) {
+ memdelete(gl_manager);
+ gl_manager = nullptr;
}
#endif
#if defined(VULKAN_ENABLED)
- if (rendering_driver == "vulkan") {
- if (rendering_device_vulkan) {
- rendering_device_vulkan->finalize();
- memdelete(rendering_device_vulkan);
- }
+ if (rendering_device_vulkan) {
+ rendering_device_vulkan->finalize();
+ memdelete(rendering_device_vulkan);
+ rendering_device_vulkan = nullptr;
+ }
- if (context_vulkan) {
- memdelete(context_vulkan);
- }
+ if (context_vulkan) {
+ memdelete(context_vulkan);
+ context_vulkan = nullptr;
}
#endif
diff --git a/platform/osx/export/export_plugin.cpp b/platform/osx/export/export_plugin.cpp
index 1e80dcd97b..a88f7bb332 100644
--- a/platform/osx/export/export_plugin.cpp
+++ b/platform/osx/export/export_plugin.cpp
@@ -1048,8 +1048,21 @@ void EditorExportPlatformOSX::_zip_folder_recursive(zipFile &p_zip, const String
0x0314, // "version made by", 0x03 - Unix, 0x14 - ZIP specification version 2.0, required to store Unix file permissions
0);
- Vector<uint8_t> array = FileAccess::get_file_as_array(dir.plus_file(f));
- zipWriteInFileInZip(p_zip, array.ptr(), array.size());
+ FileAccessRef fa = FileAccess::open(dir.plus_file(f), FileAccess::READ);
+ if (!fa) {
+ ERR_FAIL_MSG("Can't open file to read from path '" + String(dir.plus_file(f)) + "'.");
+ }
+ const int bufsize = 16384;
+ uint8_t buf[bufsize];
+
+ while (true) {
+ uint64_t got = fa->get_buffer(buf, bufsize);
+ if (got == 0) {
+ break;
+ }
+ zipWriteInFileInZip(p_zip, buf, got);
+ }
+
zipCloseFileInZip(p_zip);
}
}
diff --git a/platform/osx/gl_manager_osx.h b/platform/osx/gl_manager_osx.h
new file mode 100644
index 0000000000..f86bc805c1
--- /dev/null
+++ b/platform/osx/gl_manager_osx.h
@@ -0,0 +1,106 @@
+/*************************************************************************/
+/* gl_manager_osx.h */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* https://godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */
+/* Copyright (c) 2014-2021 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 GL_MANAGER_OSX_H
+#define GL_MANAGER_OSX_H
+
+#if defined(OSX_ENABLED) && defined(GLES3_ENABLED)
+
+#include "core/error/error_list.h"
+#include "core/os/os.h"
+#include "core/templates/local_vector.h"
+#include "servers/display_server.h"
+
+#include <AppKit/AppKit.h>
+#include <ApplicationServices/ApplicationServices.h>
+#include <CoreVideo/CoreVideo.h>
+
+class GLManager_OSX {
+public:
+ enum ContextType {
+ GLES_3_0_COMPATIBLE,
+ };
+
+private:
+ struct GLWindow {
+ GLWindow() { in_use = false; }
+ bool in_use;
+
+ DisplayServer::WindowID window_id;
+ int width;
+ int height;
+
+ id window_view;
+ NSOpenGLContext *context;
+ };
+
+ LocalVector<GLWindow> _windows;
+
+ NSOpenGLContext *_shared_context = nullptr;
+ GLWindow *_current_window;
+
+ Error _create_context(GLWindow &win);
+ void _internal_set_current_window(GLWindow *p_win);
+
+ GLWindow &get_window(unsigned int id) { return _windows[id]; }
+ const GLWindow &get_window(unsigned int id) const { return _windows[id]; }
+
+ bool use_vsync;
+ ContextType context_type;
+
+public:
+ Error window_create(DisplayServer::WindowID p_window_id, id p_view, int p_width, int p_height);
+ void window_destroy(DisplayServer::WindowID p_window_id);
+ void window_resize(DisplayServer::WindowID p_window_id, int p_width, int p_height);
+
+ // get directly from the cached GLWindow
+ int window_get_width(DisplayServer::WindowID p_window_id = 0);
+ int window_get_height(DisplayServer::WindowID p_window_id = 0);
+
+ void release_current();
+ void make_current();
+ void swap_buffers();
+
+ void window_make_current(DisplayServer::WindowID p_window_id);
+
+ void window_update(DisplayServer::WindowID p_window_id);
+
+ Error initialize();
+
+ void set_use_vsync(bool p_use);
+ bool is_using_vsync() const;
+
+ GLManager_OSX(ContextType p_context_type);
+ ~GLManager_OSX();
+};
+
+#endif // defined(OSX_ENABLED) && defined(GLES3_ENABLED)
+
+#endif // GL_MANAGER_OSX_H
diff --git a/platform/osx/gl_manager_osx.mm b/platform/osx/gl_manager_osx.mm
new file mode 100644
index 0000000000..cce58530ee
--- /dev/null
+++ b/platform/osx/gl_manager_osx.mm
@@ -0,0 +1,233 @@
+/*************************************************************************/
+/* gl_manager_osx.mm */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* https://godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */
+/* Copyright (c) 2014-2021 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 "gl_manager_osx.h"
+
+#ifdef OSX_ENABLED
+#ifdef GLES3_ENABLED
+
+#include <stdio.h>
+#include <stdlib.h>
+
+Error GLManager_OSX::_create_context(GLWindow &win) {
+ NSOpenGLPixelFormatAttribute attributes[] = {
+ NSOpenGLPFADoubleBuffer,
+ NSOpenGLPFAClosestPolicy,
+ NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersion3_2Core,
+ NSOpenGLPFAColorSize, 32,
+ NSOpenGLPFADepthSize, 24,
+ NSOpenGLPFAStencilSize, 8,
+ 0
+ };
+
+ NSOpenGLPixelFormat *pixel_format = [[NSOpenGLPixelFormat alloc] initWithAttributes:attributes];
+ ERR_FAIL_COND_V(pixel_format == nil, ERR_CANT_CREATE);
+
+ win.context = [[NSOpenGLContext alloc] initWithFormat:pixel_format shareContext:_shared_context];
+ ERR_FAIL_COND_V(win.context == nil, ERR_CANT_CREATE);
+ if (_shared_context == nullptr) {
+ _shared_context = win.context;
+ }
+
+ [win.context setView:win.window_view];
+ [win.context makeCurrentContext];
+
+ return OK;
+}
+
+Error GLManager_OSX::window_create(DisplayServer::WindowID p_window_id, id p_view, int p_width, int p_height) {
+ if (p_window_id >= (int)_windows.size()) {
+ _windows.resize(p_window_id + 1);
+ }
+
+ GLWindow &win = _windows[p_window_id];
+ win.in_use = true;
+ win.window_id = p_window_id;
+ win.width = p_width;
+ win.height = p_height;
+ win.window_view = p_view;
+
+ if (_create_context(win) != OK) {
+ _windows.remove(_windows.size() - 1);
+ return FAILED;
+ }
+
+ window_make_current(_windows.size() - 1);
+
+ return OK;
+}
+
+void GLManager_OSX::_internal_set_current_window(GLWindow *p_win) {
+ _current_window = p_win;
+}
+
+void GLManager_OSX::window_resize(DisplayServer::WindowID p_window_id, int p_width, int p_height) {
+ if (p_window_id == -1) {
+ return;
+ }
+
+ GLWindow &win = _windows[p_window_id];
+ if (!win.in_use) {
+ return;
+ }
+
+ win.width = p_width;
+ win.height = p_height;
+
+ GLint dim[2];
+ dim[0] = p_width;
+ dim[1] = p_height;
+ CGLSetParameter((CGLContextObj)[win.context CGLContextObj], kCGLCPSurfaceBackingSize, &dim[0]);
+ CGLEnable((CGLContextObj)[win.context CGLContextObj], kCGLCESurfaceBackingSize);
+ if (OS::get_singleton()->is_hidpi_allowed()) {
+ [win.window_view setWantsBestResolutionOpenGLSurface:YES];
+ } else {
+ [win.window_view setWantsBestResolutionOpenGLSurface:NO];
+ }
+
+ [win.context update];
+}
+
+int GLManager_OSX::window_get_width(DisplayServer::WindowID p_window_id) {
+ return get_window(p_window_id).width;
+}
+
+int GLManager_OSX::window_get_height(DisplayServer::WindowID p_window_id) {
+ return get_window(p_window_id).height;
+}
+
+void GLManager_OSX::window_destroy(DisplayServer::WindowID p_window_id) {
+ GLWindow &win = get_window(p_window_id);
+ win.in_use = false;
+
+ if (_current_window == &win) {
+ _current_window = nullptr;
+ }
+}
+
+void GLManager_OSX::release_current() {
+ if (!_current_window) {
+ return;
+ }
+
+ [NSOpenGLContext clearCurrentContext];
+}
+
+void GLManager_OSX::window_make_current(DisplayServer::WindowID p_window_id) {
+ if (p_window_id == -1) {
+ return;
+ }
+
+ GLWindow &win = _windows[p_window_id];
+ if (!win.in_use) {
+ return;
+ }
+
+ if (&win == _current_window) {
+ return;
+ }
+
+ [win.context makeCurrentContext];
+
+ _internal_set_current_window(&win);
+}
+
+void GLManager_OSX::make_current() {
+ if (!_current_window) {
+ return;
+ }
+ if (!_current_window->in_use) {
+ WARN_PRINT("current window not in use!");
+ return;
+ }
+ [_current_window->context makeCurrentContext];
+}
+
+void GLManager_OSX::swap_buffers() {
+ // NO NEED TO CALL SWAP BUFFERS for each window...
+ // see https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/xhtml/glXSwapBuffers.xml
+
+ if (!_current_window) {
+ return;
+ }
+ if (!_current_window->in_use) {
+ WARN_PRINT("current window not in use!");
+ return;
+ }
+ [_current_window->context flushBuffer];
+}
+
+void GLManager_OSX::window_update(DisplayServer::WindowID p_window_id) {
+ if (p_window_id == -1) {
+ return;
+ }
+
+ GLWindow &win = _windows[p_window_id];
+ if (!win.in_use) {
+ return;
+ }
+
+ if (&win == _current_window) {
+ return;
+ }
+
+ [win.context update];
+}
+
+Error GLManager_OSX::initialize() {
+ return OK;
+}
+
+void GLManager_OSX::set_use_vsync(bool p_use) {
+ use_vsync = p_use;
+ CGLContextObj ctx = CGLGetCurrentContext();
+ if (ctx) {
+ GLint swapInterval = p_use ? 1 : 0;
+ CGLSetParameter(ctx, kCGLCPSwapInterval, &swapInterval);
+ use_vsync = p_use;
+ }
+}
+
+bool GLManager_OSX::is_using_vsync() const {
+ return use_vsync;
+}
+
+GLManager_OSX::GLManager_OSX(ContextType p_context_type) {
+ context_type = p_context_type;
+ use_vsync = false;
+ _current_window = nullptr;
+}
+
+GLManager_OSX::~GLManager_OSX() {
+ release_current();
+}
+
+#endif // GLES3_ENABLED
+#endif // OSX
diff --git a/platform/osx/os_osx.h b/platform/osx/os_osx.h
index a52436a70a..7e02f4e154 100644
--- a/platform/osx/os_osx.h
+++ b/platform/osx/os_osx.h
@@ -57,6 +57,8 @@ class OS_OSX : public OS_Unix {
MainLoop *main_loop;
+ static void pre_wait_observer_cb(CFRunLoopObserverRef p_observer, CFRunLoopActivity p_activiy, void *p_context);
+
public:
String open_with_filename;
@@ -92,6 +94,8 @@ public:
String get_locale() const override;
virtual String get_executable_path() const override;
+ virtual Error create_process(const String &p_path, const List<String> &p_arguments, ProcessID *r_child_id = nullptr) override;
+ virtual Error create_instance(const List<String> &p_arguments, ProcessID *r_child_id = nullptr) override;
virtual String get_unique_id() const override; //++
diff --git a/platform/osx/os_osx.mm b/platform/osx/os_osx.mm
index 489cbe074b..45a81be80a 100644
--- a/platform/osx/os_osx.mm
+++ b/platform/osx/os_osx.mm
@@ -491,14 +491,89 @@ String OS_OSX::get_executable_path() const {
}
}
+Error OS_OSX::create_instance(const List<String> &p_arguments, ProcessID *r_child_id) {
+ // If executable is bundled, always execute editor instances as an app bundle to ensure app window is registered and activated correctly.
+ NSString *nsappname = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleName"];
+ if (nsappname != nil) {
+ String path;
+ path.parse_utf8([[[NSBundle mainBundle] bundlePath] UTF8String]);
+ return create_process(path, p_arguments, r_child_id);
+ } else {
+ return create_process(get_executable_path(), p_arguments, r_child_id);
+ }
+}
+
+Error OS_OSX::create_process(const String &p_path, const List<String> &p_arguments, ProcessID *r_child_id) {
+ if (@available(macOS 10.15, *)) {
+ // Use NSWorkspace if path is an .app bundle.
+ NSURL *url = [NSURL fileURLWithPath:@(p_path.utf8().get_data())];
+ NSBundle *bundle = [NSBundle bundleWithURL:url];
+ if (bundle) {
+ NSMutableArray *arguments = [[NSMutableArray alloc] init];
+ for (const List<String>::Element *E = p_arguments.front(); E; E = E->next()) {
+ [arguments addObject:[NSString stringWithUTF8String:E->get().utf8().get_data()]];
+ }
+ NSWorkspaceOpenConfiguration *configuration = [[NSWorkspaceOpenConfiguration alloc] init];
+ [configuration setArguments:arguments];
+ [configuration setCreatesNewApplicationInstance:YES];
+ __block dispatch_semaphore_t lock = dispatch_semaphore_create(0);
+ __block Error err = ERR_TIMEOUT;
+ __block pid_t pid = 0;
+ [[NSWorkspace sharedWorkspace] openApplicationAtURL:url
+ configuration:configuration
+ completionHandler:^(NSRunningApplication *app, NSError *error) {
+ if (error) {
+ err = ERR_CANT_FORK;
+ NSLog(@"Failed to execute: %@", error.localizedDescription);
+ } else {
+ pid = [app processIdentifier];
+ err = OK;
+ }
+ dispatch_semaphore_signal(lock);
+ }];
+ dispatch_semaphore_wait(lock, dispatch_time(DISPATCH_TIME_NOW, 20000000000)); // 20 sec timeout, wait for app to launch.
+ dispatch_release(lock);
+
+ if (err == OK) {
+ if (r_child_id) {
+ *r_child_id = (ProcessID)pid;
+ }
+ }
+
+ return err;
+ } else {
+ return OS_Unix::create_process(p_path, p_arguments, r_child_id);
+ }
+ } else {
+ return OS_Unix::create_process(p_path, p_arguments, r_child_id);
+ }
+}
+
+void OS_OSX::pre_wait_observer_cb(CFRunLoopObserverRef p_observer, CFRunLoopActivity p_activiy, void *p_context) {
+ // Prevent main loop from sleeping and redraw window during resize / modal popups.
+
+ if (get_singleton()->get_main_loop()) {
+ Main::force_redraw();
+ if (!Main::is_iterating()) { // Avoid cyclic loop.
+ Main::iteration();
+ }
+ }
+
+ CFRunLoopWakeUp(CFRunLoopGetCurrent()); // Prevent main loop from sleeping.
+}
+
void OS_OSX::run() {
force_quit = false;
- if (!main_loop)
+ if (!main_loop) {
return;
+ }
main_loop->initialize();
+ CFRunLoopObserverRef pre_wait_observer = CFRunLoopObserverCreate(kCFAllocatorDefault, kCFRunLoopBeforeWaiting, true, 0, &pre_wait_observer_cb, nullptr);
+ CFRunLoopAddObserver(CFRunLoopGetCurrent(), pre_wait_observer, kCFRunLoopCommonModes);
+
bool quit = false;
while (!force_quit && !quit) {
@try {
@@ -514,6 +589,10 @@ void OS_OSX::run() {
ERR_PRINT("NSException: " + String([exception reason].UTF8String));
}
};
+
+ CFRunLoopRemoveObserver(CFRunLoopGetCurrent(), pre_wait_observer, kCFRunLoopCommonModes);
+ CFRelease(pre_wait_observer);
+
main_loop->finalize();
}
diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp
index 22c0219ea6..2c21390d73 100644
--- a/platform/windows/os_windows.cpp
+++ b/platform/windows/os_windows.cpp
@@ -447,7 +447,7 @@ Error OS_Windows::execute(const String &p_path, const List<String> &p_arguments,
ZeroMemory(&pi.pi, sizeof(pi.pi));
LPSTARTUPINFOW si_w = (LPSTARTUPINFOW)&pi.si;
- int ret = CreateProcessW(nullptr, (LPWSTR)(command.utf16().ptrw()), nullptr, nullptr, false, NORMAL_PRIORITY_CLASS & CREATE_NO_WINDOW, nullptr, nullptr, si_w, &pi.pi);
+ int ret = CreateProcessW(nullptr, (LPWSTR)(command.utf16().ptrw()), nullptr, nullptr, false, NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW, nullptr, nullptr, si_w, &pi.pi);
ERR_FAIL_COND_V_MSG(ret == 0, ERR_CANT_FORK, "Could not create child process: " + command);
WaitForSingleObject(pi.pi.hProcess, INFINITE);
@@ -475,7 +475,7 @@ Error OS_Windows::create_process(const String &p_path, const List<String> &p_arg
ZeroMemory(&pi.pi, sizeof(pi.pi));
LPSTARTUPINFOW si_w = (LPSTARTUPINFOW)&pi.si;
- int ret = CreateProcessW(nullptr, (LPWSTR)(command.utf16().ptrw()), nullptr, nullptr, false, NORMAL_PRIORITY_CLASS & CREATE_NO_WINDOW, nullptr, nullptr, si_w, &pi.pi);
+ int ret = CreateProcessW(nullptr, (LPWSTR)(command.utf16().ptrw()), nullptr, nullptr, false, NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW, nullptr, nullptr, si_w, &pi.pi);
ERR_FAIL_COND_V_MSG(ret == 0, ERR_CANT_FORK, "Could not create child process: " + command);
ProcessID pid = pi.pi.dwProcessId;
diff --git a/scene/2d/area_2d.cpp b/scene/2d/area_2d.cpp
index fff9c47d4d..75a1723e04 100644
--- a/scene/2d/area_2d.cpp
+++ b/scene/2d/area_2d.cpp
@@ -369,12 +369,11 @@ void Area2D::set_monitoring(bool p_enable) {
monitoring = p_enable;
if (monitoring) {
- PhysicsServer2D::get_singleton()->area_set_monitor_callback(get_rid(), this, SceneStringNames::get_singleton()->_body_inout);
- PhysicsServer2D::get_singleton()->area_set_area_monitor_callback(get_rid(), this, SceneStringNames::get_singleton()->_area_inout);
-
+ PhysicsServer2D::get_singleton()->area_set_monitor_callback(get_rid(), callable_mp(this, &Area2D::_body_inout));
+ PhysicsServer2D::get_singleton()->area_set_area_monitor_callback(get_rid(), callable_mp(this, &Area2D::_area_inout));
} else {
- PhysicsServer2D::get_singleton()->area_set_monitor_callback(get_rid(), nullptr, StringName());
- PhysicsServer2D::get_singleton()->area_set_area_monitor_callback(get_rid(), nullptr, StringName());
+ PhysicsServer2D::get_singleton()->area_set_monitor_callback(get_rid(), Callable());
+ PhysicsServer2D::get_singleton()->area_set_area_monitor_callback(get_rid(), Callable());
_clear_monitoring();
}
}
@@ -530,9 +529,6 @@ void Area2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_audio_bus_override", "enable"), &Area2D::set_audio_bus_override);
ClassDB::bind_method(D_METHOD("is_overriding_audio_bus"), &Area2D::is_overriding_audio_bus);
- ClassDB::bind_method(D_METHOD("_body_inout"), &Area2D::_body_inout);
- ClassDB::bind_method(D_METHOD("_area_inout"), &Area2D::_area_inout);
-
ADD_SIGNAL(MethodInfo("body_shape_entered", PropertyInfo(Variant::RID, "body_rid"), PropertyInfo(Variant::OBJECT, "body", PROPERTY_HINT_RESOURCE_TYPE, "Node2D"), PropertyInfo(Variant::INT, "body_shape_index"), PropertyInfo(Variant::INT, "local_shape_index")));
ADD_SIGNAL(MethodInfo("body_shape_exited", PropertyInfo(Variant::RID, "body_rid"), PropertyInfo(Variant::OBJECT, "body", PROPERTY_HINT_RESOURCE_TYPE, "Node2D"), PropertyInfo(Variant::INT, "body_shape_index"), PropertyInfo(Variant::INT, "local_shape_index")));
ADD_SIGNAL(MethodInfo("body_entered", PropertyInfo(Variant::OBJECT, "body", PROPERTY_HINT_RESOURCE_TYPE, "Node2D")));
diff --git a/scene/2d/audio_stream_player_2d.cpp b/scene/2d/audio_stream_player_2d.cpp
index f73d52152e..24da2ce9ce 100644
--- a/scene/2d/audio_stream_player_2d.cpp
+++ b/scene/2d/audio_stream_player_2d.cpp
@@ -112,7 +112,13 @@ StringName AudioStreamPlayer2D::_get_actual_bus() {
PhysicsDirectSpaceState2D *space_state = PhysicsServer2D::get_singleton()->space_get_direct_state(world_2d->get_space());
PhysicsDirectSpaceState2D::ShapeResult sr[MAX_INTERSECT_AREAS];
- int areas = space_state->intersect_point(global_pos, sr, MAX_INTERSECT_AREAS, Set<RID>(), area_mask, false, true);
+ PhysicsDirectSpaceState2D::PointParameters point_params;
+ point_params.position = global_pos;
+ point_params.collision_mask = area_mask;
+ point_params.collide_with_bodies = false;
+ point_params.collide_with_areas = true;
+
+ int areas = space_state->intersect_point(point_params, sr, MAX_INTERSECT_AREAS);
for (int i = 0; i < areas; i++) {
Area2D *area2d = Object::cast_to<Area2D>(sr[i].collider);
diff --git a/scene/2d/camera_2d.cpp b/scene/2d/camera_2d.cpp
index 8195d98f55..b4ee85120e 100644
--- a/scene/2d/camera_2d.cpp
+++ b/scene/2d/camera_2d.cpp
@@ -660,7 +660,7 @@ bool Camera2D::is_margin_drawing_enabled() const {
void Camera2D::_validate_property(PropertyInfo &property) const {
if (!smoothing_enabled && property.name == "smoothing_speed") {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/2d/cpu_particles_2d.cpp b/scene/2d/cpu_particles_2d.cpp
index bf26ec1f20..80c17b6e88 100644
--- a/scene/2d/cpu_particles_2d.cpp
+++ b/scene/2d/cpu_particles_2d.cpp
@@ -1168,7 +1168,7 @@ void CPUParticles2D::convert_from_particles(Node *p_particles) {
set_color(material->get_color());
- Ref<GradientTexture> gt = material->get_color_ramp();
+ Ref<GradientTexture1D> gt = material->get_color_ramp();
if (gt.is_valid()) {
set_color_ramp(gt->get_gradient());
}
diff --git a/scene/2d/light_2d.cpp b/scene/2d/light_2d.cpp
index 1853b3428c..66c0f979ae 100644
--- a/scene/2d/light_2d.cpp
+++ b/scene/2d/light_2d.cpp
@@ -221,7 +221,7 @@ real_t Light2D::get_shadow_smooth() const {
void Light2D::_validate_property(PropertyInfo &property) const {
if (!shadow && (property.name == "shadow_color" || property.name == "shadow_filter" || property.name == "shadow_filter_smooth" || property.name == "shadow_item_cull_mask")) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/2d/navigation_obstacle_2d.cpp b/scene/2d/navigation_obstacle_2d.cpp
index 0a105826c0..8802a1098a 100644
--- a/scene/2d/navigation_obstacle_2d.cpp
+++ b/scene/2d/navigation_obstacle_2d.cpp
@@ -34,19 +34,41 @@
#include "servers/navigation_server_2d.h"
void NavigationObstacle2D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_estimate_radius", "estimate_radius"), &NavigationObstacle2D::set_estimate_radius);
+ ClassDB::bind_method(D_METHOD("is_radius_estimated"), &NavigationObstacle2D::is_radius_estimated);
+ ClassDB::bind_method(D_METHOD("set_radius", "radius"), &NavigationObstacle2D::set_radius);
+ ClassDB::bind_method(D_METHOD("get_radius"), &NavigationObstacle2D::get_radius);
+
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "estimate_radius"), "set_estimate_radius", "is_radius_estimated");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "radius", PROPERTY_HINT_RANGE, "0.01,500,0.01"), "set_radius", "get_radius");
+}
+
+void NavigationObstacle2D::_validate_property(PropertyInfo &p_property) const {
+ if (p_property.name == "radius") {
+ if (estimate_radius) {
+ p_property.usage = PROPERTY_USAGE_NO_EDITOR;
+ }
+ }
}
void NavigationObstacle2D::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_READY: {
+ initialize_agent();
+ parent_node2d = Object::cast_to<Node2D>(get_parent());
+ if (parent_node2d != nullptr) {
+ // place agent on navigation map first or else the RVO agent callback creation fails silently later
+ NavigationServer2D::get_singleton()->agent_set_map(get_rid(), parent_node2d->get_world_2d()->get_navigation_map());
+ }
set_physics_process_internal(true);
} break;
case NOTIFICATION_EXIT_TREE: {
+ parent_node2d = nullptr;
set_physics_process_internal(false);
} break;
case NOTIFICATION_PARENTED: {
parent_node2d = Object::cast_to<Node2D>(get_parent());
- update_agent_shape();
+ reevaluate_agent_radius();
} break;
case NOTIFICATION_UNPARENTED: {
parent_node2d = nullptr;
@@ -78,7 +100,22 @@ TypedArray<String> NavigationObstacle2D::get_configuration_warnings() const {
return warnings;
}
-void NavigationObstacle2D::update_agent_shape() {
+void NavigationObstacle2D::initialize_agent() {
+ NavigationServer2D::get_singleton()->agent_set_neighbor_dist(agent, 0.0);
+ NavigationServer2D::get_singleton()->agent_set_max_neighbors(agent, 0);
+ NavigationServer2D::get_singleton()->agent_set_time_horizon(agent, 0.0);
+ NavigationServer2D::get_singleton()->agent_set_max_speed(agent, 0.0);
+}
+
+void NavigationObstacle2D::reevaluate_agent_radius() {
+ if (!estimate_radius) {
+ NavigationServer2D::get_singleton()->agent_set_radius(agent, radius);
+ } else if (parent_node2d) {
+ NavigationServer2D::get_singleton()->agent_set_radius(agent, estimate_agent_radius());
+ }
+}
+
+real_t NavigationObstacle2D::estimate_agent_radius() const {
if (parent_node2d) {
// Estimate the radius of this physics body
real_t radius = 0.0;
@@ -101,15 +138,21 @@ void NavigationObstacle2D::update_agent_shape() {
Vector2 s = parent_node2d->get_global_scale();
radius *= MAX(s.x, s.y);
- if (radius == 0.0) {
- radius = 1.0; // Never a 0 radius
+ if (radius > 0.0) {
+ return radius;
}
-
- // Initialize the Agent as an object
- NavigationServer2D::get_singleton()->agent_set_neighbor_dist(agent, 0.0);
- NavigationServer2D::get_singleton()->agent_set_max_neighbors(agent, 0);
- NavigationServer2D::get_singleton()->agent_set_time_horizon(agent, 0.0);
- NavigationServer2D::get_singleton()->agent_set_radius(agent, radius);
- NavigationServer2D::get_singleton()->agent_set_max_speed(agent, 0.0);
}
+ return 1.0; // Never a 0 radius
+}
+
+void NavigationObstacle2D::set_estimate_radius(bool p_estimate_radius) {
+ estimate_radius = p_estimate_radius;
+ notify_property_list_changed();
+ reevaluate_agent_radius();
+}
+
+void NavigationObstacle2D::set_radius(real_t p_radius) {
+ ERR_FAIL_COND_MSG(p_radius <= 0.0, "Radius must be greater than 0.");
+ radius = p_radius;
+ reevaluate_agent_radius();
}
diff --git a/scene/2d/navigation_obstacle_2d.h b/scene/2d/navigation_obstacle_2d.h
index 9cffc2c0c3..a5603f059f 100644
--- a/scene/2d/navigation_obstacle_2d.h
+++ b/scene/2d/navigation_obstacle_2d.h
@@ -40,8 +40,12 @@ class NavigationObstacle2D : public Node {
Node2D *parent_node2d = nullptr;
RID agent;
+ bool estimate_radius = true;
+ real_t radius = 1.0;
+
protected:
static void _bind_methods();
+ void _validate_property(PropertyInfo &p_property) const override;
void _notification(int p_what);
public:
@@ -52,10 +56,21 @@ public:
return agent;
}
+ void set_estimate_radius(bool p_estimate_radius);
+ bool is_radius_estimated() const {
+ return estimate_radius;
+ }
+ void set_radius(real_t p_radius);
+ real_t get_radius() const {
+ return radius;
+ }
+
TypedArray<String> get_configuration_warnings() const override;
private:
- void update_agent_shape();
+ void initialize_agent();
+ void reevaluate_agent_radius();
+ real_t estimate_agent_radius() const;
};
#endif
diff --git a/scene/2d/navigation_region_2d.cpp b/scene/2d/navigation_region_2d.cpp
index cbf0d50c4e..bdb6cda5af 100644
--- a/scene/2d/navigation_region_2d.cpp
+++ b/scene/2d/navigation_region_2d.cpp
@@ -346,9 +346,9 @@ void NavigationPolygon::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_outlines", "outlines"), &NavigationPolygon::_set_outlines);
ClassDB::bind_method(D_METHOD("_get_outlines"), &NavigationPolygon::_get_outlines);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR2_ARRAY, "vertices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_vertices", "get_vertices");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "polygons", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_polygons", "_get_polygons");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "outlines", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_outlines", "_get_outlines");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR2_ARRAY, "vertices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_vertices", "get_vertices");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "polygons", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_polygons", "_get_polygons");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "outlines", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_outlines", "_get_outlines");
}
void NavigationRegion2D::set_enabled(bool p_enabled) {
diff --git a/scene/2d/physics_body_2d.cpp b/scene/2d/physics_body_2d.cpp
index 4d4d21bad7..a43d498a62 100644
--- a/scene/2d/physics_body_2d.cpp
+++ b/scene/2d/physics_body_2d.cpp
@@ -684,6 +684,24 @@ real_t RigidDynamicBody2D::get_gravity_scale() const {
return gravity_scale;
}
+void RigidDynamicBody2D::set_linear_damp_mode(DampMode p_mode) {
+ linear_damp_mode = p_mode;
+ PhysicsServer2D::get_singleton()->body_set_param(get_rid(), PhysicsServer2D::BODY_PARAM_LINEAR_DAMP_MODE, linear_damp_mode);
+}
+
+RigidDynamicBody2D::DampMode RigidDynamicBody2D::get_linear_damp_mode() const {
+ return linear_damp_mode;
+}
+
+void RigidDynamicBody2D::set_angular_damp_mode(DampMode p_mode) {
+ angular_damp_mode = p_mode;
+ PhysicsServer2D::get_singleton()->body_set_param(get_rid(), PhysicsServer2D::BODY_PARAM_ANGULAR_DAMP_MODE, angular_damp_mode);
+}
+
+RigidDynamicBody2D::DampMode RigidDynamicBody2D::get_angular_damp_mode() const {
+ return angular_damp_mode;
+}
+
void RigidDynamicBody2D::set_linear_damp(real_t p_linear_damp) {
ERR_FAIL_COND(p_linear_damp < -1);
linear_damp = p_linear_damp;
@@ -916,6 +934,12 @@ void RigidDynamicBody2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_gravity_scale", "gravity_scale"), &RigidDynamicBody2D::set_gravity_scale);
ClassDB::bind_method(D_METHOD("get_gravity_scale"), &RigidDynamicBody2D::get_gravity_scale);
+ ClassDB::bind_method(D_METHOD("set_linear_damp_mode", "linear_damp_mode"), &RigidDynamicBody2D::set_linear_damp_mode);
+ ClassDB::bind_method(D_METHOD("get_linear_damp_mode"), &RigidDynamicBody2D::get_linear_damp_mode);
+
+ ClassDB::bind_method(D_METHOD("set_angular_damp_mode", "angular_damp_mode"), &RigidDynamicBody2D::set_angular_damp_mode);
+ ClassDB::bind_method(D_METHOD("get_angular_damp_mode"), &RigidDynamicBody2D::get_angular_damp_mode);
+
ClassDB::bind_method(D_METHOD("set_linear_damp", "linear_damp"), &RigidDynamicBody2D::set_linear_damp);
ClassDB::bind_method(D_METHOD("get_linear_damp"), &RigidDynamicBody2D::get_linear_damp);
@@ -992,9 +1016,11 @@ void RigidDynamicBody2D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "freeze_mode", PROPERTY_HINT_ENUM, "Static,Kinematic"), "set_freeze_mode", "get_freeze_mode");
ADD_GROUP("Linear", "linear_");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "linear_velocity"), "set_linear_velocity", "get_linear_velocity");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "linear_damp_mode", PROPERTY_HINT_ENUM, "Combine,Replace"), "set_linear_damp_mode", "get_linear_damp_mode");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "linear_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"), "set_linear_damp", "get_linear_damp");
ADD_GROUP("Angular", "angular_");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "angular_velocity"), "set_angular_velocity", "get_angular_velocity");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "angular_damp_mode", PROPERTY_HINT_ENUM, "Combine,Replace"), "set_angular_damp_mode", "get_angular_damp_mode");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "angular_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"), "set_angular_damp", "get_angular_damp");
ADD_GROUP("Applied Forces", "applied_");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "applied_force"), "set_applied_force", "get_applied_force");
@@ -1012,6 +1038,9 @@ void RigidDynamicBody2D::_bind_methods() {
BIND_ENUM_CONSTANT(CENTER_OF_MASS_MODE_AUTO);
BIND_ENUM_CONSTANT(CENTER_OF_MASS_MODE_CUSTOM);
+ BIND_ENUM_CONSTANT(DAMP_MODE_COMBINE);
+ BIND_ENUM_CONSTANT(DAMP_MODE_REPLACE);
+
BIND_ENUM_CONSTANT(CCD_MODE_DISABLED);
BIND_ENUM_CONSTANT(CCD_MODE_CAST_RAY);
BIND_ENUM_CONSTANT(CCD_MODE_CAST_SHAPE);
@@ -1020,7 +1049,7 @@ void RigidDynamicBody2D::_bind_methods() {
void RigidDynamicBody2D::_validate_property(PropertyInfo &property) const {
if (center_of_mass_mode != CENTER_OF_MASS_MODE_CUSTOM) {
if (property.name == "center_of_mass") {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
}
@@ -1686,9 +1715,9 @@ void CharacterBody2D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "motion_mode", PROPERTY_HINT_ENUM, "Grounded,Free", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED), "set_motion_mode", "get_motion_mode");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "up_direction"), "set_up_direction", "get_up_direction");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "motion_velocity", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_motion_velocity", "get_motion_velocity");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "motion_velocity", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_motion_velocity", "get_motion_velocity");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "slide_on_ceiling"), "set_slide_on_ceiling_enabled", "is_slide_on_ceiling_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "max_slides", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_max_slides", "get_max_slides");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "max_slides", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_max_slides", "get_max_slides");
ADD_GROUP("Free Mode", "free_mode_");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "free_mode_min_slide_angle", PROPERTY_HINT_RANGE, "0,180,0.1,radians", PROPERTY_USAGE_DEFAULT), "set_free_mode_min_slide_angle", "get_free_mode_min_slide_angle");
@@ -1715,11 +1744,11 @@ void CharacterBody2D::_bind_methods() {
void CharacterBody2D::_validate_property(PropertyInfo &property) const {
if (motion_mode == MOTION_MODE_FREE) {
if (property.name.begins_with("floor_") || property.name == "up_direction" || property.name == "slide_on_ceiling") {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
} else {
if (property.name == "free_mode_min_slide_angle") {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
}
diff --git a/scene/2d/physics_body_2d.h b/scene/2d/physics_body_2d.h
index 15e8469bb4..2abce4b0a5 100644
--- a/scene/2d/physics_body_2d.h
+++ b/scene/2d/physics_body_2d.h
@@ -127,6 +127,11 @@ public:
CENTER_OF_MASS_MODE_CUSTOM,
};
+ enum DampMode {
+ DAMP_MODE_COMBINE,
+ DAMP_MODE_REPLACE,
+ };
+
enum CCDMode {
CCD_MODE_DISABLED,
CCD_MODE_CAST_RAY,
@@ -146,8 +151,12 @@ private:
Ref<PhysicsMaterial> physics_material_override;
real_t gravity_scale = 1.0;
- real_t linear_damp = -1.0;
- real_t angular_damp = -1.0;
+
+ DampMode linear_damp_mode = DAMP_MODE_COMBINE;
+ DampMode angular_damp_mode = DAMP_MODE_COMBINE;
+
+ real_t linear_damp = 0.0;
+ real_t angular_damp = 0.0;
Vector2 linear_velocity;
real_t angular_velocity = 0.0;
@@ -241,6 +250,12 @@ public:
void set_gravity_scale(real_t p_gravity_scale);
real_t get_gravity_scale() const;
+ void set_linear_damp_mode(DampMode p_mode);
+ DampMode get_linear_damp_mode() const;
+
+ void set_angular_damp_mode(DampMode p_mode);
+ DampMode get_angular_damp_mode() const;
+
void set_linear_damp(real_t p_linear_damp);
real_t get_linear_damp() const;
@@ -300,6 +315,7 @@ private:
VARIANT_ENUM_CAST(RigidDynamicBody2D::FreezeMode);
VARIANT_ENUM_CAST(RigidDynamicBody2D::CenterOfMassMode);
+VARIANT_ENUM_CAST(RigidDynamicBody2D::DampMode);
VARIANT_ENUM_CAST(RigidDynamicBody2D::CCDMode);
class CharacterBody2D : public PhysicsBody2D {
diff --git a/scene/2d/polygon_2d.cpp b/scene/2d/polygon_2d.cpp
index 7366be5a7d..f00959bbb6 100644
--- a/scene/2d/polygon_2d.cpp
+++ b/scene/2d/polygon_2d.cpp
@@ -92,7 +92,7 @@ bool Polygon2D::_edit_is_selected_on_click(const Point2 &p_point, double p_toler
void Polygon2D::_validate_property(PropertyInfo &property) const {
if (!invert && property.name == "invert_border") {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
@@ -554,7 +554,9 @@ void Polygon2D::set_bone_path(int p_index, const NodePath &p_path) {
Array Polygon2D::_get_bones() const {
Array bones;
for (int i = 0; i < get_bone_count(); i++) {
- bones.push_back(get_bone_path(i));
+ // Convert path property to String to avoid errors due to invalid node path in editor,
+ // because it's relative to the Skeleton2D node and not Polygon2D.
+ bones.push_back(String(get_bone_path(i)));
bones.push_back(get_bone_weights(i));
}
return bones;
@@ -564,7 +566,8 @@ void Polygon2D::_set_bones(const Array &p_bones) {
ERR_FAIL_COND(p_bones.size() & 1);
clear_bones();
for (int i = 0; i < p_bones.size(); i += 2) {
- add_bone(p_bones[i], p_bones[i + 1]);
+ // Convert back from String to NodePath.
+ add_bone(NodePath(p_bones[i]), p_bones[i + 1]);
}
}
@@ -659,7 +662,7 @@ void Polygon2D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR2_ARRAY, "uv"), "set_uv", "get_uv");
ADD_PROPERTY(PropertyInfo(Variant::PACKED_COLOR_ARRAY, "vertex_colors"), "set_vertex_colors", "get_vertex_colors");
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "polygons"), "set_polygons", "get_polygons");
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "bones", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "_set_bones", "_get_bones");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "bones", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "_set_bones", "_get_bones");
ADD_PROPERTY(PropertyInfo(Variant::INT, "internal_vertex_count", PROPERTY_HINT_RANGE, "0,1000"), "set_internal_vertex_count", "get_internal_vertex_count");
}
diff --git a/scene/2d/ray_cast_2d.cpp b/scene/2d/ray_cast_2d.cpp
index 0a8e9e2a58..7af91f3a8d 100644
--- a/scene/2d/ray_cast_2d.cpp
+++ b/scene/2d/ray_cast_2d.cpp
@@ -192,7 +192,16 @@ void RayCast2D::_update_raycast_state() {
PhysicsDirectSpaceState2D::RayResult rr;
bool prev_collision_state = collided;
- if (dss->intersect_ray(gt.get_origin(), gt.xform(to), rr, exclude, collision_mask, collide_with_bodies, collide_with_areas)) {
+
+ PhysicsDirectSpaceState2D::RayParameters ray_params;
+ ray_params.from = gt.get_origin();
+ ray_params.to = gt.xform(to);
+ ray_params.exclude = exclude;
+ ray_params.collision_mask = collision_mask;
+ ray_params.collide_with_bodies = collide_with_bodies;
+ ray_params.collide_with_areas = collide_with_areas;
+
+ if (dss->intersect_ray(ray_params, rr)) {
collided = true;
against = rr.collider_id;
collision_point = rr.position;
diff --git a/scene/2d/sprite_2d.cpp b/scene/2d/sprite_2d.cpp
index 5761f19a53..b2302d09db 100644
--- a/scene/2d/sprite_2d.cpp
+++ b/scene/2d/sprite_2d.cpp
@@ -385,7 +385,7 @@ void Sprite2D::_validate_property(PropertyInfo &property) const {
}
if (!region_enabled && (property.name == "region_rect" || property.name == "region_filter_clip")) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/2d/tile_map.cpp b/scene/2d/tile_map.cpp
index c11262e0c9..8af7637ffd 100644
--- a/scene/2d/tile_map.cpp
+++ b/scene/2d/tile_map.cpp
@@ -2146,18 +2146,16 @@ Set<TileSet::TerrainsPattern> TileMap::_get_valid_terrains_patterns_for_constrai
Set<TileSet::TerrainsPattern> compatible_terrain_tile_patterns;
for (TileSet::TerrainsPattern &terrain_pattern : tile_set->get_terrains_pattern_set(p_terrain_set)) {
int valid = true;
- int in_pattern_count = 0;
for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
TileSet::CellNeighbor bit = TileSet::CellNeighbor(i);
if (tile_set->is_valid_peering_bit_terrain(p_terrain_set, bit)) {
// Check if the bit is compatible with the constraints.
- TerrainConstraint terrain_bit_constraint = TerrainConstraint(this, p_position, bit, terrain_pattern[in_pattern_count]);
+ TerrainConstraint terrain_bit_constraint = TerrainConstraint(this, p_position, bit, terrain_pattern.get_terrain(bit));
Set<TerrainConstraint>::Element *in_set_constraint_element = p_constraints.find(terrain_bit_constraint);
if (in_set_constraint_element && in_set_constraint_element->get().get_terrain() != terrain_bit_constraint.get_terrain()) {
valid = false;
break;
}
- in_pattern_count++;
}
}
@@ -2249,13 +2247,11 @@ Set<TileMap::TerrainConstraint> TileMap::get_terrain_constraints_from_added_tile
// Compute the constraints needed from the surrounding tiles.
Set<TerrainConstraint> output;
- int in_pattern_count = 0;
for (uint32_t i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
TileSet::CellNeighbor side = TileSet::CellNeighbor(i);
if (tile_set->is_valid_peering_bit_terrain(p_terrain_set, side)) {
- TerrainConstraint c = TerrainConstraint(this, p_position, side, p_terrains_pattern[in_pattern_count]);
+ TerrainConstraint c = TerrainConstraint(this, p_position, side, p_terrains_pattern.get_terrain(side));
output.insert(c);
- in_pattern_count++;
}
}
@@ -2312,8 +2308,11 @@ Map<Vector2i, TileSet::TerrainsPattern> TileMap::terrain_wave_function_collapse(
int pattern_index = 0;
for (const TileSet::TerrainsPattern &pattern : valid_tiles) {
Set<int> terrains;
- for (int i = 0; i < pattern.size(); i++) {
- terrains.insert(pattern[i]);
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ TileSet::CellNeighbor side = TileSet::CellNeighbor(i);
+ if (tile_set->is_valid_peering_bit_terrain(p_terrain_set, side)) {
+ terrains.insert(pattern.get_terrain(side));
+ }
}
min_terrain_count = MIN(min_terrain_count, terrains.size());
terrains_counts.push_back(terrains.size());
@@ -2369,7 +2368,7 @@ void TileMap::set_cells_from_surrounding_terrains(int p_layer, TypedArray<Vector
Map<Vector2i, TileSet::TerrainsPattern> wfc_output = terrain_wave_function_collapse(coords_set, p_terrain_set, constraints);
for (const KeyValue<Vector2i, TileSet::TerrainsPattern> &kv : wfc_output) {
- TileMapCell cell = tile_set->get_random_tile_from_pattern(p_terrain_set, kv.value);
+ TileMapCell cell = tile_set->get_random_tile_from_terrains_pattern(p_terrain_set, kv.value);
set_cell(p_layer, kv.key, cell.source_id, cell.get_atlas_coords(), cell.alternative_tile);
}
}
@@ -2711,7 +2710,7 @@ bool TileMap::_get(const StringName &p_name, Variant &r_ret) const {
}
void TileMap::_get_property_list(List<PropertyInfo> *p_list) const {
- p_list->push_back(PropertyInfo(Variant::INT, "format", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::INT, "format", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
p_list->push_back(PropertyInfo(Variant::NIL, "Layers", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_GROUP));
for (unsigned int i = 0; i < layers.size(); i++) {
p_list->push_back(PropertyInfo(Variant::STRING, vformat("layer_%d/name", i), PROPERTY_HINT_NONE));
@@ -2720,7 +2719,7 @@ void TileMap::_get_property_list(List<PropertyInfo> *p_list) const {
p_list->push_back(PropertyInfo(Variant::BOOL, vformat("layer_%d/y_sort_enabled", i), PROPERTY_HINT_NONE));
p_list->push_back(PropertyInfo(Variant::INT, vformat("layer_%d/y_sort_origin", i), PROPERTY_HINT_NONE));
p_list->push_back(PropertyInfo(Variant::INT, vformat("layer_%d/z_index", i), PROPERTY_HINT_NONE));
- p_list->push_back(PropertyInfo(Variant::OBJECT, vformat("layer_%d/tile_data", i), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, vformat("layer_%d/tile_data", i), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
}
diff --git a/scene/3d/area_3d.cpp b/scene/3d/area_3d.cpp
index 9179983220..e459c42e8c 100644
--- a/scene/3d/area_3d.cpp
+++ b/scene/3d/area_3d.cpp
@@ -334,11 +334,11 @@ void Area3D::set_monitoring(bool p_enable) {
monitoring = p_enable;
if (monitoring) {
- PhysicsServer3D::get_singleton()->area_set_monitor_callback(get_rid(), this, SceneStringNames::get_singleton()->_body_inout);
- PhysicsServer3D::get_singleton()->area_set_area_monitor_callback(get_rid(), this, SceneStringNames::get_singleton()->_area_inout);
+ PhysicsServer3D::get_singleton()->area_set_monitor_callback(get_rid(), callable_mp(this, &Area3D::_body_inout));
+ PhysicsServer3D::get_singleton()->area_set_area_monitor_callback(get_rid(), callable_mp(this, &Area3D::_area_inout));
} else {
- PhysicsServer3D::get_singleton()->area_set_monitor_callback(get_rid(), nullptr, StringName());
- PhysicsServer3D::get_singleton()->area_set_area_monitor_callback(get_rid(), nullptr, StringName());
+ PhysicsServer3D::get_singleton()->area_set_monitor_callback(get_rid(), Callable());
+ PhysicsServer3D::get_singleton()->area_set_area_monitor_callback(get_rid(), Callable());
_clear_monitoring();
}
}
@@ -630,9 +630,6 @@ void Area3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("overlaps_body", "body"), &Area3D::overlaps_body);
ClassDB::bind_method(D_METHOD("overlaps_area", "area"), &Area3D::overlaps_area);
- ClassDB::bind_method(D_METHOD("_body_inout"), &Area3D::_body_inout);
- ClassDB::bind_method(D_METHOD("_area_inout"), &Area3D::_area_inout);
-
ClassDB::bind_method(D_METHOD("set_audio_bus_override", "enable"), &Area3D::set_audio_bus_override);
ClassDB::bind_method(D_METHOD("is_overriding_audio_bus"), &Area3D::is_overriding_audio_bus);
diff --git a/scene/3d/audio_stream_player_3d.cpp b/scene/3d/audio_stream_player_3d.cpp
index b5e4eac5d5..34f748b197 100644
--- a/scene/3d/audio_stream_player_3d.cpp
+++ b/scene/3d/audio_stream_player_3d.cpp
@@ -327,7 +327,13 @@ Area3D *AudioStreamPlayer3D::_get_overriding_area() {
PhysicsDirectSpaceState3D::ShapeResult sr[MAX_INTERSECT_AREAS];
- int areas = space_state->intersect_point(global_pos, sr, MAX_INTERSECT_AREAS, Set<RID>(), area_mask, false, true);
+ PhysicsDirectSpaceState3D::PointParameters point_params;
+ point_params.position = global_pos;
+ point_params.collision_mask = area_mask;
+ point_params.collide_with_bodies = false;
+ point_params.collide_with_areas = true;
+
+ int areas = space_state->intersect_point(point_params, sr, MAX_INTERSECT_AREAS);
for (int i = 0; i < areas; i++) {
if (!sr[i].collider) {
diff --git a/scene/3d/camera_3d.cpp b/scene/3d/camera_3d.cpp
index af3b3ae5bc..cc5b7078e3 100644
--- a/scene/3d/camera_3d.cpp
+++ b/scene/3d/camera_3d.cpp
@@ -60,15 +60,15 @@ void Camera3D::_update_camera_mode() {
void Camera3D::_validate_property(PropertyInfo &p_property) const {
if (p_property.name == "fov") {
if (mode != PROJECTION_PERSPECTIVE) {
- p_property.usage = PROPERTY_USAGE_NOEDITOR;
+ p_property.usage = PROPERTY_USAGE_NO_EDITOR;
}
} else if (p_property.name == "size") {
if (mode != PROJECTION_ORTHOGONAL && mode != PROJECTION_FRUSTUM) {
- p_property.usage = PROPERTY_USAGE_NOEDITOR;
+ p_property.usage = PROPERTY_USAGE_NO_EDITOR;
}
} else if (p_property.name == "frustum_offset") {
if (mode != PROJECTION_FRUSTUM) {
- p_property.usage = PROPERTY_USAGE_NOEDITOR;
+ p_property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/3d/cpu_particles_3d.cpp b/scene/3d/cpu_particles_3d.cpp
index 5f13ed3c66..d347d24c2c 100644
--- a/scene/3d/cpu_particles_3d.cpp
+++ b/scene/3d/cpu_particles_3d.cpp
@@ -1328,7 +1328,7 @@ void CPUParticles3D::convert_from_particles(Node *p_particles) {
set_color(material->get_color());
- Ref<GradientTexture> gt = material->get_color_ramp();
+ Ref<GradientTexture1D> gt = material->get_color_ramp();
if (gt.is_valid()) {
set_color_ramp(gt->get_gradient());
}
diff --git a/scene/3d/decal.cpp b/scene/3d/decal.cpp
index e3c63d62f9..c9f634a5e5 100644
--- a/scene/3d/decal.cpp
+++ b/scene/3d/decal.cpp
@@ -158,7 +158,7 @@ Vector<Face3> Decal::get_faces(uint32_t p_usage_flags) const {
void Decal::_validate_property(PropertyInfo &property) const {
if (!distance_fade_enabled && (property.name == "distance_fade_begin" || property.name == "distance_fade_length")) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
VisualInstance3D::_validate_property(property);
}
diff --git a/scene/3d/fog_volume.cpp b/scene/3d/fog_volume.cpp
index cc4fbbb41b..694defd7dc 100644
--- a/scene/3d/fog_volume.cpp
+++ b/scene/3d/fog_volume.cpp
@@ -50,6 +50,7 @@ void FogVolume::_validate_property(PropertyInfo &property) const {
property.usage = PROPERTY_USAGE_NONE;
return;
}
+ VisualInstance3D::_validate_property(property);
}
void FogVolume::set_extents(const Vector3 &p_extents) {
diff --git a/scene/3d/light_3d.cpp b/scene/3d/light_3d.cpp
index fbdbd79c0c..5d9ae019c2 100644
--- a/scene/3d/light_3d.cpp
+++ b/scene/3d/light_3d.cpp
@@ -197,7 +197,7 @@ bool Light3D::is_editor_only() const {
void Light3D::_validate_property(PropertyInfo &property) const {
if (!shadow && (property.name == "shadow_color" || property.name == "shadow_bias" || property.name == "shadow_normal_bias" || property.name == "shadow_reverse_cull_face" || property.name == "shadow_transmittance_bias" || property.name == "shadow_fog_fade" || property.name == "shadow_blur")) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if (get_light_type() != RS::LIGHT_DIRECTIONAL && property.name == "light_angular_distance") {
@@ -379,12 +379,12 @@ bool DirectionalLight3D::is_sky_only() const {
void DirectionalLight3D::_validate_property(PropertyInfo &property) const {
if (shadow_mode == SHADOW_ORTHOGONAL && (property.name == "directional_shadow_split_1" || property.name == "directional_shadow_blend_splits")) {
// Split 2 and split blending are only used with the PSSM 2 Splits and PSSM 4 Splits shadow modes.
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if ((shadow_mode == SHADOW_ORTHOGONAL || shadow_mode == SHADOW_PARALLEL_2_SPLITS) && (property.name == "directional_shadow_split_2" || property.name == "directional_shadow_split_3")) {
// Splits 3 and 4 are only used with the PSSM 4 Splits shadow mode.
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if (property.name == "light_size" || property.name == "light_projector" || property.name == "light_specular") {
diff --git a/scene/3d/lightmap_gi.cpp b/scene/3d/lightmap_gi.cpp
index 3bcb6add76..1b5d4ad243 100644
--- a/scene/3d/lightmap_gi.cpp
+++ b/scene/3d/lightmap_gi.cpp
@@ -200,9 +200,9 @@ void LightmapGIData::_bind_methods() {
ClassDB::bind_method(D_METHOD("_get_probe_data"), &LightmapGIData::_get_probe_data);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "light_texture", PROPERTY_HINT_RESOURCE_TYPE, "TextureLayered"), "set_light_texture", "get_light_texture");
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "uses_spherical_harmonics", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_uses_spherical_harmonics", "is_using_spherical_harmonics");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "user_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_user_data", "_get_user_data");
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "probe_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_probe_data", "_get_probe_data");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "uses_spherical_harmonics", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_uses_spherical_harmonics", "is_using_spherical_harmonics");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "user_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_user_data", "_get_user_data");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "probe_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_probe_data", "_get_probe_data");
}
LightmapGIData::LightmapGIData() {
diff --git a/scene/3d/mesh_instance_3d.cpp b/scene/3d/mesh_instance_3d.cpp
index c148f95461..ae686143e4 100644
--- a/scene/3d/mesh_instance_3d.cpp
+++ b/scene/3d/mesh_instance_3d.cpp
@@ -244,7 +244,7 @@ Node *MeshInstance3D::create_trimesh_collision_node() {
StaticBody3D *static_body = memnew(StaticBody3D);
CollisionShape3D *cshape = memnew(CollisionShape3D);
cshape->set_shape(shape);
- static_body->add_child(cshape);
+ static_body->add_child(cshape, true);
return static_body;
}
@@ -253,7 +253,7 @@ void MeshInstance3D::create_trimesh_collision() {
ERR_FAIL_COND(!static_body);
static_body->set_name(String(get_name()) + "_col");
- add_child(static_body);
+ add_child(static_body, true);
if (get_owner()) {
CollisionShape3D *cshape = Object::cast_to<CollisionShape3D>(static_body->get_child(0));
static_body->set_owner(get_owner());
@@ -274,7 +274,7 @@ Node *MeshInstance3D::create_convex_collision_node(bool p_clean, bool p_simplify
StaticBody3D *static_body = memnew(StaticBody3D);
CollisionShape3D *cshape = memnew(CollisionShape3D);
cshape->set_shape(shape);
- static_body->add_child(cshape);
+ static_body->add_child(cshape, true);
return static_body;
}
@@ -283,7 +283,7 @@ void MeshInstance3D::create_convex_collision(bool p_clean, bool p_simplify) {
ERR_FAIL_COND(!static_body);
static_body->set_name(String(get_name()) + "_col");
- add_child(static_body);
+ add_child(static_body, true);
if (get_owner()) {
CollisionShape3D *cshape = Object::cast_to<CollisionShape3D>(static_body->get_child(0));
static_body->set_owner(get_owner());
@@ -306,7 +306,7 @@ Node *MeshInstance3D::create_multiple_convex_collisions_node() {
for (int i = 0; i < shapes.size(); i++) {
CollisionShape3D *cshape = memnew(CollisionShape3D);
cshape->set_shape(shapes[i]);
- static_body->add_child(cshape);
+ static_body->add_child(cshape, true);
}
return static_body;
}
@@ -316,7 +316,7 @@ void MeshInstance3D::create_multiple_convex_collisions() {
ERR_FAIL_COND(!static_body);
static_body->set_name(String(get_name()) + "_col");
- add_child(static_body);
+ add_child(static_body, true);
if (get_owner()) {
static_body->set_owner(get_owner());
int count = static_body->get_child_count();
@@ -460,7 +460,7 @@ void MeshInstance3D::create_debug_tangents() {
MeshInstance3D *mi = memnew(MeshInstance3D);
mi->set_mesh(am);
mi->set_name("DebugTangents");
- add_child(mi);
+ add_child(mi, true);
#ifdef TOOLS_ENABLED
if (is_inside_tree() && this == get_tree()->get_edited_scene_root()) {
diff --git a/scene/3d/navigation_obstacle_3d.cpp b/scene/3d/navigation_obstacle_3d.cpp
index 20ffc3b00e..f9fff802e0 100644
--- a/scene/3d/navigation_obstacle_3d.cpp
+++ b/scene/3d/navigation_obstacle_3d.cpp
@@ -35,19 +35,41 @@
#include "servers/navigation_server_3d.h"
void NavigationObstacle3D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_estimate_radius", "estimate_radius"), &NavigationObstacle3D::set_estimate_radius);
+ ClassDB::bind_method(D_METHOD("is_radius_estimated"), &NavigationObstacle3D::is_radius_estimated);
+ ClassDB::bind_method(D_METHOD("set_radius", "radius"), &NavigationObstacle3D::set_radius);
+ ClassDB::bind_method(D_METHOD("get_radius"), &NavigationObstacle3D::get_radius);
+
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "estimate_radius"), "set_estimate_radius", "is_radius_estimated");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "radius", PROPERTY_HINT_RANGE, "0.01,100,0.01"), "set_radius", "get_radius");
+}
+
+void NavigationObstacle3D::_validate_property(PropertyInfo &p_property) const {
+ if (p_property.name == "radius") {
+ if (estimate_radius) {
+ p_property.usage = PROPERTY_USAGE_NO_EDITOR;
+ }
+ }
}
void NavigationObstacle3D::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_READY: {
+ initialize_agent();
+ parent_node3d = Object::cast_to<Node3D>(get_parent());
+ if (parent_node3d != nullptr) {
+ // place agent on navigation map first or else the RVO agent callback creation fails silently later
+ NavigationServer3D::get_singleton()->agent_set_map(get_rid(), parent_node3d->get_world_3d()->get_navigation_map());
+ }
set_physics_process_internal(true);
} break;
case NOTIFICATION_EXIT_TREE: {
+ parent_node3d = nullptr;
set_physics_process_internal(false);
} break;
case NOTIFICATION_PARENTED: {
parent_node3d = Object::cast_to<Node3D>(get_parent());
- update_agent_shape();
+ reevaluate_agent_radius();
} break;
case NOTIFICATION_UNPARENTED: {
parent_node3d = nullptr;
@@ -86,7 +108,22 @@ TypedArray<String> NavigationObstacle3D::get_configuration_warnings() const {
return warnings;
}
-void NavigationObstacle3D::update_agent_shape() {
+void NavigationObstacle3D::initialize_agent() {
+ NavigationServer3D::get_singleton()->agent_set_neighbor_dist(agent, 0.0);
+ NavigationServer3D::get_singleton()->agent_set_max_neighbors(agent, 0);
+ NavigationServer3D::get_singleton()->agent_set_time_horizon(agent, 0.0);
+ NavigationServer3D::get_singleton()->agent_set_max_speed(agent, 0.0);
+}
+
+void NavigationObstacle3D::reevaluate_agent_radius() {
+ if (!estimate_radius) {
+ NavigationServer3D::get_singleton()->agent_set_radius(agent, radius);
+ } else if (parent_node3d) {
+ NavigationServer3D::get_singleton()->agent_set_radius(agent, estimate_agent_radius());
+ }
+}
+
+real_t NavigationObstacle3D::estimate_agent_radius() const {
if (parent_node3d) {
// Estimate the radius of this physics body
real_t radius = 0.0;
@@ -110,15 +147,21 @@ void NavigationObstacle3D::update_agent_shape() {
Vector3 s = parent_node3d->get_global_transform().basis.get_scale();
radius *= MAX(s.x, MAX(s.y, s.z));
- if (radius == 0.0) {
- radius = 1.0; // Never a 0 radius
+ if (radius > 0.0) {
+ return radius;
}
-
- // Initialize the Agent as an object
- NavigationServer3D::get_singleton()->agent_set_neighbor_dist(agent, 0.0);
- NavigationServer3D::get_singleton()->agent_set_max_neighbors(agent, 0);
- NavigationServer3D::get_singleton()->agent_set_time_horizon(agent, 0.0);
- NavigationServer3D::get_singleton()->agent_set_radius(agent, radius);
- NavigationServer3D::get_singleton()->agent_set_max_speed(agent, 0.0);
}
+ return 1.0; // Never a 0 radius
+}
+
+void NavigationObstacle3D::set_estimate_radius(bool p_estimate_radius) {
+ estimate_radius = p_estimate_radius;
+ notify_property_list_changed();
+ reevaluate_agent_radius();
+}
+
+void NavigationObstacle3D::set_radius(real_t p_radius) {
+ ERR_FAIL_COND_MSG(p_radius <= 0.0, "Radius must be greater than 0.");
+ radius = p_radius;
+ reevaluate_agent_radius();
}
diff --git a/scene/3d/navigation_obstacle_3d.h b/scene/3d/navigation_obstacle_3d.h
index ab0b158303..12c813ab08 100644
--- a/scene/3d/navigation_obstacle_3d.h
+++ b/scene/3d/navigation_obstacle_3d.h
@@ -39,8 +39,12 @@ class NavigationObstacle3D : public Node {
Node3D *parent_node3d = nullptr;
RID agent;
+ bool estimate_radius = true;
+ real_t radius = 1.0;
+
protected:
static void _bind_methods();
+ void _validate_property(PropertyInfo &p_property) const override;
void _notification(int p_what);
public:
@@ -51,10 +55,21 @@ public:
return agent;
}
+ void set_estimate_radius(bool p_estimate_radius);
+ bool is_radius_estimated() const {
+ return estimate_radius;
+ }
+ void set_radius(real_t p_radius);
+ real_t get_radius() const {
+ return radius;
+ }
+
TypedArray<String> get_configuration_warnings() const override;
private:
- void update_agent_shape();
+ void initialize_agent();
+ void reevaluate_agent_radius();
+ real_t estimate_agent_radius() const;
};
#endif
diff --git a/scene/3d/node_3d.cpp b/scene/3d/node_3d.cpp
index 1265679b36..b7b88c7135 100644
--- a/scene/3d/node_3d.cpp
+++ b/scene/3d/node_3d.cpp
@@ -943,7 +943,7 @@ void Node3D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "rotation_edit_mode", PROPERTY_HINT_ENUM, "Euler,Quaternion,Basis"), "set_rotation_edit_mode", "get_rotation_edit_mode");
ADD_PROPERTY(PropertyInfo(Variant::INT, "rotation_order", PROPERTY_HINT_ENUM, "XYZ,XZY,YXZ,YZX,ZXY,ZYX"), "set_rotation_order", "get_rotation_order");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "top_level"), "set_as_top_level", "is_set_as_top_level");
- ADD_PROPERTY(PropertyInfo(Variant::TRANSFORM3D, "transform", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_transform", "get_transform");
+ ADD_PROPERTY(PropertyInfo(Variant::TRANSFORM3D, "transform", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_transform", "get_transform");
ADD_GROUP("Visibility", "");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "visible"), "set_visible", "is_visible");
ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "visibility_parent", PROPERTY_HINT_NODE_PATH_VALID_TYPES, "GeometryInstance3D"), "set_visibility_parent", "get_visibility_parent");
diff --git a/scene/3d/occluder_instance_3d.cpp b/scene/3d/occluder_instance_3d.cpp
index f3e174c01b..6c548edc74 100644
--- a/scene/3d/occluder_instance_3d.cpp
+++ b/scene/3d/occluder_instance_3d.cpp
@@ -130,8 +130,8 @@ void Occluder3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_indices", "indices"), &Occluder3D::set_indices);
ClassDB::bind_method(D_METHOD("get_indices"), &Occluder3D::get_indices);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR3_ARRAY, "vertices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_vertices", "get_vertices");
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_INT32_ARRAY, "indices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_indices", "get_indices");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR3_ARRAY, "vertices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_vertices", "get_vertices");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_INT32_ARRAY, "indices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_indices", "get_indices");
}
Occluder3D::Occluder3D() {
diff --git a/scene/3d/physics_body_3d.cpp b/scene/3d/physics_body_3d.cpp
index 4f1003839e..d0506227b4 100644
--- a/scene/3d/physics_body_3d.cpp
+++ b/scene/3d/physics_body_3d.cpp
@@ -758,8 +758,26 @@ real_t RigidDynamicBody3D::get_gravity_scale() const {
return gravity_scale;
}
+void RigidDynamicBody3D::set_linear_damp_mode(DampMode p_mode) {
+ linear_damp_mode = p_mode;
+ PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_LINEAR_DAMP_MODE, linear_damp_mode);
+}
+
+RigidDynamicBody3D::DampMode RigidDynamicBody3D::get_linear_damp_mode() const {
+ return linear_damp_mode;
+}
+
+void RigidDynamicBody3D::set_angular_damp_mode(DampMode p_mode) {
+ angular_damp_mode = p_mode;
+ PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_ANGULAR_DAMP_MODE, angular_damp_mode);
+}
+
+RigidDynamicBody3D::DampMode RigidDynamicBody3D::get_angular_damp_mode() const {
+ return angular_damp_mode;
+}
+
void RigidDynamicBody3D::set_linear_damp(real_t p_linear_damp) {
- ERR_FAIL_COND(p_linear_damp < -1);
+ ERR_FAIL_COND(p_linear_damp < 0.0);
linear_damp = p_linear_damp;
PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_LINEAR_DAMP, linear_damp);
}
@@ -769,7 +787,7 @@ real_t RigidDynamicBody3D::get_linear_damp() const {
}
void RigidDynamicBody3D::set_angular_damp(real_t p_angular_damp) {
- ERR_FAIL_COND(p_angular_damp < -1);
+ ERR_FAIL_COND(p_angular_damp < 0.0);
angular_damp = p_angular_damp;
PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_ANGULAR_DAMP, angular_damp);
}
@@ -970,6 +988,12 @@ void RigidDynamicBody3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_gravity_scale", "gravity_scale"), &RigidDynamicBody3D::set_gravity_scale);
ClassDB::bind_method(D_METHOD("get_gravity_scale"), &RigidDynamicBody3D::get_gravity_scale);
+ ClassDB::bind_method(D_METHOD("set_linear_damp_mode", "linear_damp_mode"), &RigidDynamicBody3D::set_linear_damp_mode);
+ ClassDB::bind_method(D_METHOD("get_linear_damp_mode"), &RigidDynamicBody3D::get_linear_damp_mode);
+
+ ClassDB::bind_method(D_METHOD("set_angular_damp_mode", "angular_damp_mode"), &RigidDynamicBody3D::set_angular_damp_mode);
+ ClassDB::bind_method(D_METHOD("get_angular_damp_mode"), &RigidDynamicBody3D::get_angular_damp_mode);
+
ClassDB::bind_method(D_METHOD("set_linear_damp", "linear_damp"), &RigidDynamicBody3D::set_linear_damp);
ClassDB::bind_method(D_METHOD("get_linear_damp"), &RigidDynamicBody3D::get_linear_damp);
@@ -1035,10 +1059,12 @@ void RigidDynamicBody3D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "freeze_mode", PROPERTY_HINT_ENUM, "Static,Kinematic"), "set_freeze_mode", "get_freeze_mode");
ADD_GROUP("Linear", "linear_");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "linear_velocity"), "set_linear_velocity", "get_linear_velocity");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "linear_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"), "set_linear_damp", "get_linear_damp");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "linear_damp_mode", PROPERTY_HINT_ENUM, "Combine,Replace"), "set_linear_damp_mode", "get_linear_damp_mode");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "linear_damp", PROPERTY_HINT_RANGE, "0,100,0.001,or_greater"), "set_linear_damp", "get_linear_damp");
ADD_GROUP("Angular", "angular_");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "angular_velocity"), "set_angular_velocity", "get_angular_velocity");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "angular_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"), "set_angular_damp", "get_angular_damp");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "angular_damp_mode", PROPERTY_HINT_ENUM, "Combine,Replace"), "set_angular_damp_mode", "get_angular_damp_mode");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "angular_damp", PROPERTY_HINT_RANGE, "0,100,0.001,or_greater"), "set_angular_damp", "get_angular_damp");
ADD_SIGNAL(MethodInfo("body_shape_entered", PropertyInfo(Variant::RID, "body_rid"), PropertyInfo(Variant::OBJECT, "body", PROPERTY_HINT_RESOURCE_TYPE, "Node"), PropertyInfo(Variant::INT, "body_shape_index"), PropertyInfo(Variant::INT, "local_shape_index")));
ADD_SIGNAL(MethodInfo("body_shape_exited", PropertyInfo(Variant::RID, "body_rid"), PropertyInfo(Variant::OBJECT, "body", PROPERTY_HINT_RESOURCE_TYPE, "Node"), PropertyInfo(Variant::INT, "body_shape_index"), PropertyInfo(Variant::INT, "local_shape_index")));
@@ -1051,12 +1077,15 @@ void RigidDynamicBody3D::_bind_methods() {
BIND_ENUM_CONSTANT(CENTER_OF_MASS_MODE_AUTO);
BIND_ENUM_CONSTANT(CENTER_OF_MASS_MODE_CUSTOM);
+
+ BIND_ENUM_CONSTANT(DAMP_MODE_COMBINE);
+ BIND_ENUM_CONSTANT(DAMP_MODE_REPLACE);
}
void RigidDynamicBody3D::_validate_property(PropertyInfo &property) const {
if (center_of_mass_mode != CENTER_OF_MASS_MODE_CUSTOM) {
if (property.name == "center_of_mass") {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
PhysicsBody3D::_validate_property(property);
@@ -1904,8 +1933,8 @@ void CharacterBody3D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::INT, "motion_mode", PROPERTY_HINT_ENUM, "Grounded,Free", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED), "set_motion_mode", "get_motion_mode");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "up_direction"), "set_up_direction", "get_up_direction");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "slide_on_ceiling"), "set_slide_on_ceiling_enabled", "is_slide_on_ceiling_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "motion_velocity", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_motion_velocity", "get_motion_velocity");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "max_slides", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_max_slides", "get_max_slides");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "motion_velocity", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_motion_velocity", "get_motion_velocity");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "max_slides", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_max_slides", "get_max_slides");
ADD_GROUP("Free Mode", "free_mode_");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "wall_min_slide_angle", PROPERTY_HINT_RANGE, "0,180,0.1,radians", PROPERTY_USAGE_DEFAULT), "set_wall_min_slide_angle", "get_wall_min_slide_angle");
ADD_GROUP("Floor", "floor_");
@@ -1931,7 +1960,7 @@ void CharacterBody3D::_bind_methods() {
void CharacterBody3D::_validate_property(PropertyInfo &property) const {
if (motion_mode == MOTION_MODE_FREE) {
if (property.name.begins_with("floor_") || property.name == "up_direction" || property.name == "slide_on_ceiling") {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
PhysicsBody3D::_validate_property(property);
@@ -2825,6 +2854,12 @@ void PhysicalBone3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_gravity_scale", "gravity_scale"), &PhysicalBone3D::set_gravity_scale);
ClassDB::bind_method(D_METHOD("get_gravity_scale"), &PhysicalBone3D::get_gravity_scale);
+ ClassDB::bind_method(D_METHOD("set_linear_damp_mode", "linear_damp_mode"), &PhysicalBone3D::set_linear_damp_mode);
+ ClassDB::bind_method(D_METHOD("get_linear_damp_mode"), &PhysicalBone3D::get_linear_damp_mode);
+
+ ClassDB::bind_method(D_METHOD("set_angular_damp_mode", "angular_damp_mode"), &PhysicalBone3D::set_angular_damp_mode);
+ ClassDB::bind_method(D_METHOD("get_angular_damp_mode"), &PhysicalBone3D::get_angular_damp_mode);
+
ClassDB::bind_method(D_METHOD("set_linear_damp", "linear_damp"), &PhysicalBone3D::set_linear_damp);
ClassDB::bind_method(D_METHOD("get_linear_damp"), &PhysicalBone3D::get_linear_damp);
@@ -2845,10 +2880,15 @@ void PhysicalBone3D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "friction", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_friction", "get_friction");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "bounce", PROPERTY_HINT_RANGE, "0,1,0.01"), "set_bounce", "get_bounce");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "gravity_scale", PROPERTY_HINT_RANGE, "-10,10,0.01"), "set_gravity_scale", "get_gravity_scale");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "linear_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"), "set_linear_damp", "get_linear_damp");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "angular_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"), "set_angular_damp", "get_angular_damp");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "linear_damp_mode", PROPERTY_HINT_ENUM, "Combine,Replace"), "set_linear_damp_mode", "get_linear_damp_mode");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "linear_damp", PROPERTY_HINT_RANGE, "0,100,0.001,or_greater"), "set_linear_damp", "get_linear_damp");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "angular_damp_mode", PROPERTY_HINT_ENUM, "Combine,Replace"), "set_angular_damp_mode", "get_angular_damp_mode");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "angular_damp", PROPERTY_HINT_RANGE, "0,100,0.001,or_greater"), "set_angular_damp", "get_angular_damp");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "can_sleep"), "set_can_sleep", "is_able_to_sleep");
+ BIND_ENUM_CONSTANT(DAMP_MODE_COMBINE);
+ BIND_ENUM_CONSTANT(DAMP_MODE_REPLACE);
+
BIND_ENUM_CONSTANT(JOINT_TYPE_NONE);
BIND_ENUM_CONSTANT(JOINT_TYPE_PIN);
BIND_ENUM_CONSTANT(JOINT_TYPE_CONE);
@@ -3146,8 +3186,27 @@ real_t PhysicalBone3D::get_gravity_scale() const {
return gravity_scale;
}
+void PhysicalBone3D::set_linear_damp_mode(DampMode p_mode) {
+ linear_damp_mode = p_mode;
+ PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_LINEAR_DAMP_MODE, linear_damp_mode);
+}
+
+PhysicalBone3D::DampMode PhysicalBone3D::get_linear_damp_mode() const {
+ return linear_damp_mode;
+}
+
+void PhysicalBone3D::set_angular_damp_mode(DampMode p_mode) {
+ angular_damp_mode = p_mode;
+ PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_ANGULAR_DAMP_MODE, angular_damp_mode);
+}
+
+PhysicalBone3D::DampMode PhysicalBone3D::get_angular_damp_mode() const {
+ return angular_damp_mode;
+}
+
void PhysicalBone3D::set_linear_damp(real_t p_linear_damp) {
- ERR_FAIL_COND(p_linear_damp < -1);
+ ERR_FAIL_COND(p_linear_damp < 0);
+
linear_damp = p_linear_damp;
PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_LINEAR_DAMP, linear_damp);
}
@@ -3157,7 +3216,8 @@ real_t PhysicalBone3D::get_linear_damp() const {
}
void PhysicalBone3D::set_angular_damp(real_t p_angular_damp) {
- ERR_FAIL_COND(p_angular_damp < -1);
+ ERR_FAIL_COND(p_angular_damp < 0);
+
angular_damp = p_angular_damp;
PhysicsServer3D::get_singleton()->body_set_param(get_rid(), PhysicsServer3D::BODY_PARAM_ANGULAR_DAMP, angular_damp);
}
diff --git a/scene/3d/physics_body_3d.h b/scene/3d/physics_body_3d.h
index 5677df730c..2ea796d335 100644
--- a/scene/3d/physics_body_3d.h
+++ b/scene/3d/physics_body_3d.h
@@ -143,6 +143,11 @@ public:
CENTER_OF_MASS_MODE_CUSTOM,
};
+ enum DampMode {
+ DAMP_MODE_COMBINE,
+ DAMP_MODE_REPLACE,
+ };
+
private:
bool can_sleep = true;
bool lock_rotation = false;
@@ -160,8 +165,12 @@ private:
Vector3 angular_velocity;
Basis inverse_inertia_tensor;
real_t gravity_scale = 1.0;
- real_t linear_damp = -1.0;
- real_t angular_damp = -1.0;
+
+ DampMode linear_damp_mode = DAMP_MODE_COMBINE;
+ DampMode angular_damp_mode = DAMP_MODE_COMBINE;
+
+ real_t linear_damp = 0.0;
+ real_t angular_damp = 0.0;
bool sleeping = false;
bool ccd = false;
@@ -265,6 +274,12 @@ public:
void set_gravity_scale(real_t p_gravity_scale);
real_t get_gravity_scale() const;
+ void set_linear_damp_mode(DampMode p_mode);
+ DampMode get_linear_damp_mode() const;
+
+ void set_angular_damp_mode(DampMode p_mode);
+ DampMode get_angular_damp_mode() const;
+
void set_linear_damp(real_t p_linear_damp);
real_t get_linear_damp() const;
@@ -310,6 +325,7 @@ private:
VARIANT_ENUM_CAST(RigidDynamicBody3D::FreezeMode);
VARIANT_ENUM_CAST(RigidDynamicBody3D::CenterOfMassMode);
+VARIANT_ENUM_CAST(RigidDynamicBody3D::DampMode);
class KinematicCollision3D;
@@ -494,6 +510,11 @@ class PhysicalBone3D : public PhysicsBody3D {
GDCLASS(PhysicalBone3D, PhysicsBody3D);
public:
+ enum DampMode {
+ DAMP_MODE_COMBINE,
+ DAMP_MODE_REPLACE,
+ };
+
enum JointType {
JOINT_TYPE_NONE,
JOINT_TYPE_PIN,
@@ -632,10 +653,14 @@ private:
real_t mass = 1.0;
real_t friction = 1.0;
real_t gravity_scale = 1.0;
- real_t linear_damp = -1.0;
- real_t angular_damp = -1.0;
bool can_sleep = true;
+ DampMode linear_damp_mode = DAMP_MODE_COMBINE;
+ DampMode angular_damp_mode = DAMP_MODE_COMBINE;
+
+ real_t linear_damp = 0.0;
+ real_t angular_damp = 0.0;
+
protected:
bool _set(const StringName &p_name, const Variant &p_value);
bool _get(const StringName &p_name, Variant &r_ret) const;
@@ -698,6 +723,12 @@ public:
void set_gravity_scale(real_t p_gravity_scale);
real_t get_gravity_scale() const;
+ void set_linear_damp_mode(DampMode p_mode);
+ DampMode get_linear_damp_mode() const;
+
+ void set_angular_damp_mode(DampMode p_mode);
+ DampMode get_angular_damp_mode() const;
+
void set_linear_damp(real_t p_linear_damp);
real_t get_linear_damp() const;
@@ -725,5 +756,6 @@ private:
};
VARIANT_ENUM_CAST(PhysicalBone3D::JointType);
+VARIANT_ENUM_CAST(PhysicalBone3D::DampMode);
#endif // PHYSICS_BODY__H
diff --git a/scene/3d/ray_cast_3d.cpp b/scene/3d/ray_cast_3d.cpp
index fd4c6e7416..646f659996 100644
--- a/scene/3d/ray_cast_3d.cpp
+++ b/scene/3d/ray_cast_3d.cpp
@@ -212,9 +212,16 @@ void RayCast3D::_update_raycast_state() {
to = Vector3(0, 0.01, 0);
}
- PhysicsDirectSpaceState3D::RayResult rr;
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = gt.get_origin();
+ ray_params.to = gt.xform(to);
+ ray_params.exclude = exclude;
+ ray_params.collision_mask = collision_mask;
+ ray_params.collide_with_bodies = collide_with_bodies;
+ ray_params.collide_with_areas = collide_with_areas;
- if (dss->intersect_ray(gt.get_origin(), gt.xform(to), rr, exclude, collision_mask, collide_with_bodies, collide_with_areas)) {
+ PhysicsDirectSpaceState3D::RayResult rr;
+ if (dss->intersect_ray(ray_params, rr)) {
collided = true;
against = rr.collider_id;
collision_point = rr.position;
diff --git a/scene/3d/reflection_probe.cpp b/scene/3d/reflection_probe.cpp
index 29c382cd05..40d4d822c9 100644
--- a/scene/3d/reflection_probe.cpp
+++ b/scene/3d/reflection_probe.cpp
@@ -185,7 +185,7 @@ Vector<Face3> ReflectionProbe::get_faces(uint32_t p_usage_flags) const {
void ReflectionProbe::_validate_property(PropertyInfo &property) const {
if (property.name == "interior/ambient_color" || property.name == "interior/ambient_color_energy") {
if (ambient_mode != AMBIENT_COLOR) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
VisualInstance3D::_validate_property(property);
diff --git a/scene/3d/skeleton_3d.cpp b/scene/3d/skeleton_3d.cpp
index e3744ad5e9..d4d3c0ebe1 100644
--- a/scene/3d/skeleton_3d.cpp
+++ b/scene/3d/skeleton_3d.cpp
@@ -155,13 +155,13 @@ bool Skeleton3D::_get(const StringName &p_path, Variant &r_ret) const {
void Skeleton3D::_get_property_list(List<PropertyInfo> *p_list) const {
for (int i = 0; i < bones.size(); i++) {
String prep = "bones/" + itos(i) + "/";
- p_list->push_back(PropertyInfo(Variant::STRING, prep + "name", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::INT, prep + "parent", PROPERTY_HINT_RANGE, "-1," + itos(bones.size() - 1) + ",1", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::TRANSFORM3D, prep + "rest", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::BOOL, prep + "enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::VECTOR3, prep + "position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::QUATERNION, prep + "rotation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::VECTOR3, prep + "scale", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING, prep + "name", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::INT, prep + "parent", PROPERTY_HINT_RANGE, "-1," + itos(bones.size() - 1) + ",1", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::TRANSFORM3D, prep + "rest", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::BOOL, prep + "enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR3, prep + "position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::QUATERNION, prep + "rotation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR3, prep + "scale", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
#ifndef _3D_DISABLED
diff --git a/scene/3d/spring_arm_3d.cpp b/scene/3d/spring_arm_3d.cpp
index 116cab19b1..0b5af8823b 100644
--- a/scene/3d/spring_arm_3d.cpp
+++ b/scene/3d/spring_arm_3d.cpp
@@ -149,10 +149,24 @@ void SpringArm3D::process_spring() {
//use camera rotation, but spring arm position
Transform3D base_transform = camera->get_global_transform();
base_transform.origin = get_global_transform().origin;
- get_world_3d()->get_direct_space_state()->cast_motion(camera->get_pyramid_shape_rid(), base_transform, motion, 0, motion_delta, motion_delta_unsafe, excluded_objects, mask);
+
+ PhysicsDirectSpaceState3D::ShapeParameters shape_params;
+ shape_params.shape_rid = camera->get_pyramid_shape_rid();
+ shape_params.transform = base_transform;
+ shape_params.motion = motion;
+ shape_params.exclude = excluded_objects;
+ shape_params.collision_mask = mask;
+
+ get_world_3d()->get_direct_space_state()->cast_motion(shape_params, motion_delta, motion_delta_unsafe);
} else {
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = get_global_transform().origin;
+ ray_params.to = get_global_transform().origin + motion;
+ ray_params.exclude = excluded_objects;
+ ray_params.collision_mask = mask;
+
PhysicsDirectSpaceState3D::RayResult r;
- bool intersected = get_world_3d()->get_direct_space_state()->intersect_ray(get_global_transform().origin, get_global_transform().origin + motion, r, excluded_objects, mask);
+ bool intersected = get_world_3d()->get_direct_space_state()->intersect_ray(ray_params, r);
if (intersected) {
real_t dist = get_global_transform().origin.distance_to(r.position);
dist -= margin;
@@ -160,7 +174,14 @@ void SpringArm3D::process_spring() {
}
}
} else {
- get_world_3d()->get_direct_space_state()->cast_motion(shape->get_rid(), get_global_transform(), motion, 0, motion_delta, motion_delta_unsafe, excluded_objects, mask);
+ PhysicsDirectSpaceState3D::ShapeParameters shape_params;
+ shape_params.shape_rid = shape->get_rid();
+ shape_params.transform = get_global_transform();
+ shape_params.motion = motion;
+ shape_params.exclude = excluded_objects;
+ shape_params.collision_mask = mask;
+
+ get_world_3d()->get_direct_space_state()->cast_motion(shape_params, motion_delta, motion_delta_unsafe);
}
current_spring_length = spring_length * motion_delta;
diff --git a/scene/3d/vehicle_body_3d.cpp b/scene/3d/vehicle_body_3d.cpp
index 61cba17cde..90db093137 100644
--- a/scene/3d/vehicle_body_3d.cpp
+++ b/scene/3d/vehicle_body_3d.cpp
@@ -407,7 +407,13 @@ real_t VehicleBody3D::_ray_cast(int p_idx, PhysicsDirectBodyState3D *s) {
PhysicsDirectSpaceState3D *ss = s->get_space_state();
- bool col = ss->intersect_ray(source, target, rr, exclude, get_collision_mask());
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = source;
+ ray_params.to = target;
+ ray_params.exclude = exclude;
+ ray_params.collision_mask = get_collision_mask();
+
+ bool col = ss->intersect_ray(ray_params, rr);
wheel.m_raycastInfo.m_groundObject = nullptr;
diff --git a/scene/3d/voxel_gi.cpp b/scene/3d/voxel_gi.cpp
index f0cf8f5016..c7108cbae0 100644
--- a/scene/3d/voxel_gi.cpp
+++ b/scene/3d/voxel_gi.cpp
@@ -225,7 +225,7 @@ void VoxelGIData::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_data", "data"), &VoxelGIData::_set_data);
ClassDB::bind_method(D_METHOD("_get_data"), &VoxelGIData::_get_data);
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
ADD_PROPERTY(PropertyInfo(Variant::INT, "dynamic_range", PROPERTY_HINT_RANGE, "0,8,0.01"), "set_dynamic_range", "get_dynamic_range");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "energy", PROPERTY_HINT_RANGE, "0,64,0.01"), "set_energy", "get_energy");
@@ -403,7 +403,7 @@ void VoxelGI::bake(Node *p_from_node, bool p_create_visual_debug) {
if (p_create_visual_debug) {
MultiMeshInstance3D *mmi = memnew(MultiMeshInstance3D);
mmi->set_multimesh(baker.create_debug_multimesh());
- add_child(mmi);
+ add_child(mmi, true);
#ifdef TOOLS_ENABLED
if (is_inside_tree() && get_tree()->get_edited_scene_root() == this) {
mmi->set_owner(this);
diff --git a/scene/animation/animation_blend_space_1d.cpp b/scene/animation/animation_blend_space_1d.cpp
index 0167992baf..9a71e7bf55 100644
--- a/scene/animation/animation_blend_space_1d.cpp
+++ b/scene/animation/animation_blend_space_1d.cpp
@@ -81,14 +81,14 @@ void AnimationNodeBlendSpace1D::_bind_methods() {
ClassDB::bind_method(D_METHOD("_add_blend_point", "index", "node"), &AnimationNodeBlendSpace1D::_add_blend_point);
for (int i = 0; i < MAX_BLEND_POINTS; i++) {
- ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "blend_point_" + itos(i) + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationRootNode", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_add_blend_point", "get_blend_point_node", i);
- ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "blend_point_" + itos(i) + "/pos", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_blend_point_position", "get_blend_point_position", i);
+ ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "blend_point_" + itos(i) + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationRootNode", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_add_blend_point", "get_blend_point_node", i);
+ ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "blend_point_" + itos(i) + "/pos", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_blend_point_position", "get_blend_point_position", i);
}
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "min_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_min_space", "get_min_space");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "max_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_max_space", "get_max_space");
- ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "snap", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_snap", "get_snap");
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "value_label", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_value_label", "get_value_label");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "min_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_min_space", "get_min_space");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "max_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_max_space", "get_max_space");
+ ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "snap", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_snap", "get_snap");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "value_label", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_value_label", "get_value_label");
}
void AnimationNodeBlendSpace1D::get_child_nodes(List<ChildNode> *r_child_nodes) {
diff --git a/scene/animation/animation_blend_space_2d.cpp b/scene/animation/animation_blend_space_2d.cpp
index 145e7c605b..b91a2869e4 100644
--- a/scene/animation/animation_blend_space_2d.cpp
+++ b/scene/animation/animation_blend_space_2d.cpp
@@ -639,21 +639,21 @@ void AnimationNodeBlendSpace2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("_update_triangles"), &AnimationNodeBlendSpace2D::_update_triangles);
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "auto_triangles", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_auto_triangles", "get_auto_triangles");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "auto_triangles", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_auto_triangles", "get_auto_triangles");
for (int i = 0; i < MAX_BLEND_POINTS; i++) {
- ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "blend_point_" + itos(i) + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationRootNode", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_add_blend_point", "get_blend_point_node", i);
- ADD_PROPERTYI(PropertyInfo(Variant::VECTOR2, "blend_point_" + itos(i) + "/pos", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_blend_point_position", "get_blend_point_position", i);
+ ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "blend_point_" + itos(i) + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationRootNode", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_add_blend_point", "get_blend_point_node", i);
+ ADD_PROPERTYI(PropertyInfo(Variant::VECTOR2, "blend_point_" + itos(i) + "/pos", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_blend_point_position", "get_blend_point_position", i);
}
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_INT32_ARRAY, "triangles", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_triangles", "_get_triangles");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_INT32_ARRAY, "triangles", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_triangles", "_get_triangles");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "min_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_min_space", "get_min_space");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "max_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_max_space", "get_max_space");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "snap", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_snap", "get_snap");
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "x_label", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_x_label", "get_x_label");
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "y_label", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_y_label", "get_y_label");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "blend_mode", PROPERTY_HINT_ENUM, "Interpolated,Discrete,Carry", PROPERTY_USAGE_NOEDITOR), "set_blend_mode", "get_blend_mode");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "min_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_min_space", "get_min_space");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "max_space", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_max_space", "get_max_space");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "snap", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_snap", "get_snap");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "x_label", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_x_label", "get_x_label");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "y_label", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_y_label", "get_y_label");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "blend_mode", PROPERTY_HINT_ENUM, "Interpolated,Discrete,Carry", PROPERTY_USAGE_NO_EDITOR), "set_blend_mode", "get_blend_mode");
ADD_SIGNAL(MethodInfo("triangles_updated"));
BIND_ENUM_CONSTANT(BLEND_MODE_INTERPOLATED);
diff --git a/scene/animation/animation_blend_tree.cpp b/scene/animation/animation_blend_tree.cpp
index 10a66386eb..d18e1a92d8 100644
--- a/scene/animation/animation_blend_tree.cpp
+++ b/scene/animation/animation_blend_tree.cpp
@@ -1112,12 +1112,12 @@ void AnimationNodeBlendTree::_get_property_list(List<PropertyInfo> *p_list) cons
for (const StringName &E : names) {
String name = E;
if (name != "output") {
- p_list->push_back(PropertyInfo(Variant::OBJECT, "nodes/" + name + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationNode", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, "nodes/" + name + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationNode", PROPERTY_USAGE_NO_EDITOR));
}
- p_list->push_back(PropertyInfo(Variant::VECTOR2, "nodes/" + name + "/position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR2, "nodes/" + name + "/position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
- p_list->push_back(PropertyInfo(Variant::ARRAY, "node_connections", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "node_connections", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
void AnimationNodeBlendTree::reset_state() {
@@ -1152,7 +1152,7 @@ void AnimationNodeBlendTree::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_graph_offset", "offset"), &AnimationNodeBlendTree::set_graph_offset);
ClassDB::bind_method(D_METHOD("get_graph_offset"), &AnimationNodeBlendTree::get_graph_offset);
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "graph_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_graph_offset", "get_graph_offset");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "graph_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_graph_offset", "get_graph_offset");
BIND_CONSTANT(CONNECTION_OK);
BIND_CONSTANT(CONNECTION_ERROR_NO_INPUT);
diff --git a/scene/animation/animation_node_state_machine.cpp b/scene/animation/animation_node_state_machine.cpp
index 81ecb50ea0..b5d7a0555e 100644
--- a/scene/animation/animation_node_state_machine.cpp
+++ b/scene/animation/animation_node_state_machine.cpp
@@ -909,14 +909,14 @@ void AnimationNodeStateMachine::_get_property_list(List<PropertyInfo> *p_list) c
names.sort_custom<StringName::AlphCompare>();
for (const StringName &name : names) {
- p_list->push_back(PropertyInfo(Variant::OBJECT, "states/" + name + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationNode", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::VECTOR2, "states/" + name + "/position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, "states/" + name + "/node", PROPERTY_HINT_RESOURCE_TYPE, "AnimationNode", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR2, "states/" + name + "/position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
- p_list->push_back(PropertyInfo(Variant::ARRAY, "transitions", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::STRING_NAME, "start_node", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::STRING_NAME, "end_node", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::VECTOR2, "graph_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "transitions", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING_NAME, "start_node", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING_NAME, "end_node", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR2, "graph_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
void AnimationNodeStateMachine::reset_state() {
diff --git a/scene/animation/animation_player.cpp b/scene/animation/animation_player.cpp
index 26caf826a7..f91422ac1a 100644
--- a/scene/animation/animation_player.cpp
+++ b/scene/animation/animation_player.cpp
@@ -174,9 +174,9 @@ void AnimationPlayer::_get_property_list(List<PropertyInfo> *p_list) const {
List<PropertyInfo> anim_names;
for (const KeyValue<StringName, AnimationData> &E : animation_set) {
- anim_names.push_back(PropertyInfo(Variant::OBJECT, "anims/" + String(E.key), PROPERTY_HINT_RESOURCE_TYPE, "Animation", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL | PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE));
+ anim_names.push_back(PropertyInfo(Variant::OBJECT, "anims/" + String(E.key), PROPERTY_HINT_RESOURCE_TYPE, "Animation", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL | PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE));
if (E.value.next != StringName()) {
- anim_names.push_back(PropertyInfo(Variant::STRING, "next/" + String(E.key), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ anim_names.push_back(PropertyInfo(Variant::STRING, "next/" + String(E.key), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
}
@@ -186,7 +186,7 @@ void AnimationPlayer::_get_property_list(List<PropertyInfo> *p_list) const {
p_list->push_back(E);
}
- p_list->push_back(PropertyInfo(Variant::ARRAY, "blend_times", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "blend_times", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
void AnimationPlayer::advance(float p_time) {
@@ -1813,7 +1813,7 @@ void AnimationPlayer::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "root_node"), "set_root", "get_root");
ADD_PROPERTY(PropertyInfo(Variant::STRING_NAME, "current_animation", PROPERTY_HINT_ENUM, "", PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_ANIMATE_AS_TRIGGER), "set_current_animation", "get_current_animation");
ADD_PROPERTY(PropertyInfo(Variant::STRING_NAME, "assigned_animation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NONE), "set_assigned_animation", "get_assigned_animation");
- ADD_PROPERTY(PropertyInfo(Variant::STRING_NAME, "autoplay", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_autoplay", "get_autoplay");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING_NAME, "autoplay", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_autoplay", "get_autoplay");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "reset_on_save", PROPERTY_HINT_NONE, ""), "set_reset_on_save_enabled", "is_reset_on_save_enabled");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "current_animation_length", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NONE), "", "get_current_animation_length");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "current_animation_position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NONE), "", "get_current_animation_position");
diff --git a/scene/animation/animation_tree.cpp b/scene/animation/animation_tree.cpp
index ccb5fa9472..4b71fe7a01 100644
--- a/scene/animation/animation_tree.cpp
+++ b/scene/animation/animation_tree.cpp
@@ -425,8 +425,8 @@ void AnimationNode::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_parameter", "name", "value"), &AnimationNode::set_parameter);
ClassDB::bind_method(D_METHOD("get_parameter", "name"), &AnimationNode::get_parameter);
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "filter_enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_filter_enabled", "is_filter_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "filters", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_filters", "_get_filters");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "filter_enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_filter_enabled", "is_filter_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "filters", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_filters", "_get_filters");
GDVIRTUAL_BIND(_get_child_nodes);
GDVIRTUAL_BIND(_get_parameter_list);
diff --git a/scene/animation/tween.cpp b/scene/animation/tween.cpp
index 47e290beb3..da933ae02d 100644
--- a/scene/animation/tween.cpp
+++ b/scene/animation/tween.cpp
@@ -626,7 +626,7 @@ void Tween::_bind_methods() {
ClassDB::bind_method(D_METHOD("parallel"), &Tween::parallel);
ClassDB::bind_method(D_METHOD("chain"), &Tween::chain);
- ClassDB::bind_method(D_METHOD("interpolate_value", "trans_type", "ease_type", "elapsed_time", "initial_value", "delta_value", "duration"), &Tween::interpolate_variant);
+ ClassDB::bind_method(D_METHOD("interpolate_value", "initial_value", "delta_value", "elapsed_time", "duration", "trans_type", "ease_type"), &Tween::interpolate_variant);
ADD_SIGNAL(MethodInfo("step_finished", PropertyInfo(Variant::INT, "idx")));
ADD_SIGNAL(MethodInfo("loop_finished", PropertyInfo(Variant::INT, "loop_count")));
diff --git a/scene/gui/box_container.cpp b/scene/gui/box_container.cpp
index cf2df4e1a2..cb9f13e970 100644
--- a/scene/gui/box_container.cpp
+++ b/scene/gui/box_container.cpp
@@ -354,7 +354,7 @@ MarginContainer *VBoxContainer::add_margin_child(const String &p_label, Control
add_child(l, false, INTERNAL_MODE_FRONT);
MarginContainer *mc = memnew(MarginContainer);
mc->add_theme_constant_override("margin_left", 0);
- mc->add_child(p_control);
+ mc->add_child(p_control, true);
add_child(mc, false, INTERNAL_MODE_FRONT);
if (p_expand) {
mc->set_v_size_flags(SIZE_EXPAND_FILL);
diff --git a/scene/gui/item_list.cpp b/scene/gui/item_list.cpp
index 4215c9aff4..8470003b3e 100644
--- a/scene/gui/item_list.cpp
+++ b/scene/gui/item_list.cpp
@@ -29,6 +29,7 @@
/*************************************************************************/
#include "item_list.h"
+
#include "core/config/project_settings.h"
#include "core/os/os.h"
#include "core/string/translation.h"
@@ -1605,7 +1606,7 @@ void ItemList::_bind_methods() {
ClassDB::bind_method(D_METHOD("move_item", "from_idx", "to_idx"), &ItemList::move_item);
- ClassDB::bind_method(D_METHOD("set_item_count"), &ItemList::set_item_count);
+ ClassDB::bind_method(D_METHOD("set_item_count", "count"), &ItemList::set_item_count);
ClassDB::bind_method(D_METHOD("get_item_count"), &ItemList::get_item_count);
ClassDB::bind_method(D_METHOD("remove_item", "idx"), &ItemList::remove_item);
diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp
index 8c33d306a1..0b85b4d3d2 100644
--- a/scene/gui/line_edit.cpp
+++ b/scene/gui/line_edit.cpp
@@ -2135,7 +2135,7 @@ void LineEdit::_get_property_list(List<PropertyInfo> *p_list) const {
void LineEdit::_validate_property(PropertyInfo &property) const {
if (!caret_blink_enabled && property.name == "caret_blink_speed") {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/gui/menu_button.cpp b/scene/gui/menu_button.cpp
index ceb2092e3a..39c7b04955 100644
--- a/scene/gui/menu_button.cpp
+++ b/scene/gui/menu_button.cpp
@@ -110,14 +110,6 @@ PopupMenu *MenuButton::get_popup() const {
return popup;
}
-void MenuButton::_set_items(const Array &p_items) {
- popup->set("items", p_items);
-}
-
-Array MenuButton::_get_items() const {
- return popup->get("items");
-}
-
void MenuButton::set_switch_on_hover(bool p_enabled) {
switch_on_hover = p_enabled;
}
@@ -126,6 +118,16 @@ bool MenuButton::is_switch_on_hover() {
return switch_on_hover;
}
+void MenuButton::set_item_count(int p_count) {
+ ERR_FAIL_COND(p_count < 0);
+ popup->set_item_count(p_count);
+ notify_property_list_changed();
+}
+
+int MenuButton::get_item_count() const {
+ return popup->get_item_count();
+}
+
void MenuButton::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_VISIBILITY_CHANGED: {
@@ -146,16 +148,66 @@ void MenuButton::_notification(int p_what) {
}
}
+bool MenuButton::_set(const StringName &p_name, const Variant &p_value) {
+ Vector<String> components = String(p_name).split("/", true, 2);
+ if (components.size() >= 2 && components[0] == "popup") {
+ bool valid;
+ popup->set(String(p_name).trim_prefix("popup/"), p_value, &valid);
+ return valid;
+ }
+ return false;
+}
+
+bool MenuButton::_get(const StringName &p_name, Variant &r_ret) const {
+ Vector<String> components = String(p_name).split("/", true, 2);
+ if (components.size() >= 2 && components[0] == "popup") {
+ bool valid;
+ r_ret = popup->get(String(p_name).trim_prefix("popup/"), &valid);
+ return valid;
+ }
+ return false;
+}
+
+void MenuButton::_get_property_list(List<PropertyInfo> *p_list) const {
+ for (int i = 0; i < popup->get_item_count(); i++) {
+ p_list->push_back(PropertyInfo(Variant::STRING, vformat("popup/item_%d/text", i)));
+
+ PropertyInfo pi = PropertyInfo(Variant::OBJECT, vformat("popup/item_%d/icon", i), PROPERTY_HINT_RESOURCE_TYPE, "Texture2D");
+ pi.usage &= ~(popup->get_item_icon(i).is_null() ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::INT, vformat("popup/item_%d/checkable", i), PROPERTY_HINT_ENUM, "No,As checkbox,As radio button");
+ pi.usage &= ~(!popup->is_item_checkable(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::BOOL, vformat("popup/item_%d/checked", i));
+ pi.usage &= ~(!popup->is_item_checked(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::INT, vformat("popup/item_%d/id", i), PROPERTY_HINT_RANGE, "1,10,1,or_greater");
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::BOOL, vformat("popup/item_%d/disabled", i));
+ pi.usage &= ~(!popup->is_item_disabled(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::BOOL, vformat("popup/item_%d/separator", i));
+ pi.usage &= ~(!popup->is_item_separator(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+ }
+}
+
void MenuButton::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_popup"), &MenuButton::get_popup);
- ClassDB::bind_method(D_METHOD("_set_items"), &MenuButton::_set_items);
- ClassDB::bind_method(D_METHOD("_get_items"), &MenuButton::_get_items);
ClassDB::bind_method(D_METHOD("set_switch_on_hover", "enable"), &MenuButton::set_switch_on_hover);
ClassDB::bind_method(D_METHOD("is_switch_on_hover"), &MenuButton::is_switch_on_hover);
ClassDB::bind_method(D_METHOD("set_disable_shortcuts", "disabled"), &MenuButton::set_disable_shortcuts);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "items", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_items", "_get_items");
+ ClassDB::bind_method(D_METHOD("set_item_count", "count"), &MenuButton::set_item_count);
+ ClassDB::bind_method(D_METHOD("get_item_count"), &MenuButton::get_item_count);
+
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "switch_on_hover"), "set_switch_on_hover", "is_switch_on_hover");
+ ADD_ARRAY_COUNT("Items", "items_count", "set_item_count", "get_item_count", "popup/item_");
ADD_SIGNAL(MethodInfo("about_to_popup"));
}
diff --git a/scene/gui/menu_button.h b/scene/gui/menu_button.h
index 730495b65d..455b7dc870 100644
--- a/scene/gui/menu_button.h
+++ b/scene/gui/menu_button.h
@@ -44,15 +44,15 @@ class MenuButton : public Button {
Vector2i mouse_pos_adjusted;
- Array _get_items() const;
- void _set_items(const Array &p_items);
-
virtual void gui_input(const Ref<InputEvent> &p_event) override;
void _popup_visibility_changed(bool p_visible);
protected:
void _notification(int p_what);
+ bool _set(const StringName &p_name, const Variant &p_value);
+ bool _get(const StringName &p_name, Variant &r_ret) const;
+ void _get_property_list(List<PropertyInfo> *p_list) const;
static void _bind_methods();
virtual void unhandled_key_input(const Ref<InputEvent> &p_event) override;
@@ -64,6 +64,9 @@ public:
bool is_switch_on_hover();
void set_disable_shortcuts(bool p_disabled);
+ void set_item_count(int p_count);
+ int get_item_count() const;
+
MenuButton();
~MenuButton();
};
diff --git a/scene/gui/option_button.cpp b/scene/gui/option_button.cpp
index c00c040048..dcf3cfeb09 100644
--- a/scene/gui/option_button.cpp
+++ b/scene/gui/option_button.cpp
@@ -332,7 +332,7 @@ void OptionButton::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_items"), &OptionButton::_set_items);
ClassDB::bind_method(D_METHOD("_get_items"), &OptionButton::_get_items);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "items", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_items", "_get_items");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "items", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_items", "_get_items");
// "selected" property must come after "items", otherwise GH-10213 occurs.
ADD_PROPERTY(PropertyInfo(Variant::INT, "selected"), "_select_int", "get_selected");
ADD_SIGNAL(MethodInfo("item_selected", PropertyInfo(Variant::INT, "index")));
diff --git a/scene/gui/popup.cpp b/scene/gui/popup.cpp
index be05fd5a60..f54ff9228b 100644
--- a/scene/gui/popup.cpp
+++ b/scene/gui/popup.cpp
@@ -105,8 +105,6 @@ void Popup::_close_pressed() {
_deinitialize_visible_parents();
call_deferred(SNAME("hide"));
-
- emit_signal(SNAME("cancelled"));
}
void Popup::set_as_minsize() {
diff --git a/scene/gui/popup_menu.cpp b/scene/gui/popup_menu.cpp
index c0a559e624..54af9f3885 100644
--- a/scene/gui/popup_menu.cpp
+++ b/scene/gui/popup_menu.cpp
@@ -820,6 +820,7 @@ void PopupMenu::add_item(const String &p_label, int p_id, uint32_t p_accel) {
_shape_item(items.size() - 1);
control->update();
child_controls_changed();
+ notify_property_list_changed();
}
void PopupMenu::add_icon_item(const Ref<Texture2D> &p_icon, const String &p_label, int p_id, uint32_t p_accel) {
@@ -830,6 +831,7 @@ void PopupMenu::add_icon_item(const Ref<Texture2D> &p_icon, const String &p_labe
_shape_item(items.size() - 1);
control->update();
child_controls_changed();
+ notify_property_list_changed();
}
void PopupMenu::add_check_item(const String &p_label, int p_id, uint32_t p_accel) {
@@ -1271,6 +1273,14 @@ int PopupMenu::get_current_index() const {
return mouse_over;
}
+void PopupMenu::set_item_count(int p_count) {
+ ERR_FAIL_COND(p_count < 0);
+ items.resize(p_count);
+ control->update();
+ child_controls_changed();
+ notify_property_list_changed();
+}
+
int PopupMenu::get_item_count() const {
return items.size();
}
@@ -1420,27 +1430,7 @@ void PopupMenu::clear() {
mouse_over = -1;
control->update();
child_controls_changed();
-}
-
-Array PopupMenu::_get_items() const {
- Array items;
- for (int i = 0; i < get_item_count(); i++) {
- items.push_back(get_item_text(i));
- items.push_back(get_item_icon(i));
- // For compatibility, use false/true for no/checkbox and integers for other values
- int ct = this->items[i].checkable_type;
- items.push_back(Variant(ct <= Item::CHECKABLE_TYPE_CHECK_BOX ? is_item_checkable(i) : ct));
- items.push_back(is_item_checked(i));
- items.push_back(is_item_disabled(i));
-
- items.push_back(get_item_id(i));
- items.push_back(get_item_accelerator(i));
- items.push_back(get_item_metadata(i));
- items.push_back(get_item_submenu(i));
- items.push_back(is_item_separator(i));
- }
-
- return items;
+ notify_property_list_changed();
}
void PopupMenu::_ref_shortcut(Ref<Shortcut> p_sc) {
@@ -1461,45 +1451,6 @@ void PopupMenu::_unref_shortcut(Ref<Shortcut> p_sc) {
}
}
-void PopupMenu::_set_items(const Array &p_items) {
- ERR_FAIL_COND(p_items.size() % 10);
- clear();
-
- for (int i = 0; i < p_items.size(); i += 10) {
- String text = p_items[i + 0];
- Ref<Texture2D> icon = p_items[i + 1];
- // For compatibility, use false/true for no/checkbox and integers for other values
- bool checkable = p_items[i + 2];
- bool radio_checkable = (int)p_items[i + 2] == Item::CHECKABLE_TYPE_RADIO_BUTTON;
- bool checked = p_items[i + 3];
- bool disabled = p_items[i + 4];
-
- int id = p_items[i + 5];
- int accel = p_items[i + 6];
- Variant meta = p_items[i + 7];
- String subm = p_items[i + 8];
- bool sep = p_items[i + 9];
-
- int idx = get_item_count();
- add_item(text, id);
- set_item_icon(idx, icon);
- if (checkable) {
- if (radio_checkable) {
- set_item_as_radio_checkable(idx, true);
- } else {
- set_item_as_checkable(idx, true);
- }
- }
- set_item_checked(idx, checked);
- set_item_disabled(idx, disabled);
- set_item_id(idx, id);
- set_item_metadata(idx, meta);
- set_item_as_separator(idx, sep);
- set_item_accelerator(idx, accel);
- set_item_submenu(idx, subm);
- }
-}
-
// Hide on item selection determines whether or not the popup will close after item selection
void PopupMenu::set_hide_on_item_selection(bool p_enabled) {
hide_on_item_selection = p_enabled;
@@ -1581,6 +1532,145 @@ void PopupMenu::take_mouse_focus() {
}
}
+bool PopupMenu::_set(const StringName &p_name, const Variant &p_value) {
+ Vector<String> components = String(p_name).split("/", true, 2);
+ if (components.size() >= 2 && components[0].begins_with("item_") && components[0].trim_prefix("item_").is_valid_int()) {
+ int item_index = components[0].trim_prefix("item_").to_int();
+ String property = components[1];
+ if (property == "text") {
+ set_item_text(item_index, p_value);
+ return true;
+ } else if (property == "icon") {
+ set_item_icon(item_index, p_value);
+ return true;
+ } else if (property == "checkable") {
+ bool radio_checkable = (int)p_value == Item::CHECKABLE_TYPE_RADIO_BUTTON;
+ if (radio_checkable) {
+ set_item_as_radio_checkable(item_index, true);
+ } else {
+ bool checkable = p_value;
+ set_item_as_checkable(item_index, checkable);
+ }
+ return true;
+ } else if (property == "checked") {
+ set_item_checked(item_index, p_value);
+ return true;
+ } else if (property == "id") {
+ set_item_id(item_index, p_value);
+ return true;
+ } else if (components[1] == "disabled") {
+ set_item_disabled(item_index, p_value);
+ return true;
+ } else if (property == "separator") {
+ set_item_as_separator(item_index, p_value);
+ return true;
+ }
+ }
+#ifndef DISABLE_DEPRECATED
+ // Compatibility.
+ if (p_name == "items") {
+ Array arr = p_value;
+ ERR_FAIL_COND_V(arr.size() % 10, false);
+ clear();
+
+ for (int i = 0; i < arr.size(); i += 10) {
+ String text = arr[i + 0];
+ Ref<Texture2D> icon = arr[i + 1];
+ // For compatibility, use false/true for no/checkbox and integers for other values
+ bool checkable = arr[i + 2];
+ bool radio_checkable = (int)arr[i + 2] == Item::CHECKABLE_TYPE_RADIO_BUTTON;
+ bool checked = arr[i + 3];
+ bool disabled = arr[i + 4];
+
+ int id = arr[i + 5];
+ int accel = arr[i + 6];
+ Variant meta = arr[i + 7];
+ String subm = arr[i + 8];
+ bool sep = arr[i + 9];
+
+ int idx = get_item_count();
+ add_item(text, id);
+ set_item_icon(idx, icon);
+ if (checkable) {
+ if (radio_checkable) {
+ set_item_as_radio_checkable(idx, true);
+ } else {
+ set_item_as_checkable(idx, true);
+ }
+ }
+ set_item_checked(idx, checked);
+ set_item_disabled(idx, disabled);
+ set_item_id(idx, id);
+ set_item_metadata(idx, meta);
+ set_item_as_separator(idx, sep);
+ set_item_accelerator(idx, accel);
+ set_item_submenu(idx, subm);
+ }
+ }
+#endif
+ return false;
+}
+
+bool PopupMenu::_get(const StringName &p_name, Variant &r_ret) const {
+ Vector<String> components = String(p_name).split("/", true, 2);
+ if (components.size() >= 2 && components[0].begins_with("item_") && components[0].trim_prefix("item_").is_valid_int()) {
+ int item_index = components[0].trim_prefix("item_").to_int();
+ String property = components[1];
+ if (property == "text") {
+ r_ret = get_item_text(item_index);
+ return true;
+ } else if (property == "icon") {
+ r_ret = get_item_icon(item_index);
+ return true;
+ } else if (property == "checkable") {
+ r_ret = this->items[item_index].checkable_type;
+ return true;
+ } else if (property == "checked") {
+ r_ret = is_item_checked(item_index);
+ return true;
+ } else if (property == "id") {
+ r_ret = get_item_id(item_index);
+ return true;
+ } else if (components[1] == "disabled") {
+ r_ret = is_item_disabled(item_index);
+ return true;
+ } else if (property == "separator") {
+ r_ret = is_item_separator(item_index);
+ return true;
+ }
+ }
+ return false;
+}
+
+void PopupMenu::_get_property_list(List<PropertyInfo> *p_list) const {
+ for (int i = 0; i < items.size(); i++) {
+ p_list->push_back(PropertyInfo(Variant::STRING, vformat("item_%d/text", i)));
+
+ PropertyInfo pi = PropertyInfo(Variant::OBJECT, vformat("item_%d/icon", i), PROPERTY_HINT_RESOURCE_TYPE, "Texture2D");
+ pi.usage &= ~(get_item_icon(i).is_null() ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::INT, vformat("item_%d/checkable", i), PROPERTY_HINT_ENUM, "No,As checkbox,As radio button");
+ pi.usage &= ~(!is_item_checkable(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::BOOL, vformat("item_%d/checked", i));
+ pi.usage &= ~(!is_item_checked(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::INT, vformat("item_%d/id", i), PROPERTY_HINT_RANGE, "1,10,1,or_greater");
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::BOOL, vformat("item_%d/disabled", i));
+ pi.usage &= ~(!is_item_disabled(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+
+ pi = PropertyInfo(Variant::BOOL, vformat("item_%d/separator", i));
+ pi.usage &= ~(!is_item_separator(i) ? PROPERTY_USAGE_STORAGE : 0);
+ p_list->push_back(pi);
+ }
+}
+
void PopupMenu::_bind_methods() {
ClassDB::bind_method(D_METHOD("add_item", "label", "id", "accel"), &PopupMenu::add_item, DEFVAL(-1), DEFVAL(0));
ClassDB::bind_method(D_METHOD("add_icon_item", "texture", "label", "id", "accel"), &PopupMenu::add_icon_item, DEFVAL(-1), DEFVAL(0));
@@ -1643,6 +1733,7 @@ void PopupMenu::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_item_shortcut", "idx"), &PopupMenu::get_item_shortcut);
ClassDB::bind_method(D_METHOD("get_current_index"), &PopupMenu::get_current_index);
+ ClassDB::bind_method(D_METHOD("set_item_count", "count"), &PopupMenu::set_item_count);
ClassDB::bind_method(D_METHOD("get_item_count"), &PopupMenu::get_item_count);
ClassDB::bind_method(D_METHOD("remove_item", "idx"), &PopupMenu::remove_item);
@@ -1650,9 +1741,6 @@ void PopupMenu::_bind_methods() {
ClassDB::bind_method(D_METHOD("add_separator", "label", "id"), &PopupMenu::add_separator, DEFVAL(String()), DEFVAL(-1));
ClassDB::bind_method(D_METHOD("clear"), &PopupMenu::clear);
- ClassDB::bind_method(D_METHOD("_set_items"), &PopupMenu::_set_items);
- ClassDB::bind_method(D_METHOD("_get_items"), &PopupMenu::_get_items);
-
ClassDB::bind_method(D_METHOD("set_hide_on_item_selection", "enable"), &PopupMenu::set_hide_on_item_selection);
ClassDB::bind_method(D_METHOD("is_hide_on_item_selection"), &PopupMenu::is_hide_on_item_selection);
@@ -1668,13 +1756,14 @@ void PopupMenu::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_allow_search", "allow"), &PopupMenu::set_allow_search);
ClassDB::bind_method(D_METHOD("get_allow_search"), &PopupMenu::get_allow_search);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "items", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_items", "_get_items");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "hide_on_item_selection"), "set_hide_on_item_selection", "is_hide_on_item_selection");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "hide_on_checkable_item_selection"), "set_hide_on_checkable_item_selection", "is_hide_on_checkable_item_selection");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "hide_on_state_item_selection"), "set_hide_on_state_item_selection", "is_hide_on_state_item_selection");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "submenu_popup_delay"), "set_submenu_popup_delay", "get_submenu_popup_delay");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "allow_search"), "set_allow_search", "get_allow_search");
+ ADD_ARRAY_COUNT("Items", "items_count", "set_item_count", "get_item_count", "item_");
+
ADD_SIGNAL(MethodInfo("id_pressed", PropertyInfo(Variant::INT, "id")));
ADD_SIGNAL(MethodInfo("id_focused", PropertyInfo(Variant::INT, "id")));
ADD_SIGNAL(MethodInfo("index_pressed", PropertyInfo(Variant::INT, "index")));
diff --git a/scene/gui/popup_menu.h b/scene/gui/popup_menu.h
index 428076c6da..80874ca1e0 100644
--- a/scene/gui/popup_menu.h
+++ b/scene/gui/popup_menu.h
@@ -117,9 +117,6 @@ class PopupMenu : public Popup {
bool hide_on_multistate_item_selection = false;
Vector2 moved;
- Array _get_items() const;
- void _set_items(const Array &p_items);
-
Map<Ref<Shortcut>, int> shortcut_refcount;
void _ref_shortcut(Ref<Shortcut> p_sc);
@@ -141,6 +138,9 @@ class PopupMenu : public Popup {
protected:
void _notification(int p_what);
+ bool _set(const StringName &p_name, const Variant &p_value);
+ bool _get(const StringName &p_name, Variant &r_ret) const;
+ void _get_property_list(List<PropertyInfo> *p_list) const;
static void _bind_methods();
public:
@@ -213,6 +213,8 @@ public:
int get_item_state(int p_idx) const;
int get_current_index() const;
+
+ void set_item_count(int p_count);
int get_item_count() const;
bool activate_item_by_event(const Ref<InputEvent> &p_event, bool p_for_global_only = false);
diff --git a/scene/main/canvas_layer.cpp b/scene/main/canvas_layer.cpp
index 26bff4494b..cd7534f73c 100644
--- a/scene/main/canvas_layer.cpp
+++ b/scene/main/canvas_layer.cpp
@@ -256,7 +256,7 @@ void CanvasLayer::_update_follow_viewport(bool p_force_exit) {
void CanvasLayer::_validate_property(PropertyInfo &property) const {
if (!follow_viewport && property.name == "follow_viewport_scale") {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/main/node.cpp b/scene/main/node.cpp
index 189aebb47d..3be73af861 100644
--- a/scene/main/node.cpp
+++ b/scene/main/node.cpp
@@ -908,17 +908,12 @@ void Node::set_name(const String &p_name) {
}
}
-static bool node_hrcr = false;
static SafeRefCount node_hrcr_count;
void Node::init_node_hrcr() {
node_hrcr_count.init(1);
}
-void Node::set_human_readable_collision_renaming(bool p_enabled) {
- node_hrcr = p_enabled;
-}
-
#ifdef TOOLS_ENABLED
String Node::validate_child_name(Node *p_child) {
StringName name = p_child->data.name;
@@ -930,9 +925,8 @@ String Node::validate_child_name(Node *p_child) {
void Node::_validate_child_name(Node *p_child, bool p_force_human_readable) {
/* Make sure the name is unique */
- if (node_hrcr || p_force_human_readable) {
+ if (p_force_human_readable) {
//this approach to autoset node names is human readable but very slow
- //it's turned on while running in the editor
StringName name = p_child->data.name;
_generate_serial_child_name(p_child, name);
@@ -1899,6 +1893,56 @@ Node *Node::get_deepest_editable_node(Node *p_start_node) const {
return node;
}
+#ifdef TOOLS_ENABLED
+void Node::set_property_pinned(const String &p_property, bool p_pinned) {
+ bool current_pinned = false;
+ bool has_pinned = has_meta("_edit_pinned_properties_");
+ Array pinned;
+ String psa = get_property_store_alias(p_property);
+ if (has_pinned) {
+ pinned = get_meta("_edit_pinned_properties_");
+ current_pinned = pinned.has(psa);
+ }
+
+ if (current_pinned != p_pinned) {
+ if (p_pinned) {
+ pinned.append(psa);
+ if (!has_pinned) {
+ set_meta("_edit_pinned_properties_", pinned);
+ }
+ } else {
+ pinned.erase(psa);
+ if (pinned.is_empty()) {
+ remove_meta("_edit_pinned_properties_");
+ }
+ }
+ }
+}
+
+bool Node::is_property_pinned(const StringName &p_property) const {
+ if (!has_meta("_edit_pinned_properties_")) {
+ return false;
+ }
+ Array pinned = get_meta("_edit_pinned_properties_");
+ String psa = get_property_store_alias(p_property);
+ return pinned.has(psa);
+}
+
+StringName Node::get_property_store_alias(const StringName &p_property) const {
+ return p_property;
+}
+#endif
+
+void Node::get_storable_properties(Set<StringName> &r_storable_properties) const {
+ List<PropertyInfo> pi;
+ get_property_list(&pi);
+ for (List<PropertyInfo>::Element *E = pi.front(); E; E = E->next()) {
+ if ((E->get().usage & PROPERTY_USAGE_STORAGE)) {
+ r_storable_properties.insert(E->get().name);
+ }
+ }
+}
+
String Node::to_string() {
if (get_script_instance()) {
bool valid;
@@ -2750,7 +2794,11 @@ void Node::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_import_path", "import_path"), &Node::set_import_path);
ClassDB::bind_method(D_METHOD("_get_import_path"), &Node::get_import_path);
- ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "_import_path", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_import_path", "_get_import_path");
+#ifdef TOOLS_ENABLED
+ ClassDB::bind_method(D_METHOD("_set_property_pinned", "property", "pinned"), &Node::set_property_pinned);
+#endif
+
+ ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "_import_path", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_import_path", "_get_import_path");
{
MethodInfo mi;
diff --git a/scene/main/node.h b/scene/main/node.h
index e59a7a390a..2dd32a2e1d 100644
--- a/scene/main/node.h
+++ b/scene/main/node.h
@@ -363,6 +363,13 @@ public:
bool is_editable_instance(const Node *p_node) const;
Node *get_deepest_editable_node(Node *p_start_node) const;
+#ifdef TOOLS_ENABLED
+ void set_property_pinned(const String &p_property, bool p_pinned);
+ bool is_property_pinned(const StringName &p_property) const;
+ virtual StringName get_property_store_alias(const StringName &p_property) const;
+#endif
+ void get_storable_properties(Set<StringName> &r_storable_properties) const;
+
virtual String to_string() override;
/* NOTIFICATIONS */
@@ -437,7 +444,6 @@ public:
void queue_delete();
//hacks for speed
- static void set_human_readable_collision_renaming(bool p_enabled);
static void init_node_hrcr();
void force_parent_owned() { data.parent_owned = true; } //hack to avoid duplicate nodes
diff --git a/scene/main/resource_preloader.cpp b/scene/main/resource_preloader.cpp
index f4c90ee668..c44b55284d 100644
--- a/scene/main/resource_preloader.cpp
+++ b/scene/main/resource_preloader.cpp
@@ -147,7 +147,7 @@ void ResourcePreloader::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_resource", "name"), &ResourcePreloader::get_resource);
ClassDB::bind_method(D_METHOD("get_resource_list"), &ResourcePreloader::_get_resource_list);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "resources", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_resources", "_get_resources");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "resources", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_resources", "_get_resources");
}
ResourcePreloader::ResourcePreloader() {
diff --git a/scene/main/viewport.cpp b/scene/main/viewport.cpp
index 6388b375d9..31e8c20991 100644
--- a/scene/main/viewport.cpp
+++ b/scene/main/viewport.cpp
@@ -638,7 +638,13 @@ void Viewport::_process_picking() {
Vector2 point = canvas_transform.affine_inverse().xform(pos);
- int rc = ss2d->intersect_point_on_canvas(point, canvas_layer_id, res, 64, Set<RID>(), 0xFFFFFFFF, true, true, true);
+ PhysicsDirectSpaceState2D::PointParameters point_params;
+ point_params.position = point;
+ point_params.canvas_instance_id = canvas_layer_id;
+ point_params.collide_with_areas = true;
+ point_params.pick_point = true;
+
+ int rc = ss2d->intersect_point(point_params, res, 64);
for (int i = 0; i < rc; i++) {
if (res[i].collider_id.is_valid() && res[i].collider) {
CollisionObject2D *co = Object::cast_to<CollisionObject2D>(res[i].collider);
@@ -715,10 +721,17 @@ void Viewport::_process_picking() {
if (camera_3d) {
Vector3 from = camera_3d->project_ray_origin(pos);
Vector3 dir = camera_3d->project_ray_normal(pos);
+ real_t far = camera_3d->far;
PhysicsDirectSpaceState3D *space = PhysicsServer3D::get_singleton()->space_get_direct_state(find_world_3d()->get_space());
if (space) {
- bool col = space->intersect_ray(from, from + dir * 10000, result, Set<RID>(), 0xFFFFFFFF, true, true, true);
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = from;
+ ray_params.to = from + dir * far;
+ ray_params.collide_with_areas = true;
+ ray_params.pick_ray = true;
+
+ bool col = space->intersect_ray(ray_params, result);
ObjectID new_collider;
if (col) {
CollisionObject3D *co = Object::cast_to<CollisionObject3D>(result.collider);
diff --git a/scene/property_utils.cpp b/scene/property_utils.cpp
new file mode 100644
index 0000000000..79821b8399
--- /dev/null
+++ b/scene/property_utils.cpp
@@ -0,0 +1,185 @@
+/*************************************************************************/
+/* property_utils.cpp */
+/*************************************************************************/
+/* This file is part of: */
+/* GODOT ENGINE */
+/* https://godotengine.org */
+/*************************************************************************/
+/* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */
+/* Copyright (c) 2014-2021 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 "property_utils.h"
+
+#include "core/config/engine.h"
+#include "core/templates/local_vector.h"
+#include "editor/editor_node.h"
+#include "scene/resources/packed_scene.h"
+
+bool PropertyUtils::is_property_value_different(const Variant &p_a, const Variant &p_b) {
+ if (p_a.get_type() == Variant::FLOAT && p_b.get_type() == Variant::FLOAT) {
+ //this must be done because, as some scenes save as text, there might be a tiny difference in floats due to numerical error
+ return !Math::is_equal_approx((float)p_a, (float)p_b);
+ } else {
+ // For our purposes, treating null object as NIL is the right thing to do
+ const Variant &a = p_a.get_type() == Variant::OBJECT && (Object *)p_a == nullptr ? Variant() : p_a;
+ const Variant &b = p_b.get_type() == Variant::OBJECT && (Object *)p_b == nullptr ? Variant() : p_b;
+ return a != b;
+ }
+}
+
+Variant PropertyUtils::get_property_default_value(const Object *p_object, const StringName &p_property, const Vector<SceneState::PackState> *p_states_stack_cache, bool p_update_exports, const Node *p_owner, bool *r_is_class_default) {
+ // This function obeys the way property values are set when an object is instantiated,
+ // which is the following (the latter wins):
+ // 1. Default value from builtin class
+ // 2. Default value from script exported variable (from the topmost script)
+ // 3. Value overrides from the instantiation/inheritance stack
+
+ if (r_is_class_default) {
+ *r_is_class_default = false;
+ }
+
+ Ref<Script> topmost_script;
+
+ if (const Node *node = Object::cast_to<Node>(p_object)) {
+ // Check inheritance/instantiation ancestors
+ const Vector<SceneState::PackState> &states_stack = p_states_stack_cache ? *p_states_stack_cache : PropertyUtils::get_node_states_stack(node, p_owner);
+ for (int i = 0; i < states_stack.size(); ++i) {
+ const SceneState::PackState &ia = states_stack[i];
+ bool found = false;
+ Variant value_in_ancestor = ia.state->get_property_value(ia.node, p_property, found);
+ if (found) {
+ return value_in_ancestor;
+ }
+ // Save script for later
+ bool has_script = false;
+ Variant script = ia.state->get_property_value(ia.node, SNAME("script"), has_script);
+ if (has_script) {
+ Ref<Script> scr = script;
+ if (scr.is_valid()) {
+ topmost_script = scr;
+ }
+ }
+ }
+ }
+
+ // Let's see what default is set by the topmost script having a default, if any
+ if (topmost_script.is_null()) {
+ topmost_script = p_object->get_script();
+ }
+ if (topmost_script.is_valid()) {
+ // Should be called in the editor only and not at runtime,
+ // otherwise it can cause problems because of missing instance state support
+ if (p_update_exports && Engine::get_singleton()->is_editor_hint()) {
+ topmost_script->update_exports();
+ }
+ Variant default_value;
+ if (topmost_script->get_property_default_value(p_property, default_value)) {
+ return default_value;
+ }
+ }
+
+ // Fall back to the default from the native class
+ if (r_is_class_default) {
+ *r_is_class_default = true;
+ }
+ return ClassDB::class_get_default_property_value(p_object->get_class_name(), p_property);
+}
+
+// Like SceneState::PackState, but using a raw pointer to avoid the cost of
+// updating the reference count during the internal work of the functions below
+namespace {
+struct _FastPackState {
+ SceneState *state = nullptr;
+ int node = -1;
+};
+} // namespace
+
+static bool _collect_inheritance_chain(const Ref<SceneState> &p_state, const NodePath &p_path, LocalVector<_FastPackState> &r_states_stack) {
+ bool found = false;
+
+ LocalVector<_FastPackState> inheritance_states;
+
+ Ref<SceneState> state = p_state;
+ while (state.is_valid()) {
+ int node = state->find_node_by_path(p_path);
+ if (node >= 0) {
+ // This one has state for this node
+ inheritance_states.push_back({ state.ptr(), node });
+ found = true;
+ }
+ state = state->get_base_scene_state();
+ }
+
+ for (int i = inheritance_states.size() - 1; i >= 0; --i) {
+ r_states_stack.push_back(inheritance_states[i]);
+ }
+
+ return found;
+}
+
+Vector<SceneState::PackState> PropertyUtils::get_node_states_stack(const Node *p_node, const Node *p_owner, bool *r_instantiated_by_owner) {
+ if (r_instantiated_by_owner) {
+ *r_instantiated_by_owner = true;
+ }
+
+ LocalVector<_FastPackState> states_stack;
+ {
+ const Node *owner = p_owner;
+#ifdef TOOLS_ENABLED
+ if (!p_owner && Engine::get_singleton()->is_editor_hint()) {
+ owner = EditorNode::get_singleton()->get_edited_scene();
+ }
+#endif
+
+ const Node *n = p_node;
+ while (n) {
+ if (n == owner) {
+ const Ref<SceneState> &state = n->get_scene_inherited_state();
+ if (_collect_inheritance_chain(state, n->get_path_to(p_node), states_stack)) {
+ if (r_instantiated_by_owner) {
+ *r_instantiated_by_owner = false;
+ }
+ }
+ break;
+ } else if (n->get_scene_file_path() != String()) {
+ const Ref<SceneState> &state = n->get_scene_instance_state();
+ _collect_inheritance_chain(state, n->get_path_to(p_node), states_stack);
+ }
+ n = n->get_owner();
+ }
+ }
+
+ // Convert to the proper type for returning, inverting the vector on the go
+ // (it was more convenient to fill the vector in reverse order)
+ Vector<SceneState::PackState> states_stack_ret;
+ {
+ states_stack_ret.resize(states_stack.size());
+ _FastPackState *ps = states_stack.ptr();
+ for (int i = states_stack.size() - 1; i >= 0; --i) {
+ states_stack_ret.write[i].state.reference_ptr(ps->state);
+ states_stack_ret.write[i].node = ps->node;
+ ++ps;
+ }
+ }
+ return states_stack_ret;
+}
diff --git a/platform/osx/context_gl_osx.h b/scene/property_utils.h
index 77bae3247d..fde9163548 100644
--- a/platform/osx/context_gl_osx.h
+++ b/scene/property_utils.h
@@ -1,5 +1,5 @@
/*************************************************************************/
-/* context_gl_osx.h */
+/* property_utils.h */
/*************************************************************************/
/* This file is part of: */
/* GODOT ENGINE */
@@ -28,47 +28,24 @@
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/*************************************************************************/
-#ifndef CONTEXT_GL_OSX_H
-#define CONTEXT_GL_OSX_H
+#ifndef PROPERTY_UTILS_H
+#define PROPERTY_UTILS_H
-#if defined(GLES3_ENABLED) || defined(GLES_ENABLED)
-
-#include "core/error/error_list.h"
-#include "core/os/os.h"
-
-#include <AppKit/AppKit.h>
-#include <ApplicationServices/ApplicationServices.h>
-#include <CoreVideo/CoreVideo.h>
-
-class ContextGL_OSX {
- bool gles3_context;
- bool use_vsync;
-
- void *framework;
- id window_view;
- NSOpenGLPixelFormat *pixelFormat;
- NSOpenGLContext *context;
+#include "scene/main/node.h"
+#include "scene/resources/packed_scene.h"
+class PropertyUtils {
public:
- void release_current();
-
- void make_current();
- void update();
-
- void set_opacity(GLint p_opacity);
-
- int get_window_width();
- int get_window_height();
- void swap_buffers();
-
- Error initialize();
-
- void set_use_vsync(bool p_use);
- bool is_using_vsync() const;
-
- ContextGL_OSX(id p_view, bool p_gles3_context);
- ~ContextGL_OSX();
+ static bool is_property_value_different(const Variant &p_a, const Variant &p_b);
+ // Gets the most pure default value, the one that would be set when the node has just been instantiated
+ static Variant get_property_default_value(const Object *p_object, const StringName &p_property, const Vector<SceneState::PackState> *p_states_stack_cache = nullptr, bool p_update_exports = false, const Node *p_owner = nullptr, bool *r_is_class_default = nullptr);
+
+ // Gets the instance/inheritance states of this node, in order of precedence,
+ // that is, from the topmost (the most able to override values) to the lowermost
+ // (Note that in nested instancing the one with the greatest precedence is the furthest
+ // in the tree, since every owner found while traversing towards the root gets a chance
+ // to override property values.)
+ static Vector<SceneState::PackState> get_node_states_stack(const Node *p_node, const Node *p_owner = nullptr, bool *r_instantiated_by_owner = nullptr);
};
-#endif
-#endif
+#endif // PROPERTY_UTILS_H
diff --git a/scene/register_scene_types.cpp b/scene/register_scene_types.cpp
index d44cd7ca63..c193850a78 100644
--- a/scene/register_scene_types.cpp
+++ b/scene/register_scene_types.cpp
@@ -791,7 +791,7 @@ void register_scene_types() {
GDREGISTER_CLASS(MeshTexture);
GDREGISTER_CLASS(CurveTexture);
GDREGISTER_CLASS(CurveXYZTexture);
- GDREGISTER_CLASS(GradientTexture);
+ GDREGISTER_CLASS(GradientTexture1D);
GDREGISTER_CLASS(GradientTexture2D);
GDREGISTER_CLASS(ProxyTexture);
GDREGISTER_CLASS(AnimatedTexture);
@@ -922,6 +922,7 @@ void register_scene_types() {
ClassDB::add_compatibility_class("EditorSpatialGizmo", "EditorNode3DGizmo");
ClassDB::add_compatibility_class("EditorSpatialGizmoPlugin", "EditorNode3DGizmoPlugin");
ClassDB::add_compatibility_class("Generic6DOFJoint", "Generic6DOFJoint3D");
+ ClassDB::add_compatibility_class("GradientTexture", "GradientTexture1D");
ClassDB::add_compatibility_class("HeightMapShape", "HeightMapShape3D");
ClassDB::add_compatibility_class("HingeJoint", "HingeJoint3D");
ClassDB::add_compatibility_class("Joint", "Joint3D");
diff --git a/scene/resources/animation.cpp b/scene/resources/animation.cpp
index 06ce993cc7..71d2774335 100644
--- a/scene/resources/animation.cpp
+++ b/scene/resources/animation.cpp
@@ -799,19 +799,19 @@ bool Animation::_get(const StringName &p_name, Variant &r_ret) const {
void Animation::_get_property_list(List<PropertyInfo> *p_list) const {
if (compression.enabled) {
- p_list->push_back(PropertyInfo(Variant::DICTIONARY, "_compression", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::DICTIONARY, "_compression", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
for (int i = 0; i < tracks.size(); i++) {
- p_list->push_back(PropertyInfo(Variant::STRING, "tracks/" + itos(i) + "/type", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "tracks/" + itos(i) + "/imported", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "tracks/" + itos(i) + "/enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::NODE_PATH, "tracks/" + itos(i) + "/path", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::STRING, "tracks/" + itos(i) + "/type", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "tracks/" + itos(i) + "/imported", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "tracks/" + itos(i) + "/enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::NODE_PATH, "tracks/" + itos(i) + "/path", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
if (track_is_compressed(i)) {
- p_list->push_back(PropertyInfo(Variant::INT, "tracks/" + itos(i) + "/compressed_track", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::INT, "tracks/" + itos(i) + "/compressed_track", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
} else {
- p_list->push_back(PropertyInfo(Variant::INT, "tracks/" + itos(i) + "/interp", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "tracks/" + itos(i) + "/loop_wrap", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::ARRAY, "tracks/" + itos(i) + "/keys", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::INT, "tracks/" + itos(i) + "/interp", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "tracks/" + itos(i) + "/loop_wrap", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "tracks/" + itos(i) + "/keys", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
}
}
diff --git a/scene/resources/audio_stream_sample.cpp b/scene/resources/audio_stream_sample.cpp
index d018103e64..5cfc4a9d40 100644
--- a/scene/resources/audio_stream_sample.cpp
+++ b/scene/resources/audio_stream_sample.cpp
@@ -636,7 +636,7 @@ void AudioStreamSample::_bind_methods() {
ClassDB::bind_method(D_METHOD("save_to_wav", "path"), &AudioStreamSample::save_to_wav);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_BYTE_ARRAY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_data", "get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_BYTE_ARRAY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_data", "get_data");
ADD_PROPERTY(PropertyInfo(Variant::INT, "format", PROPERTY_HINT_ENUM, "8-Bit,16-Bit,IMA-ADPCM"), "set_format", "get_format");
ADD_PROPERTY(PropertyInfo(Variant::INT, "loop_mode", PROPERTY_HINT_ENUM, "Disabled,Forward,Ping-Pong,Backward"), "set_loop_mode", "get_loop_mode");
ADD_PROPERTY(PropertyInfo(Variant::INT, "loop_begin"), "set_loop_begin", "get_loop_begin");
diff --git a/scene/resources/bit_map.cpp b/scene/resources/bit_map.cpp
index 49ed9dcb82..16f1507c34 100644
--- a/scene/resources/bit_map.cpp
+++ b/scene/resources/bit_map.cpp
@@ -674,7 +674,7 @@ void BitMap::_bind_methods() {
ClassDB::bind_method(D_METHOD("grow_mask", "pixels", "rect"), &BitMap::grow_mask);
ClassDB::bind_method(D_METHOD("opaque_to_polygons", "rect", "epsilon"), &BitMap::_opaque_to_polygons_bind, DEFVAL(2.0));
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
}
BitMap::BitMap() {}
diff --git a/scene/resources/camera_effects.cpp b/scene/resources/camera_effects.cpp
index b633196424..0df372ea1b 100644
--- a/scene/resources/camera_effects.cpp
+++ b/scene/resources/camera_effects.cpp
@@ -149,7 +149,7 @@ void CameraEffects::_validate_property(PropertyInfo &property) const {
if ((!dof_blur_far_enabled && (property.name == "dof_blur_far_distance" || property.name == "dof_blur_far_transition")) ||
(!dof_blur_near_enabled && (property.name == "dof_blur_near_distance" || property.name == "dof_blur_near_transition")) ||
(!override_exposure_enabled && property.name == "override_exposure")) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/resources/concave_polygon_shape_3d.cpp b/scene/resources/concave_polygon_shape_3d.cpp
index 3fed700383..03854683bd 100644
--- a/scene/resources/concave_polygon_shape_3d.cpp
+++ b/scene/resources/concave_polygon_shape_3d.cpp
@@ -108,7 +108,7 @@ void ConcavePolygonShape3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_backface_collision_enabled", "enabled"), &ConcavePolygonShape3D::set_backface_collision_enabled);
ClassDB::bind_method(D_METHOD("is_backface_collision_enabled"), &ConcavePolygonShape3D::is_backface_collision_enabled);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR3_ARRAY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_faces", "get_faces");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR3_ARRAY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_faces", "get_faces");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "backface_collision"), "set_backface_collision_enabled", "is_backface_collision_enabled");
}
diff --git a/scene/resources/curve.cpp b/scene/resources/curve.cpp
index 9dc76dcf44..b530a72033 100644
--- a/scene/resources/curve.cpp
+++ b/scene/resources/curve.cpp
@@ -522,7 +522,7 @@ void Curve::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "min_value", PROPERTY_HINT_RANGE, "-1024,1024,0.01"), "set_min_value", "get_min_value");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "max_value", PROPERTY_HINT_RANGE, "-1024,1024,0.01"), "set_max_value", "get_max_value");
ADD_PROPERTY(PropertyInfo(Variant::INT, "bake_resolution", PROPERTY_HINT_RANGE, "1,1000,1"), "set_bake_resolution", "get_bake_resolution");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
ADD_SIGNAL(MethodInfo(SIGNAL_RANGE_CHANGED));
@@ -1006,7 +1006,7 @@ void Curve2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_data"), &Curve2D::_set_data);
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "bake_interval", PROPERTY_HINT_RANGE, "0.01,512,0.01"), "set_bake_interval", "get_bake_interval");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
}
Curve2D::Curve2D() {
@@ -1699,7 +1699,7 @@ void Curve3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_data"), &Curve3D::_set_data);
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "bake_interval", PROPERTY_HINT_RANGE, "0.01,512,0.01"), "set_bake_interval", "get_bake_interval");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
ADD_GROUP("Up Vector", "up_vector_");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "up_vector_enabled"), "set_up_vector_enabled", "is_up_vector_enabled");
diff --git a/scene/resources/environment.cpp b/scene/resources/environment.cpp
index 9f8e89564d..4c25ed589b 100644
--- a/scene/resources/environment.cpp
+++ b/scene/resources/environment.cpp
@@ -917,7 +917,7 @@ float Environment::get_adjustment_saturation() const {
void Environment::set_adjustment_color_correction(Ref<Texture> p_color_correction) {
adjustment_color_correction = p_color_correction;
- Ref<GradientTexture> grad_tex = p_color_correction;
+ Ref<GradientTexture1D> grad_tex = p_color_correction;
if (grad_tex.is_valid()) {
if (!grad_tex->is_connected(CoreStringNames::get_singleton()->changed, callable_mp(this, &Environment::_update_adjustment))) {
grad_tex->connect(CoreStringNames::get_singleton()->changed, callable_mp(this, &Environment::_update_adjustment));
@@ -954,39 +954,39 @@ void Environment::_update_adjustment() {
void Environment::_validate_property(PropertyInfo &property) const {
if (property.name == "sky" || property.name == "sky_custom_fov" || property.name == "sky_rotation" || property.name == "ambient_light/sky_contribution") {
if (bg_mode != BG_SKY && ambient_source != AMBIENT_SOURCE_SKY && reflection_source != REFLECTION_SOURCE_SKY) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
if (property.name == "fog_aerial_perspective") {
if (bg_mode != BG_SKY) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
if (property.name == "glow_intensity" && glow_blend_mode == GLOW_BLEND_MODE_MIX) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
if (property.name == "glow_mix" && glow_blend_mode != GLOW_BLEND_MODE_MIX) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
if (property.name == "background_color") {
if (bg_mode != BG_COLOR && ambient_source != AMBIENT_SOURCE_COLOR) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
if (property.name == "background_canvas_max_layer") {
if (bg_mode != BG_CANVAS) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
}
}
if (property.name == "background_camera_feed_id") {
if (bg_mode != BG_CAMERA_FEED) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
@@ -1018,7 +1018,7 @@ void Environment::_validate_property(PropertyInfo &property) const {
String enabled = prefix + "enabled";
if (property.name.begins_with(prefix) && property.name != enabled && !bool(get(enabled))) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
return;
}
@@ -1031,7 +1031,7 @@ void Environment::_validate_property(PropertyInfo &property) const {
String prefix = String(*prefixes);
if (property.name.begins_with(prefix)) {
- property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL;
+ property.usage = PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL;
return;
}
diff --git a/scene/resources/importer_mesh.cpp b/scene/resources/importer_mesh.cpp
index 076b8312b6..7afa4c91f0 100644
--- a/scene/resources/importer_mesh.cpp
+++ b/scene/resources/importer_mesh.cpp
@@ -1243,5 +1243,5 @@ void ImporterMesh::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_lightmap_size_hint", "size"), &ImporterMesh::set_lightmap_size_hint);
ClassDB::bind_method(D_METHOD("get_lightmap_size_hint"), &ImporterMesh::get_lightmap_size_hint);
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "_set_data", "_get_data");
}
diff --git a/scene/resources/material.cpp b/scene/resources/material.cpp
index e01be7cc84..8399b14a56 100644
--- a/scene/resources/material.cpp
+++ b/scene/resources/material.cpp
@@ -1695,7 +1695,7 @@ BaseMaterial3D::TextureFilter BaseMaterial3D::get_texture_filter() const {
void BaseMaterial3D::_validate_feature(const String &text, Feature feature, PropertyInfo &property) const {
if (property.name.begins_with(text) && property.name != text + "_enabled" && !features[feature]) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
@@ -1729,23 +1729,23 @@ void BaseMaterial3D::_validate_property(PropertyInfo &property) const {
}
if (property.name == "billboard_keep_scale" && billboard_mode == BILLBOARD_DISABLED) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if (property.name == "grow_amount" && !grow_enabled) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if (property.name == "point_size" && !flags[FLAG_USE_POINT_SIZE]) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if (property.name == "proximity_fade_distance" && !proximity_fade_enabled) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
if ((property.name == "distance_fade_max_distance" || property.name == "distance_fade_min_distance") && distance_fade == DISTANCE_FADE_DISABLED) {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
// you can only enable anti-aliasing (in materials) on alpha scissor and alpha hash
diff --git a/scene/resources/mesh.cpp b/scene/resources/mesh.cpp
index 7ffe0b03e1..51b4e1fbd8 100644
--- a/scene/resources/mesh.cpp
+++ b/scene/resources/mesh.cpp
@@ -1842,8 +1842,8 @@ void ArrayMesh::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_surfaces", "surfaces"), &ArrayMesh::_set_surfaces);
ClassDB::bind_method(D_METHOD("_get_surfaces"), &ArrayMesh::_get_surfaces);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_STRING_ARRAY, "_blend_shape_names", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_blend_shape_names", "_get_blend_shape_names");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "_surfaces", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_surfaces", "_get_surfaces");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_STRING_ARRAY, "_blend_shape_names", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_blend_shape_names", "_get_blend_shape_names");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "_surfaces", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_surfaces", "_get_surfaces");
ADD_PROPERTY(PropertyInfo(Variant::INT, "blend_shape_mode", PROPERTY_HINT_ENUM, "Normalized,Relative"), "set_blend_shape_mode", "get_blend_shape_mode");
ADD_PROPERTY(PropertyInfo(Variant::AABB, "custom_aabb", PROPERTY_HINT_NONE, ""), "set_custom_aabb", "get_custom_aabb");
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "shadow_mesh", PROPERTY_HINT_RESOURCE_TYPE, "ArrayMesh"), "set_shadow_mesh", "get_shadow_mesh");
diff --git a/scene/resources/mesh_data_tool.cpp b/scene/resources/mesh_data_tool.cpp
index 04b2437ae8..9ecd8ec2f3 100644
--- a/scene/resources/mesh_data_tool.cpp
+++ b/scene/resources/mesh_data_tool.cpp
@@ -421,6 +421,7 @@ Vector<int> MeshDataTool::get_vertex_bones(int p_idx) const {
void MeshDataTool::set_vertex_bones(int p_idx, const Vector<int> &p_bones) {
ERR_FAIL_INDEX(p_idx, vertices.size());
+ ERR_FAIL_COND(p_bones.size() != 4);
vertices.write[p_idx].bones = p_bones;
format |= Mesh::ARRAY_FORMAT_BONES;
}
@@ -432,6 +433,7 @@ Vector<float> MeshDataTool::get_vertex_weights(int p_idx) const {
void MeshDataTool::set_vertex_weights(int p_idx, const Vector<float> &p_weights) {
ERR_FAIL_INDEX(p_idx, vertices.size());
+ ERR_FAIL_COND(p_weights.size() != 4);
vertices.write[p_idx].weights = p_weights;
format |= Mesh::ARRAY_FORMAT_WEIGHTS;
}
diff --git a/scene/resources/navigation_mesh.cpp b/scene/resources/navigation_mesh.cpp
index d87056f55d..db091ec37b 100644
--- a/scene/resources/navigation_mesh.cpp
+++ b/scene/resources/navigation_mesh.cpp
@@ -477,8 +477,8 @@ void NavigationMesh::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_polygons", "polygons"), &NavigationMesh::_set_polygons);
ClassDB::bind_method(D_METHOD("_get_polygons"), &NavigationMesh::_get_polygons);
- ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR3_ARRAY, "vertices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_vertices", "get_vertices");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "polygons", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_polygons", "_get_polygons");
+ ADD_PROPERTY(PropertyInfo(Variant::PACKED_VECTOR3_ARRAY, "vertices", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_vertices", "get_vertices");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "polygons", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_polygons", "_get_polygons");
ADD_PROPERTY(PropertyInfo(Variant::INT, "sample_partition_type/sample_partition_type", PROPERTY_HINT_ENUM, "Watershed,Monotone,Layers"), "set_sample_partition_type", "get_sample_partition_type");
ADD_PROPERTY(PropertyInfo(Variant::INT, "geometry/parsed_geometry_type", PROPERTY_HINT_ENUM, "Mesh Instances,Static Colliders,Both"), "set_parsed_geometry_type", "get_parsed_geometry_type");
diff --git a/scene/resources/packed_scene.cpp b/scene/resources/packed_scene.cpp
index 60cda637ca..f43715a463 100644
--- a/scene/resources/packed_scene.cpp
+++ b/scene/resources/packed_scene.cpp
@@ -34,10 +34,12 @@
#include "core/config/project_settings.h"
#include "core/core_string_names.h"
#include "core/io/resource_loader.h"
+#include "editor/editor_inspector.h"
#include "scene/2d/node_2d.h"
#include "scene/3d/node_3d.h"
#include "scene/gui/control.h"
#include "scene/main/instance_placeholder.h"
+#include "scene/property_utils.h"
#define PACKED_SCENE_VERSION 2
@@ -45,6 +47,30 @@ bool SceneState::can_instantiate() const {
return nodes.size() > 0;
}
+static Array _sanitize_node_pinned_properties(Node *p_node) {
+ if (!p_node->has_meta("_edit_pinned_properties_")) {
+ return Array();
+ }
+ Array pinned = p_node->get_meta("_edit_pinned_properties_");
+ if (pinned.is_empty()) {
+ return Array();
+ }
+ Set<StringName> storable_properties;
+ p_node->get_storable_properties(storable_properties);
+ int i = 0;
+ do {
+ if (storable_properties.has(pinned[i])) {
+ i++;
+ } else {
+ pinned.remove(i);
+ }
+ } while (i < pinned.size());
+ if (pinned.is_empty()) {
+ p_node->remove_meta("_edit_pinned_properties_");
+ }
+ return pinned;
+}
+
Node *SceneState::instantiate(GenEditState p_edit_state) const {
// nodes where instancing failed (because something is missing)
List<Node *> stray_instances;
@@ -227,7 +253,7 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
} else {
Node *base = i == 0 ? node : ret_nodes[0];
- if (p_edit_state == GEN_EDIT_STATE_MAIN) {
+ if (p_edit_state == GEN_EDIT_STATE_MAIN || p_edit_state == GEN_EDIT_STATE_MAIN_INHERITED) {
//for the main scene, use the resource as is
res->configure_for_local_scene(base, resources_local_to_scene);
resources_local_to_scene[res] = res;
@@ -291,6 +317,13 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
}
}
+ // we only want to deal with pinned flag if instancing as pure main (no instance, no inheriting)
+ if (p_edit_state == GEN_EDIT_STATE_MAIN) {
+ _sanitize_node_pinned_properties(node);
+ } else {
+ node->remove_meta("_edit_pinned_properties_");
+ }
+
ret_nodes[i] = node;
if (node && gen_node_path_cache && ret_nodes[0]) {
@@ -415,61 +448,22 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
// with the instance states, we can query for identical properties/groups
// and only save what has changed
- List<PackState> pack_state_stack;
-
- bool instantiated_by_owner = true;
-
- {
- Node *n = p_node;
-
- while (n) {
- if (n == p_owner) {
- Ref<SceneState> state = n->get_scene_inherited_state();
- if (state.is_valid()) {
- int node = state->find_node_by_path(n->get_path_to(p_node));
- if (node >= 0) {
- //this one has state for this node, save
- PackState ps;
- ps.node = node;
- ps.state = state;
- pack_state_stack.push_back(ps);
- instantiated_by_owner = false;
- }
- }
-
- if (p_node->get_scene_file_path() != String() && p_node->get_owner() == p_owner && instantiated_by_owner) {
- if (p_node->get_scene_instance_load_placeholder()) {
- //it's a placeholder, use the placeholder path
- nd.instance = _vm_get_variant(p_node->get_scene_file_path(), variant_map);
- nd.instance |= FLAG_INSTANCE_IS_PLACEHOLDER;
- } else {
- //must instance ourselves
- Ref<PackedScene> instance = ResourceLoader::load(p_node->get_scene_file_path());
- if (!instance.is_valid()) {
- return ERR_CANT_OPEN;
- }
+ bool instantiated_by_owner = false;
+ Vector<SceneState::PackState> states_stack = PropertyUtils::get_node_states_stack(p_node, p_owner, &instantiated_by_owner);
- nd.instance = _vm_get_variant(instance, variant_map);
- }
- }
- n = nullptr;
- } else {
- if (n->get_scene_file_path() != String()) {
- //is an instance
- Ref<SceneState> state = n->get_scene_instance_state();
- if (state.is_valid()) {
- int node = state->find_node_by_path(n->get_path_to(p_node));
- if (node >= 0) {
- //this one has state for this node, save
- PackState ps;
- ps.node = node;
- ps.state = state;
- pack_state_stack.push_back(ps);
- }
- }
- }
- n = n->get_owner();
+ if (p_node->get_scene_file_path() != String() && p_node->get_owner() == p_owner && instantiated_by_owner) {
+ if (p_node->get_scene_instance_load_placeholder()) {
+ //it's a placeholder, use the placeholder path
+ nd.instance = _vm_get_variant(p_node->get_scene_file_path(), variant_map);
+ nd.instance |= FLAG_INSTANCE_IS_PLACEHOLDER;
+ } else {
+ //must instance ourselves
+ Ref<PackedScene> instance = ResourceLoader::load(p_node->get_scene_file_path());
+ if (!instance.is_valid()) {
+ return ERR_CANT_OPEN;
}
+
+ nd.instance = _vm_get_variant(instance, variant_map);
}
}
@@ -478,88 +472,37 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
List<PropertyInfo> plist;
p_node->get_property_list(&plist);
- StringName type = p_node->get_class();
- Ref<Script> script = p_node->get_script();
- if (Engine::get_singleton()->is_editor_hint() && script.is_valid()) {
- // Should be called in the editor only and not at runtime,
- // otherwise it can cause problems because of missing instance state support.
- script->update_exports();
- }
+ Array pinned_props = _sanitize_node_pinned_properties(p_node);
for (const PropertyInfo &E : plist) {
if (!(E.usage & PROPERTY_USAGE_STORAGE)) {
continue;
}
- String name = E.name;
- Variant value = p_node->get(E.name);
-
- bool isdefault = false;
- Variant default_value = ClassDB::class_get_default_property_value(type, name);
-
- if (default_value.get_type() != Variant::NIL) {
- isdefault = bool(Variant::evaluate(Variant::OP_EQUAL, value, default_value));
- }
+ Variant forced_value;
- if (!isdefault && script.is_valid() && script->get_property_default_value(name, default_value)) {
- isdefault = bool(Variant::evaluate(Variant::OP_EQUAL, value, default_value));
- }
- // the version above makes more sense, because it does not rely on placeholder or usage flag
- // in the script, just the default value function.
- // if (E.usage & PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE) {
- // isdefault = true; //is script default value
- // }
-
- if (pack_state_stack.size()) {
- // we are on part of an instantiated subscene
- // or part of instantiated scene.
- // only save what has been changed
- // only save changed properties in instance
-
- if ((E.usage & PROPERTY_USAGE_NO_INSTANCE_STATE) || E.name == "__meta__") {
- //property has requested that no instance state is saved, sorry
- //also, meta won't be overridden or saved
+ // If instance or inheriting, not saving if property requested so, or it's meta
+ if (states_stack.size()) {
+ if ((E.usage & PROPERTY_USAGE_NO_INSTANCE_STATE)) {
continue;
}
-
- bool exists = false;
- Variant original;
-
- for (List<PackState>::Element *F = pack_state_stack.back(); F; F = F->prev()) {
- //check all levels of pack to see if the property exists somewhere
- const PackState &ps = F->get();
-
- original = ps.state->get_property_value(ps.node, E.name, exists);
- if (exists) {
- break;
- }
- }
-
- if (exists) {
- //check if already exists and did not change
- if (value.get_type() == Variant::FLOAT && original.get_type() == Variant::FLOAT) {
- //this must be done because, as some scenes save as text, there might be a tiny difference in floats due to numerical error
- float a = value;
- float b = original;
-
- if (Math::is_equal_approx(a, b)) {
- continue;
- }
- } else if (bool(Variant::evaluate(Variant::OP_EQUAL, value, original))) {
- continue;
+ // Meta is normally not saved in instances/inherited (see GH-12838), but we need to save the pinned list
+ if (E.name == "__meta__") {
+ if (pinned_props.size()) {
+ Dictionary meta_override;
+ meta_override["_edit_pinned_properties_"] = pinned_props;
+ forced_value = meta_override;
}
}
+ }
- if (!exists && isdefault) {
- //does not exist in original node, but it's the default value
- //so safe to skip too.
- continue;
- }
+ StringName name = E.name;
+ Variant value = forced_value.get_type() == Variant::NIL ? p_node->get(name) : forced_value;
- } else {
- if (isdefault) {
- //it's the default value, no point in saving it
+ if (!pinned_props.has(name) && forced_value.get_type() == Variant::NIL) {
+ Variant default_value = PropertyUtils::get_property_default_value(p_node, name, &states_stack, true);
+ if (!PropertyUtils::is_property_value_different(value, default_value)) {
continue;
}
}
@@ -585,10 +528,9 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
*/
bool skip = false;
- for (const PackState &F : pack_state_stack) {
+ for (const SceneState::PackState &ia : states_stack) {
//check all levels of pack to see if the group was added somewhere
- const PackState &ps = F;
- if (ps.state->is_node_in_group(ps.node, gi.name)) {
+ if (ia.state->is_node_in_group(ia.node, gi.name)) {
skip = true;
break;
}
@@ -618,7 +560,7 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
// Save the right type. If this node was created by an instance
// then flag that the node should not be created but reused
- if (pack_state_stack.is_empty() && !is_editable_instance) {
+ if (states_stack.is_empty() && !is_editable_instance) {
//this node is not part of an instancing process, so save the type
nd.type = _nm_get_string(p_node->get_class(), name_map);
} else {
@@ -635,7 +577,7 @@ Error SceneState::_parse_node(Node *p_owner, Node *p_node, int p_parent_idx, Map
bool save_node = nd.properties.size() || nd.groups.size(); // some local properties or groups exist
save_node = save_node || p_node == p_owner; // owner is always saved
- save_node = save_node || (p_node->get_owner() == p_owner && instantiated_by_owner); //part of scene and not instantiated
+ save_node = save_node || (p_node->get_owner() == p_owner && instantiated_by_owner); //part of scene and not instanced
int idx = nodes.size();
int parent_node = NO_PARENT_SAVED;
@@ -932,7 +874,7 @@ void SceneState::clear() {
base_scene_idx = -1;
}
-Ref<SceneState> SceneState::_get_base_scene_state() const {
+Ref<SceneState> SceneState::get_base_scene_state() const {
if (base_scene_idx >= 0) {
Ref<PackedScene> ps = variants[base_scene_idx];
if (ps.is_valid()) {
@@ -947,8 +889,8 @@ int SceneState::find_node_by_path(const NodePath &p_node) const {
ERR_FAIL_COND_V_MSG(node_path_cache.size() == 0, -1, "This operation requires the node cache to have been built.");
if (!node_path_cache.has(p_node)) {
- if (_get_base_scene_state().is_valid()) {
- int idx = _get_base_scene_state()->find_node_by_path(p_node);
+ if (get_base_scene_state().is_valid()) {
+ int idx = get_base_scene_state()->find_node_by_path(p_node);
if (idx != -1) {
int rkey = _find_base_scene_node_remap_key(idx);
if (rkey == -1) {
@@ -963,11 +905,11 @@ int SceneState::find_node_by_path(const NodePath &p_node) const {
int nid = node_path_cache[p_node];
- if (_get_base_scene_state().is_valid() && !base_scene_node_remap.has(nid)) {
+ if (get_base_scene_state().is_valid() && !base_scene_node_remap.has(nid)) {
//for nodes that _do_ exist in current scene, still try to look for
//the node in the instantiated scene, as a property may be missing
//from the local one
- int idx = _get_base_scene_state()->find_node_by_path(p_node);
+ int idx = get_base_scene_state()->find_node_by_path(p_node);
if (idx != -1) {
base_scene_node_remap[nid] = idx;
}
@@ -1007,7 +949,7 @@ Variant SceneState::get_property_value(int p_node, const StringName &p_property,
//property not found, try on instance
if (base_scene_node_remap.has(p_node)) {
- return _get_base_scene_state()->get_property_value(base_scene_node_remap[p_node], p_property, found);
+ return get_base_scene_state()->get_property_value(base_scene_node_remap[p_node], p_property, found);
}
return Variant();
@@ -1026,7 +968,7 @@ bool SceneState::is_node_in_group(int p_node, const StringName &p_group) const {
}
if (base_scene_node_remap.has(p_node)) {
- return _get_base_scene_state()->is_node_in_group(base_scene_node_remap[p_node], p_group);
+ return get_base_scene_state()->is_node_in_group(base_scene_node_remap[p_node], p_group);
}
return false;
@@ -1065,7 +1007,7 @@ bool SceneState::is_connection(int p_node, const StringName &p_signal, int p_to_
}
if (base_scene_node_remap.has(p_node) && base_scene_node_remap.has(p_to_node)) {
- return _get_base_scene_state()->is_connection(base_scene_node_remap[p_node], p_signal, base_scene_node_remap[p_to_node], p_to_method);
+ return get_base_scene_state()->is_connection(base_scene_node_remap[p_node], p_signal, base_scene_node_remap[p_to_node], p_to_method);
}
return false;
@@ -1488,7 +1430,7 @@ bool SceneState::has_connection(const NodePath &p_node_from, const StringName &p
}
}
- ss = ss->_get_base_scene_state();
+ ss = ss->get_base_scene_state();
} while (ss.is_valid());
return false;
@@ -1610,6 +1552,7 @@ void SceneState::_bind_methods() {
BIND_ENUM_CONSTANT(GEN_EDIT_STATE_DISABLED);
BIND_ENUM_CONSTANT(GEN_EDIT_STATE_INSTANCE);
BIND_ENUM_CONSTANT(GEN_EDIT_STATE_MAIN);
+ BIND_ENUM_CONSTANT(GEN_EDIT_STATE_MAIN_INHERITED);
}
SceneState::SceneState() {
@@ -1651,7 +1594,7 @@ Node *PackedScene::instantiate(GenEditState p_edit_state) const {
s->set_scene_instance_state(state);
}
- if (get_path() != "" && get_path().find("::") == -1) {
+ if (!is_built_in()) {
s->set_scene_file_path(get_path());
}
@@ -1701,6 +1644,7 @@ void PackedScene::_bind_methods() {
BIND_ENUM_CONSTANT(GEN_EDIT_STATE_DISABLED);
BIND_ENUM_CONSTANT(GEN_EDIT_STATE_INSTANCE);
BIND_ENUM_CONSTANT(GEN_EDIT_STATE_MAIN);
+ BIND_ENUM_CONSTANT(GEN_EDIT_STATE_MAIN_INHERITED);
}
PackedScene::PackedScene() {
diff --git a/scene/resources/packed_scene.h b/scene/resources/packed_scene.h
index 55708f7914..a03da558e4 100644
--- a/scene/resources/packed_scene.h
+++ b/scene/resources/packed_scene.h
@@ -69,11 +69,6 @@ class SceneState : public RefCounted {
Vector<int> groups;
};
- struct PackState {
- Ref<SceneState> state;
- int node = -1;
- };
-
Vector<NodeData> nodes;
struct ConnectionData {
@@ -94,8 +89,6 @@ class SceneState : public RefCounted {
uint64_t last_modified_time = 0;
- _FORCE_INLINE_ Ref<SceneState> _get_base_scene_state() const;
-
static bool disable_placeholders;
Vector<String> _get_node_groups(int p_idx) const;
@@ -117,6 +110,12 @@ public:
GEN_EDIT_STATE_DISABLED,
GEN_EDIT_STATE_INSTANCE,
GEN_EDIT_STATE_MAIN,
+ GEN_EDIT_STATE_MAIN_INHERITED,
+ };
+
+ struct PackState {
+ Ref<SceneState> state;
+ int node = -1;
};
static void set_disable_placeholders(bool p_disable);
@@ -139,6 +138,8 @@ public:
bool can_instantiate() const;
Node *instantiate(GenEditState p_edit_state) const;
+ Ref<SceneState> get_base_scene_state() const;
+
//unbuild API
int get_node_count() const;
@@ -207,6 +208,7 @@ public:
GEN_EDIT_STATE_DISABLED,
GEN_EDIT_STATE_INSTANCE,
GEN_EDIT_STATE_MAIN,
+ GEN_EDIT_STATE_MAIN_INHERITED,
};
Error pack(Node *p_scene);
diff --git a/scene/resources/particles_material.cpp b/scene/resources/particles_material.cpp
index d9ec0bfd69..e77f5a0be7 100644
--- a/scene/resources/particles_material.cpp
+++ b/scene/resources/particles_material.cpp
@@ -1413,7 +1413,7 @@ void ParticlesMaterial::_bind_methods() {
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "scale_curve", PROPERTY_HINT_RESOURCE_TYPE, "CurveTexture,CurveXYZTexture"), "set_param_texture", "get_param_texture", PARAM_SCALE);
ADD_GROUP("Color", "");
ADD_PROPERTY(PropertyInfo(Variant::COLOR, "color"), "set_color", "get_color");
- ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "color_ramp", PROPERTY_HINT_RESOURCE_TYPE, "GradientTexture"), "set_color_ramp", "get_color_ramp");
+ ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "color_ramp", PROPERTY_HINT_RESOURCE_TYPE, "GradientTexture1D"), "set_color_ramp", "get_color_ramp");
ADD_GROUP("Hue Variation", "hue_");
ADD_PROPERTYI(PropertyInfo(Variant::FLOAT, "hue_variation_min", PROPERTY_HINT_RANGE, "-1,1,0.01"), "set_param_min", "get_param_min", PARAM_HUE_VARIATION);
diff --git a/scene/resources/polygon_path_finder.cpp b/scene/resources/polygon_path_finder.cpp
index 4dd3c874cb..ec2022ed2f 100644
--- a/scene/resources/polygon_path_finder.cpp
+++ b/scene/resources/polygon_path_finder.cpp
@@ -556,7 +556,7 @@ void PolygonPathFinder::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_data"), &PolygonPathFinder::_set_data);
ClassDB::bind_method(D_METHOD("_get_data"), &PolygonPathFinder::_get_data);
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_data", "_get_data");
}
PolygonPathFinder::PolygonPathFinder() {
diff --git a/scene/resources/resource_format_text.cpp b/scene/resources/resource_format_text.cpp
index 77d915aef9..ea3b72af1b 100644
--- a/scene/resources/resource_format_text.cpp
+++ b/scene/resources/resource_format_text.cpp
@@ -1492,7 +1492,7 @@ String ResourceFormatSaverTextInstance::_write_resource(const RES &res) {
} else {
if (internal_resources.has(res)) {
return "SubResource( \"" + internal_resources[res] + "\" )";
- } else if (res->get_path().length() && res->get_path().find("::") == -1) {
+ } else if (!res->is_built_in()) {
if (res->get_path() == local_path) { //circular reference attempt
return "null";
}
@@ -1515,7 +1515,7 @@ void ResourceFormatSaverTextInstance::_find_resources(const Variant &p_variant,
return;
}
- if (!p_main && (!bundle_resources) && res->get_path().length() && res->get_path().find("::") == -1) {
+ if (!p_main && (!bundle_resources) && !res->is_built_in()) {
if (res->get_path() == local_path) {
ERR_PRINT("Circular reference to resource being saved found: '" + local_path + "' will be null next time it's loaded.");
return;
@@ -1728,7 +1728,7 @@ Error ResourceFormatSaverTextInstance::save(const String &p_path, const RES &p_r
for (List<RES>::Element *E = saved_resources.front(); E; E = E->next()) {
RES res = E->get();
- if (E->next() && (res->get_path() == "" || res->get_path().find("::") != -1)) {
+ if (E->next() && res->is_built_in()) {
if (res->get_scene_unique_id() != "") {
if (used_unique_ids.has(res->get_scene_unique_id())) {
res->set_scene_unique_id(""); // Repeated.
diff --git a/scene/resources/shader.cpp b/scene/resources/shader.cpp
index 4ba8d4d494..9fab5791d6 100644
--- a/scene/resources/shader.cpp
+++ b/scene/resources/shader.cpp
@@ -145,7 +145,7 @@ void Shader::_bind_methods() {
ClassDB::bind_method(D_METHOD("has_param", "name"), &Shader::has_param);
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "code", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_code", "get_code");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "code", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_code", "get_code");
BIND_ENUM_CONSTANT(MODE_SPATIAL);
BIND_ENUM_CONSTANT(MODE_CANVAS_ITEM);
diff --git a/scene/resources/skeleton_modification_2d_jiggle.cpp b/scene/resources/skeleton_modification_2d_jiggle.cpp
index 84abc9d020..31045455a3 100644
--- a/scene/resources/skeleton_modification_2d_jiggle.cpp
+++ b/scene/resources/skeleton_modification_2d_jiggle.cpp
@@ -194,9 +194,13 @@ void SkeletonModification2DJiggle::_execute_jiggle_joint(int p_joint_idx, Node2D
PhysicsDirectSpaceState2D *space_state = PhysicsServer2D::get_singleton()->space_get_direct_state(world_2d->get_space());
PhysicsDirectSpaceState2D::RayResult ray_result;
+ PhysicsDirectSpaceState2D::RayParameters ray_params;
+ ray_params.from = operation_bone_trans.get_origin();
+ ray_params.to = jiggle_data_chain[p_joint_idx].dynamic_position;
+ ray_params.collision_mask = collision_mask;
+
// Add exception support?
- bool ray_hit = space_state->intersect_ray(operation_bone_trans.get_origin(), jiggle_data_chain[p_joint_idx].dynamic_position,
- ray_result, Set<RID>(), collision_mask);
+ bool ray_hit = space_state->intersect_ray(ray_params, ray_result);
if (ray_hit) {
jiggle_data_chain.write[p_joint_idx].dynamic_position = jiggle_data_chain[p_joint_idx].last_noncollision_position;
diff --git a/scene/resources/skeleton_modification_3d_jiggle.cpp b/scene/resources/skeleton_modification_3d_jiggle.cpp
index a6bcb0176a..2535f2b987 100644
--- a/scene/resources/skeleton_modification_3d_jiggle.cpp
+++ b/scene/resources/skeleton_modification_3d_jiggle.cpp
@@ -206,8 +206,12 @@ void SkeletonModification3DJiggle::_execute_jiggle_joint(int p_joint_idx, Node3D
Transform3D new_bone_trans_world = stack->skeleton->global_pose_to_world_transform(new_bone_trans);
Transform3D dynamic_position_world = stack->skeleton->global_pose_to_world_transform(Transform3D(Basis(), jiggle_data_chain[p_joint_idx].dynamic_position));
- bool ray_hit = space_state->intersect_ray(new_bone_trans_world.origin, dynamic_position_world.get_origin(),
- ray_result, Set<RID>(), collision_mask);
+ PhysicsDirectSpaceState3D::RayParameters ray_params;
+ ray_params.from = new_bone_trans_world.origin;
+ ray_params.to = dynamic_position_world.get_origin();
+ ray_params.collision_mask = collision_mask;
+
+ bool ray_hit = space_state->intersect_ray(ray_params, ray_result);
if (ray_hit) {
jiggle_data_chain[p_joint_idx].dynamic_position = jiggle_data_chain[p_joint_idx].last_noncollision_position;
diff --git a/scene/resources/skin.cpp b/scene/resources/skin.cpp
index 710612ae05..15cdb86bab 100644
--- a/scene/resources/skin.cpp
+++ b/scene/resources/skin.cpp
@@ -133,7 +133,7 @@ void Skin::_get_property_list(List<PropertyInfo> *p_list) const {
p_list->push_back(PropertyInfo(Variant::INT, "bind_count", PROPERTY_HINT_RANGE, "0,16384,1,or_greater"));
for (int i = 0; i < get_bind_count(); i++) {
p_list->push_back(PropertyInfo(Variant::STRING_NAME, "bind/" + itos(i) + "/name"));
- p_list->push_back(PropertyInfo(Variant::INT, "bind/" + itos(i) + "/bone", PROPERTY_HINT_RANGE, "0,16384,1,or_greater", get_bind_name(i) != StringName() ? PROPERTY_USAGE_NOEDITOR : PROPERTY_USAGE_DEFAULT));
+ p_list->push_back(PropertyInfo(Variant::INT, "bind/" + itos(i) + "/bone", PROPERTY_HINT_RANGE, "0,16384,1,or_greater", get_bind_name(i) != StringName() ? PROPERTY_USAGE_NO_EDITOR : PROPERTY_USAGE_DEFAULT));
p_list->push_back(PropertyInfo(Variant::TRANSFORM3D, "bind/" + itos(i) + "/pose"));
}
}
diff --git a/scene/resources/sprite_frames.cpp b/scene/resources/sprite_frames.cpp
index 01afb00283..5524d59dc7 100644
--- a/scene/resources/sprite_frames.cpp
+++ b/scene/resources/sprite_frames.cpp
@@ -233,7 +233,7 @@ void SpriteFrames::_bind_methods() {
ClassDB::bind_method(D_METHOD("_set_animations"), &SpriteFrames::_set_animations);
ClassDB::bind_method(D_METHOD("_get_animations"), &SpriteFrames::_get_animations);
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "animations", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_animations", "_get_animations"); //compatibility
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "animations", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_animations", "_get_animations"); //compatibility
}
SpriteFrames::SpriteFrames() {
diff --git a/scene/resources/style_box.cpp b/scene/resources/style_box.cpp
index 3381043d29..b960944d99 100644
--- a/scene/resources/style_box.cpp
+++ b/scene/resources/style_box.cpp
@@ -790,7 +790,7 @@ float StyleBoxFlat::get_style_margin(Side p_side) const {
void StyleBoxFlat::_validate_property(PropertyInfo &property) const {
if (!anti_aliased && property.name == "anti_aliasing_size") {
- property.usage = PROPERTY_USAGE_NOEDITOR;
+ property.usage = PROPERTY_USAGE_NO_EDITOR;
}
}
diff --git a/scene/resources/texture.cpp b/scene/resources/texture.cpp
index dafc32b490..311bd9524b 100644
--- a/scene/resources/texture.cpp
+++ b/scene/resources/texture.cpp
@@ -1503,6 +1503,7 @@ Ref<Curve> CurveTexture::get_curve() const {
}
void CurveTexture::set_texture_mode(TextureMode p_mode) {
+ ERR_FAIL_COND(p_mode < TEXTURE_MODE_RGB || p_mode > TEXTURE_MODE_RED);
if (texture_mode == p_mode) {
return;
}
@@ -1728,53 +1729,53 @@ CurveXYZTexture::~CurveXYZTexture() {
//////////////////
-GradientTexture::GradientTexture() {
+GradientTexture1D::GradientTexture1D() {
_queue_update();
}
-GradientTexture::~GradientTexture() {
+GradientTexture1D::~GradientTexture1D() {
if (texture.is_valid()) {
RS::get_singleton()->free(texture);
}
}
-void GradientTexture::_bind_methods() {
- ClassDB::bind_method(D_METHOD("set_gradient", "gradient"), &GradientTexture::set_gradient);
- ClassDB::bind_method(D_METHOD("get_gradient"), &GradientTexture::get_gradient);
+void GradientTexture1D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_gradient", "gradient"), &GradientTexture1D::set_gradient);
+ ClassDB::bind_method(D_METHOD("get_gradient"), &GradientTexture1D::get_gradient);
- ClassDB::bind_method(D_METHOD("set_width", "width"), &GradientTexture::set_width);
+ ClassDB::bind_method(D_METHOD("set_width", "width"), &GradientTexture1D::set_width);
// The `get_width()` method is already exposed by the parent class Texture2D.
- ClassDB::bind_method(D_METHOD("set_use_hdr", "enabled"), &GradientTexture::set_use_hdr);
- ClassDB::bind_method(D_METHOD("is_using_hdr"), &GradientTexture::is_using_hdr);
+ ClassDB::bind_method(D_METHOD("set_use_hdr", "enabled"), &GradientTexture1D::set_use_hdr);
+ ClassDB::bind_method(D_METHOD("is_using_hdr"), &GradientTexture1D::is_using_hdr);
- ClassDB::bind_method(D_METHOD("_update"), &GradientTexture::_update);
+ ClassDB::bind_method(D_METHOD("_update"), &GradientTexture1D::_update);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "gradient", PROPERTY_HINT_RESOURCE_TYPE, "Gradient"), "set_gradient", "get_gradient");
ADD_PROPERTY(PropertyInfo(Variant::INT, "width", PROPERTY_HINT_RANGE, "1,4096"), "set_width", "get_width");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "use_hdr"), "set_use_hdr", "is_using_hdr");
}
-void GradientTexture::set_gradient(Ref<Gradient> p_gradient) {
+void GradientTexture1D::set_gradient(Ref<Gradient> p_gradient) {
if (p_gradient == gradient) {
return;
}
if (gradient.is_valid()) {
- gradient->disconnect(CoreStringNames::get_singleton()->changed, callable_mp(this, &GradientTexture::_update));
+ gradient->disconnect(CoreStringNames::get_singleton()->changed, callable_mp(this, &GradientTexture1D::_update));
}
gradient = p_gradient;
if (gradient.is_valid()) {
- gradient->connect(CoreStringNames::get_singleton()->changed, callable_mp(this, &GradientTexture::_update));
+ gradient->connect(CoreStringNames::get_singleton()->changed, callable_mp(this, &GradientTexture1D::_update));
}
_update();
emit_changed();
}
-Ref<Gradient> GradientTexture::get_gradient() const {
+Ref<Gradient> GradientTexture1D::get_gradient() const {
return gradient;
}
-void GradientTexture::_queue_update() {
+void GradientTexture1D::_queue_update() {
if (update_pending) {
return;
}
@@ -1783,7 +1784,7 @@ void GradientTexture::_queue_update() {
call_deferred(SNAME("_update"));
}
-void GradientTexture::_update() {
+void GradientTexture1D::_update() {
update_pending = false;
if (gradient.is_null()) {
@@ -1838,17 +1839,17 @@ void GradientTexture::_update() {
emit_changed();
}
-void GradientTexture::set_width(int p_width) {
+void GradientTexture1D::set_width(int p_width) {
ERR_FAIL_COND(p_width <= 0);
width = p_width;
_queue_update();
}
-int GradientTexture::get_width() const {
+int GradientTexture1D::get_width() const {
return width;
}
-void GradientTexture::set_use_hdr(bool p_enabled) {
+void GradientTexture1D::set_use_hdr(bool p_enabled) {
if (p_enabled == use_hdr) {
return;
}
@@ -1857,11 +1858,11 @@ void GradientTexture::set_use_hdr(bool p_enabled) {
_queue_update();
}
-bool GradientTexture::is_using_hdr() const {
+bool GradientTexture1D::is_using_hdr() const {
return use_hdr;
}
-Ref<Image> GradientTexture::get_image() const {
+Ref<Image> GradientTexture1D::get_image() const {
if (!texture.is_valid()) {
return Ref<Image>();
}
@@ -2870,15 +2871,6 @@ RID CameraTexture::get_rid() const {
}
}
-void CameraTexture::set_flags(uint32_t p_flags) {
- // not supported
-}
-
-uint32_t CameraTexture::get_flags() const {
- // not supported
- return 0;
-}
-
Ref<Image> CameraTexture::get_image() const {
// not (yet) supported
return Ref<Image>();
diff --git a/scene/resources/texture.h b/scene/resources/texture.h
index 51567124c6..5b69711de6 100644
--- a/scene/resources/texture.h
+++ b/scene/resources/texture.h
@@ -669,8 +669,8 @@ public:
~CurveXYZTexture();
};
-class GradientTexture : public Texture2D {
- GDCLASS(GradientTexture, Texture2D);
+class GradientTexture1D : public Texture2D {
+ GDCLASS(GradientTexture1D, Texture2D);
public:
struct Point {
@@ -710,8 +710,8 @@ public:
virtual Ref<Image> get_image() const override;
- GradientTexture();
- virtual ~GradientTexture();
+ GradientTexture1D();
+ virtual ~GradientTexture1D();
};
class GradientTexture2D : public Texture2D {
@@ -900,9 +900,6 @@ public:
virtual RID get_rid() const override;
virtual bool has_alpha() const override;
- virtual void set_flags(uint32_t p_flags);
- virtual uint32_t get_flags() const;
-
virtual Ref<Image> get_image() const override;
void set_camera_feed_id(int p_new_id);
diff --git a/scene/resources/tile_set.cpp b/scene/resources/tile_set.cpp
index 141e9e1b0e..5256803d56 100644
--- a/scene/resources/tile_set.cpp
+++ b/scene/resources/tile_set.cpp
@@ -203,7 +203,7 @@ bool TileMapPattern::_get(const StringName &p_name, Variant &r_ret) const {
}
void TileMapPattern::_get_property_list(List<PropertyInfo> *p_list) const {
- p_list->push_back(PropertyInfo(Variant::OBJECT, "tile_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, "tile_data", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
void TileMapPattern::_bind_methods() {
@@ -212,7 +212,7 @@ void TileMapPattern::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_cell", "coords", "source_id", "atlas_coords", "alternative_tile"), &TileMapPattern::set_cell, DEFVAL(TileSet::INVALID_SOURCE), DEFVAL(TileSetSource::INVALID_ATLAS_COORDS), DEFVAL(TileSetSource::INVALID_TILE_ALTERNATIVE));
ClassDB::bind_method(D_METHOD("has_cell", "coords"), &TileMapPattern::has_cell);
- ClassDB::bind_method(D_METHOD("remove_cell", "coords"), &TileMapPattern::remove_cell);
+ ClassDB::bind_method(D_METHOD("remove_cell", "coords", "update_size"), &TileMapPattern::remove_cell);
ClassDB::bind_method(D_METHOD("get_cell_source_id", "coords"), &TileMapPattern::get_cell_source_id);
ClassDB::bind_method(D_METHOD("get_cell_atlas_coords", "coords"), &TileMapPattern::get_cell_atlas_coords);
ClassDB::bind_method(D_METHOD("get_cell_alternative_tile", "coords"), &TileMapPattern::get_cell_alternative_tile);
@@ -225,6 +225,90 @@ void TileMapPattern::_bind_methods() {
/////////////////////////////// TileSet //////////////////////////////////////
+bool TileSet::TerrainsPattern::is_valid() const {
+ return valid;
+}
+
+bool TileSet::TerrainsPattern::is_erase_pattern() const {
+ return not_empty_terrains_count == 0;
+}
+
+bool TileSet::TerrainsPattern::operator<(const TerrainsPattern &p_terrains_pattern) const {
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ if (is_valid_bit[i] != p_terrains_pattern.is_valid_bit[i]) {
+ return is_valid_bit[i] < p_terrains_pattern.is_valid_bit[i];
+ }
+ }
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ if (is_valid_bit[i] && bits[i] != p_terrains_pattern.bits[i]) {
+ return bits[i] < p_terrains_pattern.bits[i];
+ }
+ }
+ return false;
+}
+
+bool TileSet::TerrainsPattern::operator==(const TerrainsPattern &p_terrains_pattern) const {
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ if (is_valid_bit[i] != p_terrains_pattern.is_valid_bit[i]) {
+ return false;
+ }
+ if (is_valid_bit[i] && bits[i] != p_terrains_pattern.bits[i]) {
+ return false;
+ }
+ }
+ return true;
+}
+
+void TileSet::TerrainsPattern::set_terrain(TileSet::CellNeighbor p_peering_bit, int p_terrain) {
+ ERR_FAIL_COND(p_peering_bit == TileSet::CELL_NEIGHBOR_MAX);
+ ERR_FAIL_COND(!is_valid_bit[p_peering_bit]);
+ ERR_FAIL_COND(p_terrain < -1);
+
+ // Update the "is_erase_pattern" status.
+ if (p_terrain >= 0 && bits[p_peering_bit] < 0) {
+ not_empty_terrains_count++;
+ } else if (p_terrain < 0 && bits[p_peering_bit] >= 0) {
+ not_empty_terrains_count--;
+ }
+
+ bits[p_peering_bit] = p_terrain;
+}
+
+int TileSet::TerrainsPattern::get_terrain(TileSet::CellNeighbor p_peering_bit) const {
+ ERR_FAIL_COND_V(p_peering_bit == TileSet::CELL_NEIGHBOR_MAX, -1);
+ ERR_FAIL_COND_V(!is_valid_bit[p_peering_bit], -1);
+ return bits[p_peering_bit];
+}
+
+void TileSet::TerrainsPattern::set_terrains_from_array(Array p_terrains) {
+ int in_array_index = 0;
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ if (is_valid_bit[i]) {
+ ERR_FAIL_COND(in_array_index >= p_terrains.size());
+ set_terrain(TileSet::CellNeighbor(i), p_terrains[in_array_index]);
+ in_array_index++;
+ }
+ }
+}
+
+Array TileSet::TerrainsPattern::get_terrains_as_array() const {
+ Array output;
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ if (is_valid_bit[i]) {
+ output.push_back(bits[i]);
+ }
+ }
+ return output;
+}
+TileSet::TerrainsPattern::TerrainsPattern(const TileSet *p_tile_set, int p_terrain_set) {
+ ERR_FAIL_COND(p_terrain_set < 0);
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ is_valid_bit[i] = (p_tile_set->is_valid_peering_bit_terrain(p_terrain_set, TileSet::CellNeighbor(i)));
+ bits[i] = -1;
+ }
+ valid = true;
+}
+
const int TileSet::INVALID_SOURCE = -1;
const char *TileSet::CELL_NEIGHBOR_ENUM_TO_TEXT[] = {
@@ -330,10 +414,13 @@ void TileSet::_update_terrains_cache() {
TileSet::TerrainsPattern terrains_pattern = tile_data->get_terrains_pattern();
// Terrain bits.
- for (int i = 0; i < terrains_pattern.size(); i++) {
- int terrain = terrains_pattern[i];
- if (terrain >= 0) {
- per_terrain_pattern_tiles[terrain_set][terrains_pattern].insert(cell);
+ for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
+ CellNeighbor bit = CellNeighbor(i);
+ if (is_valid_peering_bit_terrain(terrain_set, bit)) {
+ int terrain = terrains_pattern.get_terrain(bit);
+ if (terrain >= 0) {
+ per_terrain_pattern_tiles[terrain_set][terrains_pattern].insert(cell);
+ }
}
}
}
@@ -344,12 +431,7 @@ void TileSet::_update_terrains_cache() {
// Add the empty cell in the possible patterns and cells.
for (int i = 0; i < terrain_sets.size(); i++) {
- TileSet::TerrainsPattern empty_pattern;
- for (int j = 0; j < TileSet::CELL_NEIGHBOR_MAX; j++) {
- if (is_valid_peering_bit_terrain(i, TileSet::CellNeighbor(j))) {
- empty_pattern.push_back(-1);
- }
- }
+ TileSet::TerrainsPattern empty_pattern(this, i);
TileMapCell empty_cell;
empty_cell.source_id = TileSet::INVALID_SOURCE;
@@ -1283,7 +1365,7 @@ Set<TileMapCell> TileSet::get_tiles_for_terrains_pattern(int p_terrain_set, Terr
return per_terrain_pattern_tiles[p_terrain_set][p_terrain_tile_pattern];
}
-TileMapCell TileSet::get_random_tile_from_pattern(int p_terrain_set, TileSet::TerrainsPattern p_terrain_tile_pattern) {
+TileMapCell TileSet::get_random_tile_from_terrains_pattern(int p_terrain_set, TileSet::TerrainsPattern p_terrain_tile_pattern) {
ERR_FAIL_INDEX_V(p_terrain_set, terrain_sets.size(), TileMapCell());
_update_terrains_cache();
@@ -3042,19 +3124,19 @@ void TileSet::_get_property_list(List<PropertyInfo> *p_list) const {
// Sources.
// Note: sources have to be listed in at the end as some TileData rely on the TileSet properties being initialized first.
for (const KeyValue<int, Ref<TileSetSource>> &E_source : sources) {
- p_list->push_back(PropertyInfo(Variant::INT, vformat("sources/%d", E_source.key), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::INT, vformat("sources/%d", E_source.key), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
// Tile Proxies.
// Note: proxies need to be set after sources are set.
p_list->push_back(PropertyInfo(Variant::NIL, "Tile Proxies", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_GROUP));
- p_list->push_back(PropertyInfo(Variant::ARRAY, "tile_proxies/source_level", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::ARRAY, "tile_proxies/coords_level", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::ARRAY, "tile_proxies/alternative_level", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "tile_proxies/source_level", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "tile_proxies/coords_level", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::ARRAY, "tile_proxies/alternative_level", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
// Patterns.
for (unsigned int pattern_index = 0; pattern_index < patterns.size(); pattern_index++) {
- p_list->push_back(PropertyInfo(Variant::OBJECT, vformat("pattern_%d", pattern_index), PROPERTY_HINT_RESOURCE_TYPE, "TileMapPattern", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, vformat("pattern_%d", pattern_index), PROPERTY_HINT_RESOURCE_TYPE, "TileMapPattern", PROPERTY_USAGE_NO_EDITOR));
}
}
@@ -3655,35 +3737,35 @@ void TileSetAtlasSource::_get_property_list(List<PropertyInfo> *p_list) const {
List<PropertyInfo> tile_property_list;
// size_in_atlas
- property_info = PropertyInfo(Variant::VECTOR2I, "size_in_atlas", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR);
+ property_info = PropertyInfo(Variant::VECTOR2I, "size_in_atlas", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR);
if (E_tile.value.size_in_atlas == Vector2i(1, 1)) {
property_info.usage ^= PROPERTY_USAGE_STORAGE;
}
tile_property_list.push_back(property_info);
// next_alternative_id
- property_info = PropertyInfo(Variant::INT, "next_alternative_id", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR);
+ property_info = PropertyInfo(Variant::INT, "next_alternative_id", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR);
if (E_tile.value.next_alternative_id == 1) {
property_info.usage ^= PROPERTY_USAGE_STORAGE;
}
tile_property_list.push_back(property_info);
// animation_columns.
- property_info = PropertyInfo(Variant::INT, "animation_columns", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR);
+ property_info = PropertyInfo(Variant::INT, "animation_columns", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR);
if (E_tile.value.animation_columns == 0) {
property_info.usage ^= PROPERTY_USAGE_STORAGE;
}
tile_property_list.push_back(property_info);
// animation_separation.
- property_info = PropertyInfo(Variant::INT, "animation_separation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR);
+ property_info = PropertyInfo(Variant::INT, "animation_separation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR);
if (E_tile.value.animation_separation == Vector2i()) {
property_info.usage ^= PROPERTY_USAGE_STORAGE;
}
tile_property_list.push_back(property_info);
// animation_speed.
- property_info = PropertyInfo(Variant::FLOAT, "animation_speed", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR);
+ property_info = PropertyInfo(Variant::FLOAT, "animation_speed", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR);
if (E_tile.value.animation_speed == 1.0) {
property_info.usage ^= PROPERTY_USAGE_STORAGE;
}
@@ -3695,7 +3777,7 @@ void TileSetAtlasSource::_get_property_list(List<PropertyInfo> *p_list) const {
// animation_frame_*.
bool store_durations = tiles[E_tile.key].animation_frames_durations.size() >= 2;
for (int i = 0; i < (int)tiles[E_tile.key].animation_frames_durations.size(); i++) {
- property_info = PropertyInfo(Variant::FLOAT, vformat("animation_frame_%d/duration", i), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR);
+ property_info = PropertyInfo(Variant::FLOAT, vformat("animation_frame_%d/duration", i), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR);
if (!store_durations) {
property_info.usage ^= PROPERTY_USAGE_STORAGE;
}
@@ -3704,7 +3786,7 @@ void TileSetAtlasSource::_get_property_list(List<PropertyInfo> *p_list) const {
for (const KeyValue<int, TileData *> &E_alternative : E_tile.value.alternatives) {
// Add a dummy property to show the alternative exists.
- tile_property_list.push_back(PropertyInfo(Variant::INT, vformat("%d", E_alternative.key), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ tile_property_list.push_back(PropertyInfo(Variant::INT, vformat("%d", E_alternative.key), PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
// Get the alternative tile's properties and append them to the list of properties.
List<PropertyInfo> alternative_property_list;
@@ -4123,10 +4205,10 @@ void TileSetAtlasSource::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_texture_region_size", "texture_region_size"), &TileSetAtlasSource::set_texture_region_size);
ClassDB::bind_method(D_METHOD("get_texture_region_size"), &TileSetAtlasSource::get_texture_region_size);
- ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture2D", PROPERTY_USAGE_NOEDITOR), "set_texture", "get_texture");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2I, "margins", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_margins", "get_margins");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2I, "separation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_separation", "get_separation");
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2I, "texture_region_size", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_texture_region_size", "get_texture_region_size");
+ ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture2D", PROPERTY_USAGE_NO_EDITOR), "set_texture", "get_texture");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2I, "margins", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_margins", "get_margins");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2I, "separation", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_separation", "get_separation");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2I, "texture_region_size", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_texture_region_size", "get_texture_region_size");
// Base tiles
ClassDB::bind_method(D_METHOD("create_tile", "atlas_coords", "size"), &TileSetAtlasSource::create_tile, DEFVAL(Vector2i(1, 1)));
@@ -4864,8 +4946,8 @@ int TileData::get_collision_polygon_shapes_count(int p_layer_id, int p_polygon_i
Ref<ConvexPolygonShape2D> TileData::get_collision_polygon_shape(int p_layer_id, int p_polygon_index, int shape_index) const {
ERR_FAIL_INDEX_V(p_layer_id, physics.size(), 0);
ERR_FAIL_INDEX_V(p_polygon_index, physics[p_layer_id].polygons.size(), Ref<ConvexPolygonShape2D>());
- ERR_FAIL_INDEX_V(shape_index, (int)physics[p_layer_id].polygons[shape_index].shapes.size(), Ref<ConvexPolygonShape2D>());
- return physics[p_layer_id].polygons[shape_index].shapes[shape_index];
+ ERR_FAIL_INDEX_V(shape_index, (int)physics[p_layer_id].polygons[p_polygon_index].shapes.size(), Ref<ConvexPolygonShape2D>());
+ return physics[p_layer_id].polygons[p_polygon_index].shapes[shape_index];
}
// Terrain
@@ -4915,10 +4997,10 @@ bool TileData::is_valid_peering_bit_terrain(TileSet::CellNeighbor p_peering_bit)
TileSet::TerrainsPattern TileData::get_terrains_pattern() const {
ERR_FAIL_COND_V(!tile_set, TileSet::TerrainsPattern());
- TileSet::TerrainsPattern output;
+ TileSet::TerrainsPattern output(tile_set, terrain_set);
for (int i = 0; i < TileSet::CELL_NEIGHBOR_MAX; i++) {
if (tile_set->is_valid_peering_bit_terrain(terrain_set, TileSet::CellNeighbor(i))) {
- output.push_back(get_peering_bit_terrain(TileSet::CellNeighbor(i)));
+ output.set_terrain(TileSet::CellNeighbor(i), get_peering_bit_terrain(TileSet::CellNeighbor(i)));
}
}
return output;
diff --git a/scene/resources/tile_set.h b/scene/resources/tile_set.h
index 077315e58d..71559074e7 100644
--- a/scene/resources/tile_set.h
+++ b/scene/resources/tile_set.h
@@ -253,7 +253,30 @@ public:
Ref<PackedScene> scene;
Vector2 offset;
};
- typedef Array TerrainsPattern;
+
+ class TerrainsPattern {
+ bool valid = false;
+ int bits[TileSet::CELL_NEIGHBOR_MAX];
+ bool is_valid_bit[TileSet::CELL_NEIGHBOR_MAX];
+
+ int not_empty_terrains_count = 0;
+
+ public:
+ bool is_valid() const;
+ bool is_erase_pattern() const;
+
+ bool operator<(const TerrainsPattern &p_terrains_pattern) const;
+ bool operator==(const TerrainsPattern &p_terrains_pattern) const;
+
+ void set_terrain(TileSet::CellNeighbor p_peering_bit, int p_terrain);
+ int get_terrain(TileSet::CellNeighbor p_peering_bit) const;
+
+ void set_terrains_from_array(Array p_terrains);
+ Array get_terrains_as_array() const;
+
+ TerrainsPattern(const TileSet *p_tile_set, int p_terrain_set);
+ TerrainsPattern() {}
+ };
protected:
bool _set(const StringName &p_name, const Variant &p_value);
@@ -478,7 +501,7 @@ public:
// Terrains.
Set<TerrainsPattern> get_terrains_pattern_set(int p_terrain_set);
Set<TileMapCell> get_tiles_for_terrains_pattern(int p_terrain_set, TerrainsPattern p_terrain_tile_pattern);
- TileMapCell get_random_tile_from_pattern(int p_terrain_set, TerrainsPattern p_terrain_tile_pattern);
+ TileMapCell get_random_tile_from_terrains_pattern(int p_terrain_set, TerrainsPattern p_terrain_tile_pattern);
// Helpers
Vector<Vector2> get_tile_shape_polygon();
diff --git a/scene/resources/visual_shader.cpp b/scene/resources/visual_shader.cpp
index fd785631a8..0aa79b8ceb 100644
--- a/scene/resources/visual_shader.cpp
+++ b/scene/resources/visual_shader.cpp
@@ -199,6 +199,10 @@ Vector<StringName> VisualShaderNode::get_editable_properties() const {
return Vector<StringName>();
}
+Map<StringName, String> VisualShaderNode::get_editable_properties_names() const {
+ return Map<StringName, String>();
+}
+
Array VisualShaderNode::get_default_input_values() const {
Array ret;
for (const KeyValue<int, Variant> &E : default_input_values) {
@@ -246,8 +250,8 @@ void VisualShaderNode::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_default_input_values"), &VisualShaderNode::get_default_input_values);
ADD_PROPERTY(PropertyInfo(Variant::INT, "output_port_for_preview"), "set_output_port_for_preview", "get_output_port_for_preview");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "default_input_values", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "set_default_input_values", "get_default_input_values");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "expanded_output_ports", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_output_ports_expanded", "_get_output_ports_expanded");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "default_input_values", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "set_default_input_values", "get_default_input_values");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "expanded_output_ports", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_output_ports_expanded", "_get_output_ports_expanded");
ADD_SIGNAL(MethodInfo("editor_refresh_request"));
BIND_ENUM_CONSTANT(PORT_TYPE_SCALAR);
@@ -431,7 +435,7 @@ void VisualShaderNodeCustom::_bind_methods() {
ClassDB::bind_method(D_METHOD("_is_initialized"), &VisualShaderNodeCustom::_is_initialized);
ClassDB::bind_method(D_METHOD("_set_input_port_default_value", "port", "value"), &VisualShaderNodeCustom::_set_input_port_default_value);
- ADD_PROPERTY(PropertyInfo(Variant::BOOL, "initialized", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_initialized", "_is_initialized");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "initialized", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_initialized", "_is_initialized");
}
VisualShaderNodeCustom::VisualShaderNodeCustom() {
@@ -1291,20 +1295,20 @@ void VisualShader::_get_property_list(List<PropertyInfo> *p_list) const {
prop_name += "/" + itos(E.key);
if (E.key != NODE_ID_OUTPUT) {
- p_list->push_back(PropertyInfo(Variant::OBJECT, prop_name + "/node", PROPERTY_HINT_RESOURCE_TYPE, "VisualShaderNode", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, prop_name + "/node", PROPERTY_HINT_RESOURCE_TYPE, "VisualShaderNode", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE));
}
- p_list->push_back(PropertyInfo(Variant::VECTOR2, prop_name + "/position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR2, prop_name + "/position", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
if (Object::cast_to<VisualShaderNodeGroupBase>(E.value.node.ptr()) != nullptr) {
- p_list->push_back(PropertyInfo(Variant::VECTOR2, prop_name + "/size", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::STRING, prop_name + "/input_ports", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
- p_list->push_back(PropertyInfo(Variant::STRING, prop_name + "/output_ports", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::VECTOR2, prop_name + "/size", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING, prop_name + "/input_ports", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING, prop_name + "/output_ports", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
if (Object::cast_to<VisualShaderNodeExpression>(E.value.node.ptr()) != nullptr) {
- p_list->push_back(PropertyInfo(Variant::STRING, prop_name + "/expression", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::STRING, prop_name + "/expression", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
}
- p_list->push_back(PropertyInfo(Variant::PACKED_INT32_ARRAY, "nodes/" + String(type_string[i]) + "/connections", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR));
+ p_list->push_back(PropertyInfo(Variant::PACKED_INT32_ARRAY, "nodes/" + String(type_string[i]) + "/connections", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR));
}
}
@@ -1922,6 +1926,10 @@ void VisualShader::_update_shader() const {
global_compute_code += " return mat4(vec4(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, 0), vec4(oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, 0), vec4(oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c, 0), vec4(0, 0, 0, 1));\n";
global_compute_code += "}\n\n";
+ global_compute_code += "vec2 __get_random_unit_vec2(inout uint seed) {\n";
+ global_compute_code += " return normalize(vec2(__rand_from_seed_m1_p1(seed), __rand_from_seed_m1_p1(seed)));\n";
+ global_compute_code += "}\n\n";
+
global_compute_code += "vec3 __get_random_unit_vec3(inout uint seed) {\n";
global_compute_code += " return normalize(vec3(__rand_from_seed_m1_p1(seed), __rand_from_seed_m1_p1(seed), __rand_from_seed_m1_p1(seed)));\n";
global_compute_code += "}\n\n";
@@ -2017,8 +2025,8 @@ void VisualShader::_bind_methods() {
ClassDB::bind_method(D_METHOD("_update_shader"), &VisualShader::_update_shader);
- ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "graph_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_graph_offset", "get_graph_offset");
- ADD_PROPERTY(PropertyInfo(Variant::STRING, "engine_version", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR), "set_engine_version", "get_engine_version");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "graph_offset", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_graph_offset", "get_graph_offset");
+ ADD_PROPERTY(PropertyInfo(Variant::STRING, "engine_version", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR), "set_engine_version", "get_engine_version");
ADD_PROPERTY_DEFAULT("code", ""); // Inherited from Shader, prevents showing default code as override in docs.
@@ -2850,7 +2858,7 @@ void VisualShaderNodeUniformRef::_bind_methods() {
ClassDB::bind_method(D_METHOD("_get_uniform_type"), &VisualShaderNodeUniformRef::_get_uniform_type);
ADD_PROPERTY(PropertyInfo(Variant::STRING_NAME, "uniform_name", PROPERTY_HINT_ENUM, ""), "set_uniform_name", "get_uniform_name");
- ADD_PROPERTY(PropertyInfo(Variant::INT, "uniform_type", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_uniform_type", "_get_uniform_type");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "uniform_type", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_uniform_type", "_get_uniform_type");
}
Vector<StringName> VisualShaderNodeUniformRef::get_editable_properties() const {
diff --git a/scene/resources/visual_shader.h b/scene/resources/visual_shader.h
index 19530e5a34..7743affba7 100644
--- a/scene/resources/visual_shader.h
+++ b/scene/resources/visual_shader.h
@@ -272,6 +272,7 @@ public:
void set_disabled(bool p_disabled = true);
virtual Vector<StringName> get_editable_properties() const;
+ virtual Map<StringName, String> get_editable_properties_names() const;
virtual Vector<VisualShader::DefaultTextureParam> get_default_texture_parameters(VisualShader::Type p_type, int p_id) const;
virtual String generate_global(Shader::Mode p_mode, VisualShader::Type p_type, int p_id) const;
diff --git a/scene/resources/visual_shader_particle_nodes.cpp b/scene/resources/visual_shader_particle_nodes.cpp
index 18b933e5cf..ada91cec1e 100644
--- a/scene/resources/visual_shader_particle_nodes.cpp
+++ b/scene/resources/visual_shader_particle_nodes.cpp
@@ -51,6 +51,38 @@ bool VisualShaderNodeParticleEmitter::has_output_port_preview(int p_port) const
return false;
}
+void VisualShaderNodeParticleEmitter::set_mode_2d(bool p_enabled) {
+ mode_2d = p_enabled;
+ emit_changed();
+}
+
+bool VisualShaderNodeParticleEmitter::is_mode_2d() const {
+ return mode_2d;
+}
+
+Vector<StringName> VisualShaderNodeParticleEmitter::get_editable_properties() const {
+ Vector<StringName> props;
+ props.push_back("mode_2d");
+ return props;
+}
+
+Map<StringName, String> VisualShaderNodeParticleEmitter::get_editable_properties_names() const {
+ Map<StringName, String> names;
+ names.insert("mode_2d", TTR("2D Mode"));
+ return names;
+}
+
+bool VisualShaderNodeParticleEmitter::is_show_prop_names() const {
+ return true;
+}
+
+void VisualShaderNodeParticleEmitter::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_mode_2d", "enabled"), &VisualShaderNodeParticleEmitter::set_mode_2d);
+ ClassDB::bind_method(D_METHOD("is_mode_2d"), &VisualShaderNodeParticleEmitter::is_mode_2d);
+
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "mode_2d"), "set_mode_2d", "is_mode_2d");
+}
+
VisualShaderNodeParticleEmitter::VisualShaderNodeParticleEmitter() {
}
@@ -79,15 +111,27 @@ String VisualShaderNodeParticleSphereEmitter::get_input_port_name(int p_port) co
String VisualShaderNodeParticleSphereEmitter::generate_global_per_node(Shader::Mode p_mode, VisualShader::Type p_type, int p_id) const {
String code;
+
+ code += "vec2 __get_random_point_in_circle(inout uint seed, float radius, float inner_radius) {\n";
+ code += " return __get_random_unit_vec2(seed) * __randf_range(seed, inner_radius, radius);\n";
+ code += "}\n\n";
+
code += "vec3 __get_random_point_in_sphere(inout uint seed, float radius, float inner_radius) {\n";
code += " return __get_random_unit_vec3(seed) * __randf_range(seed, inner_radius, radius);\n";
code += "}\n\n";
+
return code;
}
String VisualShaderNodeParticleSphereEmitter::generate_code(Shader::Mode p_mode, VisualShader::Type p_type, int p_id, const String *p_input_vars, const String *p_output_vars, bool p_for_preview) const {
String code;
- code += " " + p_output_vars[0] + " = __get_random_point_in_sphere(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ", " + (p_input_vars[1].is_empty() ? (String)get_input_port_default_value(1) : p_input_vars[1]) + ");\n";
+
+ if (mode_2d) {
+ code += " " + p_output_vars[0] + " = vec3(__get_random_point_in_circle(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ", " + (p_input_vars[1].is_empty() ? (String)get_input_port_default_value(1) : p_input_vars[1]) + "), 0.0);\n";
+ } else {
+ code += " " + p_output_vars[0] + " = __get_random_point_in_sphere(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ", " + (p_input_vars[1].is_empty() ? (String)get_input_port_default_value(1) : p_input_vars[1]) + ");\n";
+ }
+
return code;
}
@@ -122,16 +166,27 @@ String VisualShaderNodeParticleBoxEmitter::get_input_port_name(int p_port) const
String VisualShaderNodeParticleBoxEmitter::generate_global_per_node(Shader::Mode p_mode, VisualShader::Type p_type, int p_id) const {
String code;
- code += "vec3 __get_random_point_in_box(inout uint seed, vec3 extents) {\n";
+
+ code += "vec2 __get_random_point_in_box2d(inout uint seed, vec2 extents) {\n";
+ code += " vec2 half_extents = extents / 2.0;\n";
+ code += " return vec2(__randf_range(seed, -half_extents.x, half_extents.x), __randf_range(seed, -half_extents.y, half_extents.y));\n";
+ code += "}\n\n";
+
+ code += "vec3 __get_random_point_in_box3d(inout uint seed, vec3 extents) {\n";
code += " vec3 half_extents = extents / 2.0;\n";
code += " return vec3(__randf_range(seed, -half_extents.x, half_extents.x), __randf_range(seed, -half_extents.y, half_extents.y), __randf_range(seed, -half_extents.z, half_extents.z));\n";
code += "}\n\n";
+
return code;
}
String VisualShaderNodeParticleBoxEmitter::generate_code(Shader::Mode p_mode, VisualShader::Type p_type, int p_id, const String *p_input_vars, const String *p_output_vars, bool p_for_preview) const {
String code;
- code += " " + p_output_vars[0] + " = __get_random_point_in_box(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ");\n";
+ if (mode_2d) {
+ code += " " + p_output_vars[0] + " = vec3(__get_random_point_in_box2d(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ".xy), 0.0);\n";
+ } else {
+ code += " " + p_output_vars[0] + " = __get_random_point_in_box3d(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ");\n";
+ }
return code;
}
@@ -166,17 +221,31 @@ String VisualShaderNodeParticleRingEmitter::get_input_port_name(int p_port) cons
String VisualShaderNodeParticleRingEmitter::generate_global_per_node(Shader::Mode p_mode, VisualShader::Type p_type, int p_id) const {
String code;
- code += "vec3 __get_random_point_on_ring(inout uint seed, float radius, float inner_radius, float height) {\n";
- code += " float angle = __rand_from_seed(seed) * PI * 2.0;\n";
+
+ code += "vec2 __get_random_point_on_ring2d(inout uint seed, float radius, float inner_radius) {\n";
+ code += " float angle = __rand_from_seed(seed) * TAU;\n";
+ code += " vec2 ring = vec2(sin(angle), cos(angle)) * __randf_range(seed, inner_radius, radius);\n";
+ code += " return vec2(ring.x, ring.y);\n";
+ code += "}\n\n";
+
+ code += "vec3 __get_random_point_on_ring3d(inout uint seed, float radius, float inner_radius, float height) {\n";
+ code += " float angle = __rand_from_seed(seed) * TAU;\n";
code += " vec2 ring = vec2(sin(angle), cos(angle)) * __randf_range(seed, inner_radius, radius);\n";
code += " return vec3(ring.x, __randf_range(seed, min(0.0, height), max(0.0, height)), ring.y);\n";
code += "}\n\n";
+
return code;
}
String VisualShaderNodeParticleRingEmitter::generate_code(Shader::Mode p_mode, VisualShader::Type p_type, int p_id, const String *p_input_vars, const String *p_output_vars, bool p_for_preview) const {
String code;
- code = " " + p_output_vars[0] + " = __get_random_point_on_ring(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ", " + (p_input_vars[1].is_empty() ? (String)get_input_port_default_value(1) : p_input_vars[1]) + ", " + (p_input_vars[2].is_empty() ? (String)get_input_port_default_value(2) : p_input_vars[2]) + ");\n";
+
+ if (mode_2d) {
+ code = " " + p_output_vars[0] + " = vec3(__get_random_point_on_ring2d(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ", " + (p_input_vars[1].is_empty() ? (String)get_input_port_default_value(1) : p_input_vars[1]) + "), 0.0);\n";
+ } else {
+ code = " " + p_output_vars[0] + " = __get_random_point_on_ring3d(__seed, " + (p_input_vars[0].is_empty() ? (String)get_input_port_default_value(0) : p_input_vars[0]) + ", " + (p_input_vars[1].is_empty() ? (String)get_input_port_default_value(1) : p_input_vars[1]) + ", " + (p_input_vars[2].is_empty() ? (String)get_input_port_default_value(2) : p_input_vars[2]) + ");\n";
+ }
+
return code;
}
diff --git a/scene/resources/visual_shader_particle_nodes.h b/scene/resources/visual_shader_particle_nodes.h
index b8bc7992cc..0b1fa277de 100644
--- a/scene/resources/visual_shader_particle_nodes.h
+++ b/scene/resources/visual_shader_particle_nodes.h
@@ -38,12 +38,23 @@
class VisualShaderNodeParticleEmitter : public VisualShaderNode {
GDCLASS(VisualShaderNodeParticleEmitter, VisualShaderNode);
+protected:
+ bool mode_2d = false;
+ static void _bind_methods();
+
public:
virtual int get_output_port_count() const override;
virtual PortType get_output_port_type(int p_port) const override;
virtual String get_output_port_name(int p_port) const override;
virtual bool has_output_port_preview(int p_port) const override;
+ void set_mode_2d(bool p_enabled);
+ bool is_mode_2d() const;
+
+ Vector<StringName> get_editable_properties() const override;
+ Map<StringName, String> get_editable_properties_names() const override;
+ bool is_show_prop_names() const override;
+
VisualShaderNodeParticleEmitter();
};
diff --git a/scene/resources/world_3d.cpp b/scene/resources/world_3d.cpp
index 42047f104f..0e1b343eac 100644
--- a/scene/resources/world_3d.cpp
+++ b/scene/resources/world_3d.cpp
@@ -144,9 +144,9 @@ World3D::World3D() {
PhysicsServer3D::get_singleton()->area_set_param(space, PhysicsServer3D::AREA_PARAM_GRAVITY, GLOBAL_DEF("physics/3d/default_gravity", 9.8));
PhysicsServer3D::get_singleton()->area_set_param(space, PhysicsServer3D::AREA_PARAM_GRAVITY_VECTOR, GLOBAL_DEF("physics/3d/default_gravity_vector", Vector3(0, -1, 0)));
PhysicsServer3D::get_singleton()->area_set_param(space, PhysicsServer3D::AREA_PARAM_LINEAR_DAMP, GLOBAL_DEF("physics/3d/default_linear_damp", 0.1));
- ProjectSettings::get_singleton()->set_custom_property_info("physics/3d/default_linear_damp", PropertyInfo(Variant::FLOAT, "physics/3d/default_linear_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"));
+ ProjectSettings::get_singleton()->set_custom_property_info("physics/3d/default_linear_damp", PropertyInfo(Variant::FLOAT, "physics/3d/default_linear_damp", PROPERTY_HINT_RANGE, "0,100,0.001,or_greater"));
PhysicsServer3D::get_singleton()->area_set_param(space, PhysicsServer3D::AREA_PARAM_ANGULAR_DAMP, GLOBAL_DEF("physics/3d/default_angular_damp", 0.1));
- ProjectSettings::get_singleton()->set_custom_property_info("physics/3d/default_angular_damp", PropertyInfo(Variant::FLOAT, "physics/3d/default_angular_damp", PROPERTY_HINT_RANGE, "-1,100,0.001,or_greater"));
+ ProjectSettings::get_singleton()->set_custom_property_info("physics/3d/default_angular_damp", PropertyInfo(Variant::FLOAT, "physics/3d/default_angular_damp", PROPERTY_HINT_RANGE, "0,100,0.001,or_greater"));
navigation_map = NavigationServer3D::get_singleton()->map_create();
NavigationServer3D::get_singleton()->map_set_active(navigation_map, true);
diff --git a/servers/audio_server.cpp b/servers/audio_server.cpp
index ab704c6f78..774a5b1da0 100644
--- a/servers/audio_server.cpp
+++ b/servers/audio_server.cpp
@@ -1864,16 +1864,16 @@ bool AudioBusLayout::_get(const StringName &p_name, Variant &r_ret) const {
void AudioBusLayout::_get_property_list(List<PropertyInfo> *p_list) const {
for (int i = 0; i < buses.size(); i++) {
- p_list->push_back(PropertyInfo(Variant::STRING, "bus/" + itos(i) + "/name", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/solo", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/mute", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/bypass_fx", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::FLOAT, "bus/" + itos(i) + "/volume_db", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::FLOAT, "bus/" + itos(i) + "/send", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::STRING, "bus/" + itos(i) + "/name", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/solo", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/mute", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/bypass_fx", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::FLOAT, "bus/" + itos(i) + "/volume_db", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::FLOAT, "bus/" + itos(i) + "/send", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
for (int j = 0; j < buses[i].effects.size(); j++) {
- p_list->push_back(PropertyInfo(Variant::OBJECT, "bus/" + itos(i) + "/effect/" + itos(j) + "/effect", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
- p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/effect/" + itos(j) + "/enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::OBJECT, "bus/" + itos(i) + "/effect/" + itos(j) + "/effect", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
+ p_list->push_back(PropertyInfo(Variant::BOOL, "bus/" + itos(i) + "/effect/" + itos(j) + "/enabled", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL));
}
}
}
diff --git a/servers/physics_2d/godot_area_2d.cpp b/servers/physics_2d/godot_area_2d.cpp
index 7cb202dd1f..6983e28841 100644
--- a/servers/physics_2d/godot_area_2d.cpp
+++ b/servers/physics_2d/godot_area_2d.cpp
@@ -77,16 +77,17 @@ void GodotArea2D::set_space(GodotSpace2D *p_space) {
_set_space(p_space);
}
-void GodotArea2D::set_monitor_callback(ObjectID p_id, const StringName &p_method) {
- if (p_id == monitor_callback_id) {
- monitor_callback_method = p_method;
+void GodotArea2D::set_monitor_callback(const Callable &p_callback) {
+ ObjectID id = p_callback.get_object_id();
+
+ if (id == monitor_callback.get_object_id()) {
+ monitor_callback = p_callback;
return;
}
_unregister_shapes();
- monitor_callback_id = p_id;
- monitor_callback_method = p_method;
+ monitor_callback = p_callback;
monitored_bodies.clear();
monitored_areas.clear();
@@ -98,16 +99,17 @@ void GodotArea2D::set_monitor_callback(ObjectID p_id, const StringName &p_method
}
}
-void GodotArea2D::set_area_monitor_callback(ObjectID p_id, const StringName &p_method) {
- if (p_id == area_monitor_callback_id) {
- area_monitor_callback_method = p_method;
+void GodotArea2D::set_area_monitor_callback(const Callable &p_callback) {
+ ObjectID id = p_callback.get_object_id();
+
+ if (id == area_monitor_callback.get_object_id()) {
+ area_monitor_callback = p_callback;
return;
}
_unregister_shapes();
- area_monitor_callback_id = p_id;
- area_monitor_callback_method = p_method;
+ area_monitor_callback = p_callback;
monitored_bodies.clear();
monitored_areas.clear();
@@ -199,77 +201,75 @@ void GodotArea2D::set_monitorable(bool p_monitorable) {
}
void GodotArea2D::call_queries() {
- if (monitor_callback_id.is_valid() && !monitored_bodies.is_empty()) {
- Variant res[5];
- Variant *resptr[5];
- for (int i = 0; i < 5; i++) {
- resptr[i] = &res[i];
- }
+ if (!monitor_callback.is_null() && !monitored_bodies.is_empty()) {
+ if (monitor_callback.is_valid()) {
+ Variant res[5];
+ Variant *resptr[5];
+ for (int i = 0; i < 5; i++) {
+ resptr[i] = &res[i];
+ }
- Object *obj = ObjectDB::get_instance(monitor_callback_id);
- if (!obj) {
- monitored_bodies.clear();
- monitor_callback_id = ObjectID();
- return;
- }
+ for (Map<BodyKey, BodyState>::Element *E = monitored_bodies.front(); E;) {
+ if (E->get().state == 0) { // Nothing happened
+ Map<BodyKey, BodyState>::Element *next = E->next();
+ monitored_bodies.erase(E);
+ E = next;
+ continue;
+ }
+
+ res[0] = E->get().state > 0 ? PhysicsServer2D::AREA_BODY_ADDED : PhysicsServer2D::AREA_BODY_REMOVED;
+ res[1] = E->key().rid;
+ res[2] = E->key().instance_id;
+ res[3] = E->key().body_shape;
+ res[4] = E->key().area_shape;
- for (Map<BodyKey, BodyState>::Element *E = monitored_bodies.front(); E;) {
- if (E->get().state == 0) { // Nothing happened
Map<BodyKey, BodyState>::Element *next = E->next();
monitored_bodies.erase(E);
E = next;
- continue;
- }
-
- res[0] = E->get().state > 0 ? PhysicsServer2D::AREA_BODY_ADDED : PhysicsServer2D::AREA_BODY_REMOVED;
- res[1] = E->key().rid;
- res[2] = E->key().instance_id;
- res[3] = E->key().body_shape;
- res[4] = E->key().area_shape;
- Map<BodyKey, BodyState>::Element *next = E->next();
- monitored_bodies.erase(E);
- E = next;
-
- Callable::CallError ce;
- obj->call(monitor_callback_method, (const Variant **)resptr, 5, ce);
+ Callable::CallError ce;
+ Variant ret;
+ monitor_callback.call((const Variant **)resptr, 5, ret, ce);
+ }
+ } else {
+ monitored_bodies.clear();
+ monitor_callback = Callable();
}
}
- if (area_monitor_callback_id.is_valid() && !monitored_areas.is_empty()) {
- Variant res[5];
- Variant *resptr[5];
- for (int i = 0; i < 5; i++) {
- resptr[i] = &res[i];
- }
+ if (!area_monitor_callback.is_null() && !monitored_areas.is_empty()) {
+ if (area_monitor_callback.is_valid()) {
+ Variant res[5];
+ Variant *resptr[5];
+ for (int i = 0; i < 5; i++) {
+ resptr[i] = &res[i];
+ }
- Object *obj = ObjectDB::get_instance(area_monitor_callback_id);
- if (!obj) {
- monitored_areas.clear();
- area_monitor_callback_id = ObjectID();
- return;
- }
+ for (Map<BodyKey, BodyState>::Element *E = monitored_areas.front(); E;) {
+ if (E->get().state == 0) { // Nothing happened
+ Map<BodyKey, BodyState>::Element *next = E->next();
+ monitored_areas.erase(E);
+ E = next;
+ continue;
+ }
+
+ res[0] = E->get().state > 0 ? PhysicsServer2D::AREA_BODY_ADDED : PhysicsServer2D::AREA_BODY_REMOVED;
+ res[1] = E->key().rid;
+ res[2] = E->key().instance_id;
+ res[3] = E->key().body_shape;
+ res[4] = E->key().area_shape;
- for (Map<BodyKey, BodyState>::Element *E = monitored_areas.front(); E;) {
- if (E->get().state == 0) { // Nothing happened
Map<BodyKey, BodyState>::Element *next = E->next();
monitored_areas.erase(E);
E = next;
- continue;
- }
-
- res[0] = E->get().state > 0 ? PhysicsServer2D::AREA_BODY_ADDED : PhysicsServer2D::AREA_BODY_REMOVED;
- res[1] = E->key().rid;
- res[2] = E->key().instance_id;
- res[3] = E->key().body_shape;
- res[4] = E->key().area_shape;
-
- Map<BodyKey, BodyState>::Element *next = E->next();
- monitored_areas.erase(E);
- E = next;
- Callable::CallError ce;
- obj->call(area_monitor_callback_method, (const Variant **)resptr, 5, ce);
+ Callable::CallError ce;
+ Variant ret;
+ area_monitor_callback.call((const Variant **)resptr, 5, ret, ce);
+ }
+ } else {
+ monitored_areas.clear();
+ area_monitor_callback = Callable();
}
}
}
diff --git a/servers/physics_2d/godot_area_2d.h b/servers/physics_2d/godot_area_2d.h
index daa03d39e3..13b3ce1bf2 100644
--- a/servers/physics_2d/godot_area_2d.h
+++ b/servers/physics_2d/godot_area_2d.h
@@ -52,11 +52,9 @@ class GodotArea2D : public GodotCollisionObject2D {
int priority = 0;
bool monitorable = false;
- ObjectID monitor_callback_id;
- StringName monitor_callback_method;
+ Callable monitor_callback;
- ObjectID area_monitor_callback_id;
- StringName area_monitor_callback_method;
+ Callable area_monitor_callback;
SelfList<GodotArea2D> monitor_query_list;
SelfList<GodotArea2D> moved_list;
@@ -99,11 +97,11 @@ class GodotArea2D : public GodotCollisionObject2D {
void _queue_monitor_update();
public:
- void set_monitor_callback(ObjectID p_id, const StringName &p_method);
- _FORCE_INLINE_ bool has_monitor_callback() const { return monitor_callback_id.is_valid(); }
+ void set_monitor_callback(const Callable &p_callback);
+ _FORCE_INLINE_ bool has_monitor_callback() const { return !monitor_callback.is_null(); }
- void set_area_monitor_callback(ObjectID p_id, const StringName &p_method);
- _FORCE_INLINE_ bool has_area_monitor_callback() const { return area_monitor_callback_id.is_valid(); }
+ void set_area_monitor_callback(const Callable &p_callback);
+ _FORCE_INLINE_ bool has_area_monitor_callback() const { return !area_monitor_callback.is_null(); }
_FORCE_INLINE_ void add_body_to_query(GodotBody2D *p_body, uint32_t p_body_shape, uint32_t p_area_shape);
_FORCE_INLINE_ void remove_body_from_query(GodotBody2D *p_body, uint32_t p_body_shape, uint32_t p_area_shape);
diff --git a/servers/physics_2d/godot_body_2d.cpp b/servers/physics_2d/godot_body_2d.cpp
index 56f191c203..109914d585 100644
--- a/servers/physics_2d/godot_body_2d.cpp
+++ b/servers/physics_2d/godot_body_2d.cpp
@@ -187,6 +187,14 @@ void GodotBody2D::set_param(PhysicsServer2D::BodyParameter p_param, const Varian
case PhysicsServer2D::BODY_PARAM_GRAVITY_SCALE: {
gravity_scale = p_value;
} break;
+ case PhysicsServer2D::BODY_PARAM_LINEAR_DAMP_MODE: {
+ int mode_value = p_value;
+ linear_damp_mode = (PhysicsServer2D::BodyDampMode)mode_value;
+ } break;
+ case PhysicsServer2D::BODY_PARAM_ANGULAR_DAMP_MODE: {
+ int mode_value = p_value;
+ angular_damp_mode = (PhysicsServer2D::BodyDampMode)mode_value;
+ } break;
case PhysicsServer2D::BODY_PARAM_LINEAR_DAMP: {
linear_damp = p_value;
} break;
@@ -218,6 +226,12 @@ Variant GodotBody2D::get_param(PhysicsServer2D::BodyParameter p_param) const {
case PhysicsServer2D::BODY_PARAM_GRAVITY_SCALE: {
return gravity_scale;
}
+ case PhysicsServer2D::BODY_PARAM_LINEAR_DAMP_MODE: {
+ return linear_damp_mode;
+ }
+ case PhysicsServer2D::BODY_PARAM_ANGULAR_DAMP_MODE: {
+ return angular_damp_mode;
+ }
case PhysicsServer2D::BODY_PARAM_LINEAR_DAMP: {
return linear_damp;
}
@@ -401,8 +415,8 @@ void GodotBody2D::_compute_area_gravity_and_damping(const GodotArea2D *p_area) {
p_area->compute_gravity(get_transform().get_origin(), area_gravity);
gravity += area_gravity;
- area_linear_damp += p_area->get_linear_damp();
- area_angular_damp += p_area->get_angular_damp();
+ total_linear_damp += p_area->get_linear_damp();
+ total_angular_damp += p_area->get_angular_damp();
}
void GodotBody2D::_update_transform_dependent() {
@@ -414,19 +428,17 @@ void GodotBody2D::integrate_forces(real_t p_step) {
return;
}
- GodotArea2D *def_area = get_space()->get_default_area();
- // GodotArea2D *damp_area = def_area;
- ERR_FAIL_COND(!def_area);
-
int ac = areas.size();
bool stopped = false;
gravity = Vector2(0, 0);
- area_angular_damp = 0;
- area_linear_damp = 0;
+
+ total_linear_damp = 0.0;
+ total_angular_damp = 0.0;
+
+ // Combine gravity and damping from overlapping areas in priority order.
if (ac) {
areas.sort();
const AreaCMP *aa = &areas[0];
- // damp_area = aa[ac-1].area;
for (int i = ac - 1; i >= 0 && !stopped; i--) {
PhysicsServer2D::AreaSpaceOverrideMode mode = aa[i].area->get_space_override_mode();
switch (mode) {
@@ -438,8 +450,8 @@ void GodotBody2D::integrate_forces(real_t p_step) {
case PhysicsServer2D::AREA_SPACE_OVERRIDE_REPLACE:
case PhysicsServer2D::AREA_SPACE_OVERRIDE_REPLACE_COMBINE: {
gravity = Vector2(0, 0);
- area_angular_damp = 0;
- area_linear_damp = 0;
+ total_linear_damp = 0.0;
+ total_angular_damp = 0.0;
_compute_area_gravity_and_damping(aa[i].area);
stopped = mode == PhysicsServer2D::AREA_SPACE_OVERRIDE_REPLACE;
} break;
@@ -448,27 +460,36 @@ void GodotBody2D::integrate_forces(real_t p_step) {
}
}
}
+
+ // Override linear damping with body's value.
if (!stopped) {
+ GodotArea2D *def_area = get_space()->get_default_area();
+ ERR_FAIL_COND(!def_area);
+
_compute_area_gravity_and_damping(def_area);
}
- gravity *= gravity_scale;
- // If less than 0, override dampenings with that of the Body2D
- if (angular_damp >= 0) {
- area_angular_damp = angular_damp;
+ // Override linear damping with body's value.
+ switch (linear_damp_mode) {
+ case PhysicsServer2D::BODY_DAMP_MODE_COMBINE: {
+ total_linear_damp += linear_damp;
+ } break;
+ case PhysicsServer2D::BODY_DAMP_MODE_REPLACE: {
+ total_linear_damp = linear_damp;
+ } break;
}
- /*
- else
- area_angular_damp=damp_area->get_angular_damp();
- */
- if (linear_damp >= 0) {
- area_linear_damp = linear_damp;
+ // Override angular damping with body's value.
+ switch (angular_damp_mode) {
+ case PhysicsServer2D::BODY_DAMP_MODE_COMBINE: {
+ total_angular_damp += angular_damp;
+ } break;
+ case PhysicsServer2D::BODY_DAMP_MODE_REPLACE: {
+ total_angular_damp = angular_damp;
+ } break;
}
- /*
- else
- area_linear_damp=damp_area->get_linear_damp();
- */
+
+ gravity *= gravity_scale;
Vector2 motion;
bool do_motion = false;
@@ -483,13 +504,6 @@ void GodotBody2D::integrate_forces(real_t p_step) {
do_motion = true;
- /*
- for(int i=0;i<get_shape_count();i++) {
- set_shape_kinematic_advance(i,Vector2());
- set_shape_kinematic_retreat(i,0);
- }
- */
-
} else {
if (!omit_force_integration) {
//overridden by direct state query
@@ -498,13 +512,13 @@ void GodotBody2D::integrate_forces(real_t p_step) {
force += applied_force;
real_t torque = applied_torque;
- real_t damp = 1.0 - p_step * area_linear_damp;
+ real_t damp = 1.0 - p_step * total_linear_damp;
if (damp < 0) { // reached zero in the given time
damp = 0;
}
- real_t angular_damp = 1.0 - p_step * area_angular_damp;
+ real_t angular_damp = 1.0 - p_step * total_angular_damp;
if (angular_damp < 0) { // reached zero in the given time
angular_damp = 0;
@@ -523,8 +537,6 @@ void GodotBody2D::integrate_forces(real_t p_step) {
}
}
- //motion=linear_velocity*p_step;
-
biased_angular_velocity = 0;
biased_linear_velocity = Vector2();
@@ -532,8 +544,6 @@ void GodotBody2D::integrate_forces(real_t p_step) {
_update_shapes_with_motion(motion);
}
- // damp_area=nullptr; // clear the area, so it is set in the next frame
- def_area = nullptr; // clear the area, so it is set in the next frame
contact_count = 0;
}
diff --git a/servers/physics_2d/godot_body_2d.h b/servers/physics_2d/godot_body_2d.h
index 5fce362fa7..817d5f1b0d 100644
--- a/servers/physics_2d/godot_body_2d.h
+++ b/servers/physics_2d/godot_body_2d.h
@@ -53,8 +53,15 @@ class GodotBody2D : public GodotCollisionObject2D {
Vector2 constant_linear_velocity;
real_t constant_angular_velocity = 0.0;
- real_t linear_damp = -1.0;
- real_t angular_damp = -1.0;
+ PhysicsServer2D::BodyDampMode linear_damp_mode = PhysicsServer2D::BODY_DAMP_MODE_COMBINE;
+ PhysicsServer2D::BodyDampMode angular_damp_mode = PhysicsServer2D::BODY_DAMP_MODE_COMBINE;
+
+ real_t linear_damp = 0.0;
+ real_t angular_damp = 0.0;
+
+ real_t total_linear_damp = 0.0;
+ real_t total_angular_damp = 0.0;
+
real_t gravity_scale = 1.0;
real_t bounce = 0.0;
@@ -73,8 +80,6 @@ class GodotBody2D : public GodotCollisionObject2D {
bool calculate_center_of_mass = true;
Vector2 gravity;
- real_t area_linear_damp = 0.0;
- real_t area_angular_damp = 0.0;
real_t still_time = 0.0;
@@ -276,14 +281,11 @@ public:
void update_mass_properties();
void reset_mass_properties();
- _FORCE_INLINE_ Vector2 get_center_of_mass() const { return center_of_mass; }
+ _FORCE_INLINE_ const Vector2 &get_center_of_mass() const { return center_of_mass; }
_FORCE_INLINE_ real_t get_inv_mass() const { return _inv_mass; }
_FORCE_INLINE_ real_t get_inv_inertia() const { return _inv_inertia; }
_FORCE_INLINE_ real_t get_friction() const { return friction; }
- _FORCE_INLINE_ Vector2 get_gravity() const { return gravity; }
_FORCE_INLINE_ real_t get_bounce() const { return bounce; }
- _FORCE_INLINE_ real_t get_linear_damp() const { return linear_damp; }
- _FORCE_INLINE_ real_t get_angular_damp() const { return angular_damp; }
void integrate_forces(real_t p_step);
void integrate_velocities(real_t p_step);
diff --git a/servers/physics_2d/godot_body_direct_state_2d.cpp b/servers/physics_2d/godot_body_direct_state_2d.cpp
index 300c302c79..deebc57f37 100644
--- a/servers/physics_2d/godot_body_direct_state_2d.cpp
+++ b/servers/physics_2d/godot_body_direct_state_2d.cpp
@@ -39,11 +39,11 @@ Vector2 GodotPhysicsDirectBodyState2D::get_total_gravity() const {
}
real_t GodotPhysicsDirectBodyState2D::get_total_angular_damp() const {
- return body->area_angular_damp;
+ return body->total_angular_damp;
}
real_t GodotPhysicsDirectBodyState2D::get_total_linear_damp() const {
- return body->area_linear_damp;
+ return body->total_linear_damp;
}
Vector2 GodotPhysicsDirectBodyState2D::get_center_of_mass() const {
diff --git a/servers/physics_2d/godot_physics_server_2d.cpp b/servers/physics_2d/godot_physics_server_2d.cpp
index c86f87fc03..cf66b80076 100644
--- a/servers/physics_2d/godot_physics_server_2d.cpp
+++ b/servers/physics_2d/godot_physics_server_2d.cpp
@@ -513,18 +513,18 @@ void GodotPhysicsServer2D::area_set_collision_layer(RID p_area, uint32_t p_layer
area->set_collision_layer(p_layer);
}
-void GodotPhysicsServer2D::area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) {
+void GodotPhysicsServer2D::area_set_monitor_callback(RID p_area, const Callable &p_callback) {
GodotArea2D *area = area_owner.get_or_null(p_area);
ERR_FAIL_COND(!area);
- area->set_monitor_callback(p_receiver ? p_receiver->get_instance_id() : ObjectID(), p_method);
+ area->set_monitor_callback(p_callback.is_valid() ? p_callback : Callable());
}
-void GodotPhysicsServer2D::area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) {
+void GodotPhysicsServer2D::area_set_area_monitor_callback(RID p_area, const Callable &p_callback) {
GodotArea2D *area = area_owner.get_or_null(p_area);
ERR_FAIL_COND(!area);
- area->set_area_monitor_callback(p_receiver ? p_receiver->get_instance_id() : ObjectID(), p_method);
+ area->set_area_monitor_callback(p_callback.is_valid() ? p_callback : Callable());
}
/* BODY API */
diff --git a/servers/physics_2d/godot_physics_server_2d.h b/servers/physics_2d/godot_physics_server_2d.h
index a8a1e71d13..b03d78a1de 100644
--- a/servers/physics_2d/godot_physics_server_2d.h
+++ b/servers/physics_2d/godot_physics_server_2d.h
@@ -158,8 +158,8 @@ public:
virtual void area_set_collision_mask(RID p_area, uint32_t p_mask) override;
virtual void area_set_collision_layer(RID p_area, uint32_t p_layer) override;
- virtual void area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) override;
- virtual void area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) override;
+ virtual void area_set_monitor_callback(RID p_area, const Callable &p_callback) override;
+ virtual void area_set_area_monitor_callback(RID p_area, const Callable &p_callback) override;
virtual void area_set_pickable(RID p_area, bool p_pickable) override;
diff --git a/servers/physics_2d/godot_space_2d.cpp b/servers/physics_2d/godot_space_2d.cpp
index d72014a8ed..5c189aa06a 100644
--- a/servers/physics_2d/godot_space_2d.cpp
+++ b/servers/physics_2d/godot_space_2d.cpp
@@ -54,13 +54,13 @@ _FORCE_INLINE_ static bool _can_collide_with(GodotCollisionObject2D *p_object, u
return true;
}
-int GodotPhysicsDirectSpaceState2D::_intersect_point_impl(const Vector2 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_pick_point, bool p_filter_by_canvas, ObjectID p_canvas_instance_id) {
+int GodotPhysicsDirectSpaceState2D::intersect_point(const PointParameters &p_parameters, ShapeResult *r_results, int p_result_max) {
if (p_result_max <= 0) {
return 0;
}
Rect2 aabb;
- aabb.position = p_point - Vector2(0.00001, 0.00001);
+ aabb.position = p_parameters.position - Vector2(0.00001, 0.00001);
aabb.size = Vector2(0.00002, 0.00002);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace2D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -68,21 +68,21 @@ int GodotPhysicsDirectSpaceState2D::_intersect_point_impl(const Vector2 &p_point
int cc = 0;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue;
}
const GodotCollisionObject2D *col_obj = space->intersection_query_results[i];
- if (p_pick_point && !col_obj->is_pickable()) {
+ if (p_parameters.pick_point && !col_obj->is_pickable()) {
continue;
}
- if (p_filter_by_canvas && col_obj->get_canvas_instance_id() != p_canvas_instance_id) {
+ if (p_parameters.canvas_instance_id.is_valid() && col_obj->get_canvas_instance_id() != p_parameters.canvas_instance_id) {
continue;
}
@@ -90,7 +90,7 @@ int GodotPhysicsDirectSpaceState2D::_intersect_point_impl(const Vector2 &p_point
GodotShape2D *shape = col_obj->get_shape(shape_idx);
- Vector2 local_point = (col_obj->get_transform() * col_obj->get_shape_transform(shape_idx)).affine_inverse().xform(p_point);
+ Vector2 local_point = (col_obj->get_transform() * col_obj->get_shape_transform(shape_idx)).affine_inverse().xform(p_parameters.position);
if (!shape->contains_point(local_point)) {
continue;
@@ -113,21 +113,13 @@ int GodotPhysicsDirectSpaceState2D::_intersect_point_impl(const Vector2 &p_point
return cc;
}
-int GodotPhysicsDirectSpaceState2D::intersect_point(const Vector2 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_pick_point) {
- return _intersect_point_impl(p_point, r_results, p_result_max, p_exclude, p_collision_mask, p_collide_with_bodies, p_collide_with_areas, p_pick_point);
-}
-
-int GodotPhysicsDirectSpaceState2D::intersect_point_on_canvas(const Vector2 &p_point, ObjectID p_canvas_instance_id, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_pick_point) {
- return _intersect_point_impl(p_point, r_results, p_result_max, p_exclude, p_collision_mask, p_collide_with_bodies, p_collide_with_areas, p_pick_point, true, p_canvas_instance_id);
-}
-
-bool GodotPhysicsDirectSpaceState2D::intersect_ray(const Vector2 &p_from, const Vector2 &p_to, RayResult &r_result, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
+bool GodotPhysicsDirectSpaceState2D::intersect_ray(const RayParameters &p_parameters, RayResult &r_result) {
ERR_FAIL_COND_V(space->locked, false);
Vector2 begin, end;
Vector2 normal;
- begin = p_from;
- end = p_to;
+ begin = p_parameters.from;
+ end = p_parameters.to;
normal = (end - begin).normalized();
int amount = space->broadphase->cull_segment(begin, end, space->intersection_query_results, GodotSpace2D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -141,11 +133,11 @@ bool GodotPhysicsDirectSpaceState2D::intersect_ray(const Vector2 &p_from, const
real_t min_d = 1e10;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue;
}
@@ -157,12 +149,6 @@ bool GodotPhysicsDirectSpaceState2D::intersect_ray(const Vector2 &p_from, const
Vector2 local_from = inv_xform.xform(begin);
Vector2 local_to = inv_xform.xform(end);
- /*local_from = col_obj->get_inv_transform().xform(begin);
- local_from = col_obj->get_shape_inv_transform(shape_idx).xform(local_from);
-
- local_to = col_obj->get_inv_transform().xform(end);
- local_to = col_obj->get_shape_inv_transform(shape_idx).xform(local_to);*/
-
const GodotShape2D *shape = col_obj->get_shape(shape_idx);
Vector2 shape_point, shape_normal;
@@ -200,16 +186,17 @@ bool GodotPhysicsDirectSpaceState2D::intersect_ray(const Vector2 &p_from, const
return true;
}
-int GodotPhysicsDirectSpaceState2D::intersect_shape(const RID &p_shape, const Transform2D &p_xform, const Vector2 &p_motion, real_t p_margin, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
+int GodotPhysicsDirectSpaceState2D::intersect_shape(const ShapeParameters &p_parameters, ShapeResult *r_results, int p_result_max) {
if (p_result_max <= 0) {
return 0;
}
- GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_shape);
+ GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, 0);
- Rect2 aabb = p_xform.xform(shape->get_aabb());
- aabb = aabb.grow(p_margin);
+ Rect2 aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.merge(Rect2(aabb.position + p_parameters.motion, aabb.size)); //motion
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace2D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -220,18 +207,18 @@ int GodotPhysicsDirectSpaceState2D::intersect_shape(const RID &p_shape, const Tr
break;
}
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue;
}
const GodotCollisionObject2D *col_obj = space->intersection_query_results[i];
int shape_idx = space->intersection_query_subindex_results[i];
- if (!GodotCollisionSolver2D::solve(shape, p_xform, p_motion, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), Vector2(), nullptr, nullptr, nullptr, p_margin)) {
+ if (!GodotCollisionSolver2D::solve(shape, p_parameters.transform, p_parameters.motion, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), Vector2(), nullptr, nullptr, nullptr, p_parameters.margin)) {
continue;
}
@@ -248,13 +235,13 @@ int GodotPhysicsDirectSpaceState2D::intersect_shape(const RID &p_shape, const Tr
return cc;
}
-bool GodotPhysicsDirectSpaceState2D::cast_motion(const RID &p_shape, const Transform2D &p_xform, const Vector2 &p_motion, real_t p_margin, real_t &p_closest_safe, real_t &p_closest_unsafe, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
- GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_shape);
+bool GodotPhysicsDirectSpaceState2D::cast_motion(const ShapeParameters &p_parameters, real_t &p_closest_safe, real_t &p_closest_unsafe) {
+ GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, false);
- Rect2 aabb = p_xform.xform(shape->get_aabb());
- aabb = aabb.merge(Rect2(aabb.position + p_motion, aabb.size)); //motion
- aabb = aabb.grow(p_margin);
+ Rect2 aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.merge(Rect2(aabb.position + p_parameters.motion, aabb.size)); //motion
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace2D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -262,11 +249,11 @@ bool GodotPhysicsDirectSpaceState2D::cast_motion(const RID &p_shape, const Trans
real_t best_unsafe = 1;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue; //ignore excluded
}
@@ -275,16 +262,16 @@ bool GodotPhysicsDirectSpaceState2D::cast_motion(const RID &p_shape, const Trans
Transform2D col_obj_xform = col_obj->get_transform() * col_obj->get_shape_transform(shape_idx);
//test initial overlap, does it collide if going all the way?
- if (!GodotCollisionSolver2D::solve(shape, p_xform, p_motion, col_obj->get_shape(shape_idx), col_obj_xform, Vector2(), nullptr, nullptr, nullptr, p_margin)) {
+ if (!GodotCollisionSolver2D::solve(shape, p_parameters.transform, p_parameters.motion, col_obj->get_shape(shape_idx), col_obj_xform, Vector2(), nullptr, nullptr, nullptr, p_parameters.margin)) {
continue;
}
//test initial overlap, ignore objects it's inside of.
- if (GodotCollisionSolver2D::solve(shape, p_xform, Vector2(), col_obj->get_shape(shape_idx), col_obj_xform, Vector2(), nullptr, nullptr, nullptr, p_margin)) {
+ if (GodotCollisionSolver2D::solve(shape, p_parameters.transform, Vector2(), col_obj->get_shape(shape_idx), col_obj_xform, Vector2(), nullptr, nullptr, nullptr, p_parameters.margin)) {
continue;
}
- Vector2 mnormal = p_motion.normalized();
+ Vector2 mnormal = p_parameters.motion.normalized();
//just do kinematic solving
real_t low = 0.0;
@@ -294,7 +281,7 @@ bool GodotPhysicsDirectSpaceState2D::cast_motion(const RID &p_shape, const Trans
real_t fraction = low + (hi - low) * fraction_coeff;
Vector2 sep = mnormal; //important optimization for this to work fast enough
- bool collided = GodotCollisionSolver2D::solve(shape, p_xform, p_motion * fraction, col_obj->get_shape(shape_idx), col_obj_xform, Vector2(), nullptr, nullptr, &sep, p_margin);
+ bool collided = GodotCollisionSolver2D::solve(shape, p_parameters.transform, p_parameters.motion * fraction, col_obj->get_shape(shape_idx), col_obj_xform, Vector2(), nullptr, nullptr, &sep, p_parameters.margin);
if (collided) {
hi = fraction;
@@ -331,17 +318,17 @@ bool GodotPhysicsDirectSpaceState2D::cast_motion(const RID &p_shape, const Trans
return true;
}
-bool GodotPhysicsDirectSpaceState2D::collide_shape(RID p_shape, const Transform2D &p_shape_xform, const Vector2 &p_motion, real_t p_margin, Vector2 *r_results, int p_result_max, int &r_result_count, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
+bool GodotPhysicsDirectSpaceState2D::collide_shape(const ShapeParameters &p_parameters, Vector2 *r_results, int p_result_max, int &r_result_count) {
if (p_result_max <= 0) {
return false;
}
- GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_shape);
+ GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, 0);
- Rect2 aabb = p_shape_xform.xform(shape->get_aabb());
- aabb = aabb.merge(Rect2(aabb.position + p_motion, aabb.size)); //motion
- aabb = aabb.grow(p_margin);
+ Rect2 aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.merge(Rect2(aabb.position + p_parameters.motion, aabb.size)); //motion
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace2D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -358,13 +345,13 @@ bool GodotPhysicsDirectSpaceState2D::collide_shape(RID p_shape, const Transform2
GodotPhysicsServer2D::CollCbkData *cbkptr = &cbk;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
const GodotCollisionObject2D *col_obj = space->intersection_query_results[i];
- if (p_exclude.has(col_obj->get_self())) {
+ if (p_parameters.exclude.has(col_obj->get_self())) {
continue;
}
@@ -373,7 +360,7 @@ bool GodotPhysicsDirectSpaceState2D::collide_shape(RID p_shape, const Transform2
cbk.valid_dir = Vector2();
cbk.valid_depth = 0;
- if (GodotCollisionSolver2D::solve(shape, p_shape_xform, p_motion, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), Vector2(), cbkres, cbkptr, nullptr, p_margin)) {
+ if (GodotCollisionSolver2D::solve(shape, p_parameters.transform, p_parameters.motion, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), Vector2(), cbkres, cbkptr, nullptr, p_parameters.margin)) {
collided = cbk.amount > 0;
}
}
@@ -432,15 +419,15 @@ static void _rest_cbk_result(const Vector2 &p_point_A, const Vector2 &p_point_B,
rd->best_local_shape = rd->local_shape;
}
-bool GodotPhysicsDirectSpaceState2D::rest_info(RID p_shape, const Transform2D &p_shape_xform, const Vector2 &p_motion, real_t p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
- GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_shape);
+bool GodotPhysicsDirectSpaceState2D::rest_info(const ShapeParameters &p_parameters, ShapeRestInfo *r_info) {
+ GodotShape2D *shape = GodotPhysicsServer2D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, 0);
- real_t min_contact_depth = p_margin * TEST_MOTION_MIN_CONTACT_DEPTH_FACTOR;
+ real_t min_contact_depth = p_parameters.margin * TEST_MOTION_MIN_CONTACT_DEPTH_FACTOR;
- Rect2 aabb = p_shape_xform.xform(shape->get_aabb());
- aabb = aabb.merge(Rect2(aabb.position + p_motion, aabb.size)); //motion
- aabb = aabb.grow(p_margin);
+ Rect2 aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.merge(Rect2(aabb.position + p_parameters.motion, aabb.size)); //motion
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace2D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -451,13 +438,13 @@ bool GodotPhysicsDirectSpaceState2D::rest_info(RID p_shape, const Transform2D &p
rcd.min_allowed_depth = min_contact_depth;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
const GodotCollisionObject2D *col_obj = space->intersection_query_results[i];
- if (p_exclude.has(col_obj->get_self())) {
+ if (p_parameters.exclude.has(col_obj->get_self())) {
continue;
}
@@ -467,7 +454,7 @@ bool GodotPhysicsDirectSpaceState2D::rest_info(RID p_shape, const Transform2D &p
rcd.object = col_obj;
rcd.shape = shape_idx;
rcd.local_shape = 0;
- bool sc = GodotCollisionSolver2D::solve(shape, p_shape_xform, p_motion, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), Vector2(), _rest_cbk_result, &rcd, nullptr, p_margin);
+ bool sc = GodotCollisionSolver2D::solve(shape, p_parameters.transform, p_parameters.motion, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), Vector2(), _rest_cbk_result, &rcd, nullptr, p_parameters.margin);
if (!sc) {
continue;
}
diff --git a/servers/physics_2d/godot_space_2d.h b/servers/physics_2d/godot_space_2d.h
index 97e2928a9d..b155a834b6 100644
--- a/servers/physics_2d/godot_space_2d.h
+++ b/servers/physics_2d/godot_space_2d.h
@@ -45,18 +45,15 @@
class GodotPhysicsDirectSpaceState2D : public PhysicsDirectSpaceState2D {
GDCLASS(GodotPhysicsDirectSpaceState2D, PhysicsDirectSpaceState2D);
- int _intersect_point_impl(const Vector2 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_pick_point, bool p_filter_by_canvas = false, ObjectID p_canvas_instance_id = ObjectID());
-
public:
GodotSpace2D *space = nullptr;
- virtual int intersect_point(const Vector2 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, bool p_pick_point = false) override;
- virtual int intersect_point_on_canvas(const Vector2 &p_point, ObjectID p_canvas_instance_id, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, bool p_pick_point = false) override;
- virtual bool intersect_ray(const Vector2 &p_from, const Vector2 &p_to, RayResult &r_result, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual int intersect_shape(const RID &p_shape, const Transform2D &p_xform, const Vector2 &p_motion, real_t p_margin, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual bool cast_motion(const RID &p_shape, const Transform2D &p_xform, const Vector2 &p_motion, real_t p_margin, real_t &p_closest_safe, real_t &p_closest_unsafe, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual bool collide_shape(RID p_shape, const Transform2D &p_shape_xform, const Vector2 &p_motion, real_t p_margin, Vector2 *r_results, int p_result_max, int &r_result_count, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual bool rest_info(RID p_shape, const Transform2D &p_shape_xform, const Vector2 &p_motion, real_t p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
+ virtual int intersect_point(const PointParameters &p_parameters, ShapeResult *r_results, int p_result_max) override;
+ virtual bool intersect_ray(const RayParameters &p_parameters, RayResult &r_result) override;
+ virtual int intersect_shape(const ShapeParameters &p_parameters, ShapeResult *r_results, int p_result_max) override;
+ virtual bool cast_motion(const ShapeParameters &p_parameters, real_t &p_closest_safe, real_t &p_closest_unsafe) override;
+ virtual bool collide_shape(const ShapeParameters &p_parameters, Vector2 *r_results, int p_result_max, int &r_result_count) override;
+ virtual bool rest_info(const ShapeParameters &p_parameters, ShapeRestInfo *r_info) override;
GodotPhysicsDirectSpaceState2D() {}
};
diff --git a/servers/physics_2d/godot_step_2d.cpp b/servers/physics_2d/godot_step_2d.cpp
index 3010315571..84ec0e3c63 100644
--- a/servers/physics_2d/godot_step_2d.cpp
+++ b/servers/physics_2d/godot_step_2d.cpp
@@ -255,11 +255,7 @@ void GodotStep2D::step(GodotSpace2D *p_space, real_t p_delta, int p_iterations)
// Warning: _solve_island modifies the constraint islands for optimization purpose,
// their content is not reliable after these calls and shouldn't be used anymore.
- if (island_count > 1) {
- work_pool.do_work(island_count, this, &GodotStep2D::_solve_island, nullptr);
- } else if (island_count > 0) {
- _solve_island(0);
- }
+ work_pool.do_work(island_count, this, &GodotStep2D::_solve_island, nullptr);
{ //profile
profile_endtime = OS::get_singleton()->get_ticks_usec();
diff --git a/servers/physics_3d/godot_area_3d.cpp b/servers/physics_3d/godot_area_3d.cpp
index e115e17061..973fc50968 100644
--- a/servers/physics_3d/godot_area_3d.cpp
+++ b/servers/physics_3d/godot_area_3d.cpp
@@ -86,16 +86,16 @@ void GodotArea3D::set_space(GodotSpace3D *p_space) {
_set_space(p_space);
}
-void GodotArea3D::set_monitor_callback(ObjectID p_id, const StringName &p_method) {
- if (p_id == monitor_callback_id) {
- monitor_callback_method = p_method;
+void GodotArea3D::set_monitor_callback(const Callable &p_callback) {
+ ObjectID id = p_callback.get_object_id();
+ if (id == monitor_callback.get_object_id()) {
+ monitor_callback = p_callback;
return;
}
_unregister_shapes();
- monitor_callback_id = p_id;
- monitor_callback_method = p_method;
+ monitor_callback = p_callback;
monitored_bodies.clear();
monitored_areas.clear();
@@ -107,16 +107,16 @@ void GodotArea3D::set_monitor_callback(ObjectID p_id, const StringName &p_method
}
}
-void GodotArea3D::set_area_monitor_callback(ObjectID p_id, const StringName &p_method) {
- if (p_id == area_monitor_callback_id) {
- area_monitor_callback_method = p_method;
+void GodotArea3D::set_area_monitor_callback(const Callable &p_callback) {
+ ObjectID id = p_callback.get_object_id();
+ if (id == area_monitor_callback.get_object_id()) {
+ area_monitor_callback = p_callback;
return;
}
_unregister_shapes();
- area_monitor_callback_id = p_id;
- area_monitor_callback_method = p_method;
+ area_monitor_callback = p_callback;
monitored_bodies.clear();
monitored_areas.clear();
@@ -230,77 +230,75 @@ void GodotArea3D::set_monitorable(bool p_monitorable) {
}
void GodotArea3D::call_queries() {
- if (monitor_callback_id.is_valid() && !monitored_bodies.is_empty()) {
- Variant res[5];
- Variant *resptr[5];
- for (int i = 0; i < 5; i++) {
- resptr[i] = &res[i];
- }
+ if (!monitor_callback.is_null() && !monitored_bodies.is_empty()) {
+ if (monitor_callback.is_valid()) {
+ Variant res[5];
+ Variant *resptr[5];
+ for (int i = 0; i < 5; i++) {
+ resptr[i] = &res[i];
+ }
- Object *obj = ObjectDB::get_instance(monitor_callback_id);
- if (!obj) {
- monitored_bodies.clear();
- monitor_callback_id = ObjectID();
- return;
- }
+ for (Map<BodyKey, BodyState>::Element *E = monitored_bodies.front(); E;) {
+ if (E->get().state == 0) { // Nothing happened
+ Map<BodyKey, BodyState>::Element *next = E->next();
+ monitored_bodies.erase(E);
+ E = next;
+ continue;
+ }
+
+ res[0] = E->get().state > 0 ? PhysicsServer3D::AREA_BODY_ADDED : PhysicsServer3D::AREA_BODY_REMOVED;
+ res[1] = E->key().rid;
+ res[2] = E->key().instance_id;
+ res[3] = E->key().body_shape;
+ res[4] = E->key().area_shape;
- for (Map<BodyKey, BodyState>::Element *E = monitored_bodies.front(); E;) {
- if (E->get().state == 0) { // Nothing happened
Map<BodyKey, BodyState>::Element *next = E->next();
monitored_bodies.erase(E);
E = next;
- continue;
- }
- res[0] = E->get().state > 0 ? PhysicsServer3D::AREA_BODY_ADDED : PhysicsServer3D::AREA_BODY_REMOVED;
- res[1] = E->key().rid;
- res[2] = E->key().instance_id;
- res[3] = E->key().body_shape;
- res[4] = E->key().area_shape;
-
- Map<BodyKey, BodyState>::Element *next = E->next();
- monitored_bodies.erase(E);
- E = next;
-
- Callable::CallError ce;
- obj->call(monitor_callback_method, (const Variant **)resptr, 5, ce);
+ Callable::CallError ce;
+ Variant ret;
+ monitor_callback.call((const Variant **)resptr, 5, ret, ce);
+ }
+ } else {
+ monitored_bodies.clear();
+ monitor_callback = Callable();
}
}
- if (area_monitor_callback_id.is_valid() && !monitored_areas.is_empty()) {
- Variant res[5];
- Variant *resptr[5];
- for (int i = 0; i < 5; i++) {
- resptr[i] = &res[i];
- }
+ if (!area_monitor_callback.is_null() && !monitored_areas.is_empty()) {
+ if (area_monitor_callback.is_valid()) {
+ Variant res[5];
+ Variant *resptr[5];
+ for (int i = 0; i < 5; i++) {
+ resptr[i] = &res[i];
+ }
- Object *obj = ObjectDB::get_instance(area_monitor_callback_id);
- if (!obj) {
- monitored_areas.clear();
- area_monitor_callback_id = ObjectID();
- return;
- }
+ for (Map<BodyKey, BodyState>::Element *E = monitored_areas.front(); E;) {
+ if (E->get().state == 0) { // Nothing happened
+ Map<BodyKey, BodyState>::Element *next = E->next();
+ monitored_areas.erase(E);
+ E = next;
+ continue;
+ }
+
+ res[0] = E->get().state > 0 ? PhysicsServer3D::AREA_BODY_ADDED : PhysicsServer3D::AREA_BODY_REMOVED;
+ res[1] = E->key().rid;
+ res[2] = E->key().instance_id;
+ res[3] = E->key().body_shape;
+ res[4] = E->key().area_shape;
- for (Map<BodyKey, BodyState>::Element *E = monitored_areas.front(); E;) {
- if (E->get().state == 0) { // Nothing happened
Map<BodyKey, BodyState>::Element *next = E->next();
monitored_areas.erase(E);
E = next;
- continue;
- }
- res[0] = E->get().state > 0 ? PhysicsServer3D::AREA_BODY_ADDED : PhysicsServer3D::AREA_BODY_REMOVED;
- res[1] = E->key().rid;
- res[2] = E->key().instance_id;
- res[3] = E->key().body_shape;
- res[4] = E->key().area_shape;
-
- Map<BodyKey, BodyState>::Element *next = E->next();
- monitored_areas.erase(E);
- E = next;
-
- Callable::CallError ce;
- obj->call(area_monitor_callback_method, (const Variant **)resptr, 5, ce);
+ Callable::CallError ce;
+ Variant ret;
+ area_monitor_callback.call((const Variant **)resptr, 5, ret, ce);
+ }
+ } else {
+ monitored_areas.clear();
+ area_monitor_callback = Callable();
}
}
}
diff --git a/servers/physics_3d/godot_area_3d.h b/servers/physics_3d/godot_area_3d.h
index e8caa9221b..b02fa1d5b9 100644
--- a/servers/physics_3d/godot_area_3d.h
+++ b/servers/physics_3d/godot_area_3d.h
@@ -57,11 +57,8 @@ class GodotArea3D : public GodotCollisionObject3D {
int priority = 0;
bool monitorable = false;
- ObjectID monitor_callback_id;
- StringName monitor_callback_method;
-
- ObjectID area_monitor_callback_id;
- StringName area_monitor_callback_method;
+ Callable monitor_callback;
+ Callable area_monitor_callback;
SelfList<GodotArea3D> monitor_query_list;
SelfList<GodotArea3D> moved_list;
@@ -106,11 +103,11 @@ class GodotArea3D : public GodotCollisionObject3D {
void _queue_monitor_update();
public:
- void set_monitor_callback(ObjectID p_id, const StringName &p_method);
- _FORCE_INLINE_ bool has_monitor_callback() const { return monitor_callback_id.is_valid(); }
+ void set_monitor_callback(const Callable &p_callback);
+ _FORCE_INLINE_ bool has_monitor_callback() const { return !monitor_callback.is_null(); }
- void set_area_monitor_callback(ObjectID p_id, const StringName &p_method);
- _FORCE_INLINE_ bool has_area_monitor_callback() const { return area_monitor_callback_id.is_valid(); }
+ void set_area_monitor_callback(const Callable &p_callback);
+ _FORCE_INLINE_ bool has_area_monitor_callback() const { return !area_monitor_callback.is_null(); }
_FORCE_INLINE_ void add_body_to_query(GodotBody3D *p_body, uint32_t p_body_shape, uint32_t p_area_shape);
_FORCE_INLINE_ void remove_body_from_query(GodotBody3D *p_body, uint32_t p_body_shape, uint32_t p_area_shape);
diff --git a/servers/physics_3d/godot_body_3d.cpp b/servers/physics_3d/godot_body_3d.cpp
index 02929eeaed..768c9e6572 100644
--- a/servers/physics_3d/godot_body_3d.cpp
+++ b/servers/physics_3d/godot_body_3d.cpp
@@ -229,6 +229,14 @@ void GodotBody3D::set_param(PhysicsServer3D::BodyParameter p_param, const Varian
case PhysicsServer3D::BODY_PARAM_GRAVITY_SCALE: {
gravity_scale = p_value;
} break;
+ case PhysicsServer3D::BODY_PARAM_LINEAR_DAMP_MODE: {
+ int mode_value = p_value;
+ linear_damp_mode = (PhysicsServer3D::BodyDampMode)mode_value;
+ } break;
+ case PhysicsServer3D::BODY_PARAM_ANGULAR_DAMP_MODE: {
+ int mode_value = p_value;
+ angular_damp_mode = (PhysicsServer3D::BodyDampMode)mode_value;
+ } break;
case PhysicsServer3D::BODY_PARAM_LINEAR_DAMP: {
linear_damp = p_value;
} break;
@@ -264,6 +272,12 @@ Variant GodotBody3D::get_param(PhysicsServer3D::BodyParameter p_param) const {
case PhysicsServer3D::BODY_PARAM_GRAVITY_SCALE: {
return gravity_scale;
} break;
+ case PhysicsServer3D::BODY_PARAM_LINEAR_DAMP_MODE: {
+ return linear_damp_mode;
+ }
+ case PhysicsServer3D::BODY_PARAM_ANGULAR_DAMP_MODE: {
+ return angular_damp_mode;
+ }
case PhysicsServer3D::BODY_PARAM_LINEAR_DAMP: {
return linear_damp;
} break;
@@ -448,8 +462,8 @@ void GodotBody3D::_compute_area_gravity_and_damping(const GodotArea3D *p_area) {
p_area->compute_gravity(get_transform().get_origin(), area_gravity);
gravity += area_gravity;
- area_linear_damp += p_area->get_linear_damp();
- area_angular_damp += p_area->get_angular_damp();
+ total_linear_damp += p_area->get_linear_damp();
+ total_angular_damp += p_area->get_angular_damp();
}
void GodotBody3D::set_axis_lock(PhysicsServer3D::BodyAxis p_axis, bool lock) {
@@ -469,19 +483,17 @@ void GodotBody3D::integrate_forces(real_t p_step) {
return;
}
- GodotArea3D *def_area = get_space()->get_default_area();
-
- ERR_FAIL_COND(!def_area);
-
int ac = areas.size();
bool stopped = false;
gravity = Vector3(0, 0, 0);
- area_linear_damp = 0;
- area_angular_damp = 0;
+
+ total_linear_damp = 0.0;
+ total_angular_damp = 0.0;
+
+ // Combine gravity and damping from overlapping areas in priority order.
if (ac) {
areas.sort();
const AreaCMP *aa = &areas[0];
- // damp_area = aa[ac-1].area;
for (int i = ac - 1; i >= 0 && !stopped; i--) {
PhysicsServer3D::AreaSpaceOverrideMode mode = aa[i].area->get_space_override_mode();
switch (mode) {
@@ -493,8 +505,8 @@ void GodotBody3D::integrate_forces(real_t p_step) {
case PhysicsServer3D::AREA_SPACE_OVERRIDE_REPLACE:
case PhysicsServer3D::AREA_SPACE_OVERRIDE_REPLACE_COMBINE: {
gravity = Vector3(0, 0, 0);
- area_angular_damp = 0;
- area_linear_damp = 0;
+ total_linear_damp = 0.0;
+ total_angular_damp = 0.0;
_compute_area_gravity_and_damping(aa[i].area);
stopped = mode == PhysicsServer3D::AREA_SPACE_OVERRIDE_REPLACE;
} break;
@@ -504,28 +516,35 @@ void GodotBody3D::integrate_forces(real_t p_step) {
}
}
+ // Add default gravity and damping from space area.
if (!stopped) {
+ GodotArea3D *def_area = get_space()->get_default_area();
+ ERR_FAIL_COND(!def_area);
+
_compute_area_gravity_and_damping(def_area);
}
- gravity *= gravity_scale;
-
- // If less than 0, override dampenings with that of the Body
- if (angular_damp >= 0) {
- area_angular_damp = angular_damp;
+ // Override linear damping with body's value.
+ switch (linear_damp_mode) {
+ case PhysicsServer3D::BODY_DAMP_MODE_COMBINE: {
+ total_linear_damp += linear_damp;
+ } break;
+ case PhysicsServer3D::BODY_DAMP_MODE_REPLACE: {
+ total_linear_damp = linear_damp;
+ } break;
}
- /*
- else
- area_angular_damp=damp_area->get_angular_damp();
- */
- if (linear_damp >= 0) {
- area_linear_damp = linear_damp;
+ // Override angular damping with body's value.
+ switch (angular_damp_mode) {
+ case PhysicsServer3D::BODY_DAMP_MODE_COMBINE: {
+ total_angular_damp += angular_damp;
+ } break;
+ case PhysicsServer3D::BODY_DAMP_MODE_REPLACE: {
+ total_angular_damp = angular_damp;
+ } break;
}
- /*
- else
- area_linear_damp=damp_area->get_linear_damp();
- */
+
+ gravity *= gravity_scale;
Vector3 motion;
bool do_motion = false;
@@ -552,13 +571,13 @@ void GodotBody3D::integrate_forces(real_t p_step) {
force += applied_force;
Vector3 torque = applied_torque;
- real_t damp = 1.0 - p_step * area_linear_damp;
+ real_t damp = 1.0 - p_step * total_linear_damp;
if (damp < 0) { // reached zero in the given time
damp = 0;
}
- real_t angular_damp = 1.0 - p_step * area_angular_damp;
+ real_t angular_damp = 1.0 - p_step * total_angular_damp;
if (angular_damp < 0) { // reached zero in the given time
angular_damp = 0;
@@ -580,8 +599,6 @@ void GodotBody3D::integrate_forces(real_t p_step) {
applied_force = Vector3();
applied_torque = Vector3();
- //motion=linear_velocity*p_step;
-
biased_angular_velocity = Vector3();
biased_linear_velocity = Vector3();
@@ -589,7 +606,6 @@ void GodotBody3D::integrate_forces(real_t p_step) {
_update_shapes_with_motion(motion);
}
- def_area = nullptr; // clear the area, so it is set in the next frame
contact_count = 0;
}
diff --git a/servers/physics_3d/godot_body_3d.h b/servers/physics_3d/godot_body_3d.h
index 5acdab9d13..4993ea6a1b 100644
--- a/servers/physics_3d/godot_body_3d.h
+++ b/servers/physics_3d/godot_body_3d.h
@@ -55,8 +55,15 @@ class GodotBody3D : public GodotCollisionObject3D {
real_t friction = 1.0;
Vector3 inertia;
- real_t linear_damp = -1.0;
- real_t angular_damp = -1.0;
+ PhysicsServer3D::BodyDampMode linear_damp_mode = PhysicsServer3D::BODY_DAMP_MODE_COMBINE;
+ PhysicsServer3D::BodyDampMode angular_damp_mode = PhysicsServer3D::BODY_DAMP_MODE_COMBINE;
+
+ real_t linear_damp = 0.0;
+ real_t angular_damp = 0.0;
+
+ real_t total_linear_damp = 0.0;
+ real_t total_angular_damp = 0.0;
+
real_t gravity_scale = 1.0;
uint16_t locked_axis = 0;
@@ -83,9 +90,6 @@ class GodotBody3D : public GodotCollisionObject3D {
Vector3 applied_force;
Vector3 applied_torque;
- real_t area_angular_damp = 0.0;
- real_t area_linear_damp = 0.0;
-
SelfList<GodotBody3D> active_list;
SelfList<GodotBody3D> mass_properties_update_list;
SelfList<GodotBody3D> direct_state_query_list;
@@ -285,7 +289,6 @@ public:
_FORCE_INLINE_ const Vector3 &get_inv_inertia() const { return _inv_inertia; }
_FORCE_INLINE_ const Basis &get_inv_inertia_tensor() const { return _inv_inertia_tensor; }
_FORCE_INLINE_ real_t get_friction() const { return friction; }
- _FORCE_INLINE_ const Vector3 &get_gravity() const { return gravity; }
_FORCE_INLINE_ real_t get_bounce() const { return bounce; }
void set_axis_lock(PhysicsServer3D::BodyAxis p_axis, bool lock);
diff --git a/servers/physics_3d/godot_body_direct_state_3d.cpp b/servers/physics_3d/godot_body_direct_state_3d.cpp
index db09657f8a..9c234a5752 100644
--- a/servers/physics_3d/godot_body_direct_state_3d.cpp
+++ b/servers/physics_3d/godot_body_direct_state_3d.cpp
@@ -38,11 +38,11 @@ Vector3 GodotPhysicsDirectBodyState3D::get_total_gravity() const {
}
real_t GodotPhysicsDirectBodyState3D::get_total_angular_damp() const {
- return body->area_angular_damp;
+ return body->total_angular_damp;
}
real_t GodotPhysicsDirectBodyState3D::get_total_linear_damp() const {
- return body->area_linear_damp;
+ return body->total_linear_damp;
}
Vector3 GodotPhysicsDirectBodyState3D::get_center_of_mass() const {
diff --git a/servers/physics_3d/godot_collision_object_3d.cpp b/servers/physics_3d/godot_collision_object_3d.cpp
index 80a3d18ce0..deb058b3ac 100644
--- a/servers/physics_3d/godot_collision_object_3d.cpp
+++ b/servers/physics_3d/godot_collision_object_3d.cpp
@@ -171,7 +171,7 @@ void GodotCollisionObject3D::_update_shapes() {
s.aabb_cache = shape_aabb;
Vector3 scale = xform.get_basis().get_scale();
- s.area_cache = s.shape->get_area() * scale.x * scale.y * scale.z;
+ s.area_cache = s.shape->get_volume() * scale.x * scale.y * scale.z;
if (s.bpid == 0) {
s.bpid = space->get_broadphase()->create(this, i, shape_aabb, _static);
diff --git a/servers/physics_3d/godot_physics_server_3d.cpp b/servers/physics_3d/godot_physics_server_3d.cpp
index 79a2e0b0ea..73654939ca 100644
--- a/servers/physics_3d/godot_physics_server_3d.cpp
+++ b/servers/physics_3d/godot_physics_server_3d.cpp
@@ -416,11 +416,11 @@ void GodotPhysicsServer3D::area_set_monitorable(RID p_area, bool p_monitorable)
area->set_monitorable(p_monitorable);
}
-void GodotPhysicsServer3D::area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) {
+void GodotPhysicsServer3D::area_set_monitor_callback(RID p_area, const Callable &p_callback) {
GodotArea3D *area = area_owner.get_or_null(p_area);
ERR_FAIL_COND(!area);
- area->set_monitor_callback(p_receiver ? p_receiver->get_instance_id() : ObjectID(), p_method);
+ area->set_monitor_callback(p_callback.is_valid() ? p_callback : Callable());
}
void GodotPhysicsServer3D::area_set_ray_pickable(RID p_area, bool p_enable) {
@@ -430,11 +430,11 @@ void GodotPhysicsServer3D::area_set_ray_pickable(RID p_area, bool p_enable) {
area->set_ray_pickable(p_enable);
}
-void GodotPhysicsServer3D::area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) {
+void GodotPhysicsServer3D::area_set_area_monitor_callback(RID p_area, const Callable &p_callback) {
GodotArea3D *area = area_owner.get_or_null(p_area);
ERR_FAIL_COND(!area);
- area->set_area_monitor_callback(p_receiver ? p_receiver->get_instance_id() : ObjectID(), p_method);
+ area->set_area_monitor_callback(p_callback.is_valid() ? p_callback : Callable());
}
/* BODY API */
diff --git a/servers/physics_3d/godot_physics_server_3d.h b/servers/physics_3d/godot_physics_server_3d.h
index 3ed9e320dc..4ddd10a4e0 100644
--- a/servers/physics_3d/godot_physics_server_3d.h
+++ b/servers/physics_3d/godot_physics_server_3d.h
@@ -157,8 +157,8 @@ public:
virtual void area_set_monitorable(RID p_area, bool p_monitorable) override;
- virtual void area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) override;
- virtual void area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) override;
+ virtual void area_set_monitor_callback(RID p_area, const Callable &p_callback) override;
+ virtual void area_set_area_monitor_callback(RID p_area, const Callable &p_callback) override;
/* BODY API */
diff --git a/servers/physics_3d/godot_shape_3d.h b/servers/physics_3d/godot_shape_3d.h
index 8822d9487b..1bbcd903f7 100644
--- a/servers/physics_3d/godot_shape_3d.h
+++ b/servers/physics_3d/godot_shape_3d.h
@@ -64,7 +64,7 @@ public:
FEATURE_CIRCLE,
};
- virtual real_t get_area() const { return aabb.get_area(); }
+ virtual real_t get_volume() const { return aabb.get_volume(); }
_FORCE_INLINE_ void set_self(const RID &p_self) { self = p_self; }
_FORCE_INLINE_ RID get_self() const { return self; }
@@ -120,7 +120,7 @@ class GodotWorldBoundaryShape3D : public GodotShape3D {
public:
Plane get_plane() const;
- virtual real_t get_area() const override { return INFINITY; }
+ virtual real_t get_volume() const override { return INFINITY; }
virtual PhysicsServer3D::ShapeType get_type() const override { return PhysicsServer3D::SHAPE_WORLD_BOUNDARY; }
virtual void project_range(const Vector3 &p_normal, const Transform3D &p_transform, real_t &r_min, real_t &r_max) const override;
virtual Vector3 get_support(const Vector3 &p_normal) const override;
@@ -147,7 +147,7 @@ public:
real_t get_length() const;
bool get_slide_on_slope() const;
- virtual real_t get_area() const override { return 0.0; }
+ virtual real_t get_volume() const override { return 0.0; }
virtual PhysicsServer3D::ShapeType get_type() const override { return PhysicsServer3D::SHAPE_SEPARATION_RAY; }
virtual void project_range(const Vector3 &p_normal, const Transform3D &p_transform, real_t &r_min, real_t &r_max) const override;
virtual Vector3 get_support(const Vector3 &p_normal) const override;
@@ -173,7 +173,7 @@ class GodotSphereShape3D : public GodotShape3D {
public:
real_t get_radius() const;
- virtual real_t get_area() const override { return 4.0 / 3.0 * Math_PI * radius * radius * radius; }
+ virtual real_t get_volume() const override { return 4.0 / 3.0 * Math_PI * radius * radius * radius; }
virtual PhysicsServer3D::ShapeType get_type() const override { return PhysicsServer3D::SHAPE_SPHERE; }
@@ -198,7 +198,7 @@ class GodotBoxShape3D : public GodotShape3D {
public:
_FORCE_INLINE_ Vector3 get_half_extents() const { return half_extents; }
- virtual real_t get_area() const override { return 8 * half_extents.x * half_extents.y * half_extents.z; }
+ virtual real_t get_volume() const override { return 8 * half_extents.x * half_extents.y * half_extents.z; }
virtual PhysicsServer3D::ShapeType get_type() const override { return PhysicsServer3D::SHAPE_BOX; }
@@ -227,7 +227,7 @@ public:
_FORCE_INLINE_ real_t get_height() const { return height; }
_FORCE_INLINE_ real_t get_radius() const { return radius; }
- virtual real_t get_area() const override { return 4.0 / 3.0 * Math_PI * radius * radius * radius + (height - radius * 2.0) * Math_PI * radius * radius; }
+ virtual real_t get_volume() const override { return 4.0 / 3.0 * Math_PI * radius * radius * radius + (height - radius * 2.0) * Math_PI * radius * radius; }
virtual PhysicsServer3D::ShapeType get_type() const override { return PhysicsServer3D::SHAPE_CAPSULE; }
@@ -256,7 +256,7 @@ public:
_FORCE_INLINE_ real_t get_height() const { return height; }
_FORCE_INLINE_ real_t get_radius() const { return radius; }
- virtual real_t get_area() const override { return 4.0 / 3.0 * Math_PI * radius * radius * radius + height * Math_PI * radius * radius; }
+ virtual real_t get_volume() const override { return height * Math_PI * radius * radius; }
virtual PhysicsServer3D::ShapeType get_type() const override { return PhysicsServer3D::SHAPE_CYLINDER; }
diff --git a/servers/physics_3d/godot_space_3d.cpp b/servers/physics_3d/godot_space_3d.cpp
index 750bf3a16d..77b37a2353 100644
--- a/servers/physics_3d/godot_space_3d.cpp
+++ b/servers/physics_3d/godot_space_3d.cpp
@@ -57,9 +57,9 @@ _FORCE_INLINE_ static bool _can_collide_with(GodotCollisionObject3D *p_object, u
return true;
}
-int GodotPhysicsDirectSpaceState3D::intersect_point(const Vector3 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
+int GodotPhysicsDirectSpaceState3D::intersect_point(const PointParameters &p_parameters, ShapeResult *r_results, int p_result_max) {
ERR_FAIL_COND_V(space->locked, false);
- int amount = space->broadphase->cull_point(p_point, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
+ int amount = space->broadphase->cull_point(p_parameters.position, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
int cc = 0;
//Transform3D ai = p_xform.affine_inverse();
@@ -69,13 +69,13 @@ int GodotPhysicsDirectSpaceState3D::intersect_point(const Vector3 &p_point, Shap
break;
}
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
//area can't be picked by ray (default)
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue;
}
@@ -85,7 +85,7 @@ int GodotPhysicsDirectSpaceState3D::intersect_point(const Vector3 &p_point, Shap
Transform3D inv_xform = col_obj->get_transform() * col_obj->get_shape_transform(shape_idx);
inv_xform.affine_invert();
- if (!col_obj->get_shape(shape_idx)->intersect_point(inv_xform.xform(p_point))) {
+ if (!col_obj->get_shape(shape_idx)->intersect_point(inv_xform.xform(p_parameters.position))) {
continue;
}
@@ -104,13 +104,13 @@ int GodotPhysicsDirectSpaceState3D::intersect_point(const Vector3 &p_point, Shap
return cc;
}
-bool GodotPhysicsDirectSpaceState3D::intersect_ray(const Vector3 &p_from, const Vector3 &p_to, RayResult &r_result, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_pick_ray) {
+bool GodotPhysicsDirectSpaceState3D::intersect_ray(const RayParameters &p_parameters, RayResult &r_result) {
ERR_FAIL_COND_V(space->locked, false);
Vector3 begin, end;
Vector3 normal;
- begin = p_from;
- end = p_to;
+ begin = p_parameters.from;
+ end = p_parameters.to;
normal = (end - begin).normalized();
int amount = space->broadphase->cull_segment(begin, end, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -124,15 +124,15 @@ bool GodotPhysicsDirectSpaceState3D::intersect_ray(const Vector3 &p_from, const
real_t min_d = 1e10;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
- if (p_pick_ray && !(space->intersection_query_results[i]->is_ray_pickable())) {
+ if (p_parameters.pick_ray && !(space->intersection_query_results[i]->is_ray_pickable())) {
continue;
}
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue;
}
@@ -183,15 +183,15 @@ bool GodotPhysicsDirectSpaceState3D::intersect_ray(const Vector3 &p_from, const
return true;
}
-int GodotPhysicsDirectSpaceState3D::intersect_shape(const RID &p_shape, const Transform3D &p_xform, real_t p_margin, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
+int GodotPhysicsDirectSpaceState3D::intersect_shape(const ShapeParameters &p_parameters, ShapeResult *r_results, int p_result_max) {
if (p_result_max <= 0) {
return 0;
}
- GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_shape);
+ GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, 0);
- AABB aabb = p_xform.xform(shape->get_aabb());
+ AABB aabb = p_parameters.transform.xform(shape->get_aabb());
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -204,20 +204,20 @@ int GodotPhysicsDirectSpaceState3D::intersect_shape(const RID &p_shape, const Tr
break;
}
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
//area can't be picked by ray (default)
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue;
}
const GodotCollisionObject3D *col_obj = space->intersection_query_results[i];
int shape_idx = space->intersection_query_subindex_results[i];
- if (!GodotCollisionSolver3D::solve_static(shape, p_xform, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), nullptr, nullptr, nullptr, p_margin, 0)) {
+ if (!GodotCollisionSolver3D::solve_static(shape, p_parameters.transform, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), nullptr, nullptr, nullptr, p_parameters.margin, 0)) {
continue;
}
@@ -238,36 +238,36 @@ int GodotPhysicsDirectSpaceState3D::intersect_shape(const RID &p_shape, const Tr
return cc;
}
-bool GodotPhysicsDirectSpaceState3D::cast_motion(const RID &p_shape, const Transform3D &p_xform, const Vector3 &p_motion, real_t p_margin, real_t &p_closest_safe, real_t &p_closest_unsafe, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas, ShapeRestInfo *r_info) {
- GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_shape);
+bool GodotPhysicsDirectSpaceState3D::cast_motion(const ShapeParameters &p_parameters, real_t &p_closest_safe, real_t &p_closest_unsafe, ShapeRestInfo *r_info) {
+ GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, false);
- AABB aabb = p_xform.xform(shape->get_aabb());
- aabb = aabb.merge(AABB(aabb.position + p_motion, aabb.size)); //motion
- aabb = aabb.grow(p_margin);
+ AABB aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.merge(AABB(aabb.position + p_parameters.motion, aabb.size)); //motion
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
real_t best_safe = 1;
real_t best_unsafe = 1;
- Transform3D xform_inv = p_xform.affine_inverse();
+ Transform3D xform_inv = p_parameters.transform.affine_inverse();
GodotMotionShape3D mshape;
mshape.shape = shape;
- mshape.motion = xform_inv.basis.xform(p_motion);
+ mshape.motion = xform_inv.basis.xform(p_parameters.motion);
bool best_first = true;
- Vector3 motion_normal = p_motion.normalized();
+ Vector3 motion_normal = p_parameters.motion.normalized();
Vector3 closest_A, closest_B;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
- if (p_exclude.has(space->intersection_query_results[i]->get_self())) {
+ if (p_parameters.exclude.has(space->intersection_query_results[i]->get_self())) {
continue; //ignore excluded
}
@@ -279,14 +279,14 @@ bool GodotPhysicsDirectSpaceState3D::cast_motion(const RID &p_shape, const Trans
Transform3D col_obj_xform = col_obj->get_transform() * col_obj->get_shape_transform(shape_idx);
//test initial overlap, does it collide if going all the way?
- if (GodotCollisionSolver3D::solve_distance(&mshape, p_xform, col_obj->get_shape(shape_idx), col_obj_xform, point_A, point_B, aabb, &sep_axis)) {
+ if (GodotCollisionSolver3D::solve_distance(&mshape, p_parameters.transform, col_obj->get_shape(shape_idx), col_obj_xform, point_A, point_B, aabb, &sep_axis)) {
continue;
}
//test initial overlap, ignore objects it's inside of.
sep_axis = motion_normal;
- if (!GodotCollisionSolver3D::solve_distance(shape, p_xform, col_obj->get_shape(shape_idx), col_obj_xform, point_A, point_B, aabb, &sep_axis)) {
+ if (!GodotCollisionSolver3D::solve_distance(shape, p_parameters.transform, col_obj->get_shape(shape_idx), col_obj_xform, point_A, point_B, aabb, &sep_axis)) {
continue;
}
@@ -297,11 +297,11 @@ bool GodotPhysicsDirectSpaceState3D::cast_motion(const RID &p_shape, const Trans
for (int j = 0; j < 8; j++) { //steps should be customizable..
real_t fraction = low + (hi - low) * fraction_coeff;
- mshape.motion = xform_inv.basis.xform(p_motion * fraction);
+ mshape.motion = xform_inv.basis.xform(p_parameters.motion * fraction);
Vector3 lA, lB;
Vector3 sep = motion_normal; //important optimization for this to work fast enough
- bool collided = !GodotCollisionSolver3D::solve_distance(&mshape, p_xform, col_obj->get_shape(shape_idx), col_obj_xform, lA, lB, aabb, &sep);
+ bool collided = !GodotCollisionSolver3D::solve_distance(&mshape, p_parameters.transform, col_obj->get_shape(shape_idx), col_obj_xform, lA, lB, aabb, &sep);
if (collided) {
hi = fraction;
@@ -357,16 +357,16 @@ bool GodotPhysicsDirectSpaceState3D::cast_motion(const RID &p_shape, const Trans
return true;
}
-bool GodotPhysicsDirectSpaceState3D::collide_shape(RID p_shape, const Transform3D &p_shape_xform, real_t p_margin, Vector3 *r_results, int p_result_max, int &r_result_count, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
+bool GodotPhysicsDirectSpaceState3D::collide_shape(const ShapeParameters &p_parameters, Vector3 *r_results, int p_result_max, int &r_result_count) {
if (p_result_max <= 0) {
return false;
}
- GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_shape);
+ GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, 0);
- AABB aabb = p_shape_xform.xform(shape->get_aabb());
- aabb = aabb.grow(p_margin);
+ AABB aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -382,19 +382,19 @@ bool GodotPhysicsDirectSpaceState3D::collide_shape(RID p_shape, const Transform3
GodotPhysicsServer3D::CollCbkData *cbkptr = &cbk;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
const GodotCollisionObject3D *col_obj = space->intersection_query_results[i];
- if (p_exclude.has(col_obj->get_self())) {
+ if (p_parameters.exclude.has(col_obj->get_self())) {
continue;
}
int shape_idx = space->intersection_query_subindex_results[i];
- if (GodotCollisionSolver3D::solve_static(shape, p_shape_xform, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), cbkres, cbkptr, nullptr, p_margin)) {
+ if (GodotCollisionSolver3D::solve_static(shape, p_parameters.transform, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), cbkres, cbkptr, nullptr, p_parameters.margin)) {
collided = true;
}
}
@@ -487,14 +487,14 @@ static void _rest_cbk_result(const Vector3 &p_point_A, int p_index_A, const Vect
rd->best_result.local_shape = rd->local_shape;
}
-bool GodotPhysicsDirectSpaceState3D::rest_info(RID p_shape, const Transform3D &p_shape_xform, real_t p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
- GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_shape);
+bool GodotPhysicsDirectSpaceState3D::rest_info(const ShapeParameters &p_parameters, ShapeRestInfo *r_info) {
+ GodotShape3D *shape = GodotPhysicsServer3D::godot_singleton->shape_owner.get_or_null(p_parameters.shape_rid);
ERR_FAIL_COND_V(!shape, 0);
- real_t min_contact_depth = p_margin * TEST_MOTION_MIN_CONTACT_DEPTH_FACTOR;
+ real_t min_contact_depth = p_parameters.margin * TEST_MOTION_MIN_CONTACT_DEPTH_FACTOR;
- AABB aabb = p_shape_xform.xform(shape->get_aabb());
- aabb = aabb.grow(p_margin);
+ AABB aabb = p_parameters.transform.xform(shape->get_aabb());
+ aabb = aabb.grow(p_parameters.margin);
int amount = space->broadphase->cull_aabb(aabb, space->intersection_query_results, GodotSpace3D::INTERSECTION_QUERY_MAX, space->intersection_query_subindex_results);
@@ -502,13 +502,13 @@ bool GodotPhysicsDirectSpaceState3D::rest_info(RID p_shape, const Transform3D &p
rcd.min_allowed_depth = min_contact_depth;
for (int i = 0; i < amount; i++) {
- if (!_can_collide_with(space->intersection_query_results[i], p_collision_mask, p_collide_with_bodies, p_collide_with_areas)) {
+ if (!_can_collide_with(space->intersection_query_results[i], p_parameters.collision_mask, p_parameters.collide_with_bodies, p_parameters.collide_with_areas)) {
continue;
}
const GodotCollisionObject3D *col_obj = space->intersection_query_results[i];
- if (p_exclude.has(col_obj->get_self())) {
+ if (p_parameters.exclude.has(col_obj->get_self())) {
continue;
}
@@ -516,7 +516,7 @@ bool GodotPhysicsDirectSpaceState3D::rest_info(RID p_shape, const Transform3D &p
rcd.object = col_obj;
rcd.shape = shape_idx;
- bool sc = GodotCollisionSolver3D::solve_static(shape, p_shape_xform, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), _rest_cbk_result, &rcd, nullptr, p_margin);
+ bool sc = GodotCollisionSolver3D::solve_static(shape, p_parameters.transform, col_obj->get_shape(shape_idx), col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), _rest_cbk_result, &rcd, nullptr, p_parameters.margin);
if (!sc) {
continue;
}
diff --git a/servers/physics_3d/godot_space_3d.h b/servers/physics_3d/godot_space_3d.h
index 3b36dd346c..aa5e965751 100644
--- a/servers/physics_3d/godot_space_3d.h
+++ b/servers/physics_3d/godot_space_3d.h
@@ -49,12 +49,12 @@ class GodotPhysicsDirectSpaceState3D : public PhysicsDirectSpaceState3D {
public:
GodotSpace3D *space;
- virtual int intersect_point(const Vector3 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual bool intersect_ray(const Vector3 &p_from, const Vector3 &p_to, RayResult &r_result, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, bool p_pick_ray = false) override;
- virtual int intersect_shape(const RID &p_shape, const Transform3D &p_xform, real_t p_margin, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual bool cast_motion(const RID &p_shape, const Transform3D &p_xform, const Vector3 &p_motion, real_t p_margin, real_t &p_closest_safe, real_t &p_closest_unsafe, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, ShapeRestInfo *r_info = nullptr) override;
- virtual bool collide_shape(RID p_shape, const Transform3D &p_shape_xform, real_t p_margin, Vector3 *r_results, int p_result_max, int &r_result_count, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
- virtual bool rest_info(RID p_shape, const Transform3D &p_shape_xform, real_t p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) override;
+ virtual int intersect_point(const PointParameters &p_parameters, ShapeResult *r_results, int p_result_max) override;
+ virtual bool intersect_ray(const RayParameters &p_parameters, RayResult &r_result) override;
+ virtual int intersect_shape(const ShapeParameters &p_parameters, ShapeResult *r_results, int p_result_max) override;
+ virtual bool cast_motion(const ShapeParameters &p_parameters, real_t &p_closest_safe, real_t &p_closest_unsafe, ShapeRestInfo *r_info = nullptr) override;
+ virtual bool collide_shape(const ShapeParameters &p_parameters, Vector3 *r_results, int p_result_max, int &r_result_count) override;
+ virtual bool rest_info(const ShapeParameters &p_parameters, ShapeRestInfo *r_info) override;
virtual Vector3 get_closest_point_to_object_volume(RID p_object, const Vector3 p_point) const override;
GodotPhysicsDirectSpaceState3D();
diff --git a/servers/physics_3d/godot_step_3d.cpp b/servers/physics_3d/godot_step_3d.cpp
index a8654c617b..331d65df49 100644
--- a/servers/physics_3d/godot_step_3d.cpp
+++ b/servers/physics_3d/godot_step_3d.cpp
@@ -359,11 +359,7 @@ void GodotStep3D::step(GodotSpace3D *p_space, real_t p_delta, int p_iterations)
// Warning: _solve_island modifies the constraint islands for optimization purpose,
// their content is not reliable after these calls and shouldn't be used anymore.
- if (island_count > 1) {
- work_pool.do_work(island_count, this, &GodotStep3D::_solve_island, nullptr);
- } else if (island_count > 0) {
- _solve_island(0);
- }
+ work_pool.do_work(island_count, this, &GodotStep3D::_solve_island, nullptr);
{ //profile
profile_endtime = OS::get_singleton()->get_ticks_usec();
diff --git a/servers/physics_server_2d.cpp b/servers/physics_server_2d.cpp
index a6cb7dbdd9..466558c9db 100644
--- a/servers/physics_server_2d.cpp
+++ b/servers/physics_server_2d.cpp
@@ -134,95 +134,132 @@ PhysicsDirectBodyState2D::PhysicsDirectBodyState2D() {}
///////////////////////////////////////////////////////
-void PhysicsShapeQueryParameters2D::set_shape(const RES &p_shape_ref) {
- ERR_FAIL_COND(p_shape_ref.is_null());
- shape_ref = p_shape_ref;
- shape = p_shape_ref->get_rid();
-}
-
-RES PhysicsShapeQueryParameters2D::get_shape() const {
- return shape_ref;
+void PhysicsRayQueryParameters2D::set_exclude(const Vector<RID> &p_exclude) {
+ parameters.exclude.clear();
+ for (int i = 0; i < p_exclude.size(); i++) {
+ parameters.exclude.insert(p_exclude[i]);
+ }
}
-void PhysicsShapeQueryParameters2D::set_shape_rid(const RID &p_shape) {
- if (shape != p_shape) {
- shape_ref = RES();
- shape = p_shape;
+Vector<RID> PhysicsRayQueryParameters2D::get_exclude() const {
+ Vector<RID> ret;
+ ret.resize(parameters.exclude.size());
+ int idx = 0;
+ for (Set<RID>::Element *E = parameters.exclude.front(); E; E = E->next()) {
+ ret.write[idx++] = E->get();
}
+ return ret;
}
-RID PhysicsShapeQueryParameters2D::get_shape_rid() const {
- return shape;
-}
+void PhysicsRayQueryParameters2D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_from", "from"), &PhysicsRayQueryParameters2D::set_from);
+ ClassDB::bind_method(D_METHOD("get_from"), &PhysicsRayQueryParameters2D::get_from);
-void PhysicsShapeQueryParameters2D::set_transform(const Transform2D &p_transform) {
- transform = p_transform;
-}
+ ClassDB::bind_method(D_METHOD("set_to", "to"), &PhysicsRayQueryParameters2D::set_to);
+ ClassDB::bind_method(D_METHOD("get_to"), &PhysicsRayQueryParameters2D::get_to);
-Transform2D PhysicsShapeQueryParameters2D::get_transform() const {
- return transform;
-}
+ ClassDB::bind_method(D_METHOD("set_collision_mask", "collision_mask"), &PhysicsRayQueryParameters2D::set_collision_mask);
+ ClassDB::bind_method(D_METHOD("get_collision_mask"), &PhysicsRayQueryParameters2D::get_collision_mask);
-void PhysicsShapeQueryParameters2D::set_motion(const Vector2 &p_motion) {
- motion = p_motion;
-}
+ ClassDB::bind_method(D_METHOD("set_exclude", "exclude"), &PhysicsRayQueryParameters2D::set_exclude);
+ ClassDB::bind_method(D_METHOD("get_exclude"), &PhysicsRayQueryParameters2D::get_exclude);
-Vector2 PhysicsShapeQueryParameters2D::get_motion() const {
- return motion;
-}
+ ClassDB::bind_method(D_METHOD("set_collide_with_bodies", "enable"), &PhysicsRayQueryParameters2D::set_collide_with_bodies);
+ ClassDB::bind_method(D_METHOD("is_collide_with_bodies_enabled"), &PhysicsRayQueryParameters2D::is_collide_with_bodies_enabled);
-void PhysicsShapeQueryParameters2D::set_margin(real_t p_margin) {
- margin = p_margin;
-}
+ ClassDB::bind_method(D_METHOD("set_collide_with_areas", "enable"), &PhysicsRayQueryParameters2D::set_collide_with_areas);
+ ClassDB::bind_method(D_METHOD("is_collide_with_areas_enabled"), &PhysicsRayQueryParameters2D::is_collide_with_areas_enabled);
-real_t PhysicsShapeQueryParameters2D::get_margin() const {
- return margin;
-}
-
-void PhysicsShapeQueryParameters2D::set_collision_mask(uint32_t p_collision_mask) {
- collision_mask = p_collision_mask;
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "from"), "set_from", "get_from");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "to"), "set_to", "get_to");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "collision_mask", PROPERTY_HINT_LAYERS_2D_PHYSICS), "set_collision_mask", "get_collision_mask");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude", "get_exclude");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_bodies"), "set_collide_with_bodies", "is_collide_with_bodies_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_areas"), "set_collide_with_areas", "is_collide_with_areas_enabled");
}
-uint32_t PhysicsShapeQueryParameters2D::get_collision_mask() const {
- return collision_mask;
-}
+///////////////////////////////////////////////////////
-void PhysicsShapeQueryParameters2D::set_exclude(const Vector<RID> &p_exclude) {
- exclude.clear();
+void PhysicsPointQueryParameters2D::set_exclude(const Vector<RID> &p_exclude) {
+ parameters.exclude.clear();
for (int i = 0; i < p_exclude.size(); i++) {
- exclude.insert(p_exclude[i]);
+ parameters.exclude.insert(p_exclude[i]);
}
}
-Vector<RID> PhysicsShapeQueryParameters2D::get_exclude() const {
+Vector<RID> PhysicsPointQueryParameters2D::get_exclude() const {
Vector<RID> ret;
- ret.resize(exclude.size());
+ ret.resize(parameters.exclude.size());
int idx = 0;
- for (Set<RID>::Element *E = exclude.front(); E; E = E->next()) {
+ for (Set<RID>::Element *E = parameters.exclude.front(); E; E = E->next()) {
ret.write[idx++] = E->get();
}
return ret;
}
-void PhysicsShapeQueryParameters2D::set_collide_with_bodies(bool p_enable) {
- collide_with_bodies = p_enable;
+void PhysicsPointQueryParameters2D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_position", "position"), &PhysicsPointQueryParameters2D::set_position);
+ ClassDB::bind_method(D_METHOD("get_position"), &PhysicsPointQueryParameters2D::get_position);
+
+ ClassDB::bind_method(D_METHOD("set_canvas_instance_id", "canvas_instance_id"), &PhysicsPointQueryParameters2D::set_canvas_instance_id);
+ ClassDB::bind_method(D_METHOD("get_canvas_instance_id"), &PhysicsPointQueryParameters2D::get_canvas_instance_id);
+
+ ClassDB::bind_method(D_METHOD("set_collision_mask", "collision_mask"), &PhysicsPointQueryParameters2D::set_collision_mask);
+ ClassDB::bind_method(D_METHOD("get_collision_mask"), &PhysicsPointQueryParameters2D::get_collision_mask);
+
+ ClassDB::bind_method(D_METHOD("set_exclude", "exclude"), &PhysicsPointQueryParameters2D::set_exclude);
+ ClassDB::bind_method(D_METHOD("get_exclude"), &PhysicsPointQueryParameters2D::get_exclude);
+
+ ClassDB::bind_method(D_METHOD("set_collide_with_bodies", "enable"), &PhysicsPointQueryParameters2D::set_collide_with_bodies);
+ ClassDB::bind_method(D_METHOD("is_collide_with_bodies_enabled"), &PhysicsPointQueryParameters2D::is_collide_with_bodies_enabled);
+
+ ClassDB::bind_method(D_METHOD("set_collide_with_areas", "enable"), &PhysicsPointQueryParameters2D::set_collide_with_areas);
+ ClassDB::bind_method(D_METHOD("is_collide_with_areas_enabled"), &PhysicsPointQueryParameters2D::is_collide_with_areas_enabled);
+
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "position"), "set_position", "get_position");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "canvas_instance_id", PROPERTY_HINT_OBJECT_ID), "set_canvas_instance_id", "get_canvas_instance_id");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "collision_mask", PROPERTY_HINT_LAYERS_2D_PHYSICS), "set_collision_mask", "get_collision_mask");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude", "get_exclude");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_bodies"), "set_collide_with_bodies", "is_collide_with_bodies_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_areas"), "set_collide_with_areas", "is_collide_with_areas_enabled");
+}
+
+///////////////////////////////////////////////////////
+
+void PhysicsShapeQueryParameters2D::set_shape(const RES &p_shape_ref) {
+ ERR_FAIL_COND(p_shape_ref.is_null());
+ shape_ref = p_shape_ref;
+ parameters.shape_rid = p_shape_ref->get_rid();
}
-bool PhysicsShapeQueryParameters2D::is_collide_with_bodies_enabled() const {
- return collide_with_bodies;
+void PhysicsShapeQueryParameters2D::set_shape_rid(const RID &p_shape) {
+ if (parameters.shape_rid != p_shape) {
+ shape_ref = RES();
+ parameters.shape_rid = p_shape;
+ }
}
-void PhysicsShapeQueryParameters2D::set_collide_with_areas(bool p_enable) {
- collide_with_areas = p_enable;
+void PhysicsShapeQueryParameters2D::set_exclude(const Vector<RID> &p_exclude) {
+ parameters.exclude.clear();
+ for (int i = 0; i < p_exclude.size(); i++) {
+ parameters.exclude.insert(p_exclude[i]);
+ }
}
-bool PhysicsShapeQueryParameters2D::is_collide_with_areas_enabled() const {
- return collide_with_areas;
+Vector<RID> PhysicsShapeQueryParameters2D::get_exclude() const {
+ Vector<RID> ret;
+ ret.resize(parameters.exclude.size());
+ int idx = 0;
+ for (Set<RID>::Element *E = parameters.exclude.front(); E; E = E->next()) {
+ ret.write[idx++] = E->get();
+ }
+ return ret;
}
void PhysicsShapeQueryParameters2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_shape", "shape"), &PhysicsShapeQueryParameters2D::set_shape);
ClassDB::bind_method(D_METHOD("get_shape"), &PhysicsShapeQueryParameters2D::get_shape);
+
ClassDB::bind_method(D_METHOD("set_shape_rid", "shape"), &PhysicsShapeQueryParameters2D::set_shape_rid);
ClassDB::bind_method(D_METHOD("get_shape_rid"), &PhysicsShapeQueryParameters2D::get_shape_rid);
@@ -248,7 +285,7 @@ void PhysicsShapeQueryParameters2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("is_collide_with_areas_enabled"), &PhysicsShapeQueryParameters2D::is_collide_with_areas_enabled);
ADD_PROPERTY(PropertyInfo(Variant::INT, "collision_mask", PROPERTY_HINT_LAYERS_2D_PHYSICS), "set_collision_mask", "get_collision_mask");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_NONE, itos(Variant::RID) + ":"), "set_exclude", "get_exclude");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude", "get_exclude");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "margin", PROPERTY_HINT_RANGE, "0,100,0.01"), "set_margin", "get_margin");
ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "motion"), "set_motion", "get_motion");
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "shape", PROPERTY_HINT_RESOURCE_TYPE, "Shape2D"), "set_shape", "get_shape");
@@ -258,36 +295,58 @@ void PhysicsShapeQueryParameters2D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_areas"), "set_collide_with_areas", "is_collide_with_areas_enabled");
}
-Dictionary PhysicsDirectSpaceState2D::_intersect_ray(const Vector2 &p_from, const Vector2 &p_to, const Vector<RID> &p_exclude, uint32_t p_layers, bool p_collide_with_bodies, bool p_collide_with_areas) {
- RayResult inters;
- Set<RID> exclude;
- for (int i = 0; i < p_exclude.size(); i++) {
- exclude.insert(p_exclude[i]);
- }
+///////////////////////////////////////////////////////
+
+Dictionary PhysicsDirectSpaceState2D::_intersect_ray(const Ref<PhysicsRayQueryParameters2D> &p_ray_query) {
+ ERR_FAIL_COND_V(!p_ray_query.is_valid(), Dictionary());
- bool res = intersect_ray(p_from, p_to, inters, exclude, p_layers, p_collide_with_bodies, p_collide_with_areas);
+ RayResult result;
+ bool res = intersect_ray(p_ray_query->get_parameters(), result);
if (!res) {
return Dictionary();
}
Dictionary d;
- d["position"] = inters.position;
- d["normal"] = inters.normal;
- d["collider_id"] = inters.collider_id;
- d["collider"] = inters.collider;
- d["shape"] = inters.shape;
- d["rid"] = inters.rid;
+ d["position"] = result.position;
+ d["normal"] = result.normal;
+ d["collider_id"] = result.collider_id;
+ d["collider"] = result.collider;
+ d["shape"] = result.shape;
+ d["rid"] = result.rid;
return d;
}
+Array PhysicsDirectSpaceState2D::_intersect_point(const Ref<PhysicsPointQueryParameters2D> &p_point_query, int p_max_results) {
+ Vector<ShapeResult> ret;
+ ret.resize(p_max_results);
+
+ int rc = intersect_point(p_point_query->get_parameters(), ret.ptrw(), ret.size());
+
+ if (rc == 0) {
+ return Array();
+ }
+
+ Array r;
+ r.resize(rc);
+ for (int i = 0; i < rc; i++) {
+ Dictionary d;
+ d["rid"] = ret[i].rid;
+ d["collider_id"] = ret[i].collider_id;
+ d["collider"] = ret[i].collider;
+ d["shape"] = ret[i].shape;
+ r[i] = d;
+ }
+ return r;
+}
+
Array PhysicsDirectSpaceState2D::_intersect_shape(const Ref<PhysicsShapeQueryParameters2D> &p_shape_query, int p_max_results) {
ERR_FAIL_COND_V(!p_shape_query.is_valid(), Array());
Vector<ShapeResult> sr;
sr.resize(p_max_results);
- int rc = intersect_shape(p_shape_query->shape, p_shape_query->transform, p_shape_query->motion, p_shape_query->margin, sr.ptrw(), sr.size(), p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ int rc = intersect_shape(p_shape_query->get_parameters(), sr.ptrw(), sr.size());
Array ret;
ret.resize(rc);
for (int i = 0; i < rc; i++) {
@@ -306,7 +365,7 @@ Array PhysicsDirectSpaceState2D::_cast_motion(const Ref<PhysicsShapeQueryParamet
ERR_FAIL_COND_V(!p_shape_query.is_valid(), Array());
real_t closest_safe, closest_unsafe;
- bool res = cast_motion(p_shape_query->shape, p_shape_query->transform, p_shape_query->motion, p_shape_query->margin, closest_safe, closest_unsafe, p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ bool res = cast_motion(p_shape_query->get_parameters(), closest_safe, closest_unsafe);
if (!res) {
return Array();
}
@@ -317,54 +376,13 @@ Array PhysicsDirectSpaceState2D::_cast_motion(const Ref<PhysicsShapeQueryParamet
return ret;
}
-Array PhysicsDirectSpaceState2D::_intersect_point_impl(const Vector2 &p_point, int p_max_results, const Vector<RID> &p_exclude, uint32_t p_layers, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_filter_by_canvas, ObjectID p_canvas_instance_id) {
- Set<RID> exclude;
- for (int i = 0; i < p_exclude.size(); i++) {
- exclude.insert(p_exclude[i]);
- }
-
- Vector<ShapeResult> ret;
- ret.resize(p_max_results);
-
- int rc;
- if (p_filter_by_canvas) {
- rc = intersect_point(p_point, ret.ptrw(), ret.size(), exclude, p_layers, p_collide_with_bodies, p_collide_with_areas);
- } else {
- rc = intersect_point_on_canvas(p_point, p_canvas_instance_id, ret.ptrw(), ret.size(), exclude, p_layers, p_collide_with_bodies, p_collide_with_areas);
- }
-
- if (rc == 0) {
- return Array();
- }
-
- Array r;
- r.resize(rc);
- for (int i = 0; i < rc; i++) {
- Dictionary d;
- d["rid"] = ret[i].rid;
- d["collider_id"] = ret[i].collider_id;
- d["collider"] = ret[i].collider;
- d["shape"] = ret[i].shape;
- r[i] = d;
- }
- return r;
-}
-
-Array PhysicsDirectSpaceState2D::_intersect_point(const Vector2 &p_point, int p_max_results, const Vector<RID> &p_exclude, uint32_t p_layers, bool p_collide_with_bodies, bool p_collide_with_areas) {
- return _intersect_point_impl(p_point, p_max_results, p_exclude, p_layers, p_collide_with_bodies, p_collide_with_areas);
-}
-
-Array PhysicsDirectSpaceState2D::_intersect_point_on_canvas(const Vector2 &p_point, ObjectID p_canvas_intance_id, int p_max_results, const Vector<RID> &p_exclude, uint32_t p_layers, bool p_collide_with_bodies, bool p_collide_with_areas) {
- return _intersect_point_impl(p_point, p_max_results, p_exclude, p_layers, p_collide_with_bodies, p_collide_with_areas, true, p_canvas_intance_id);
-}
-
Array PhysicsDirectSpaceState2D::_collide_shape(const Ref<PhysicsShapeQueryParameters2D> &p_shape_query, int p_max_results) {
ERR_FAIL_COND_V(!p_shape_query.is_valid(), Array());
Vector<Vector2> ret;
ret.resize(p_max_results * 2);
int rc = 0;
- bool res = collide_shape(p_shape_query->shape, p_shape_query->transform, p_shape_query->motion, p_shape_query->margin, ret.ptrw(), p_max_results, rc, p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ bool res = collide_shape(p_shape_query->get_parameters(), ret.ptrw(), p_max_results, rc);
if (!res) {
return Array();
}
@@ -381,7 +399,7 @@ Dictionary PhysicsDirectSpaceState2D::_get_rest_info(const Ref<PhysicsShapeQuery
ShapeRestInfo sri;
- bool res = rest_info(p_shape_query->shape, p_shape_query->transform, p_shape_query->motion, p_shape_query->margin, &sri, p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ bool res = rest_info(p_shape_query->get_parameters(), &sri);
Dictionary r;
if (!res) {
return r;
@@ -401,13 +419,12 @@ PhysicsDirectSpaceState2D::PhysicsDirectSpaceState2D() {
}
void PhysicsDirectSpaceState2D::_bind_methods() {
- ClassDB::bind_method(D_METHOD("intersect_point", "point", "max_results", "exclude", "collision_mask", "collide_with_bodies", "collide_with_areas"), &PhysicsDirectSpaceState2D::_intersect_point, DEFVAL(32), DEFVAL(Array()), DEFVAL(UINT32_MAX), DEFVAL(true), DEFVAL(false));
- ClassDB::bind_method(D_METHOD("intersect_point_on_canvas", "point", "canvas_instance_id", "max_results", "exclude", "collision_mask", "collide_with_bodies", "collide_with_areas"), &PhysicsDirectSpaceState2D::_intersect_point_on_canvas, DEFVAL(32), DEFVAL(Array()), DEFVAL(UINT32_MAX), DEFVAL(true), DEFVAL(false));
- ClassDB::bind_method(D_METHOD("intersect_ray", "from", "to", "exclude", "collision_mask", "collide_with_bodies", "collide_with_areas"), &PhysicsDirectSpaceState2D::_intersect_ray, DEFVAL(Array()), DEFVAL(UINT32_MAX), DEFVAL(true), DEFVAL(false));
- ClassDB::bind_method(D_METHOD("intersect_shape", "shape", "max_results"), &PhysicsDirectSpaceState2D::_intersect_shape, DEFVAL(32));
- ClassDB::bind_method(D_METHOD("cast_motion", "shape"), &PhysicsDirectSpaceState2D::_cast_motion);
- ClassDB::bind_method(D_METHOD("collide_shape", "shape", "max_results"), &PhysicsDirectSpaceState2D::_collide_shape, DEFVAL(32));
- ClassDB::bind_method(D_METHOD("get_rest_info", "shape"), &PhysicsDirectSpaceState2D::_get_rest_info);
+ ClassDB::bind_method(D_METHOD("intersect_point", "parameters", "max_results"), &PhysicsDirectSpaceState2D::_intersect_point, DEFVAL(32));
+ ClassDB::bind_method(D_METHOD("intersect_ray", "parameters"), &PhysicsDirectSpaceState2D::_intersect_ray);
+ ClassDB::bind_method(D_METHOD("intersect_shape", "parameters", "max_results"), &PhysicsDirectSpaceState2D::_intersect_shape, DEFVAL(32));
+ ClassDB::bind_method(D_METHOD("cast_motion", "parameters"), &PhysicsDirectSpaceState2D::_cast_motion);
+ ClassDB::bind_method(D_METHOD("collide_shape", "parameters", "max_results"), &PhysicsDirectSpaceState2D::_collide_shape, DEFVAL(32));
+ ClassDB::bind_method(D_METHOD("get_rest_info", "parameters"), &PhysicsDirectSpaceState2D::_get_rest_info);
}
///////////////////////////////
@@ -473,7 +490,7 @@ void PhysicsTestMotionParameters2D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "motion"), "set_motion", "get_motion");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "margin"), "set_margin", "get_margin");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_separation_ray"), "set_collide_separation_ray_enabled", "is_collide_separation_ray_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude_bodies"), "set_exclude_bodies", "get_exclude_bodies");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude_bodies", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude_bodies", "get_exclude_bodies");
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude_objects"), "set_exclude_objects", "get_exclude_objects");
}
@@ -616,8 +633,8 @@ void PhysicsServer2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("area_attach_canvas_instance_id", "area", "id"), &PhysicsServer2D::area_attach_canvas_instance_id);
ClassDB::bind_method(D_METHOD("area_get_canvas_instance_id", "area"), &PhysicsServer2D::area_get_canvas_instance_id);
- ClassDB::bind_method(D_METHOD("area_set_monitor_callback", "area", "receiver", "method"), &PhysicsServer2D::area_set_monitor_callback);
- ClassDB::bind_method(D_METHOD("area_set_area_monitor_callback", "area", "receiver", "method"), &PhysicsServer2D::area_set_area_monitor_callback);
+ ClassDB::bind_method(D_METHOD("area_set_monitor_callback", "area", "callback"), &PhysicsServer2D::area_set_monitor_callback);
+ ClassDB::bind_method(D_METHOD("area_set_area_monitor_callback", "area", "callback"), &PhysicsServer2D::area_set_area_monitor_callback);
ClassDB::bind_method(D_METHOD("area_set_monitorable", "area", "monitorable"), &PhysicsServer2D::area_set_monitorable);
ClassDB::bind_method(D_METHOD("body_create"), &PhysicsServer2D::body_create);
@@ -758,10 +775,15 @@ void PhysicsServer2D::_bind_methods() {
BIND_ENUM_CONSTANT(BODY_PARAM_INERTIA);
BIND_ENUM_CONSTANT(BODY_PARAM_CENTER_OF_MASS);
BIND_ENUM_CONSTANT(BODY_PARAM_GRAVITY_SCALE);
+ BIND_ENUM_CONSTANT(BODY_PARAM_LINEAR_DAMP_MODE);
+ BIND_ENUM_CONSTANT(BODY_PARAM_ANGULAR_DAMP_MODE);
BIND_ENUM_CONSTANT(BODY_PARAM_LINEAR_DAMP);
BIND_ENUM_CONSTANT(BODY_PARAM_ANGULAR_DAMP);
BIND_ENUM_CONSTANT(BODY_PARAM_MAX);
+ BIND_ENUM_CONSTANT(BODY_DAMP_MODE_COMBINE);
+ BIND_ENUM_CONSTANT(BODY_DAMP_MODE_REPLACE);
+
BIND_ENUM_CONSTANT(BODY_STATE_TRANSFORM);
BIND_ENUM_CONSTANT(BODY_STATE_LINEAR_VELOCITY);
BIND_ENUM_CONSTANT(BODY_STATE_ANGULAR_VELOCITY);
diff --git a/servers/physics_server_2d.h b/servers/physics_server_2d.h
index f83c57407d..55ac7e1fdc 100644
--- a/servers/physics_server_2d.h
+++ b/servers/physics_server_2d.h
@@ -94,60 +94,15 @@ public:
PhysicsDirectBodyState2D();
};
-//used for script
-class PhysicsShapeQueryParameters2D : public RefCounted {
- GDCLASS(PhysicsShapeQueryParameters2D, RefCounted);
- friend class PhysicsDirectSpaceState2D;
-
- RES shape_ref;
- RID shape;
- Transform2D transform;
- Vector2 motion;
- real_t margin = 0.0;
- Set<RID> exclude;
- uint32_t collision_mask = UINT32_MAX;
-
- bool collide_with_bodies = true;
- bool collide_with_areas = false;
-
-protected:
- static void _bind_methods();
-
-public:
- void set_shape(const RES &p_shape_ref);
- RES get_shape() const;
- void set_shape_rid(const RID &p_shape);
- RID get_shape_rid() const;
-
- void set_transform(const Transform2D &p_transform);
- Transform2D get_transform() const;
-
- void set_motion(const Vector2 &p_motion);
- Vector2 get_motion() const;
-
- void set_margin(real_t p_margin);
- real_t get_margin() const;
-
- void set_collision_mask(uint32_t p_mask);
- uint32_t get_collision_mask() const;
-
- void set_collide_with_bodies(bool p_enable);
- bool is_collide_with_bodies_enabled() const;
-
- void set_collide_with_areas(bool p_enable);
- bool is_collide_with_areas_enabled() const;
-
- void set_exclude(const Vector<RID> &p_exclude);
- Vector<RID> get_exclude() const;
-};
+class PhysicsRayQueryParameters2D;
+class PhysicsPointQueryParameters2D;
+class PhysicsShapeQueryParameters2D;
class PhysicsDirectSpaceState2D : public Object {
GDCLASS(PhysicsDirectSpaceState2D, Object);
- Dictionary _intersect_ray(const Vector2 &p_from, const Vector2 &p_to, const Vector<RID> &p_exclude = Vector<RID>(), uint32_t p_layers = 0, bool p_collide_with_bodies = true, bool p_collide_with_areas = false);
- Array _intersect_point(const Vector2 &p_point, int p_max_results = 32, const Vector<RID> &p_exclude = Vector<RID>(), uint32_t p_layers = 0, bool p_collide_with_bodies = true, bool p_collide_with_areas = false);
- Array _intersect_point_on_canvas(const Vector2 &p_point, ObjectID p_canvas_intance_id, int p_max_results = 32, const Vector<RID> &p_exclude = Vector<RID>(), uint32_t p_layers = 0, bool p_collide_with_bodies = true, bool p_collide_with_areas = false);
- Array _intersect_point_impl(const Vector2 &p_point, int p_max_results, const Vector<RID> &p_exclud, uint32_t p_layers, bool p_collide_with_bodies, bool p_collide_with_areas, bool p_filter_by_canvas = false, ObjectID p_canvas_instance_id = ObjectID());
+ Dictionary _intersect_ray(const Ref<PhysicsRayQueryParameters2D> &p_ray_query);
+ Array _intersect_point(const Ref<PhysicsPointQueryParameters2D> &p_point_query, int p_max_results = 32);
Array _intersect_shape(const Ref<PhysicsShapeQueryParameters2D> &p_shape_query, int p_max_results = 32);
Array _cast_motion(const Ref<PhysicsShapeQueryParameters2D> &p_shape_query);
Array _collide_shape(const Ref<PhysicsShapeQueryParameters2D> &p_shape_query, int p_max_results = 32);
@@ -157,6 +112,16 @@ protected:
static void _bind_methods();
public:
+ struct RayParameters {
+ Vector2 from;
+ Vector2 to;
+ Set<RID> exclude;
+ uint32_t collision_mask = UINT32_MAX;
+
+ bool collide_with_bodies = true;
+ bool collide_with_areas = false;
+ };
+
struct RayResult {
Vector2 position;
Vector2 normal;
@@ -166,7 +131,7 @@ public:
int shape = 0;
};
- virtual bool intersect_ray(const Vector2 &p_from, const Vector2 &p_to, RayResult &r_result, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ virtual bool intersect_ray(const RayParameters &p_parameters, RayResult &r_result) = 0;
struct ShapeResult {
RID rid;
@@ -175,14 +140,31 @@ public:
int shape = 0;
};
- virtual int intersect_point(const Vector2 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, bool p_pick_point = false) = 0;
- virtual int intersect_point_on_canvas(const Vector2 &p_point, ObjectID p_canvas_instance_id, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, bool p_pick_point = false) = 0;
+ struct PointParameters {
+ Vector2 position;
+ ObjectID canvas_instance_id;
+ Set<RID> exclude;
+ uint32_t collision_mask = UINT32_MAX;
+
+ bool collide_with_bodies = true;
+ bool collide_with_areas = false;
+
+ bool pick_point = false;
+ };
- virtual int intersect_shape(const RID &p_shape, const Transform2D &p_xform, const Vector2 &p_motion, real_t p_margin, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ virtual int intersect_point(const PointParameters &p_parameters, ShapeResult *r_results, int p_result_max) = 0;
- virtual bool cast_motion(const RID &p_shape, const Transform2D &p_xform, const Vector2 &p_motion, real_t p_margin, real_t &p_closest_safe, real_t &p_closest_unsafe, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ struct ShapeParameters {
+ RID shape_rid;
+ Transform2D transform;
+ Vector2 motion;
+ real_t margin = 0.0;
+ Set<RID> exclude;
+ uint32_t collision_mask = UINT32_MAX;
- virtual bool collide_shape(RID p_shape, const Transform2D &p_shape_xform, const Vector2 &p_motion, real_t p_margin, Vector2 *r_results, int p_result_max, int &r_result_count, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ bool collide_with_bodies = true;
+ bool collide_with_areas = false;
+ };
struct ShapeRestInfo {
Vector2 point;
@@ -190,10 +172,13 @@ public:
RID rid;
ObjectID collider_id;
int shape = 0;
- Vector2 linear_velocity; //velocity at contact point
+ Vector2 linear_velocity; // Velocity at contact point.
};
- virtual bool rest_info(RID p_shape, const Transform2D &p_shape_xform, const Vector2 &p_motion, real_t p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_layer = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ virtual int intersect_shape(const ShapeParameters &p_parameters, ShapeResult *r_results, int p_result_max) = 0;
+ virtual bool cast_motion(const ShapeParameters &p_parameters, real_t &p_closest_safe, real_t &p_closest_unsafe) = 0;
+ virtual bool collide_shape(const ShapeParameters &p_parameters, Vector2 *r_results, int p_result_max, int &r_result_count) = 0;
+ virtual bool rest_info(const ShapeParameters &p_parameters, ShapeRestInfo *r_info) = 0;
PhysicsDirectSpaceState2D();
};
@@ -335,8 +320,8 @@ public:
virtual void area_set_monitorable(RID p_area, bool p_monitorable) = 0;
virtual void area_set_pickable(RID p_area, bool p_pickable) = 0;
- virtual void area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) = 0;
- virtual void area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) = 0;
+ virtual void area_set_monitor_callback(RID p_area, const Callable &p_callback) = 0;
+ virtual void area_set_area_monitor_callback(RID p_area, const Callable &p_callback) = 0;
/* BODY API */
@@ -400,11 +385,18 @@ public:
BODY_PARAM_INERTIA,
BODY_PARAM_CENTER_OF_MASS,
BODY_PARAM_GRAVITY_SCALE,
+ BODY_PARAM_LINEAR_DAMP_MODE,
+ BODY_PARAM_ANGULAR_DAMP_MODE,
BODY_PARAM_LINEAR_DAMP,
BODY_PARAM_ANGULAR_DAMP,
BODY_PARAM_MAX,
};
+ enum BodyDampMode {
+ BODY_DAMP_MODE_COMBINE,
+ BODY_DAMP_MODE_REPLACE,
+ };
+
virtual void body_set_param(RID p_body, BodyParameter p_param, const Variant &p_value) = 0;
virtual Variant body_get_param(RID p_body, BodyParameter p_param) const = 0;
@@ -585,6 +577,107 @@ public:
~PhysicsServer2D();
};
+class PhysicsRayQueryParameters2D : public RefCounted {
+ GDCLASS(PhysicsRayQueryParameters2D, RefCounted);
+
+ PhysicsDirectSpaceState2D::RayParameters parameters;
+
+protected:
+ static void _bind_methods();
+
+public:
+ const PhysicsDirectSpaceState2D::RayParameters &get_parameters() const { return parameters; }
+
+ void set_from(const Vector2 &p_from) { parameters.from = p_from; }
+ const Vector2 &get_from() const { return parameters.from; }
+
+ void set_to(const Vector2 &p_to) { parameters.to = p_to; }
+ const Vector2 &get_to() const { return parameters.to; }
+
+ void set_collision_mask(uint32_t p_mask) { parameters.collision_mask = p_mask; }
+ uint32_t get_collision_mask() const { return parameters.collision_mask; }
+
+ void set_collide_with_bodies(bool p_enable) { parameters.collide_with_bodies = p_enable; }
+ bool is_collide_with_bodies_enabled() const { return parameters.collide_with_bodies; }
+
+ void set_collide_with_areas(bool p_enable) { parameters.collide_with_areas = p_enable; }
+ bool is_collide_with_areas_enabled() const { return parameters.collide_with_areas; }
+
+ void set_exclude(const Vector<RID> &p_exclude);
+ Vector<RID> get_exclude() const;
+};
+
+class PhysicsPointQueryParameters2D : public RefCounted {
+ GDCLASS(PhysicsPointQueryParameters2D, RefCounted);
+
+ PhysicsDirectSpaceState2D::PointParameters parameters;
+
+protected:
+ static void _bind_methods();
+
+public:
+ const PhysicsDirectSpaceState2D::PointParameters &get_parameters() const { return parameters; }
+
+ void set_position(const Vector2 &p_position) { parameters.position = p_position; }
+ const Vector2 &get_position() const { return parameters.position; }
+
+ void set_canvas_instance_id(ObjectID p_canvas_instance_id) { parameters.canvas_instance_id = p_canvas_instance_id; }
+ ObjectID get_canvas_instance_id() const { return parameters.canvas_instance_id; }
+
+ void set_collision_mask(uint32_t p_mask) { parameters.collision_mask = p_mask; }
+ uint32_t get_collision_mask() const { return parameters.collision_mask; }
+
+ void set_collide_with_bodies(bool p_enable) { parameters.collide_with_bodies = p_enable; }
+ bool is_collide_with_bodies_enabled() const { return parameters.collide_with_bodies; }
+
+ void set_collide_with_areas(bool p_enable) { parameters.collide_with_areas = p_enable; }
+ bool is_collide_with_areas_enabled() const { return parameters.collide_with_areas; }
+
+ void set_exclude(const Vector<RID> &p_exclude);
+ Vector<RID> get_exclude() const;
+};
+
+class PhysicsShapeQueryParameters2D : public RefCounted {
+ GDCLASS(PhysicsShapeQueryParameters2D, RefCounted);
+
+ PhysicsDirectSpaceState2D::ShapeParameters parameters;
+
+ RES shape_ref;
+
+protected:
+ static void _bind_methods();
+
+public:
+ const PhysicsDirectSpaceState2D::ShapeParameters &get_parameters() const { return parameters; }
+
+ void set_shape(const RES &p_shape_ref);
+ RES get_shape() const { return shape_ref; }
+
+ void set_shape_rid(const RID &p_shape);
+ RID get_shape_rid() const { return parameters.shape_rid; }
+
+ void set_transform(const Transform2D &p_transform) { parameters.transform = p_transform; }
+ const Transform2D &get_transform() const { return parameters.transform; }
+
+ void set_motion(const Vector2 &p_motion) { parameters.motion = p_motion; }
+ const Vector2 &get_motion() const { return parameters.motion; }
+
+ void set_margin(real_t p_margin) { parameters.margin = p_margin; }
+ real_t get_margin() const { return parameters.margin; }
+
+ void set_collision_mask(uint32_t p_mask) { parameters.collision_mask = p_mask; }
+ uint32_t get_collision_mask() const { return parameters.collision_mask; }
+
+ void set_collide_with_bodies(bool p_enable) { parameters.collide_with_bodies = p_enable; }
+ bool is_collide_with_bodies_enabled() const { return parameters.collide_with_bodies; }
+
+ void set_collide_with_areas(bool p_enable) { parameters.collide_with_areas = p_enable; }
+ bool is_collide_with_areas_enabled() const { return parameters.collide_with_areas; }
+
+ void set_exclude(const Vector<RID> &p_exclude);
+ Vector<RID> get_exclude() const;
+};
+
class PhysicsTestMotionParameters2D : public RefCounted {
GDCLASS(PhysicsTestMotionParameters2D, RefCounted);
@@ -692,12 +785,12 @@ VARIANT_ENUM_CAST(PhysicsServer2D::AreaParameter);
VARIANT_ENUM_CAST(PhysicsServer2D::AreaSpaceOverrideMode);
VARIANT_ENUM_CAST(PhysicsServer2D::BodyMode);
VARIANT_ENUM_CAST(PhysicsServer2D::BodyParameter);
+VARIANT_ENUM_CAST(PhysicsServer2D::BodyDampMode);
VARIANT_ENUM_CAST(PhysicsServer2D::BodyState);
VARIANT_ENUM_CAST(PhysicsServer2D::CCDMode);
VARIANT_ENUM_CAST(PhysicsServer2D::JointParam);
VARIANT_ENUM_CAST(PhysicsServer2D::JointType);
VARIANT_ENUM_CAST(PhysicsServer2D::DampedSpringParam);
-//VARIANT_ENUM_CAST( PhysicsServer2D::ObjectType );
VARIANT_ENUM_CAST(PhysicsServer2D::AreaBodyStatus);
VARIANT_ENUM_CAST(PhysicsServer2D::ProcessInfo);
diff --git a/servers/physics_server_2d_wrap_mt.h b/servers/physics_server_2d_wrap_mt.h
index 4a2f07ab1e..b133fa41aa 100644
--- a/servers/physics_server_2d_wrap_mt.h
+++ b/servers/physics_server_2d_wrap_mt.h
@@ -165,8 +165,8 @@ public:
FUNC2(area_set_monitorable, RID, bool);
FUNC2(area_set_pickable, RID, bool);
- FUNC3(area_set_monitor_callback, RID, Object *, const StringName &);
- FUNC3(area_set_area_monitor_callback, RID, Object *, const StringName &);
+ FUNC2(area_set_monitor_callback, RID, const Callable &);
+ FUNC2(area_set_area_monitor_callback, RID, const Callable &);
/* BODY API */
diff --git a/servers/physics_server_3d.cpp b/servers/physics_server_3d.cpp
index 90922cc250..a354b69a29 100644
--- a/servers/physics_server_3d.cpp
+++ b/servers/physics_server_3d.cpp
@@ -137,93 +137,137 @@ PhysicsDirectBodyState3D::PhysicsDirectBodyState3D() {}
///////////////////////////////////////////////////////
-void PhysicsShapeQueryParameters3D::set_shape(const RES &p_shape_ref) {
- ERR_FAIL_COND(p_shape_ref.is_null());
- shape_ref = p_shape_ref;
- shape = p_shape_ref->get_rid();
-}
-
-RES PhysicsShapeQueryParameters3D::get_shape() const {
- return shape_ref;
+void PhysicsRayQueryParameters3D::set_exclude(const Vector<RID> &p_exclude) {
+ parameters.exclude.clear();
+ for (int i = 0; i < p_exclude.size(); i++) {
+ parameters.exclude.insert(p_exclude[i]);
+ }
}
-void PhysicsShapeQueryParameters3D::set_shape_rid(const RID &p_shape) {
- if (shape != p_shape) {
- shape_ref = RES();
- shape = p_shape;
+Vector<RID> PhysicsRayQueryParameters3D::get_exclude() const {
+ Vector<RID> ret;
+ ret.resize(parameters.exclude.size());
+ int idx = 0;
+ for (Set<RID>::Element *E = parameters.exclude.front(); E; E = E->next()) {
+ ret.write[idx++] = E->get();
}
+ return ret;
}
-RID PhysicsShapeQueryParameters3D::get_shape_rid() const {
- return shape;
-}
+void PhysicsRayQueryParameters3D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_from", "from"), &PhysicsRayQueryParameters3D::set_from);
+ ClassDB::bind_method(D_METHOD("get_from"), &PhysicsRayQueryParameters3D::get_from);
-void PhysicsShapeQueryParameters3D::set_transform(const Transform3D &p_transform) {
- transform = p_transform;
-}
+ ClassDB::bind_method(D_METHOD("set_to", "to"), &PhysicsRayQueryParameters3D::set_to);
+ ClassDB::bind_method(D_METHOD("get_to"), &PhysicsRayQueryParameters3D::get_to);
-Transform3D PhysicsShapeQueryParameters3D::get_transform() const {
- return transform;
-}
+ ClassDB::bind_method(D_METHOD("set_collision_mask", "collision_mask"), &PhysicsRayQueryParameters3D::set_collision_mask);
+ ClassDB::bind_method(D_METHOD("get_collision_mask"), &PhysicsRayQueryParameters3D::get_collision_mask);
-void PhysicsShapeQueryParameters3D::set_margin(real_t p_margin) {
- margin = p_margin;
-}
+ ClassDB::bind_method(D_METHOD("set_exclude", "exclude"), &PhysicsRayQueryParameters3D::set_exclude);
+ ClassDB::bind_method(D_METHOD("get_exclude"), &PhysicsRayQueryParameters3D::get_exclude);
-real_t PhysicsShapeQueryParameters3D::get_margin() const {
- return margin;
-}
+ ClassDB::bind_method(D_METHOD("set_collide_with_bodies", "enable"), &PhysicsRayQueryParameters3D::set_collide_with_bodies);
+ ClassDB::bind_method(D_METHOD("is_collide_with_bodies_enabled"), &PhysicsRayQueryParameters3D::is_collide_with_bodies_enabled);
-void PhysicsShapeQueryParameters3D::set_collision_mask(uint32_t p_collision_mask) {
- collision_mask = p_collision_mask;
-}
+ ClassDB::bind_method(D_METHOD("set_collide_with_areas", "enable"), &PhysicsRayQueryParameters3D::set_collide_with_areas);
+ ClassDB::bind_method(D_METHOD("is_collide_with_areas_enabled"), &PhysicsRayQueryParameters3D::is_collide_with_areas_enabled);
-uint32_t PhysicsShapeQueryParameters3D::get_collision_mask() const {
- return collision_mask;
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "from"), "set_from", "get_from");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "to"), "set_to", "get_to");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "collision_mask", PROPERTY_HINT_LAYERS_3D_PHYSICS), "set_collision_mask", "get_collision_mask");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude", "get_exclude");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_bodies"), "set_collide_with_bodies", "is_collide_with_bodies_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_areas"), "set_collide_with_areas", "is_collide_with_areas_enabled");
}
-void PhysicsShapeQueryParameters3D::set_exclude(const Vector<RID> &p_exclude) {
- exclude.clear();
+///////////////////////////////////////////////////////
+
+void PhysicsPointQueryParameters3D::set_exclude(const Vector<RID> &p_exclude) {
+ parameters.exclude.clear();
for (int i = 0; i < p_exclude.size(); i++) {
- exclude.insert(p_exclude[i]);
+ parameters.exclude.insert(p_exclude[i]);
}
}
-Vector<RID> PhysicsShapeQueryParameters3D::get_exclude() const {
+Vector<RID> PhysicsPointQueryParameters3D::get_exclude() const {
Vector<RID> ret;
- ret.resize(exclude.size());
+ ret.resize(parameters.exclude.size());
int idx = 0;
- for (Set<RID>::Element *E = exclude.front(); E; E = E->next()) {
+ for (Set<RID>::Element *E = parameters.exclude.front(); E; E = E->next()) {
ret.write[idx++] = E->get();
}
return ret;
}
-void PhysicsShapeQueryParameters3D::set_collide_with_bodies(bool p_enable) {
- collide_with_bodies = p_enable;
+void PhysicsPointQueryParameters3D::_bind_methods() {
+ ClassDB::bind_method(D_METHOD("set_position", "position"), &PhysicsPointQueryParameters3D::set_position);
+ ClassDB::bind_method(D_METHOD("get_position"), &PhysicsPointQueryParameters3D::get_position);
+
+ ClassDB::bind_method(D_METHOD("set_collision_mask", "collision_mask"), &PhysicsPointQueryParameters3D::set_collision_mask);
+ ClassDB::bind_method(D_METHOD("get_collision_mask"), &PhysicsPointQueryParameters3D::get_collision_mask);
+
+ ClassDB::bind_method(D_METHOD("set_exclude", "exclude"), &PhysicsPointQueryParameters3D::set_exclude);
+ ClassDB::bind_method(D_METHOD("get_exclude"), &PhysicsPointQueryParameters3D::get_exclude);
+
+ ClassDB::bind_method(D_METHOD("set_collide_with_bodies", "enable"), &PhysicsPointQueryParameters3D::set_collide_with_bodies);
+ ClassDB::bind_method(D_METHOD("is_collide_with_bodies_enabled"), &PhysicsPointQueryParameters3D::is_collide_with_bodies_enabled);
+
+ ClassDB::bind_method(D_METHOD("set_collide_with_areas", "enable"), &PhysicsPointQueryParameters3D::set_collide_with_areas);
+ ClassDB::bind_method(D_METHOD("is_collide_with_areas_enabled"), &PhysicsPointQueryParameters3D::is_collide_with_areas_enabled);
+
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR3, "position"), "set_position", "get_position");
+ ADD_PROPERTY(PropertyInfo(Variant::INT, "collision_mask", PROPERTY_HINT_LAYERS_3D_PHYSICS), "set_collision_mask", "get_collision_mask");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude", "get_exclude");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_bodies"), "set_collide_with_bodies", "is_collide_with_bodies_enabled");
+ ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_with_areas"), "set_collide_with_areas", "is_collide_with_areas_enabled");
+}
+
+///////////////////////////////////////////////////////
+
+void PhysicsShapeQueryParameters3D::set_shape(const RES &p_shape_ref) {
+ ERR_FAIL_COND(p_shape_ref.is_null());
+ shape_ref = p_shape_ref;
+ parameters.shape_rid = p_shape_ref->get_rid();
}
-bool PhysicsShapeQueryParameters3D::is_collide_with_bodies_enabled() const {
- return collide_with_bodies;
+void PhysicsShapeQueryParameters3D::set_shape_rid(const RID &p_shape) {
+ if (parameters.shape_rid != p_shape) {
+ shape_ref = RES();
+ parameters.shape_rid = p_shape;
+ }
}
-void PhysicsShapeQueryParameters3D::set_collide_with_areas(bool p_enable) {
- collide_with_areas = p_enable;
+void PhysicsShapeQueryParameters3D::set_exclude(const Vector<RID> &p_exclude) {
+ parameters.exclude.clear();
+ for (int i = 0; i < p_exclude.size(); i++) {
+ parameters.exclude.insert(p_exclude[i]);
+ }
}
-bool PhysicsShapeQueryParameters3D::is_collide_with_areas_enabled() const {
- return collide_with_areas;
+Vector<RID> PhysicsShapeQueryParameters3D::get_exclude() const {
+ Vector<RID> ret;
+ ret.resize(parameters.exclude.size());
+ int idx = 0;
+ for (Set<RID>::Element *E = parameters.exclude.front(); E; E = E->next()) {
+ ret.write[idx++] = E->get();
+ }
+ return ret;
}
void PhysicsShapeQueryParameters3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_shape", "shape"), &PhysicsShapeQueryParameters3D::set_shape);
ClassDB::bind_method(D_METHOD("get_shape"), &PhysicsShapeQueryParameters3D::get_shape);
+
ClassDB::bind_method(D_METHOD("set_shape_rid", "shape"), &PhysicsShapeQueryParameters3D::set_shape_rid);
ClassDB::bind_method(D_METHOD("get_shape_rid"), &PhysicsShapeQueryParameters3D::get_shape_rid);
ClassDB::bind_method(D_METHOD("set_transform", "transform"), &PhysicsShapeQueryParameters3D::set_transform);
ClassDB::bind_method(D_METHOD("get_transform"), &PhysicsShapeQueryParameters3D::get_transform);
+ ClassDB::bind_method(D_METHOD("set_motion", "motion"), &PhysicsShapeQueryParameters3D::set_motion);
+ ClassDB::bind_method(D_METHOD("get_motion"), &PhysicsShapeQueryParameters3D::get_motion);
+
ClassDB::bind_method(D_METHOD("set_margin", "margin"), &PhysicsShapeQueryParameters3D::set_margin);
ClassDB::bind_method(D_METHOD("get_margin"), &PhysicsShapeQueryParameters3D::get_margin);
@@ -240,8 +284,9 @@ void PhysicsShapeQueryParameters3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("is_collide_with_areas_enabled"), &PhysicsShapeQueryParameters3D::is_collide_with_areas_enabled);
ADD_PROPERTY(PropertyInfo(Variant::INT, "collision_mask", PROPERTY_HINT_LAYERS_3D_PHYSICS), "set_collision_mask", "get_collision_mask");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_NONE, itos(Variant::RID) + ":"), "set_exclude", "get_exclude");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude", "get_exclude");
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "margin", PROPERTY_HINT_RANGE, "0,100,0.01"), "set_margin", "get_margin");
+ ADD_PROPERTY(PropertyInfo(Variant::VECTOR2, "motion"), "set_motion", "get_motion");
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "shape", PROPERTY_HINT_RESOURCE_TYPE, "Shape3D"), "set_shape", "get_shape");
ADD_PROPERTY(PropertyInfo(Variant::RID, "shape_rid"), "set_shape_rid", "get_shape_rid");
ADD_PROPERTY(PropertyInfo(Variant::TRANSFORM3D, "transform"), "set_transform", "get_transform");
@@ -251,36 +296,56 @@ void PhysicsShapeQueryParameters3D::_bind_methods() {
/////////////////////////////////////
-Dictionary PhysicsDirectSpaceState3D::_intersect_ray(const Vector3 &p_from, const Vector3 &p_to, const Vector<RID> &p_exclude, uint32_t p_collision_mask, bool p_collide_with_bodies, bool p_collide_with_areas) {
- RayResult inters;
- Set<RID> exclude;
- for (int i = 0; i < p_exclude.size(); i++) {
- exclude.insert(p_exclude[i]);
- }
+Dictionary PhysicsDirectSpaceState3D::_intersect_ray(const Ref<PhysicsRayQueryParameters3D> &p_ray_query) {
+ ERR_FAIL_COND_V(!p_ray_query.is_valid(), Dictionary());
- bool res = intersect_ray(p_from, p_to, inters, exclude, p_collision_mask, p_collide_with_bodies, p_collide_with_areas);
+ RayResult result;
+ bool res = intersect_ray(p_ray_query->get_parameters(), result);
if (!res) {
return Dictionary();
}
Dictionary d;
- d["position"] = inters.position;
- d["normal"] = inters.normal;
- d["collider_id"] = inters.collider_id;
- d["collider"] = inters.collider;
- d["shape"] = inters.shape;
- d["rid"] = inters.rid;
+ d["position"] = result.position;
+ d["normal"] = result.normal;
+ d["collider_id"] = result.collider_id;
+ d["collider"] = result.collider;
+ d["shape"] = result.shape;
+ d["rid"] = result.rid;
return d;
}
+Array PhysicsDirectSpaceState3D::_intersect_point(const Ref<PhysicsPointQueryParameters3D> &p_point_query, int p_max_results) {
+ Vector<ShapeResult> ret;
+ ret.resize(p_max_results);
+
+ int rc = intersect_point(p_point_query->get_parameters(), ret.ptrw(), ret.size());
+
+ if (rc == 0) {
+ return Array();
+ }
+
+ Array r;
+ r.resize(rc);
+ for (int i = 0; i < rc; i++) {
+ Dictionary d;
+ d["rid"] = ret[i].rid;
+ d["collider_id"] = ret[i].collider_id;
+ d["collider"] = ret[i].collider;
+ d["shape"] = ret[i].shape;
+ r[i] = d;
+ }
+ return r;
+}
+
Array PhysicsDirectSpaceState3D::_intersect_shape(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query, int p_max_results) {
ERR_FAIL_COND_V(!p_shape_query.is_valid(), Array());
Vector<ShapeResult> sr;
sr.resize(p_max_results);
- int rc = intersect_shape(p_shape_query->shape, p_shape_query->transform, p_shape_query->margin, sr.ptrw(), sr.size(), p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ int rc = intersect_shape(p_shape_query->get_parameters(), sr.ptrw(), sr.size());
Array ret;
ret.resize(rc);
for (int i = 0; i < rc; i++) {
@@ -295,11 +360,11 @@ Array PhysicsDirectSpaceState3D::_intersect_shape(const Ref<PhysicsShapeQueryPar
return ret;
}
-Array PhysicsDirectSpaceState3D::_cast_motion(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query, const Vector3 &p_motion) {
+Array PhysicsDirectSpaceState3D::_cast_motion(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query) {
ERR_FAIL_COND_V(!p_shape_query.is_valid(), Array());
real_t closest_safe = 1.0f, closest_unsafe = 1.0f;
- bool res = cast_motion(p_shape_query->shape, p_shape_query->transform, p_motion, p_shape_query->margin, closest_safe, closest_unsafe, p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ bool res = cast_motion(p_shape_query->get_parameters(), closest_safe, closest_unsafe);
if (!res) {
return Array();
}
@@ -316,7 +381,7 @@ Array PhysicsDirectSpaceState3D::_collide_shape(const Ref<PhysicsShapeQueryParam
Vector<Vector3> ret;
ret.resize(p_max_results * 2);
int rc = 0;
- bool res = collide_shape(p_shape_query->shape, p_shape_query->transform, p_shape_query->margin, ret.ptrw(), p_max_results, rc, p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ bool res = collide_shape(p_shape_query->get_parameters(), ret.ptrw(), p_max_results, rc);
if (!res) {
return Array();
}
@@ -333,7 +398,7 @@ Dictionary PhysicsDirectSpaceState3D::_get_rest_info(const Ref<PhysicsShapeQuery
ShapeRestInfo sri;
- bool res = rest_info(p_shape_query->shape, p_shape_query->transform, p_shape_query->margin, &sri, p_shape_query->exclude, p_shape_query->collision_mask, p_shape_query->collide_with_bodies, p_shape_query->collide_with_areas);
+ bool res = rest_info(p_shape_query->get_parameters(), &sri);
Dictionary r;
if (!res) {
return r;
@@ -353,11 +418,12 @@ PhysicsDirectSpaceState3D::PhysicsDirectSpaceState3D() {
}
void PhysicsDirectSpaceState3D::_bind_methods() {
- ClassDB::bind_method(D_METHOD("intersect_ray", "from", "to", "exclude", "collision_mask", "collide_with_bodies", "collide_with_areas"), &PhysicsDirectSpaceState3D::_intersect_ray, DEFVAL(Array()), DEFVAL(UINT32_MAX), DEFVAL(true), DEFVAL(false));
- ClassDB::bind_method(D_METHOD("intersect_shape", "shape", "max_results"), &PhysicsDirectSpaceState3D::_intersect_shape, DEFVAL(32));
- ClassDB::bind_method(D_METHOD("cast_motion", "shape", "motion"), &PhysicsDirectSpaceState3D::_cast_motion);
- ClassDB::bind_method(D_METHOD("collide_shape", "shape", "max_results"), &PhysicsDirectSpaceState3D::_collide_shape, DEFVAL(32));
- ClassDB::bind_method(D_METHOD("get_rest_info", "shape"), &PhysicsDirectSpaceState3D::_get_rest_info);
+ ClassDB::bind_method(D_METHOD("intersect_point", "parameters", "max_results"), &PhysicsDirectSpaceState3D::_intersect_point, DEFVAL(32));
+ ClassDB::bind_method(D_METHOD("intersect_ray", "parameters"), &PhysicsDirectSpaceState3D::_intersect_ray);
+ ClassDB::bind_method(D_METHOD("intersect_shape", "parameters", "max_results"), &PhysicsDirectSpaceState3D::_intersect_shape, DEFVAL(32));
+ ClassDB::bind_method(D_METHOD("cast_motion", "parameters"), &PhysicsDirectSpaceState3D::_cast_motion);
+ ClassDB::bind_method(D_METHOD("collide_shape", "parameters", "max_results"), &PhysicsDirectSpaceState3D::_collide_shape, DEFVAL(32));
+ ClassDB::bind_method(D_METHOD("get_rest_info", "parameters"), &PhysicsDirectSpaceState3D::_get_rest_info);
}
///////////////////////////////
@@ -427,7 +493,7 @@ void PhysicsTestMotionParameters3D::_bind_methods() {
ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "margin"), "set_margin", "get_margin");
ADD_PROPERTY(PropertyInfo(Variant::INT, "max_collisions"), "set_max_collisions", "get_max_collisions");
ADD_PROPERTY(PropertyInfo(Variant::BOOL, "collide_separation_ray"), "set_collide_separation_ray_enabled", "is_collide_separation_ray_enabled");
- ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude_bodies"), "set_exclude_bodies", "get_exclude_bodies");
+ ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude_bodies", PROPERTY_HINT_ARRAY_TYPE, "RID"), "set_exclude_bodies", "get_exclude_bodies");
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "exclude_objects"), "set_exclude_objects", "get_exclude_objects");
}
@@ -612,8 +678,8 @@ void PhysicsServer3D::_bind_methods() {
ClassDB::bind_method(D_METHOD("area_attach_object_instance_id", "area", "id"), &PhysicsServer3D::area_attach_object_instance_id);
ClassDB::bind_method(D_METHOD("area_get_object_instance_id", "area"), &PhysicsServer3D::area_get_object_instance_id);
- ClassDB::bind_method(D_METHOD("area_set_monitor_callback", "area", "receiver", "method"), &PhysicsServer3D::area_set_monitor_callback);
- ClassDB::bind_method(D_METHOD("area_set_area_monitor_callback", "area", "receiver", "method"), &PhysicsServer3D::area_set_area_monitor_callback);
+ ClassDB::bind_method(D_METHOD("area_set_monitor_callback", "area", "callback"), &PhysicsServer3D::area_set_monitor_callback);
+ ClassDB::bind_method(D_METHOD("area_set_area_monitor_callback", "area", "callback"), &PhysicsServer3D::area_set_area_monitor_callback);
ClassDB::bind_method(D_METHOD("area_set_monitorable", "area", "monitorable"), &PhysicsServer3D::area_set_monitorable);
ClassDB::bind_method(D_METHOD("area_set_ray_pickable", "area", "enable"), &PhysicsServer3D::area_set_ray_pickable);
@@ -863,10 +929,15 @@ void PhysicsServer3D::_bind_methods() {
BIND_ENUM_CONSTANT(BODY_PARAM_INERTIA);
BIND_ENUM_CONSTANT(BODY_PARAM_CENTER_OF_MASS);
BIND_ENUM_CONSTANT(BODY_PARAM_GRAVITY_SCALE);
+ BIND_ENUM_CONSTANT(BODY_PARAM_LINEAR_DAMP_MODE);
+ BIND_ENUM_CONSTANT(BODY_PARAM_ANGULAR_DAMP_MODE);
BIND_ENUM_CONSTANT(BODY_PARAM_LINEAR_DAMP);
BIND_ENUM_CONSTANT(BODY_PARAM_ANGULAR_DAMP);
BIND_ENUM_CONSTANT(BODY_PARAM_MAX);
+ BIND_ENUM_CONSTANT(BODY_DAMP_MODE_COMBINE);
+ BIND_ENUM_CONSTANT(BODY_DAMP_MODE_REPLACE);
+
BIND_ENUM_CONSTANT(BODY_STATE_TRANSFORM);
BIND_ENUM_CONSTANT(BODY_STATE_LINEAR_VELOCITY);
BIND_ENUM_CONSTANT(BODY_STATE_ANGULAR_VELOCITY);
diff --git a/servers/physics_server_3d.h b/servers/physics_server_3d.h
index 6f55e287c9..8883443e34 100644
--- a/servers/physics_server_3d.h
+++ b/servers/physics_server_3d.h
@@ -96,55 +96,18 @@ public:
PhysicsDirectBodyState3D();
};
-class PhysicsShapeQueryParameters3D : public RefCounted {
- GDCLASS(PhysicsShapeQueryParameters3D, RefCounted);
- friend class PhysicsDirectSpaceState3D;
-
- RES shape_ref;
- RID shape;
- Transform3D transform;
- real_t margin = 0.0;
- Set<RID> exclude;
- uint32_t collision_mask = UINT32_MAX;
-
- bool collide_with_bodies = true;
- bool collide_with_areas = false;
-
-protected:
- static void _bind_methods();
-
-public:
- void set_shape(const RES &p_shape_ref);
- RES get_shape() const;
- void set_shape_rid(const RID &p_shape);
- RID get_shape_rid() const;
-
- void set_transform(const Transform3D &p_transform);
- Transform3D get_transform() const;
-
- void set_margin(real_t p_margin);
- real_t get_margin() const;
-
- void set_collision_mask(uint32_t p_collision_mask);
- uint32_t get_collision_mask() const;
-
- void set_exclude(const Vector<RID> &p_exclude);
- Vector<RID> get_exclude() const;
-
- void set_collide_with_bodies(bool p_enable);
- bool is_collide_with_bodies_enabled() const;
-
- void set_collide_with_areas(bool p_enable);
- bool is_collide_with_areas_enabled() const;
-};
+class PhysicsRayQueryParameters3D;
+class PhysicsPointQueryParameters3D;
+class PhysicsShapeQueryParameters3D;
class PhysicsDirectSpaceState3D : public Object {
GDCLASS(PhysicsDirectSpaceState3D, Object);
private:
- Dictionary _intersect_ray(const Vector3 &p_from, const Vector3 &p_to, const Vector<RID> &p_exclude = Vector<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false);
+ Dictionary _intersect_ray(const Ref<PhysicsRayQueryParameters3D> &p_ray_query);
+ Array _intersect_point(const Ref<PhysicsPointQueryParameters3D> &p_point_query, int p_max_results = 32);
Array _intersect_shape(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query, int p_max_results = 32);
- Array _cast_motion(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query, const Vector3 &p_motion);
+ Array _cast_motion(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query);
Array _collide_shape(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query, int p_max_results = 32);
Dictionary _get_rest_info(const Ref<PhysicsShapeQueryParameters3D> &p_shape_query);
@@ -152,27 +115,58 @@ protected:
static void _bind_methods();
public:
- struct ShapeResult {
+ struct RayParameters {
+ Vector3 from;
+ Vector3 to;
+ Set<RID> exclude;
+ uint32_t collision_mask = UINT32_MAX;
+
+ bool collide_with_bodies = true;
+ bool collide_with_areas = false;
+
+ bool pick_ray = false;
+ };
+
+ struct RayResult {
+ Vector3 position;
+ Vector3 normal;
RID rid;
ObjectID collider_id;
Object *collider = nullptr;
int shape = 0;
};
- virtual int intersect_point(const Vector3 &p_point, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ virtual bool intersect_ray(const RayParameters &p_parameters, RayResult &r_result) = 0;
- struct RayResult {
- Vector3 position;
- Vector3 normal;
+ struct ShapeResult {
RID rid;
ObjectID collider_id;
Object *collider = nullptr;
int shape = 0;
};
- virtual bool intersect_ray(const Vector3 &p_from, const Vector3 &p_to, RayResult &r_result, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, bool p_pick_ray = false) = 0;
+ struct PointParameters {
+ Vector3 position;
+ Set<RID> exclude;
+ uint32_t collision_mask = UINT32_MAX;
+
+ bool collide_with_bodies = true;
+ bool collide_with_areas = false;
+ };
+
+ virtual int intersect_point(const PointParameters &p_parameters, ShapeResult *r_results, int p_result_max) = 0;
+
+ struct ShapeParameters {
+ RID shape_rid;
+ Transform3D transform;
+ Vector3 motion;
+ real_t margin = 0.0;
+ Set<RID> exclude;
+ uint32_t collision_mask = UINT32_MAX;
- virtual int intersect_shape(const RID &p_shape, const Transform3D &p_xform, real_t p_margin, ShapeResult *r_results, int p_result_max, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ bool collide_with_bodies = true;
+ bool collide_with_areas = false;
+ };
struct ShapeRestInfo {
Vector3 point;
@@ -180,14 +174,13 @@ public:
RID rid;
ObjectID collider_id;
int shape = 0;
- Vector3 linear_velocity; //velocity at contact point
+ Vector3 linear_velocity; // Velocity at contact point.
};
- virtual bool cast_motion(const RID &p_shape, const Transform3D &p_xform, const Vector3 &p_motion, real_t p_margin, real_t &p_closest_safe, real_t &p_closest_unsafe, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false, ShapeRestInfo *r_info = nullptr) = 0;
-
- virtual bool collide_shape(RID p_shape, const Transform3D &p_shape_xform, real_t p_margin, Vector3 *r_results, int p_result_max, int &r_result_count, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
-
- virtual bool rest_info(RID p_shape, const Transform3D &p_shape_xform, real_t p_margin, ShapeRestInfo *r_info, const Set<RID> &p_exclude = Set<RID>(), uint32_t p_collision_mask = UINT32_MAX, bool p_collide_with_bodies = true, bool p_collide_with_areas = false) = 0;
+ virtual int intersect_shape(const ShapeParameters &p_parameters, ShapeResult *r_results, int p_result_max) = 0;
+ virtual bool cast_motion(const ShapeParameters &p_parameters, real_t &p_closest_safe, real_t &p_closest_unsafe, ShapeRestInfo *r_info = nullptr) = 0;
+ virtual bool collide_shape(const ShapeParameters &p_parameters, Vector3 *r_results, int p_result_max, int &r_result_count) = 0;
+ virtual bool rest_info(const ShapeParameters &p_parameters, ShapeRestInfo *r_info) = 0;
virtual Vector3 get_closest_point_to_object_volume(RID p_object, const Vector3 p_point) const = 0;
@@ -348,8 +341,8 @@ public:
virtual void area_set_monitorable(RID p_area, bool p_monitorable) = 0;
- virtual void area_set_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) = 0;
- virtual void area_set_area_monitor_callback(RID p_area, Object *p_receiver, const StringName &p_method) = 0;
+ virtual void area_set_monitor_callback(RID p_area, const Callable &p_callback) = 0;
+ virtual void area_set_area_monitor_callback(RID p_area, const Callable &p_callback) = 0;
virtual void area_set_ray_pickable(RID p_area, bool p_enable) = 0;
@@ -364,6 +357,11 @@ public:
BODY_MODE_DYNAMIC_LINEAR,
};
+ enum BodyDampMode {
+ BODY_DAMP_MODE_COMBINE,
+ BODY_DAMP_MODE_REPLACE,
+ };
+
virtual RID body_create() = 0;
virtual void body_set_space(RID p_body, RID p_space) = 0;
@@ -408,6 +406,8 @@ public:
BODY_PARAM_INERTIA,
BODY_PARAM_CENTER_OF_MASS,
BODY_PARAM_GRAVITY_SCALE,
+ BODY_PARAM_LINEAR_DAMP_MODE,
+ BODY_PARAM_ANGULAR_DAMP_MODE,
BODY_PARAM_LINEAR_DAMP,
BODY_PARAM_ANGULAR_DAMP,
BODY_PARAM_MAX,
@@ -778,6 +778,104 @@ public:
~PhysicsServer3D();
};
+class PhysicsRayQueryParameters3D : public RefCounted {
+ GDCLASS(PhysicsRayQueryParameters3D, RefCounted);
+
+ PhysicsDirectSpaceState3D::RayParameters parameters;
+
+protected:
+ static void _bind_methods();
+
+public:
+ const PhysicsDirectSpaceState3D::RayParameters &get_parameters() const { return parameters; }
+
+ void set_from(const Vector3 &p_from) { parameters.from = p_from; }
+ const Vector3 &get_from() const { return parameters.from; }
+
+ void set_to(const Vector3 &p_to) { parameters.to = p_to; }
+ const Vector3 &get_to() const { return parameters.to; }
+
+ void set_collision_mask(uint32_t p_mask) { parameters.collision_mask = p_mask; }
+ uint32_t get_collision_mask() const { return parameters.collision_mask; }
+
+ void set_collide_with_bodies(bool p_enable) { parameters.collide_with_bodies = p_enable; }
+ bool is_collide_with_bodies_enabled() const { return parameters.collide_with_bodies; }
+
+ void set_collide_with_areas(bool p_enable) { parameters.collide_with_areas = p_enable; }
+ bool is_collide_with_areas_enabled() const { return parameters.collide_with_areas; }
+
+ void set_exclude(const Vector<RID> &p_exclude);
+ Vector<RID> get_exclude() const;
+};
+
+class PhysicsPointQueryParameters3D : public RefCounted {
+ GDCLASS(PhysicsPointQueryParameters3D, RefCounted);
+
+ PhysicsDirectSpaceState3D::PointParameters parameters;
+
+protected:
+ static void _bind_methods();
+
+public:
+ const PhysicsDirectSpaceState3D::PointParameters &get_parameters() const { return parameters; }
+
+ void set_position(const Vector3 &p_position) { parameters.position = p_position; }
+ const Vector3 &get_position() const { return parameters.position; }
+
+ void set_collision_mask(uint32_t p_mask) { parameters.collision_mask = p_mask; }
+ uint32_t get_collision_mask() const { return parameters.collision_mask; }
+
+ void set_collide_with_bodies(bool p_enable) { parameters.collide_with_bodies = p_enable; }
+ bool is_collide_with_bodies_enabled() const { return parameters.collide_with_bodies; }
+
+ void set_collide_with_areas(bool p_enable) { parameters.collide_with_areas = p_enable; }
+ bool is_collide_with_areas_enabled() const { return parameters.collide_with_areas; }
+
+ void set_exclude(const Vector<RID> &p_exclude);
+ Vector<RID> get_exclude() const;
+};
+
+class PhysicsShapeQueryParameters3D : public RefCounted {
+ GDCLASS(PhysicsShapeQueryParameters3D, RefCounted);
+
+ PhysicsDirectSpaceState3D::ShapeParameters parameters;
+
+ RES shape_ref;
+
+protected:
+ static void _bind_methods();
+
+public:
+ const PhysicsDirectSpaceState3D::ShapeParameters &get_parameters() const { return parameters; }
+
+ void set_shape(const RES &p_shape_ref);
+ RES get_shape() const { return shape_ref; }
+
+ void set_shape_rid(const RID &p_shape);
+ RID get_shape_rid() const { return parameters.shape_rid; }
+
+ void set_transform(const Transform3D &p_transform) { parameters.transform = p_transform; }
+ const Transform3D &get_transform() const { return parameters.transform; }
+
+ void set_motion(const Vector3 &p_motion) { parameters.motion = p_motion; }
+ const Vector3 &get_motion() const { return parameters.motion; }
+
+ void set_margin(real_t p_margin) { parameters.margin = p_margin; }
+ real_t get_margin() const { return parameters.margin; }
+
+ void set_collision_mask(uint32_t p_mask) { parameters.collision_mask = p_mask; }
+ uint32_t get_collision_mask() const { return parameters.collision_mask; }
+
+ void set_collide_with_bodies(bool p_enable) { parameters.collide_with_bodies = p_enable; }
+ bool is_collide_with_bodies_enabled() const { return parameters.collide_with_bodies; }
+
+ void set_collide_with_areas(bool p_enable) { parameters.collide_with_areas = p_enable; }
+ bool is_collide_with_areas_enabled() const { return parameters.collide_with_areas; }
+
+ void set_exclude(const Vector<RID> &p_exclude);
+ Vector<RID> get_exclude() const;
+};
+
class PhysicsTestMotionParameters3D : public RefCounted {
GDCLASS(PhysicsTestMotionParameters3D, RefCounted);
@@ -890,6 +988,7 @@ VARIANT_ENUM_CAST(PhysicsServer3D::AreaParameter);
VARIANT_ENUM_CAST(PhysicsServer3D::AreaSpaceOverrideMode);
VARIANT_ENUM_CAST(PhysicsServer3D::BodyMode);
VARIANT_ENUM_CAST(PhysicsServer3D::BodyParameter);
+VARIANT_ENUM_CAST(PhysicsServer3D::BodyDampMode);
VARIANT_ENUM_CAST(PhysicsServer3D::BodyState);
VARIANT_ENUM_CAST(PhysicsServer3D::BodyAxis);
VARIANT_ENUM_CAST(PhysicsServer3D::PinJointParam);
diff --git a/servers/physics_server_3d_wrap_mt.h b/servers/physics_server_3d_wrap_mt.h
index 4c88ef2642..df3dc279fe 100644
--- a/servers/physics_server_3d_wrap_mt.h
+++ b/servers/physics_server_3d_wrap_mt.h
@@ -166,8 +166,8 @@ public:
FUNC2(area_set_monitorable, RID, bool);
FUNC2(area_set_ray_pickable, RID, bool);
- FUNC3(area_set_monitor_callback, RID, Object *, const StringName &);
- FUNC3(area_set_area_monitor_callback, RID, Object *, const StringName &);
+ FUNC2(area_set_monitor_callback, RID, const Callable &);
+ FUNC2(area_set_area_monitor_callback, RID, const Callable &);
/* BODY API */
diff --git a/servers/register_server_types.cpp b/servers/register_server_types.cpp
index 8be9c2114f..7004b2317c 100644
--- a/servers/register_server_types.cpp
+++ b/servers/register_server_types.cpp
@@ -209,13 +209,17 @@ void register_server_types() {
GDREGISTER_VIRTUAL_CLASS(PhysicsDirectBodyState2D);
GDREGISTER_VIRTUAL_CLASS(PhysicsDirectSpaceState2D);
+ GDREGISTER_CLASS(PhysicsRayQueryParameters2D);
+ GDREGISTER_CLASS(PhysicsPointQueryParameters2D);
+ GDREGISTER_CLASS(PhysicsShapeQueryParameters2D);
GDREGISTER_CLASS(PhysicsTestMotionParameters2D);
GDREGISTER_CLASS(PhysicsTestMotionResult2D);
- GDREGISTER_CLASS(PhysicsShapeQueryParameters2D);
- GDREGISTER_CLASS(PhysicsShapeQueryParameters3D);
GDREGISTER_VIRTUAL_CLASS(PhysicsDirectBodyState3D);
GDREGISTER_VIRTUAL_CLASS(PhysicsDirectSpaceState3D);
+ GDREGISTER_CLASS(PhysicsRayQueryParameters3D);
+ GDREGISTER_CLASS(PhysicsPointQueryParameters3D);
+ GDREGISTER_CLASS(PhysicsShapeQueryParameters3D);
GDREGISTER_CLASS(PhysicsTestMotionParameters3D);
GDREGISTER_CLASS(PhysicsTestMotionResult3D);
diff --git a/servers/rendering/rasterizer_dummy.h b/servers/rendering/rasterizer_dummy.h
index f4a44c30f9..44e07a1853 100644
--- a/servers/rendering/rasterizer_dummy.h
+++ b/servers/rendering/rasterizer_dummy.h
@@ -258,7 +258,7 @@ public:
Ref<Image> texture_2d_layer_get(RID p_texture, int p_layer) const override { return Ref<Image>(); }
Vector<Ref<Image>> texture_3d_get(RID p_texture) const override { return Vector<Ref<Image>>(); }
- void texture_replace(RID p_texture, RID p_by_texture) override {}
+ void texture_replace(RID p_texture, RID p_by_texture) override { free(p_by_texture); }
void texture_set_size_override(RID p_texture, int p_width, int p_height) override {}
void texture_set_path(RID p_texture, const String &p_path) override {}
diff --git a/servers/rendering/renderer_rd/renderer_storage_rd.cpp b/servers/rendering/renderer_rd/renderer_storage_rd.cpp
index 99d1b88947..5c7fee7ec9 100644
--- a/servers/rendering/renderer_rd/renderer_storage_rd.cpp
+++ b/servers/rendering/renderer_rd/renderer_storage_rd.cpp
@@ -4419,7 +4419,8 @@ void RendererStorageRD::_update_dirty_multimeshes() {
if (multimesh->data_cache_dirty_regions[i]) {
uint32_t offset = i * region_size;
uint32_t size = multimesh->stride_cache * (uint32_t)multimesh->instances * (uint32_t)sizeof(float);
- RD::get_singleton()->buffer_update(multimesh->buffer, offset, MIN(region_size, size - offset), &data[i * region_size]);
+ uint32_t region_start_index = multimesh->stride_cache * MULTIMESH_DIRTY_REGION_SIZE * i;
+ RD::get_singleton()->buffer_update(multimesh->buffer, offset, MIN(region_size, size - offset), &data[region_start_index]);
}
}
}
diff --git a/servers/rendering/rendering_device_binds.h b/servers/rendering/rendering_device_binds.h
index da614877c4..2cf7821668 100644
--- a/servers/rendering/rendering_device_binds.h
+++ b/servers/rendering/rendering_device_binds.h
@@ -427,7 +427,7 @@ protected:
ClassDB::bind_method(D_METHOD("_set_versions", "versions"), &RDShaderFile::_set_versions);
ClassDB::bind_method(D_METHOD("_get_versions"), &RDShaderFile::_get_versions);
- ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "_versions", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL), "_set_versions", "_get_versions");
+ ADD_PROPERTY(PropertyInfo(Variant::DICTIONARY, "_versions", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NO_EDITOR | PROPERTY_USAGE_INTERNAL), "_set_versions", "_get_versions");
ADD_PROPERTY(PropertyInfo(Variant::STRING, "base_error"), "set_base_error", "get_base_error");
}
};
diff --git a/servers/rendering/rendering_server_default.cpp b/servers/rendering/rendering_server_default.cpp
index 107c9f8040..2ce9a20b6b 100644
--- a/servers/rendering/rendering_server_default.cpp
+++ b/servers/rendering/rendering_server_default.cpp
@@ -64,14 +64,8 @@ void RenderingServerDefault::_free(RID p_rid) {
/* EVENT QUEUING */
-void RenderingServerDefault::request_frame_drawn_callback(Object *p_where, const StringName &p_method, const Variant &p_userdata) {
- ERR_FAIL_NULL(p_where);
- FrameDrawnCallbacks fdc;
- fdc.object = p_where->get_instance_id();
- fdc.method = p_method;
- fdc.param = p_userdata;
-
- frame_drawn_callbacks.push_back(fdc);
+void RenderingServerDefault::request_frame_drawn_callback(const Callable &p_callable) {
+ frame_drawn_callbacks.push_back(p_callable);
}
void RenderingServerDefault::_draw(bool p_swap_buffers, double frame_step) {
@@ -103,15 +97,13 @@ void RenderingServerDefault::_draw(bool p_swap_buffers, double frame_step) {
RSG::scene->update_visibility_notifiers();
while (frame_drawn_callbacks.front()) {
- Object *obj = ObjectDB::get_instance(frame_drawn_callbacks.front()->get().object);
- if (obj) {
- Callable::CallError ce;
- const Variant *v = &frame_drawn_callbacks.front()->get().param;
- obj->call(frame_drawn_callbacks.front()->get().method, &v, 1, ce);
- if (ce.error != Callable::CallError::CALL_OK) {
- String err = Variant::get_call_error_text(obj, frame_drawn_callbacks.front()->get().method, &v, 1, ce);
- ERR_PRINT("Error calling frame drawn function: " + err);
- }
+ Callable c = frame_drawn_callbacks.front()->get();
+ Variant result;
+ Callable::CallError ce;
+ c.call(nullptr, 0, result, ce);
+ if (ce.error != Callable::CallError::CALL_OK) {
+ String err = Variant::get_callable_error_text(c, nullptr, 0, ce);
+ ERR_PRINT("Error calling frame drawn function: " + err);
}
frame_drawn_callbacks.pop_front();
diff --git a/servers/rendering/rendering_server_default.h b/servers/rendering/rendering_server_default.h
index a25bd3dae5..9a592a9265 100644
--- a/servers/rendering/rendering_server_default.h
+++ b/servers/rendering/rendering_server_default.h
@@ -58,13 +58,7 @@ class RenderingServerDefault : public RenderingServer {
static int changes;
RID test_cube;
- struct FrameDrawnCallbacks {
- ObjectID object;
- StringName method;
- Variant param;
- };
-
- List<FrameDrawnCallbacks> frame_drawn_callbacks;
+ List<Callable> frame_drawn_callbacks;
static void _changes_changed() {}
@@ -880,7 +874,7 @@ public:
/* EVENT QUEUING */
- virtual void request_frame_drawn_callback(Object *p_where, const StringName &p_method, const Variant &p_userdata) override;
+ virtual void request_frame_drawn_callback(const Callable &p_callable) override;
virtual void draw(bool p_swap_buffers, double frame_step) override;
virtual void sync() override;
diff --git a/servers/rendering/shader_language.cpp b/servers/rendering/shader_language.cpp
index ac978b994a..04cc844483 100644
--- a/servers/rendering/shader_language.cpp
+++ b/servers/rendering/shader_language.cpp
@@ -9370,15 +9370,6 @@ Error ShaderLanguage::complete(const String &p_code, const Map<StringName, Funct
limit = 4;
} break;
- case TYPE_MAT2:
- limit = 2;
- break;
- case TYPE_MAT3:
- limit = 3;
- break;
- case TYPE_MAT4:
- limit = 4;
- break;
default: {
}
}
diff --git a/servers/rendering_server.cpp b/servers/rendering_server.cpp
index 1b16949768..cdf7fa530e 100644
--- a/servers/rendering_server.cpp
+++ b/servers/rendering_server.cpp
@@ -2701,7 +2701,7 @@ void RenderingServer::_bind_methods() {
/* Misc */
- ClassDB::bind_method(D_METHOD("request_frame_drawn_callback", "where", "method", "userdata"), &RenderingServer::request_frame_drawn_callback);
+ ClassDB::bind_method(D_METHOD("request_frame_drawn_callback", "callable"), &RenderingServer::request_frame_drawn_callback);
ClassDB::bind_method(D_METHOD("has_changed"), &RenderingServer::has_changed);
ClassDB::bind_method(D_METHOD("get_rendering_info", "info"), &RenderingServer::get_rendering_info);
ClassDB::bind_method(D_METHOD("get_video_adapter_name"), &RenderingServer::get_video_adapter_name);
diff --git a/servers/rendering_server.h b/servers/rendering_server.h
index 3125268e1c..f35a633bf3 100644
--- a/servers/rendering_server.h
+++ b/servers/rendering_server.h
@@ -1435,10 +1435,10 @@ public:
virtual void free(RID p_rid) = 0; ///< free RIDs associated with the rendering server
- virtual void request_frame_drawn_callback(Object *p_where, const StringName &p_method, const Variant &p_userdata) = 0;
-
/* EVENT QUEUING */
+ virtual void request_frame_drawn_callback(const Callable &p_callable) = 0;
+
virtual void draw(bool p_swap_buffers = true, double frame_step = 0.0) = 0;
virtual void sync() = 0;
virtual bool has_changed() const = 0;
diff --git a/tests/test_aabb.h b/tests/test_aabb.h
index 2724d9481a..0312e185a1 100644
--- a/tests/test_aabb.h
+++ b/tests/test_aabb.h
@@ -90,38 +90,38 @@ TEST_CASE("[AABB] Basic setters") {
"set_size() should result in the expected AABB.");
}
-TEST_CASE("[AABB] Area getters") {
+TEST_CASE("[AABB] Volume getters") {
AABB aabb = AABB(Vector3(-1.5, 2, -2.5), Vector3(4, 5, 6));
CHECK_MESSAGE(
- Math::is_equal_approx(aabb.get_area(), 120),
- "get_area() should return the expected value with positive size.");
+ Math::is_equal_approx(aabb.get_volume(), 120),
+ "get_volume() should return the expected value with positive size.");
CHECK_MESSAGE(
- !aabb.has_no_area(),
- "Non-empty volumetric AABB should have an area.");
+ !aabb.has_no_volume(),
+ "Non-empty volumetric AABB should have a volume.");
aabb = AABB(Vector3(-1.5, 2, -2.5), Vector3(-4, 5, 6));
CHECK_MESSAGE(
- Math::is_equal_approx(aabb.get_area(), -120),
- "get_area() should return the expected value with negative size (1 component).");
+ Math::is_equal_approx(aabb.get_volume(), -120),
+ "get_volume() should return the expected value with negative size (1 component).");
aabb = AABB(Vector3(-1.5, 2, -2.5), Vector3(-4, -5, 6));
CHECK_MESSAGE(
- Math::is_equal_approx(aabb.get_area(), 120),
- "get_area() should return the expected value with negative size (2 components).");
+ Math::is_equal_approx(aabb.get_volume(), 120),
+ "get_volume() should return the expected value with negative size (2 components).");
aabb = AABB(Vector3(-1.5, 2, -2.5), Vector3(-4, -5, -6));
CHECK_MESSAGE(
- Math::is_equal_approx(aabb.get_area(), -120),
- "get_area() should return the expected value with negative size (3 components).");
+ Math::is_equal_approx(aabb.get_volume(), -120),
+ "get_volume() should return the expected value with negative size (3 components).");
aabb = AABB(Vector3(-1.5, 2, -2.5), Vector3(4, 0, 6));
CHECK_MESSAGE(
- aabb.has_no_area(),
- "Non-empty flat AABB should not have an area.");
+ aabb.has_no_volume(),
+ "Non-empty flat AABB should not have a volume.");
CHECK_MESSAGE(
- AABB().has_no_area(),
- "Empty AABB should not have an area.");
+ AABB().has_no_volume(),
+ "Empty AABB should not have a volume.");
}
TEST_CASE("[AABB] Surface getters") {
diff --git a/tests/test_array.h b/tests/test_array.h
index 3bd476fd27..05b4eaea2a 100644
--- a/tests/test_array.h
+++ b/tests/test_array.h
@@ -43,6 +43,25 @@
namespace TestArray {
+static inline Array build_array() {
+ return Array();
+}
+template <typename... Targs>
+static inline Array build_array(Variant item, Targs... Fargs) {
+ Array a = build_array(Fargs...);
+ a.push_front(item);
+ return a;
+}
+static inline Dictionary build_dictionary() {
+ return Dictionary();
+}
+template <typename... Targs>
+static inline Dictionary build_dictionary(Variant key, Variant item, Targs... Fargs) {
+ Dictionary d = build_dictionary(Fargs...);
+ d[key] = item;
+ return d;
+}
+
TEST_CASE("[Array] size(), clear(), and is_empty()") {
Array arr;
CHECK(arr.size() == 0);
@@ -232,6 +251,221 @@ TEST_CASE("[Array] max() and min()") {
CHECK(max == 5);
CHECK(min == 2);
}
+
+TEST_CASE("[Array] Duplicate array") {
+ // a = [1, [2, 2], {3: 3}]
+ Array a = build_array(1, build_array(2, 2), build_dictionary(3, 3));
+
+ // Deep copy
+ Array deep_a = a.duplicate(true);
+ CHECK_MESSAGE(deep_a.id() != a.id(), "Should create a new array");
+ CHECK_MESSAGE(Array(deep_a[1]).id() != Array(a[1]).id(), "Should clone nested array");
+ CHECK_MESSAGE(Dictionary(deep_a[2]).id() != Dictionary(a[2]).id(), "Should clone nested dictionary");
+ CHECK_EQ(deep_a, a);
+ deep_a.push_back(1);
+ CHECK_NE(deep_a, a);
+ deep_a.pop_back();
+ Array(deep_a[1]).push_back(1);
+ CHECK_NE(deep_a, a);
+ Array(deep_a[1]).pop_back();
+ CHECK_EQ(deep_a, a);
+
+ // Shallow copy
+ Array shallow_a = a.duplicate(false);
+ CHECK_MESSAGE(shallow_a.id() != a.id(), "Should create a new array");
+ CHECK_MESSAGE(Array(shallow_a[1]).id() == Array(a[1]).id(), "Should keep nested array");
+ CHECK_MESSAGE(Dictionary(shallow_a[2]).id() == Dictionary(a[2]).id(), "Should keep nested dictionary");
+ CHECK_EQ(shallow_a, a);
+ Array(shallow_a).push_back(1);
+ CHECK_NE(shallow_a, a);
+}
+
+TEST_CASE("[Array] Duplicate recursive array") {
+ // Self recursive
+ Array a;
+ a.push_back(a);
+
+ Array a_shallow = a.duplicate(false);
+ CHECK_EQ(a, a_shallow);
+
+ // Deep copy of recursive array endup with recursion limit and return
+ // an invalid result (multiple nested arrays), the point is we should
+ // not end up with a segfault and an error log should be printed
+ ERR_PRINT_OFF;
+ a.duplicate(true);
+ ERR_PRINT_ON;
+
+ // Nested recursive
+ Array a1;
+ Array a2;
+ a2.push_back(a1);
+ a1.push_back(a2);
+
+ Array a1_shallow = a1.duplicate(false);
+ CHECK_EQ(a1, a1_shallow);
+
+ // Same deep copy issue as above
+ ERR_PRINT_OFF;
+ a1.duplicate(true);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Array teardown will leak memory
+ a.clear();
+ a1.clear();
+ a2.clear();
+}
+
+TEST_CASE("[Array] Hash array") {
+ // a = [1, [2, 2], {3: 3}]
+ Array a = build_array(1, build_array(2, 2), build_dictionary(3, 3));
+ uint32_t original_hash = a.hash();
+
+ a.push_back(1);
+ CHECK_NE(a.hash(), original_hash);
+
+ a.pop_back();
+ CHECK_EQ(a.hash(), original_hash);
+
+ Array(a[1]).push_back(1);
+ CHECK_NE(a.hash(), original_hash);
+ Array(a[1]).pop_back();
+ CHECK_EQ(a.hash(), original_hash);
+
+ (Dictionary(a[2]))[1] = 1;
+ CHECK_NE(a.hash(), original_hash);
+ Dictionary(a[2]).erase(1);
+ CHECK_EQ(a.hash(), original_hash);
+
+ Array a2 = a.duplicate(true);
+ CHECK_EQ(a2.hash(), a.hash());
+}
+
+TEST_CASE("[Array] Hash recursive array") {
+ Array a1;
+ a1.push_back(a1);
+
+ Array a2;
+ a2.push_back(a2);
+
+ // Hash should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(a1.hash(), a2.hash());
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Array teardown will leak memory
+ a1.clear();
+ a2.clear();
+}
+
+TEST_CASE("[Array] Empty comparison") {
+ Array a1;
+ Array a2;
+
+ // test both operator== and operator!=
+ CHECK_EQ(a1, a2);
+ CHECK_FALSE(a1 != a2);
+}
+
+TEST_CASE("[Array] Flat comparison") {
+ Array a1 = build_array(1);
+ Array a2 = build_array(1);
+ Array other_a = build_array(2);
+
+ // test both operator== and operator!=
+ CHECK_EQ(a1, a1); // compare self
+ CHECK_FALSE(a1 != a1);
+ CHECK_EQ(a1, a2); // different equivalent arrays
+ CHECK_FALSE(a1 != a2);
+ CHECK_NE(a1, other_a); // different arrays with different content
+ CHECK_FALSE(a1 == other_a);
+}
+
+TEST_CASE("[Array] Nested array comparison") {
+ // a1 = [[[1], 2], 3]
+ Array a1 = build_array(build_array(build_array(1), 2), 3);
+
+ Array a2 = a1.duplicate(true);
+
+ // other_a = [[[1, 0], 2], 3]
+ Array other_a = build_array(build_array(build_array(1, 0), 2), 3);
+
+ // test both operator== and operator!=
+ CHECK_EQ(a1, a1); // compare self
+ CHECK_FALSE(a1 != a1);
+ CHECK_EQ(a1, a2); // different equivalent arrays
+ CHECK_FALSE(a1 != a2);
+ CHECK_NE(a1, other_a); // different arrays with different content
+ CHECK_FALSE(a1 == other_a);
+}
+
+TEST_CASE("[Array] Nested dictionary comparison") {
+ // a1 = [{1: 2}, 3]
+ Array a1 = build_array(build_dictionary(1, 2), 3);
+
+ Array a2 = a1.duplicate(true);
+
+ // other_a = [{1: 0}, 3]
+ Array other_a = build_array(build_dictionary(1, 0), 3);
+
+ // test both operator== and operator!=
+ CHECK_EQ(a1, a1); // compare self
+ CHECK_FALSE(a1 != a1);
+ CHECK_EQ(a1, a2); // different equivalent arrays
+ CHECK_FALSE(a1 != a2);
+ CHECK_NE(a1, other_a); // different arrays with different content
+ CHECK_FALSE(a1 == other_a);
+}
+
+TEST_CASE("[Array] Recursive comparison") {
+ Array a1;
+ a1.push_back(a1);
+
+ Array a2;
+ a2.push_back(a2);
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(a1, a2);
+ CHECK_FALSE(a1 != a2);
+ ERR_PRINT_ON;
+
+ a1.push_back(1);
+ a2.push_back(1);
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(a1, a2);
+ CHECK_FALSE(a1 != a2);
+ ERR_PRINT_ON;
+
+ a1.push_back(1);
+ a2.push_back(2);
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_NE(a1, a2);
+ CHECK_FALSE(a1 == a2);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Array tearndown will leak memory
+ a1.clear();
+ a2.clear();
+}
+
+TEST_CASE("[Array] Recursive self comparison") {
+ Array a1;
+ Array a2;
+ a2.push_back(a1);
+ a1.push_back(a2);
+
+ CHECK_EQ(a1, a1);
+ CHECK_FALSE(a1 != a1);
+
+ // Break the recursivity otherwise Array tearndown will leak memory
+ a1.clear();
+ a2.clear();
+}
+
} // namespace TestArray
#endif // TEST_ARRAY_H
diff --git a/tests/test_dictionary.h b/tests/test_dictionary.h
index b94cf36109..64d1d68e21 100644
--- a/tests/test_dictionary.h
+++ b/tests/test_dictionary.h
@@ -39,6 +39,25 @@
namespace TestDictionary {
+static inline Array build_array() {
+ return Array();
+}
+template <typename... Targs>
+static inline Array build_array(Variant item, Targs... Fargs) {
+ Array a = build_array(Fargs...);
+ a.push_front(item);
+ return a;
+}
+static inline Dictionary build_dictionary() {
+ return Dictionary();
+}
+template <typename... Targs>
+static inline Dictionary build_dictionary(Variant key, Variant item, Targs... Fargs) {
+ Dictionary d = build_dictionary(Fargs...);
+ d[key] = item;
+ return d;
+}
+
TEST_CASE("[Dictionary] Assignment using bracket notation ([])") {
Dictionary map;
map["Hello"] = 0;
@@ -61,15 +80,6 @@ TEST_CASE("[Dictionary] Assignment using bracket notation ([])") {
CHECK(int(map[false]) == 128);
}
-TEST_CASE("[Dictionary] == and != operators") {
- Dictionary map1;
- Dictionary map2;
- CHECK(map1 != map2);
- map1[1] = 3;
- map2 = map1;
- CHECK(map1 == map2);
-}
-
TEST_CASE("[Dictionary] get_key_lists()") {
Dictionary map;
List<Variant> keys;
@@ -155,5 +165,344 @@ TEST_CASE("[Dictionary] keys() and values()") {
CHECK(int(keys[0]) == 1);
CHECK(int(values[0]) == 3);
}
+
+TEST_CASE("[Dictionary] Duplicate dictionary") {
+ // d = {1: {1: 1}, {2: 2}: [2], [3]: 3}
+ Dictionary k2 = build_dictionary(2, 2);
+ Array k3 = build_array(3);
+ Dictionary d = build_dictionary(1, build_dictionary(1, 1), k2, build_array(2), k3, 3);
+
+ // Deep copy
+ Dictionary deep_d = d.duplicate(true);
+ CHECK_MESSAGE(deep_d.id() != d.id(), "Should create a new dictionary");
+ CHECK_MESSAGE(Dictionary(deep_d[1]).id() != Dictionary(d[1]).id(), "Should clone nested dictionary");
+ CHECK_MESSAGE(Array(deep_d[k2]).id() != Array(d[k2]).id(), "Should clone nested array");
+ CHECK_EQ(deep_d, d);
+ deep_d[0] = 0;
+ CHECK_NE(deep_d, d);
+ deep_d.erase(0);
+ Dictionary(deep_d[1]).operator[](0) = 0;
+ CHECK_NE(deep_d, d);
+ Dictionary(deep_d[1]).erase(0);
+ CHECK_EQ(deep_d, d);
+ // Keys should also be copied
+ k2[0] = 0;
+ CHECK_NE(deep_d, d);
+ k2.erase(0);
+ CHECK_EQ(deep_d, d);
+ k3.push_back(0);
+ CHECK_NE(deep_d, d);
+ k3.pop_back();
+ CHECK_EQ(deep_d, d);
+
+ // Shallow copy
+ Dictionary shallow_d = d.duplicate(false);
+ CHECK_MESSAGE(shallow_d.id() != d.id(), "Should create a new array");
+ CHECK_MESSAGE(Dictionary(shallow_d[1]).id() == Dictionary(d[1]).id(), "Should keep nested dictionary");
+ CHECK_MESSAGE(Array(shallow_d[2]).id() == Array(d[2]).id(), "Should keep nested array");
+ CHECK_EQ(shallow_d, d);
+ shallow_d[0] = 0;
+ CHECK_NE(shallow_d, d);
+ shallow_d.erase(0);
+#if 0 // TODO: recursion in dict key currently is buggy
+ // Keys should also be shallowed
+ k2[0] = 0;
+ CHECK_EQ(shallow_d, d);
+ k2.erase(0);
+ k3.push_back(0);
+ CHECK_EQ(shallow_d, d);
+#endif
+}
+
+TEST_CASE("[Dictionary] Duplicate recursive dictionary") {
+ // Self recursive
+ Dictionary d;
+ d[1] = d;
+
+ Dictionary d_shallow = d.duplicate(false);
+ CHECK_EQ(d, d_shallow);
+
+ // Deep copy of recursive dictionary endup with recursion limit and return
+ // an invalid result (multiple nested dictionaries), the point is we should
+ // not end up with a segfault and an error log should be printed
+ ERR_PRINT_OFF;
+ d.duplicate(true);
+ ERR_PRINT_ON;
+
+ // Nested recursive
+ Dictionary d1;
+ Dictionary d2;
+ d1[2] = d2;
+ d2[1] = d1;
+
+ Dictionary d1_shallow = d1.duplicate(false);
+ CHECK_EQ(d1, d1_shallow);
+
+ // Same deep copy issue as above
+ ERR_PRINT_OFF;
+ d1.duplicate(true);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d.clear();
+ d1.clear();
+ d2.clear();
+}
+
+#if 0 // TODO: duplicate recursion in dict key is currently buggy
+TEST_CASE("[Dictionary] Duplicate recursive dictionary on keys") {
+ // Self recursive
+ Dictionary d;
+ d[d] = d;
+
+ Dictionary d_shallow = d.duplicate(false);
+ CHECK_EQ(d, d_shallow);
+
+ // Deep copy of recursive dictionary endup with recursion limit and return
+ // an invalid result (multiple nested dictionaries), the point is we should
+ // not end up with a segfault and an error log should be printed
+ ERR_PRINT_OFF;
+ d.duplicate(true);
+ ERR_PRINT_ON;
+
+ // Nested recursive
+ Dictionary d1;
+ Dictionary d2;
+ d1[d2] = d2;
+ d2[d1] = d1;
+
+ Dictionary d1_shallow = d1.duplicate(false);
+ CHECK_EQ(d1, d1_shallow);
+
+ // Same deep copy issue as above
+ ERR_PRINT_OFF;
+ d1.duplicate(true);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d.clear();
+ d1.clear();
+ d2.clear();
+}
+#endif
+
+TEST_CASE("[Dictionary] Hash dictionary") {
+ // d = {1: {1: 1}, {2: 2}: [2], [3]: 3}
+ Dictionary k2 = build_dictionary(2, 2);
+ Array k3 = build_array(3);
+ Dictionary d = build_dictionary(1, build_dictionary(1, 1), k2, build_array(2), k3, 3);
+ uint32_t original_hash = d.hash();
+
+ // Modify dict change the hash
+ d[0] = 0;
+ CHECK_NE(d.hash(), original_hash);
+ d.erase(0);
+ CHECK_EQ(d.hash(), original_hash);
+
+ // Modify nested item change the hash
+ Dictionary(d[1]).operator[](0) = 0;
+ CHECK_NE(d.hash(), original_hash);
+ Dictionary(d[1]).erase(0);
+ Array(d[k2]).push_back(0);
+ CHECK_NE(d.hash(), original_hash);
+ Array(d[k2]).pop_back();
+
+ // Modify a key change the hash
+ k2[0] = 0;
+ CHECK_NE(d.hash(), original_hash);
+ k2.erase(0);
+ CHECK_EQ(d.hash(), original_hash);
+ k3.push_back(0);
+ CHECK_NE(d.hash(), original_hash);
+ k3.pop_back();
+ CHECK_EQ(d.hash(), original_hash);
+
+ // Duplication doesn't change the hash
+ Dictionary d2 = d.duplicate(true);
+ CHECK_EQ(d2.hash(), original_hash);
+}
+
+TEST_CASE("[Dictionary] Hash recursive dictionary") {
+ Dictionary d;
+ d[1] = d;
+
+ // Hash should reach recursion limit, we just make sure this doesn't blow up
+ ERR_PRINT_OFF;
+ d.hash();
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d.clear();
+}
+
+#if 0 // TODO: recursion in dict key is currently buggy
+TEST_CASE("[Dictionary] Hash recursive dictionary on keys") {
+ Dictionary d;
+ d[d] = 1;
+
+ // Hash should reach recursion limit, we just make sure this doesn't blow up
+ ERR_PRINT_OFF;
+ d.hash();
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d.clear();
+}
+#endif
+
+TEST_CASE("[Dictionary] Empty comparison") {
+ Dictionary d1;
+ Dictionary d2;
+
+ // test both operator== and operator!=
+ CHECK_EQ(d1, d2);
+ CHECK_FALSE(d1 != d2);
+}
+
+TEST_CASE("[Dictionary] Flat comparison") {
+ Dictionary d1 = build_dictionary(1, 1);
+ Dictionary d2 = build_dictionary(1, 1);
+ Dictionary other_d = build_dictionary(2, 1);
+
+ // test both operator== and operator!=
+ CHECK_EQ(d1, d1); // compare self
+ CHECK_FALSE(d1 != d1);
+ CHECK_EQ(d1, d2); // different equivalent arrays
+ CHECK_FALSE(d1 != d2);
+ CHECK_NE(d1, other_d); // different arrays with different content
+ CHECK_FALSE(d1 == other_d);
+}
+
+TEST_CASE("[Dictionary] Nested dictionary comparison") {
+ // d1 = {1: {2: {3: 4}}}
+ Dictionary d1 = build_dictionary(1, build_dictionary(2, build_dictionary(3, 4)));
+
+ Dictionary d2 = d1.duplicate(true);
+
+ // other_d = {1: {2: {3: 0}}}
+ Dictionary other_d = build_dictionary(1, build_dictionary(2, build_dictionary(3, 0)));
+
+ // test both operator== and operator!=
+ CHECK_EQ(d1, d1); // compare self
+ CHECK_FALSE(d1 != d1);
+ CHECK_EQ(d1, d2); // different equivalent arrays
+ CHECK_FALSE(d1 != d2);
+ CHECK_NE(d1, other_d); // different arrays with different content
+ CHECK_FALSE(d1 == other_d);
+}
+
+TEST_CASE("[Dictionary] Nested array comparison") {
+ // d1 = {1: [2, 3]}
+ Dictionary d1 = build_dictionary(1, build_array(2, 3));
+
+ Dictionary d2 = d1.duplicate(true);
+
+ // other_d = {1: [2, 0]}
+ Dictionary other_d = build_dictionary(1, build_array(2, 0));
+
+ // test both operator== and operator!=
+ CHECK_EQ(d1, d1); // compare self
+ CHECK_FALSE(d1 != d1);
+ CHECK_EQ(d1, d2); // different equivalent arrays
+ CHECK_FALSE(d1 != d2);
+ CHECK_NE(d1, other_d); // different arrays with different content
+ CHECK_FALSE(d1 == other_d);
+}
+
+TEST_CASE("[Dictionary] Recursive comparison") {
+ Dictionary d1;
+ d1[1] = d1;
+
+ Dictionary d2;
+ d2[1] = d2;
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(d1, d2);
+ CHECK_FALSE(d1 != d2);
+ ERR_PRINT_ON;
+
+ d1[2] = 2;
+ d2[2] = 2;
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(d1, d2);
+ CHECK_FALSE(d1 != d2);
+ ERR_PRINT_ON;
+
+ d1[3] = 3;
+ d2[3] = 0;
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_NE(d1, d2);
+ CHECK_FALSE(d1 == d2);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d1.clear();
+ d2.clear();
+}
+
+#if 0 // TODO: recursion in dict key is currently buggy
+TEST_CASE("[Dictionary] Recursive comparison on keys") {
+ Dictionary d1;
+ // Hash computation should reach recursion limit
+ ERR_PRINT_OFF;
+ d1[d1] = 1;
+ ERR_PRINT_ON;
+
+ Dictionary d2;
+ // Hash computation should reach recursion limit
+ ERR_PRINT_OFF;
+ d2[d2] = 1;
+ ERR_PRINT_ON;
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(d1, d2);
+ CHECK_FALSE(d1 != d2);
+ ERR_PRINT_ON;
+
+ d1[2] = 2;
+ d2[2] = 2;
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_EQ(d1, d2);
+ CHECK_FALSE(d1 != d2);
+ ERR_PRINT_ON;
+
+ d1[3] = 3;
+ d2[3] = 0;
+
+ // Comparison should reach recursion limit
+ ERR_PRINT_OFF;
+ CHECK_NE(d1, d2);
+ CHECK_FALSE(d1 == d2);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d1.clear();
+ d2.clear();
+}
+#endif
+
+TEST_CASE("[Dictionary] Recursive self comparison") {
+ Dictionary d1;
+ Dictionary d2;
+ d1[1] = d2;
+ d2[1] = d1;
+
+ CHECK_EQ(d1, d1);
+ CHECK_FALSE(d1 != d1);
+
+ // Break the recursivity otherwise Dictionary teardown will leak memory
+ d1.clear();
+ d2.clear();
+}
+
} // namespace TestDictionary
+
#endif // TEST_DICTIONARY_H
diff --git a/tests/test_macros.h b/tests/test_macros.h
index 2f0bc6dcfa..6968f9df1f 100644
--- a/tests/test_macros.h
+++ b/tests/test_macros.h
@@ -33,6 +33,7 @@
#include "core/object/callable_method_pointer.h"
#include "core/object/class_db.h"
+#include "core/string/print_string.h"
#include "core/templates/map.h"
#include "core/variant/variant.h"
diff --git a/tests/test_variant.h b/tests/test_variant.h
index 598fe488d7..0d16fa092c 100644
--- a/tests/test_variant.h
+++ b/tests/test_variant.h
@@ -38,6 +38,25 @@
namespace TestVariant {
+static inline Array build_array() {
+ return Array();
+}
+template <typename... Targs>
+static inline Array build_array(Variant item, Targs... Fargs) {
+ Array a = build_array(Fargs...);
+ a.push_front(item);
+ return a;
+}
+static inline Dictionary build_dictionary() {
+ return Dictionary();
+}
+template <typename... Targs>
+static inline Dictionary build_dictionary(Variant key, Variant item, Targs... Fargs) {
+ Dictionary d = build_dictionary(Fargs...);
+ d[key] = item;
+ return d;
+}
+
TEST_CASE("[Variant] Writer and parser integer") {
int64_t a32 = 2147483648; // 2^31, so out of bounds for 32-bit signed int [-2^31, +2^31-1].
String a32_str;
@@ -700,6 +719,198 @@ TEST_CASE("[Variant] Assignment To Color from Bool,Int,Float,String,Vec2,Vec2i,V
vec3i_v = col_v;
CHECK(vec3i_v.get_type() == Variant::COLOR);
}
+TEST_CASE("[Variant] Writer and parser array") {
+ Array a = build_array(1, String("hello"), build_array(Variant()));
+ String a_str;
+ VariantWriter::write_to_string(a, a_str);
+
+ CHECK_EQ(a_str, "[1, \"hello\", [null]]");
+
+ VariantParser::StreamString ss;
+ String errs;
+ int line;
+ Variant a_parsed;
+
+ ss.s = a_str;
+ VariantParser::parse(&ss, a_parsed, errs, line);
+
+ CHECK_MESSAGE(a_parsed == Variant(a), "Should parse back.");
+}
+
+TEST_CASE("[Variant] Writer recursive array") {
+ // There is no way to accurately represent a recursive array,
+ // the only thing we can do is make sure the writer doesn't blow up
+
+ // Self recursive
+ Array a;
+ a.push_back(a);
+
+ // Writer should it recursion limit while visiting the array
+ ERR_PRINT_OFF;
+ String a_str;
+ VariantWriter::write_to_string(a, a_str);
+ ERR_PRINT_ON;
+
+ // Nested recursive
+ Array a1;
+ Array a2;
+ a1.push_back(a2);
+ a2.push_back(a1);
+
+ // Writer should it recursion limit while visiting the array
+ ERR_PRINT_OFF;
+ String a1_str;
+ VariantWriter::write_to_string(a1, a1_str);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary tearndown will leak memory
+ a.clear();
+ a1.clear();
+ a2.clear();
+}
+
+TEST_CASE("[Variant] Writer and parser dictionary") {
+ // d = {{1: 2}: 3, 4: "hello", 5: {null: []}}
+ Dictionary d = build_dictionary(build_dictionary(1, 2), 3, 4, String("hello"), 5, build_dictionary(Variant(), build_array()));
+ String d_str;
+ VariantWriter::write_to_string(d, d_str);
+
+ CHECK_EQ(d_str, "{\n4: \"hello\",\n5: {\nnull: []\n},\n{\n1: 2\n}: 3\n}");
+
+ VariantParser::StreamString ss;
+ String errs;
+ int line;
+ Variant d_parsed;
+
+ ss.s = d_str;
+ VariantParser::parse(&ss, d_parsed, errs, line);
+
+ CHECK_MESSAGE(d_parsed == Variant(d), "Should parse back.");
+}
+
+TEST_CASE("[Variant] Writer recursive dictionary") {
+ // There is no way to accurately represent a recursive dictionary,
+ // the only thing we can do is make sure the writer doesn't blow up
+
+ // Self recursive
+ Dictionary d;
+ d[1] = d;
+
+ // Writer should it recursion limit while visiting the dictionary
+ ERR_PRINT_OFF;
+ String d_str;
+ VariantWriter::write_to_string(d, d_str);
+ ERR_PRINT_ON;
+
+ // Nested recursive
+ Dictionary d1;
+ Dictionary d2;
+ d1[2] = d2;
+ d2[1] = d1;
+
+ // Writer should it recursion limit while visiting the dictionary
+ ERR_PRINT_OFF;
+ String d1_str;
+ VariantWriter::write_to_string(d1, d1_str);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary tearndown will leak memory
+ d.clear();
+ d1.clear();
+ d2.clear();
+}
+
+#if 0 // TODO: recursion in dict key is currently buggy
+TEST_CASE("[Variant] Writer recursive dictionary on keys") {
+ // There is no way to accurately represent a recursive dictionary,
+ // the only thing we can do is make sure the writer doesn't blow up
+
+ // Self recursive
+ Dictionary d;
+ d[d] = 1;
+
+ // Writer should it recursion limit while visiting the dictionary
+ ERR_PRINT_OFF;
+ String d_str;
+ VariantWriter::write_to_string(d, d_str);
+ ERR_PRINT_ON;
+
+ // Nested recursive
+ Dictionary d1;
+ Dictionary d2;
+ d1[d2] = 2;
+ d2[d1] = 1;
+
+ // Writer should it recursion limit while visiting the dictionary
+ ERR_PRINT_OFF;
+ String d1_str;
+ VariantWriter::write_to_string(d1, d1_str);
+ ERR_PRINT_ON;
+
+ // Break the recursivity otherwise Dictionary tearndown will leak memory
+ d.clear();
+ d1.clear();
+ d2.clear();
+}
+#endif
+
+TEST_CASE("[Variant] Basic comparison") {
+ CHECK_EQ(Variant(1), Variant(1));
+ CHECK_FALSE(Variant(1) != Variant(1));
+ CHECK_NE(Variant(1), Variant(2));
+ CHECK_EQ(Variant(String("foo")), Variant(String("foo")));
+ CHECK_NE(Variant(String("foo")), Variant(String("bar")));
+ // Check "empty" version of different types are not equivalents
+ CHECK_NE(Variant(0), Variant());
+ CHECK_NE(Variant(String()), Variant());
+ CHECK_NE(Variant(Array()), Variant());
+ CHECK_NE(Variant(Dictionary()), Variant());
+}
+
+TEST_CASE("[Variant] Nested array comparison") {
+ Array a1 = build_array(1, build_array(2, 3));
+ Array a2 = build_array(1, build_array(2, 3));
+ Array a_other = build_array(1, build_array(2, 4));
+ Variant v_a1 = a1;
+ Variant v_a1_ref2 = a1;
+ Variant v_a2 = a2;
+ Variant v_a_other = a_other;
+
+ // test both operator== and operator!=
+ CHECK_EQ(v_a1, v_a1);
+ CHECK_FALSE(v_a1 != v_a1);
+ CHECK_EQ(v_a1, v_a1_ref2);
+ CHECK_FALSE(v_a1 != v_a1_ref2);
+ CHECK_EQ(v_a1, v_a2);
+ CHECK_FALSE(v_a1 != v_a2);
+ CHECK_NE(v_a1, v_a_other);
+ CHECK_FALSE(v_a1 == v_a_other);
+}
+
+TEST_CASE("[Variant] Nested dictionary comparison") {
+ Dictionary d1 = build_dictionary(build_dictionary(1, 2), build_dictionary(3, 4));
+ Dictionary d2 = build_dictionary(build_dictionary(1, 2), build_dictionary(3, 4));
+ Dictionary d_other_key = build_dictionary(build_dictionary(1, 0), build_dictionary(3, 4));
+ Dictionary d_other_val = build_dictionary(build_dictionary(1, 2), build_dictionary(3, 0));
+ Variant v_d1 = d1;
+ Variant v_d1_ref2 = d1;
+ Variant v_d2 = d2;
+ Variant v_d_other_key = d_other_key;
+ Variant v_d_other_val = d_other_val;
+
+ // test both operator== and operator!=
+ CHECK_EQ(v_d1, v_d1);
+ CHECK_FALSE(v_d1 != v_d1);
+ CHECK_EQ(v_d1, v_d1_ref2);
+ CHECK_FALSE(v_d1 != v_d1_ref2);
+ CHECK_EQ(v_d1, v_d2);
+ CHECK_FALSE(v_d1 != v_d2);
+ CHECK_NE(v_d1, v_d_other_key);
+ CHECK_FALSE(v_d1 == v_d_other_key);
+ CHECK_NE(v_d1, v_d_other_val);
+ CHECK_FALSE(v_d1 == v_d_other_val);
+}
+
} // namespace TestVariant
#endif // TEST_VARIANT_H
diff --git a/thirdparty/README.md b/thirdparty/README.md
index 3ba5504920..25d2e1cfe3 100644
--- a/thirdparty/README.md
+++ b/thirdparty/README.md
@@ -189,7 +189,7 @@ Files extracted from upstream source:
## harfbuzz
- Upstream: https://github.com/harfbuzz/harfbuzz
-- Version: 3.0.0 (9c387e20d65a7a366ac270d789f6ad266014c9e0, 2021)
+- Version: 3.1.1 (cd5c6cd0419ac5e4de975d6c476fb760bf06d2ce, 2021)
- License: MIT
Files extracted from upstream source:
diff --git a/thirdparty/harfbuzz/src/hb-aat-layout-bsln-table.hh b/thirdparty/harfbuzz/src/hb-aat-layout-bsln-table.hh
index cd36fc8953..b52844e75d 100644
--- a/thirdparty/harfbuzz/src/hb-aat-layout-bsln-table.hh
+++ b/thirdparty/harfbuzz/src/hb-aat-layout-bsln-table.hh
@@ -82,7 +82,7 @@ struct BaselineTableFormat2Part
}
protected:
- HBGlyphID stdGlyph; /* The specific glyph index number in this
+ HBGlyphID16 stdGlyph; /* The specific glyph index number in this
* font that is used to set the baseline values.
* This is the standard glyph.
* This glyph must contain a set of control points
@@ -105,7 +105,7 @@ struct BaselineTableFormat3Part
}
protected:
- HBGlyphID stdGlyph; /* ditto */
+ HBGlyphID16 stdGlyph; /* ditto */
HBUINT16 ctlPoints[32]; /* ditto */
Lookup<HBUINT16>
lookupTable; /* Lookup table that maps glyphs to their
diff --git a/thirdparty/harfbuzz/src/hb-aat-layout-common.hh b/thirdparty/harfbuzz/src/hb-aat-layout-common.hh
index e70ce97174..1dcbe92904 100644
--- a/thirdparty/harfbuzz/src/hb-aat-layout-common.hh
+++ b/thirdparty/harfbuzz/src/hb-aat-layout-common.hh
@@ -96,8 +96,8 @@ struct LookupSegmentSingle
return_trace (c->check_struct (this) && value.sanitize (c, base));
}
- HBGlyphID last; /* Last GlyphID in this segment */
- HBGlyphID first; /* First GlyphID in this segment */
+ HBGlyphID16 last; /* Last GlyphID in this segment */
+ HBGlyphID16 first; /* First GlyphID in this segment */
T value; /* The lookup value (only one) */
public:
DEFINE_SIZE_STATIC (4 + T::static_size);
@@ -162,11 +162,11 @@ struct LookupSegmentArray
TRACE_SANITIZE (this);
return_trace (c->check_struct (this) &&
first <= last &&
- valuesZ.sanitize (c, base, last - first + 1, hb_forward<Ts> (ds)...));
+ valuesZ.sanitize (c, base, last - first + 1, std::forward<Ts> (ds)...));
}
- HBGlyphID last; /* Last GlyphID in this segment */
- HBGlyphID first; /* First GlyphID in this segment */
+ HBGlyphID16 last; /* Last GlyphID in this segment */
+ HBGlyphID16 first; /* First GlyphID in this segment */
NNOffset16To<UnsizedArrayOf<T>>
valuesZ; /* A 16-bit offset from the start of
* the table to the data. */
@@ -225,7 +225,7 @@ struct LookupSingle
return_trace (c->check_struct (this) && value.sanitize (c, base));
}
- HBGlyphID glyph; /* Last GlyphID */
+ HBGlyphID16 glyph; /* Last GlyphID */
T value; /* The lookup value (only one) */
public:
DEFINE_SIZE_STATIC (2 + T::static_size);
@@ -287,7 +287,7 @@ struct LookupFormat8
protected:
HBUINT16 format; /* Format identifier--format = 8 */
- HBGlyphID firstGlyph; /* First glyph index included in the trimmed array. */
+ HBGlyphID16 firstGlyph; /* First glyph index included in the trimmed array. */
HBUINT16 glyphCount; /* Total number of glyphs (equivalent to the last
* glyph minus the value of firstGlyph plus 1). */
UnsizedArrayOf<T>
@@ -329,7 +329,7 @@ struct LookupFormat10
protected:
HBUINT16 format; /* Format identifier--format = 8 */
HBUINT16 valueSize; /* Byte size of each value. */
- HBGlyphID firstGlyph; /* First glyph index included in the trimmed array. */
+ HBGlyphID16 firstGlyph; /* First glyph index included in the trimmed array. */
HBUINT16 glyphCount; /* Total number of glyphs (equivalent to the last
* glyph minus the value of firstGlyph plus 1). */
UnsizedArrayOf<HBUINT8>
@@ -661,7 +661,7 @@ struct ClassTable
return_trace (c->check_struct (this) && classArray.sanitize (c));
}
protected:
- HBGlyphID firstGlyph; /* First glyph index included in the trimmed array. */
+ HBGlyphID16 firstGlyph; /* First glyph index included in the trimmed array. */
Array16Of<HBUCHAR> classArray; /* The class codes (indexed by glyph index minus
* firstGlyph). */
public:
diff --git a/thirdparty/harfbuzz/src/hb-aat-layout-just-table.hh b/thirdparty/harfbuzz/src/hb-aat-layout-just-table.hh
index 556d4ad75b..d745c11431 100644
--- a/thirdparty/harfbuzz/src/hb-aat-layout-just-table.hh
+++ b/thirdparty/harfbuzz/src/hb-aat-layout-just-table.hh
@@ -100,7 +100,7 @@ struct UnconditionalAddGlyphAction
protected:
ActionSubrecordHeader
header;
- HBGlyphID addGlyph; /* Glyph that should be added if the distance factor
+ HBGlyphID16 addGlyph; /* Glyph that should be added if the distance factor
* is growing. */
public:
@@ -121,11 +121,11 @@ struct ConditionalAddGlyphAction
HBFixed substThreshold; /* Distance growth factor (in ems) at which
* this glyph is replaced and the growth factor
* recalculated. */
- HBGlyphID addGlyph; /* Glyph to be added as kashida. If this value is
+ HBGlyphID16 addGlyph; /* Glyph to be added as kashida. If this value is
* 0xFFFF, no extra glyph will be added. Note that
* generally when a glyph is added, justification
* will need to be redone. */
- HBGlyphID substGlyph; /* Glyph to be substituted for this glyph if the
+ HBGlyphID16 substGlyph; /* Glyph to be substituted for this glyph if the
* growth factor equals or exceeds the value of
* substThreshold. */
public:
@@ -170,7 +170,7 @@ struct RepeatedAddGlyphAction
ActionSubrecordHeader
header;
HBUINT16 flags; /* Currently unused; set to 0. */
- HBGlyphID glyph; /* Glyph that should be added if the distance factor
+ HBGlyphID16 glyph; /* Glyph that should be added if the distance factor
* is growing. */
public:
DEFINE_SIZE_STATIC (10);
diff --git a/thirdparty/harfbuzz/src/hb-aat-layout-kerx-table.hh b/thirdparty/harfbuzz/src/hb-aat-layout-kerx-table.hh
index d0eacf0e61..0354b47d5a 100644
--- a/thirdparty/harfbuzz/src/hb-aat-layout-kerx-table.hh
+++ b/thirdparty/harfbuzz/src/hb-aat-layout-kerx-table.hh
@@ -82,8 +82,8 @@ struct KernPair
}
protected:
- HBGlyphID left;
- HBGlyphID right;
+ HBGlyphID16 left;
+ HBGlyphID16 right;
FWORD value;
public:
DEFINE_SIZE_STATIC (6);
@@ -775,11 +775,11 @@ struct KerxSubTable
unsigned int subtable_type = get_type ();
TRACE_DISPATCH (this, subtable_type);
switch (subtable_type) {
- case 0: return_trace (c->dispatch (u.format0, hb_forward<Ts> (ds)...));
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
- case 4: return_trace (c->dispatch (u.format4, hb_forward<Ts> (ds)...));
- case 6: return_trace (c->dispatch (u.format6, hb_forward<Ts> (ds)...));
+ case 0: return_trace (c->dispatch (u.format0, std::forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
+ case 4: return_trace (c->dispatch (u.format4, std::forward<Ts> (ds)...));
+ case 6: return_trace (c->dispatch (u.format6, std::forward<Ts> (ds)...));
default: return_trace (c->default_return_value ());
}
}
diff --git a/thirdparty/harfbuzz/src/hb-aat-layout-morx-table.hh b/thirdparty/harfbuzz/src/hb-aat-layout-morx-table.hh
index a807bdcfc5..b77c1f4d44 100644
--- a/thirdparty/harfbuzz/src/hb-aat-layout-morx-table.hh
+++ b/thirdparty/harfbuzz/src/hb-aat-layout-morx-table.hh
@@ -243,21 +243,21 @@ struct ContextualSubtable
if (buffer->idx == buffer->len && !mark_set)
return;
- const HBGlyphID *replacement;
+ const HBGlyphID16 *replacement;
replacement = nullptr;
if (Types::extended)
{
if (entry.data.markIndex != 0xFFFF)
{
- const Lookup<HBGlyphID> &lookup = subs[entry.data.markIndex];
+ const Lookup<HBGlyphID16> &lookup = subs[entry.data.markIndex];
replacement = lookup.get_value (buffer->info[mark].codepoint, driver->num_glyphs);
}
}
else
{
unsigned int offset = entry.data.markIndex + buffer->info[mark].codepoint;
- const UnsizedArrayOf<HBGlyphID> &subs_old = (const UnsizedArrayOf<HBGlyphID> &) subs;
+ const UnsizedArrayOf<HBGlyphID16> &subs_old = (const UnsizedArrayOf<HBGlyphID16> &) subs;
replacement = &subs_old[Types::wordOffsetToIndex (offset, table, subs_old.arrayZ)];
if (!replacement->sanitize (&c->sanitizer) || !*replacement)
replacement = nullptr;
@@ -278,14 +278,14 @@ struct ContextualSubtable
{
if (entry.data.currentIndex != 0xFFFF)
{
- const Lookup<HBGlyphID> &lookup = subs[entry.data.currentIndex];
+ const Lookup<HBGlyphID16> &lookup = subs[entry.data.currentIndex];
replacement = lookup.get_value (buffer->info[idx].codepoint, driver->num_glyphs);
}
}
else
{
unsigned int offset = entry.data.currentIndex + buffer->info[idx].codepoint;
- const UnsizedArrayOf<HBGlyphID> &subs_old = (const UnsizedArrayOf<HBGlyphID> &) subs;
+ const UnsizedArrayOf<HBGlyphID16> &subs_old = (const UnsizedArrayOf<HBGlyphID16> &) subs;
replacement = &subs_old[Types::wordOffsetToIndex (offset, table, subs_old.arrayZ)];
if (!replacement->sanitize (&c->sanitizer) || !*replacement)
replacement = nullptr;
@@ -315,7 +315,7 @@ struct ContextualSubtable
bool has_glyph_classes;
unsigned int mark;
const ContextualSubtable *table;
- const UnsizedListOfOffset16To<Lookup<HBGlyphID>, HBUINT, false> &subs;
+ const UnsizedListOfOffset16To<Lookup<HBGlyphID16>, HBUINT, false> &subs;
};
bool apply (hb_aat_apply_context_t *c) const
@@ -359,7 +359,7 @@ struct ContextualSubtable
protected:
StateTable<Types, EntryData>
machine;
- NNOffsetTo<UnsizedListOfOffset16To<Lookup<HBGlyphID>, HBUINT, false>, HBUINT>
+ NNOffsetTo<UnsizedListOfOffset16To<Lookup<HBGlyphID16>, HBUINT, false>, HBUINT>
substitutionTables;
public:
DEFINE_SIZE_STATIC (20);
@@ -531,7 +531,7 @@ struct LigatureSubtable
if (action & (LigActionStore | LigActionLast))
{
ligature_idx = Types::offsetToIndex (ligature_idx, table, ligature.arrayZ);
- const HBGlyphID &ligatureData = ligature[ligature_idx];
+ const HBGlyphID16 &ligatureData = ligature[ligature_idx];
if (unlikely (!ligatureData.sanitize (&c->sanitizer))) break;
hb_codepoint_t lig = ligatureData;
@@ -565,7 +565,7 @@ struct LigatureSubtable
const LigatureSubtable *table;
const UnsizedArrayOf<HBUINT32> &ligAction;
const UnsizedArrayOf<HBUINT16> &component;
- const UnsizedArrayOf<HBGlyphID> &ligature;
+ const UnsizedArrayOf<HBGlyphID16> &ligature;
unsigned int match_length;
unsigned int match_positions[HB_MAX_CONTEXT_LENGTH];
};
@@ -597,7 +597,7 @@ struct LigatureSubtable
ligAction; /* Offset to the ligature action table. */
NNOffsetTo<UnsizedArrayOf<HBUINT16>, HBUINT>
component; /* Offset to the component table. */
- NNOffsetTo<UnsizedArrayOf<HBGlyphID>, HBUINT>
+ NNOffsetTo<UnsizedArrayOf<HBGlyphID16>, HBUINT>
ligature; /* Offset to the actual ligature lists. */
public:
DEFINE_SIZE_STATIC (28);
@@ -620,7 +620,7 @@ struct NoncontextualSubtable
unsigned int count = c->buffer->len;
for (unsigned int i = 0; i < count; i++)
{
- const HBGlyphID *replacement = substitute.get_value (info[i].codepoint, num_glyphs);
+ const HBGlyphID16 *replacement = substitute.get_value (info[i].codepoint, num_glyphs);
if (replacement)
{
info[i].codepoint = *replacement;
@@ -641,7 +641,7 @@ struct NoncontextualSubtable
}
protected:
- Lookup<HBGlyphID> substitute;
+ Lookup<HBGlyphID16> substitute;
public:
DEFINE_SIZE_MIN (2);
};
@@ -744,7 +744,7 @@ struct InsertionSubtable
unsigned int count = (flags & MarkedInsertCount);
if (unlikely ((buffer->max_ops -= count) <= 0)) return;
unsigned int start = entry.data.markedInsertIndex;
- const HBGlyphID *glyphs = &insertionAction[start];
+ const HBGlyphID16 *glyphs = &insertionAction[start];
if (unlikely (!c->sanitizer.check_array (glyphs, count))) count = 0;
bool before = flags & MarkedInsertBefore;
@@ -772,7 +772,7 @@ struct InsertionSubtable
unsigned int count = (flags & CurrentInsertCount) >> 5;
if (unlikely ((buffer->max_ops -= count) <= 0)) return;
unsigned int start = entry.data.currentInsertIndex;
- const HBGlyphID *glyphs = &insertionAction[start];
+ const HBGlyphID16 *glyphs = &insertionAction[start];
if (unlikely (!c->sanitizer.check_array (glyphs, count))) count = 0;
bool before = flags & CurrentInsertBefore;
@@ -810,7 +810,7 @@ struct InsertionSubtable
private:
hb_aat_apply_context_t *c;
unsigned int mark;
- const UnsizedArrayOf<HBGlyphID> &insertionAction;
+ const UnsizedArrayOf<HBGlyphID16> &insertionAction;
};
bool apply (hb_aat_apply_context_t *c) const
@@ -836,7 +836,7 @@ struct InsertionSubtable
protected:
StateTable<Types, EntryData>
machine;
- NNOffsetTo<UnsizedArrayOf<HBGlyphID>, HBUINT>
+ NNOffsetTo<UnsizedArrayOf<HBGlyphID16>, HBUINT>
insertionAction; /* Byte offset from stateHeader to the start of
* the insertion glyph table. */
public:
@@ -906,11 +906,11 @@ struct ChainSubtable
unsigned int subtable_type = get_type ();
TRACE_DISPATCH (this, subtable_type);
switch (subtable_type) {
- case Rearrangement: return_trace (c->dispatch (u.rearrangement, hb_forward<Ts> (ds)...));
- case Contextual: return_trace (c->dispatch (u.contextual, hb_forward<Ts> (ds)...));
- case Ligature: return_trace (c->dispatch (u.ligature, hb_forward<Ts> (ds)...));
- case Noncontextual: return_trace (c->dispatch (u.noncontextual, hb_forward<Ts> (ds)...));
- case Insertion: return_trace (c->dispatch (u.insertion, hb_forward<Ts> (ds)...));
+ case Rearrangement: return_trace (c->dispatch (u.rearrangement, std::forward<Ts> (ds)...));
+ case Contextual: return_trace (c->dispatch (u.contextual, std::forward<Ts> (ds)...));
+ case Ligature: return_trace (c->dispatch (u.ligature, std::forward<Ts> (ds)...));
+ case Noncontextual: return_trace (c->dispatch (u.noncontextual, std::forward<Ts> (ds)...));
+ case Insertion: return_trace (c->dispatch (u.insertion, std::forward<Ts> (ds)...));
default: return_trace (c->default_return_value ());
}
}
diff --git a/thirdparty/harfbuzz/src/hb-algs.hh b/thirdparty/harfbuzz/src/hb-algs.hh
index bbe097fe01..446d87e28b 100644
--- a/thirdparty/harfbuzz/src/hb-algs.hh
+++ b/thirdparty/harfbuzz/src/hb-algs.hh
@@ -34,6 +34,9 @@
#include "hb-null.hh"
#include "hb-number.hh"
+#include <algorithm>
+#include <initializer_list>
+#include <new>
/*
* Flags
@@ -125,7 +128,7 @@ struct BEInt<Type, 2>
template <typename Type>
struct BEInt<Type, 3>
{
- static_assert (!hb_is_signed (Type), "");
+ static_assert (!std::is_signed<Type>::value, "");
public:
BEInt () = default;
constexpr BEInt (Type V) : v {uint8_t ((V >> 16) & 0xFF),
@@ -179,7 +182,7 @@ struct
{
/* Note. This is dangerous in that if it's passed an rvalue, it returns rvalue-reference. */
template <typename T> constexpr auto
- operator () (T&& v) const HB_AUTO_RETURN ( hb_forward<T> (v) )
+ operator () (T&& v) const HB_AUTO_RETURN ( std::forward<T> (v) )
}
HB_FUNCOBJ (hb_identity);
struct
@@ -203,7 +206,7 @@ HB_FUNCOBJ (hb_ridentity);
struct
{
template <typename T> constexpr bool
- operator () (T&& v) const { return bool (hb_forward<T> (v)); }
+ operator () (T&& v) const { return bool (std::forward<T> (v)); }
}
HB_FUNCOBJ (hb_bool);
@@ -215,7 +218,7 @@ struct
impl (const T& v, hb_priority<1>) const HB_RETURN (uint32_t, hb_deref (v).hash ())
template <typename T,
- hb_enable_if (hb_is_integral (T))> constexpr auto
+ hb_enable_if (std::is_integral<T>::value)> constexpr auto
impl (const T& v, hb_priority<0>) const HB_AUTO_RETURN
(
/* Knuth's multiplicative method: */
@@ -237,26 +240,26 @@ struct
/* Pointer-to-member-function. */
template <typename Appl, typename T, typename ...Ts> auto
impl (Appl&& a, hb_priority<2>, T &&v, Ts&&... ds) const HB_AUTO_RETURN
- ((hb_deref (hb_forward<T> (v)).*hb_forward<Appl> (a)) (hb_forward<Ts> (ds)...))
+ ((hb_deref (std::forward<T> (v)).*std::forward<Appl> (a)) (std::forward<Ts> (ds)...))
/* Pointer-to-member. */
template <typename Appl, typename T> auto
impl (Appl&& a, hb_priority<1>, T &&v) const HB_AUTO_RETURN
- ((hb_deref (hb_forward<T> (v))).*hb_forward<Appl> (a))
+ ((hb_deref (std::forward<T> (v))).*std::forward<Appl> (a))
/* Operator(). */
template <typename Appl, typename ...Ts> auto
impl (Appl&& a, hb_priority<0>, Ts&&... ds) const HB_AUTO_RETURN
- (hb_deref (hb_forward<Appl> (a)) (hb_forward<Ts> (ds)...))
+ (hb_deref (std::forward<Appl> (a)) (std::forward<Ts> (ds)...))
public:
template <typename Appl, typename ...Ts> auto
operator () (Appl&& a, Ts&&... ds) const HB_AUTO_RETURN
(
- impl (hb_forward<Appl> (a),
+ impl (std::forward<Appl> (a),
hb_prioritize,
- hb_forward<Ts> (ds)...)
+ std::forward<Ts> (ds)...)
)
}
HB_FUNCOBJ (hb_invoke);
@@ -275,9 +278,9 @@ struct hb_partial_t
hb_declval (V),
hb_declval (Ts)...))
{
- return hb_invoke (hb_forward<Appl> (a),
- hb_forward<V> (v),
- hb_forward<Ts> (ds)...);
+ return hb_invoke (std::forward<Appl> (a),
+ std::forward<V> (v),
+ std::forward<Ts> (ds)...);
}
template <typename T0, typename ...Ts,
unsigned P = Pos,
@@ -287,10 +290,10 @@ struct hb_partial_t
hb_declval (V),
hb_declval (Ts)...))
{
- return hb_invoke (hb_forward<Appl> (a),
- hb_forward<T0> (d0),
- hb_forward<V> (v),
- hb_forward<Ts> (ds)...);
+ return hb_invoke (std::forward<Appl> (a),
+ std::forward<T0> (d0),
+ std::forward<V> (v),
+ std::forward<Ts> (ds)...);
}
private:
@@ -324,14 +327,14 @@ auto hb_partial (Appl&& a, V&& v) HB_AUTO_RETURN
#define HB_PARTIALIZE(Pos) \
template <typename _T> \
decltype(auto) operator () (_T&& _v) const \
- { return hb_partial<Pos> (this, hb_forward<_T> (_v)); } \
+ { return hb_partial<Pos> (this, std::forward<_T> (_v)); } \
static_assert (true, "")
#else
/* https://github.com/harfbuzz/harfbuzz/issues/1724 */
#define HB_PARTIALIZE(Pos) \
template <typename _T> \
auto operator () (_T&& _v) const HB_AUTO_RETURN \
- (hb_partial<Pos> (+this, hb_forward<_T> (_v))) \
+ (hb_partial<Pos> (+this, std::forward<_T> (_v))) \
static_assert (true, "")
#endif
@@ -343,22 +346,22 @@ struct
template <typename Pred, typename Val> auto
impl (Pred&& p, Val &&v, hb_priority<1>) const HB_AUTO_RETURN
(
- hb_deref (hb_forward<Pred> (p)).has (hb_forward<Val> (v))
+ hb_deref (std::forward<Pred> (p)).has (std::forward<Val> (v))
)
template <typename Pred, typename Val> auto
impl (Pred&& p, Val &&v, hb_priority<0>) const HB_AUTO_RETURN
(
- hb_invoke (hb_forward<Pred> (p),
- hb_forward<Val> (v))
+ hb_invoke (std::forward<Pred> (p),
+ std::forward<Val> (v))
)
public:
template <typename Pred, typename Val> auto
operator () (Pred&& p, Val &&v) const HB_RETURN (bool,
- impl (hb_forward<Pred> (p),
- hb_forward<Val> (v),
+ impl (std::forward<Pred> (p),
+ std::forward<Val> (v),
hb_prioritize)
)
}
@@ -371,22 +374,22 @@ struct
template <typename Pred, typename Val> auto
impl (Pred&& p, Val &&v, hb_priority<1>) const HB_AUTO_RETURN
(
- hb_has (hb_forward<Pred> (p),
- hb_forward<Val> (v))
+ hb_has (std::forward<Pred> (p),
+ std::forward<Val> (v))
)
template <typename Pred, typename Val> auto
impl (Pred&& p, Val &&v, hb_priority<0>) const HB_AUTO_RETURN
(
- hb_forward<Pred> (p) == hb_forward<Val> (v)
+ std::forward<Pred> (p) == std::forward<Val> (v)
)
public:
template <typename Pred, typename Val> auto
operator () (Pred&& p, Val &&v) const HB_RETURN (bool,
- impl (hb_forward<Pred> (p),
- hb_forward<Val> (v),
+ impl (std::forward<Pred> (p),
+ std::forward<Val> (v),
hb_prioritize)
)
}
@@ -399,20 +402,20 @@ struct
template <typename Proj, typename Val> auto
impl (Proj&& f, Val &&v, hb_priority<2>) const HB_AUTO_RETURN
(
- hb_deref (hb_forward<Proj> (f)).get (hb_forward<Val> (v))
+ hb_deref (std::forward<Proj> (f)).get (std::forward<Val> (v))
)
template <typename Proj, typename Val> auto
impl (Proj&& f, Val &&v, hb_priority<1>) const HB_AUTO_RETURN
(
- hb_invoke (hb_forward<Proj> (f),
- hb_forward<Val> (v))
+ hb_invoke (std::forward<Proj> (f),
+ std::forward<Val> (v))
)
template <typename Proj, typename Val> auto
impl (Proj&& f, Val &&v, hb_priority<0>) const HB_AUTO_RETURN
(
- hb_forward<Proj> (f)[hb_forward<Val> (v)]
+ std::forward<Proj> (f)[std::forward<Val> (v)]
)
public:
@@ -420,8 +423,8 @@ struct
template <typename Proj, typename Val> auto
operator () (Proj&& f, Val &&v) const HB_AUTO_RETURN
(
- impl (hb_forward<Proj> (f),
- hb_forward<Val> (v),
+ impl (std::forward<Proj> (f),
+ std::forward<Val> (v),
hb_prioritize)
)
}
@@ -434,19 +437,19 @@ struct
template <typename T1, typename T2> auto
impl (T1&& v1, T2 &&v2, hb_priority<2>) const HB_AUTO_RETURN
(
- hb_forward<T2> (v2).cmp (hb_forward<T1> (v1)) == 0
+ std::forward<T2> (v2).cmp (std::forward<T1> (v1)) == 0
)
template <typename T1, typename T2> auto
impl (T1&& v1, T2 &&v2, hb_priority<1>) const HB_AUTO_RETURN
(
- hb_forward<T1> (v1).cmp (hb_forward<T2> (v2)) == 0
+ std::forward<T1> (v1).cmp (std::forward<T2> (v2)) == 0
)
template <typename T1, typename T2> auto
impl (T1&& v1, T2 &&v2, hb_priority<0>) const HB_AUTO_RETURN
(
- hb_forward<T1> (v1) == hb_forward<T2> (v2)
+ std::forward<T1> (v1) == std::forward<T2> (v2)
)
public:
@@ -454,8 +457,8 @@ struct
template <typename T1, typename T2> auto
operator () (T1&& v1, T2 &&v2) const HB_AUTO_RETURN
(
- impl (hb_forward<T1> (v1),
- hb_forward<T2> (v2),
+ impl (std::forward<T1> (v1),
+ std::forward<T2> (v2),
hb_prioritize)
)
}
@@ -515,24 +518,34 @@ struct
{
template <typename T, typename T2> constexpr auto
operator () (T&& a, T2&& b) const HB_AUTO_RETURN
- (a <= b ? hb_forward<T> (a) : hb_forward<T2> (b))
+ (a <= b ? std::forward<T> (a) : std::forward<T2> (b))
}
HB_FUNCOBJ (hb_min);
struct
{
template <typename T, typename T2> constexpr auto
operator () (T&& a, T2&& b) const HB_AUTO_RETURN
- (a >= b ? hb_forward<T> (a) : hb_forward<T2> (b))
+ (a >= b ? std::forward<T> (a) : std::forward<T2> (b))
}
HB_FUNCOBJ (hb_max);
struct
{
template <typename T, typename T2, typename T3> constexpr auto
operator () (T&& x, T2&& min, T3&& max) const HB_AUTO_RETURN
- (hb_min (hb_max (hb_forward<T> (x), hb_forward<T2> (min)), hb_forward<T3> (max)))
+ (hb_min (hb_max (std::forward<T> (x), std::forward<T2> (min)), std::forward<T3> (max)))
}
HB_FUNCOBJ (hb_clamp);
+struct
+{
+ template <typename T> void
+ operator () (T& a, T& b) const
+ {
+ using std::swap; // allow ADL
+ swap (a, b);
+ }
+}
+HB_FUNCOBJ (hb_swap);
/*
* Bithacks.
@@ -795,7 +808,7 @@ hb_ceil_to_4 (unsigned int v)
template <typename T> static inline bool
hb_in_range (T u, T lo, T hi)
{
- static_assert (!hb_is_signed<T>::value, "");
+ static_assert (!std::is_signed<T>::value, "");
/* The casts below are important as if T is smaller than int,
* the subtract results will become a signed int! */
diff --git a/thirdparty/harfbuzz/src/hb-array.hh b/thirdparty/harfbuzz/src/hb-array.hh
index ab0dd6ebe3..dd61509b2e 100644
--- a/thirdparty/harfbuzz/src/hb-array.hh
+++ b/thirdparty/harfbuzz/src/hb-array.hh
@@ -50,10 +50,10 @@ struct hb_array_t : hb_iter_with_fallback_t<hb_array_t<Type>, Type&>
/*
* Constructors.
*/
- hb_array_t () : arrayZ (nullptr), length (0), backwards_length (0) {}
- hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_), backwards_length (0) {}
+ hb_array_t () = default;
+ hb_array_t (Type *array_, unsigned int length_) : arrayZ (array_), length (length_) {}
template <unsigned int length_>
- hb_array_t (Type (&array_)[length_]) : arrayZ (array_), length (length_), backwards_length (0) {}
+ hb_array_t (Type (&array_)[length_]) : hb_array_t (array_, length_) {}
template <typename U,
hb_enable_if (hb_is_cr_convertible(U, Type))>
@@ -281,9 +281,9 @@ struct hb_array_t : hb_iter_with_fallback_t<hb_array_t<Type>, Type&>
*/
public:
- Type *arrayZ;
- unsigned int length;
- unsigned int backwards_length;
+ Type *arrayZ = nullptr;
+ unsigned int length = 0;
+ unsigned int backwards_length = 0;
};
template <typename T> inline hb_array_t<T>
hb_array (T *array, unsigned int length)
@@ -302,7 +302,7 @@ struct hb_sorted_array_t :
static constexpr bool is_random_access_iterator = true;
static constexpr bool is_sorted_iterator = true;
- hb_sorted_array_t () : hb_array_t<Type> () {}
+ hb_sorted_array_t () = default;
hb_sorted_array_t (Type *array_, unsigned int length_) : hb_array_t<Type> (array_, length_) {}
template <unsigned int length_>
hb_sorted_array_t (Type (&array_)[length_]) : hb_array_t<Type> (array_) {}
diff --git a/thirdparty/harfbuzz/src/hb-atomic.hh b/thirdparty/harfbuzz/src/hb-atomic.hh
index 93265f655f..e640d1b586 100644
--- a/thirdparty/harfbuzz/src/hb-atomic.hh
+++ b/thirdparty/harfbuzz/src/hb-atomic.hh
@@ -102,20 +102,12 @@ _hb_atomic_ptr_impl_cmplexch (const void **P, const void *O_, const void *N)
#define hb_atomic_ptr_impl_cmpexch(P,O,N) _hb_atomic_ptr_impl_cmplexch ((const void **) (P), (O), (N))
-#elif defined(HB_NO_MT)
+#else /* defined(HB_NO_MT) */
#define hb_atomic_int_impl_add(AI, V) ((*(AI) += (V)) - (V))
-
#define _hb_memory_barrier() do {} while (0)
-
#define hb_atomic_ptr_impl_cmpexch(P,O,N) (* (void **) (P) == (void *) (O) ? (* (void **) (P) = (void *) (N), true) : false)
-
-#else
-
-#error "Could not find any system to define atomic_int macros."
-#error "Check hb-atomic.hh for possible resolutions."
-
#endif
diff --git a/thirdparty/harfbuzz/src/hb-bimap.hh b/thirdparty/harfbuzz/src/hb-bimap.hh
index d409880751..d466af8b60 100644
--- a/thirdparty/harfbuzz/src/hb-bimap.hh
+++ b/thirdparty/harfbuzz/src/hb-bimap.hh
@@ -33,15 +33,14 @@
/* Bi-directional map */
struct hb_bimap_t
{
- hb_bimap_t () { init (); }
- ~hb_bimap_t () { fini (); }
-
+ /* XXX(remove) */
void init ()
{
forw_map.init ();
back_map.init ();
}
+ /* XXX(remove) */
void fini ()
{
forw_map.fini ();
@@ -99,14 +98,6 @@ struct hb_bimap_t
/* Inremental bimap: only lhs is given, rhs is incrementally assigned */
struct hb_inc_bimap_t : hb_bimap_t
{
- hb_inc_bimap_t () { init (); }
-
- void init ()
- {
- hb_bimap_t::init ();
- next_value = 0;
- }
-
/* Add a mapping from lhs to rhs with a unique value if lhs is unknown.
* Return the rhs value as the result.
*/
@@ -165,7 +156,7 @@ struct hb_inc_bimap_t : hb_bimap_t
}
protected:
- unsigned int next_value;
+ unsigned int next_value = 0;
};
#endif /* HB_BIMAP_HH */
diff --git a/thirdparty/harfbuzz/src/hb-bit-set-invertible.hh b/thirdparty/harfbuzz/src/hb-bit-set-invertible.hh
index f48b72fe63..0832b0fc23 100644
--- a/thirdparty/harfbuzz/src/hb-bit-set-invertible.hh
+++ b/thirdparty/harfbuzz/src/hb-bit-set-invertible.hh
@@ -35,10 +35,20 @@
struct hb_bit_set_invertible_t
{
hb_bit_set_t s;
- bool inverted;
-
- hb_bit_set_invertible_t () { init (); }
- ~hb_bit_set_invertible_t () { fini (); }
+ bool inverted = false;
+
+ hb_bit_set_invertible_t () = default;
+ hb_bit_set_invertible_t (hb_bit_set_invertible_t& o) = default;
+ hb_bit_set_invertible_t (hb_bit_set_invertible_t&& o) = default;
+ hb_bit_set_invertible_t& operator= (const hb_bit_set_invertible_t& o) = default;
+ hb_bit_set_invertible_t& operator= (hb_bit_set_invertible_t&& o) = default;
+ friend void swap (hb_bit_set_invertible_t &a, hb_bit_set_invertible_t &b)
+ {
+ if (likely (!a.s.successful || !b.s.successful))
+ return;
+ hb_swap (a.inverted, b.inverted);
+ hb_swap (a.s, b.s);
+ }
void init () { s.init (); inverted = false; }
void fini () { s.fini (); }
diff --git a/thirdparty/harfbuzz/src/hb-bit-set.hh b/thirdparty/harfbuzz/src/hb-bit-set.hh
index c21778d88e..a471ee48b5 100644
--- a/thirdparty/harfbuzz/src/hb-bit-set.hh
+++ b/thirdparty/harfbuzz/src/hb-bit-set.hh
@@ -35,13 +35,22 @@
struct hb_bit_set_t
{
- hb_bit_set_t () { init (); }
- ~hb_bit_set_t () { fini (); }
+ hb_bit_set_t () = default;
+ ~hb_bit_set_t () = default;
hb_bit_set_t (const hb_bit_set_t& other) : hb_bit_set_t () { set (other); }
- void operator= (const hb_bit_set_t& other) { set (other); }
- // TODO Add move construtor/assign
- // TODO Add constructor for Iterator; with specialization for (sorted) vector / array?
+ hb_bit_set_t ( hb_bit_set_t&& other) : hb_bit_set_t () { hb_swap (*this, other); }
+ hb_bit_set_t& operator= (const hb_bit_set_t& other) { set (other); return *this; }
+ hb_bit_set_t& operator= (hb_bit_set_t&& other) { hb_swap (*this, other); return *this; }
+ friend void swap (hb_bit_set_t &a, hb_bit_set_t &b)
+ {
+ if (likely (!a.successful || !b.successful))
+ return;
+ hb_swap (a.population, b.population);
+ hb_swap (a.last_page_lookup, b.last_page_lookup);
+ hb_swap (a.page_map, b.page_map);
+ hb_swap (a.pages, b.pages);
+ }
void init ()
{
@@ -67,9 +76,9 @@ struct hb_bit_set_t
uint32_t index;
};
- bool successful; /* Allocations successful */
- mutable unsigned int population;
- mutable unsigned int last_page_lookup;
+ bool successful = true; /* Allocations successful */
+ mutable unsigned int population = 0;
+ mutable unsigned int last_page_lookup = 0;
hb_sorted_vector_t<page_map_t> page_map;
hb_vector_t<page_t> pages;
diff --git a/thirdparty/harfbuzz/src/hb-buffer.cc b/thirdparty/harfbuzz/src/hb-buffer.cc
index c6591ca230..b4f7f72374 100644
--- a/thirdparty/harfbuzz/src/hb-buffer.cc
+++ b/thirdparty/harfbuzz/src/hb-buffer.cc
@@ -224,6 +224,7 @@ hb_buffer_t::reset ()
flags = HB_BUFFER_FLAG_DEFAULT;
replacement = HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT;
invisible = 0;
+ not_found = 0;
clear ();
}
@@ -608,6 +609,7 @@ DEFINE_NULL_INSTANCE (hb_buffer_t) =
HB_BUFFER_CLUSTER_LEVEL_DEFAULT,
HB_BUFFER_REPLACEMENT_CODEPOINT_DEFAULT,
0, /* invisible */
+ 0, /* not_found */
HB_BUFFER_SCRATCH_FLAG_DEFAULT,
HB_BUFFER_MAX_LEN_DEFAULT,
HB_BUFFER_MAX_OPS_DEFAULT,
@@ -1158,6 +1160,46 @@ hb_buffer_get_invisible_glyph (hb_buffer_t *buffer)
return buffer->invisible;
}
+/**
+ * hb_buffer_set_not_found_glyph:
+ * @buffer: An #hb_buffer_t
+ * @not_found: the not-found #hb_codepoint_t
+ *
+ * Sets the #hb_codepoint_t that replaces characters not found in
+ * the font during shaping.
+ *
+ * The not-found glyph defaults to zero, sometimes knows as the
+ * ".notdef" glyph. This API allows for differentiating the two.
+ *
+ * Since: 3.1.0
+ **/
+void
+hb_buffer_set_not_found_glyph (hb_buffer_t *buffer,
+ hb_codepoint_t not_found)
+{
+ if (unlikely (hb_object_is_immutable (buffer)))
+ return;
+
+ buffer->not_found = not_found;
+}
+
+/**
+ * hb_buffer_get_not_found_glyph:
+ * @buffer: An #hb_buffer_t
+ *
+ * See hb_buffer_set_not_found_glyph().
+ *
+ * Return value:
+ * The @buffer not-found #hb_codepoint_t
+ *
+ * Since: 3.1.0
+ **/
+hb_codepoint_t
+hb_buffer_get_not_found_glyph (hb_buffer_t *buffer)
+{
+ return buffer->not_found;
+}
+
/**
* hb_buffer_reset:
diff --git a/thirdparty/harfbuzz/src/hb-buffer.h b/thirdparty/harfbuzz/src/hb-buffer.h
index 865ccb2273..a183cb9d4a 100644
--- a/thirdparty/harfbuzz/src/hb-buffer.h
+++ b/thirdparty/harfbuzz/src/hb-buffer.h
@@ -383,6 +383,13 @@ hb_buffer_set_invisible_glyph (hb_buffer_t *buffer,
HB_EXTERN hb_codepoint_t
hb_buffer_get_invisible_glyph (hb_buffer_t *buffer);
+HB_EXTERN void
+hb_buffer_set_not_found_glyph (hb_buffer_t *buffer,
+ hb_codepoint_t not_found);
+
+HB_EXTERN hb_codepoint_t
+hb_buffer_get_not_found_glyph (hb_buffer_t *buffer);
+
HB_EXTERN void
hb_buffer_reset (hb_buffer_t *buffer);
diff --git a/thirdparty/harfbuzz/src/hb-buffer.hh b/thirdparty/harfbuzz/src/hb-buffer.hh
index 8635ebd35f..bde28933e4 100644
--- a/thirdparty/harfbuzz/src/hb-buffer.hh
+++ b/thirdparty/harfbuzz/src/hb-buffer.hh
@@ -93,6 +93,7 @@ struct hb_buffer_t
hb_buffer_cluster_level_t cluster_level;
hb_codepoint_t replacement; /* U+FFFD or something else. */
hb_codepoint_t invisible; /* 0 or something else. */
+ hb_codepoint_t not_found; /* 0 or something else. */
hb_buffer_scratch_flags_t scratch_flags; /* Have space-fallback, etc. */
unsigned int max_len; /* Maximum allowed len. */
int max_ops; /* Maximum allowed operations. */
diff --git a/thirdparty/harfbuzz/src/hb-debug.hh b/thirdparty/harfbuzz/src/hb-debug.hh
index f80c8980ba..3ac7440e80 100644
--- a/thirdparty/harfbuzz/src/hb-debug.hh
+++ b/thirdparty/harfbuzz/src/hb-debug.hh
@@ -302,7 +302,7 @@ struct hb_auto_trace_t
{
if (unlikely (returned)) {
fprintf (stderr, "OUCH, double calls to return_trace(). This is a bug, please report.\n");
- return hb_forward<T> (v);
+ return std::forward<T> (v);
}
_hb_debug_msg<max_level> (what, obj, func, true, plevel ? *plevel : 1, -1,
@@ -311,7 +311,7 @@ struct hb_auto_trace_t
if (plevel) --*plevel;
plevel = nullptr;
returned = true;
- return hb_forward<T> (v);
+ return std::forward<T> (v);
}
private:
@@ -333,7 +333,7 @@ struct hb_auto_trace_t<0, ret_t>
template <typename T>
T ret (T&& v,
const char *func HB_UNUSED = nullptr,
- unsigned int line HB_UNUSED = 0) { return hb_forward<T> (v); }
+ unsigned int line HB_UNUSED = 0) { return std::forward<T> (v); }
};
/* For disabled tracing; optimize out everything.
@@ -343,7 +343,7 @@ struct hb_no_trace_t {
template <typename T>
T ret (T&& v,
const char *func HB_UNUSED = nullptr,
- unsigned int line HB_UNUSED = 0) { return hb_forward<T> (v); }
+ unsigned int line HB_UNUSED = 0) { return std::forward<T> (v); }
};
#define return_trace(RET) return trace.ret (RET, HB_FUNC, __LINE__)
diff --git a/thirdparty/harfbuzz/src/hb-directwrite.cc b/thirdparty/harfbuzz/src/hb-directwrite.cc
index 8f6d73b639..db7b53b259 100644
--- a/thirdparty/harfbuzz/src/hb-directwrite.cc
+++ b/thirdparty/harfbuzz/src/hb-directwrite.cc
@@ -43,6 +43,14 @@
* Functions for using HarfBuzz with DirectWrite fonts.
**/
+/* Declare object creator for dynamic support of DWRITE */
+typedef HRESULT (* WINAPI t_DWriteCreateFactory)(
+ DWRITE_FACTORY_TYPE factoryType,
+ REFIID iid,
+ IUnknown **factory
+);
+
+
/*
* DirectWrite font stream helpers
*/
@@ -137,6 +145,7 @@ public:
struct hb_directwrite_face_data_t
{
+ HMODULE dwrite_dll;
IDWriteFactory *dwriteFactory;
IDWriteFontFile *fontFile;
DWriteFontFileStream *fontFileStream;
@@ -158,12 +167,33 @@ _hb_directwrite_shaper_face_data_create (hb_face_t *face)
return nullptr; \
} HB_STMT_END
+ data->dwrite_dll = LoadLibrary (TEXT ("DWRITE"));
+ if (unlikely (!data->dwrite_dll))
+ FAIL ("Cannot find DWrite.DLL");
+
+ t_DWriteCreateFactory p_DWriteCreateFactory;
+
+#if defined(__GNUC__)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wcast-function-type"
+#endif
+
+ p_DWriteCreateFactory = (t_DWriteCreateFactory)
+ GetProcAddress (data->dwrite_dll, "DWriteCreateFactory");
+
+#if defined(__GNUC__)
+#pragma GCC diagnostic pop
+#endif
+
+ if (unlikely (!p_DWriteCreateFactory))
+ FAIL ("Cannot find DWriteCreateFactory().");
+
HRESULT hr;
// TODO: factory and fontFileLoader should be cached separately
IDWriteFactory* dwriteFactory;
- hr = DWriteCreateFactory (DWRITE_FACTORY_TYPE_SHARED, __uuidof (IDWriteFactory),
- (IUnknown**) &dwriteFactory);
+ hr = p_DWriteCreateFactory (DWRITE_FACTORY_TYPE_SHARED, __uuidof (IDWriteFactory),
+ (IUnknown**) &dwriteFactory);
if (unlikely (hr != S_OK))
FAIL ("Failed to run DWriteCreateFactory().");
@@ -227,6 +257,8 @@ _hb_directwrite_shaper_face_data_destroy (hb_directwrite_face_data_t *data)
delete data->fontFileStream;
if (data->faceBlob)
hb_blob_destroy (data->faceBlob);
+ if (data->dwrite_dll)
+ FreeLibrary (data->dwrite_dll);
if (data)
delete data;
}
diff --git a/thirdparty/harfbuzz/src/hb-dispatch.hh b/thirdparty/harfbuzz/src/hb-dispatch.hh
index 4b2b65a8de..37ca681465 100644
--- a/thirdparty/harfbuzz/src/hb-dispatch.hh
+++ b/thirdparty/harfbuzz/src/hb-dispatch.hh
@@ -50,7 +50,7 @@ struct hb_dispatch_context_t
bool may_dispatch (const T *obj HB_UNUSED, const F *format HB_UNUSED) { return true; }
template <typename T, typename ...Ts>
return_t dispatch (const T &obj, Ts&&... ds)
- { return obj.dispatch (thiz (), hb_forward<Ts> (ds)...); }
+ { return obj.dispatch (thiz (), std::forward<Ts> (ds)...); }
static return_t no_dispatch_return_value () { return Context::default_return_value (); }
static bool stop_sublookup_iteration (const return_t r HB_UNUSED) { return false; }
unsigned debug_depth = 0;
diff --git a/thirdparty/harfbuzz/src/hb-font.hh b/thirdparty/harfbuzz/src/hb-font.hh
index 8fc7f44d44..1b7f445e8b 100644
--- a/thirdparty/harfbuzz/src/hb-font.hh
+++ b/thirdparty/harfbuzz/src/hb-font.hh
@@ -217,9 +217,10 @@ struct hb_font_t
}
hb_bool_t get_nominal_glyph (hb_codepoint_t unicode,
- hb_codepoint_t *glyph)
+ hb_codepoint_t *glyph,
+ hb_codepoint_t not_found = 0)
{
- *glyph = 0;
+ *glyph = not_found;
return klass->get.f.nominal_glyph (this, user_data,
unicode, glyph,
klass->user_data.nominal_glyph);
@@ -238,9 +239,10 @@ struct hb_font_t
}
hb_bool_t get_variation_glyph (hb_codepoint_t unicode, hb_codepoint_t variation_selector,
- hb_codepoint_t *glyph)
+ hb_codepoint_t *glyph,
+ hb_codepoint_t not_found = 0)
{
- *glyph = 0;
+ *glyph = not_found;
return klass->get.f.variation_glyph (this, user_data,
unicode, variation_selector, glyph,
klass->user_data.variation_glyph);
@@ -618,9 +620,7 @@ struct hb_font_t
}
hb_position_t em_mult (int16_t v, int64_t mult)
- {
- return (hb_position_t) ((v * mult) >> 16);
- }
+ { return (hb_position_t) ((v * mult + 32768) >> 16); }
hb_position_t em_scalef (float v, int scale)
{ return (hb_position_t) roundf (v * scale / face->get_upem ()); }
float em_fscale (int16_t v, int scale)
diff --git a/thirdparty/harfbuzz/src/hb-iter.hh b/thirdparty/harfbuzz/src/hb-iter.hh
index b8c4472636..87b8ed880d 100644
--- a/thirdparty/harfbuzz/src/hb-iter.hh
+++ b/thirdparty/harfbuzz/src/hb-iter.hh
@@ -162,7 +162,7 @@ struct
{
template <typename T> hb_iter_type<T>
operator () (T&& c) const
- { return hb_deref (hb_forward<T> (c)).iter (); }
+ { return hb_deref (std::forward<T> (c)).iter (); }
/* Specialization for C arrays. */
@@ -353,7 +353,7 @@ static inline auto end (Iterable&& iterable) HB_AUTO_RETURN (hb_iter (iterable).
template <typename Lhs, typename Rhs,
hb_requires (hb_is_iterator (Lhs))>
static inline auto
-operator | (Lhs&& lhs, Rhs&& rhs) HB_AUTO_RETURN (hb_forward<Rhs> (rhs) (hb_forward<Lhs> (lhs)))
+operator | (Lhs&& lhs, Rhs&& rhs) HB_AUTO_RETURN (std::forward<Rhs> (rhs) (std::forward<Lhs> (lhs)))
/* hb_map(), hb_filter(), hb_reduce() */
@@ -674,8 +674,8 @@ struct hb_iota_iter_t :
template <typename S2 = S>
auto
inc (hb_type_identity<S2> s, hb_priority<1>)
- -> hb_void_t<decltype (hb_invoke (hb_forward<S2> (s), hb_declval<T&> ()))>
- { v = hb_invoke (hb_forward<S2> (s), v); }
+ -> hb_void_t<decltype (hb_invoke (std::forward<S2> (s), hb_declval<T&> ()))>
+ { v = hb_invoke (std::forward<S2> (s), v); }
void
inc (S s, hb_priority<0>)
@@ -874,7 +874,7 @@ struct
Proj&& f = hb_identity) const
{
for (auto it = hb_iter (c); it; ++it)
- if (!hb_match (hb_forward<Pred> (p), hb_get (hb_forward<Proj> (f), *it)))
+ if (!hb_match (std::forward<Pred> (p), hb_get (std::forward<Proj> (f), *it)))
return false;
return true;
}
@@ -891,7 +891,7 @@ struct
Proj&& f = hb_identity) const
{
for (auto it = hb_iter (c); it; ++it)
- if (hb_match (hb_forward<Pred> (p), hb_get (hb_forward<Proj> (f), *it)))
+ if (hb_match (std::forward<Pred> (p), hb_get (std::forward<Proj> (f), *it)))
return true;
return false;
}
@@ -908,7 +908,7 @@ struct
Proj&& f = hb_identity) const
{
for (auto it = hb_iter (c); it; ++it)
- if (hb_match (hb_forward<Pred> (p), hb_get (hb_forward<Proj> (f), *it)))
+ if (hb_match (std::forward<Pred> (p), hb_get (std::forward<Proj> (f), *it)))
return false;
return true;
}
diff --git a/thirdparty/harfbuzz/src/hb-map.hh b/thirdparty/harfbuzz/src/hb-map.hh
index dcd5267d74..bb4a0eb5d1 100644
--- a/thirdparty/harfbuzz/src/hb-map.hh
+++ b/thirdparty/harfbuzz/src/hb-map.hh
@@ -35,16 +35,35 @@
*/
template <typename K, typename V,
- K kINVALID = hb_is_pointer (K) ? 0 : hb_is_signed (K) ? hb_int_min (K) : (K) -1,
- V vINVALID = hb_is_pointer (V) ? 0 : hb_is_signed (V) ? hb_int_min (V) : (V) -1>
+ K kINVALID = hb_is_pointer (K) ? 0 : std::is_signed<K>::value ? hb_int_min (K) : (K) -1,
+ V vINVALID = hb_is_pointer (V) ? 0 : std::is_signed<V>::value ? hb_int_min (V) : (V) -1>
struct hb_hashmap_t
{
- HB_DELETE_COPY_ASSIGN (hb_hashmap_t);
+ static constexpr K INVALID_KEY = kINVALID;
+ static constexpr V INVALID_VALUE = vINVALID;
+
hb_hashmap_t () { init (); }
~hb_hashmap_t () { fini (); }
- static_assert (hb_is_integral (K) || hb_is_pointer (K), "");
- static_assert (hb_is_integral (V) || hb_is_pointer (V), "");
+ hb_hashmap_t (const hb_hashmap_t& o) : hb_hashmap_t () { hb_copy (o, *this); }
+ hb_hashmap_t (hb_hashmap_t&& o) : hb_hashmap_t () { hb_swap (*this, o); }
+ hb_hashmap_t& operator= (const hb_hashmap_t& o) { hb_copy (o, *this); return *this; }
+ hb_hashmap_t& operator= (hb_hashmap_t&& o) { hb_swap (*this, o); return *this; }
+
+ hb_hashmap_t (std::initializer_list<hb_pair_t<K, V>> lst) : hb_hashmap_t ()
+ {
+ for (auto&& item : lst)
+ set (item.first, item.second);
+ }
+ template <typename Iterable,
+ hb_requires (hb_is_iterable (Iterable))>
+ hb_hashmap_t (const Iterable &o) : hb_hashmap_t ()
+ {
+ hb_copy (o, *this);
+ }
+
+ static_assert (std::is_integral<K>::value || hb_is_pointer (K), "");
+ static_assert (std::is_integral<V>::value || hb_is_pointer (V), "");
struct item_t
{
@@ -70,6 +89,16 @@ struct hb_hashmap_t
unsigned int prime;
item_t *items;
+ friend void swap (hb_hashmap_t& a, hb_hashmap_t& b)
+ {
+ if (unlikely (!a.successful || !b.successful))
+ return;
+ hb_swap (a.population, b.population);
+ hb_swap (a.occupancy, b.occupancy);
+ hb_swap (a.mask, b.mask);
+ hb_swap (a.prime, b.prime);
+ hb_swap (a.items, b.items);
+ }
void init_shallow ()
{
successful = true;
@@ -133,17 +162,15 @@ struct hb_hashmap_t
if (old_items[i].is_real ())
set_with_hash (old_items[i].key,
old_items[i].hash,
- old_items[i].value);
+ std::move (old_items[i].value));
hb_free (old_items);
return true;
}
- bool set (K key, V value)
- {
- return set_with_hash (key, hb_hash (key), value);
- }
+ bool set (K key, const V& value) { return set_with_hash (key, hb_hash (key), value); }
+ bool set (K key, V&& value) { return set_with_hash (key, hb_hash (key), std::move (value)); }
V get (K key) const
{
@@ -213,7 +240,8 @@ struct hb_hashmap_t
protected:
- bool set_with_hash (K key, uint32_t hash, V value)
+ template <typename VV>
+ bool set_with_hash (K key, uint32_t hash, VV&& value)
{
if (unlikely (!successful)) return false;
if (unlikely (key == kINVALID)) return true;
@@ -321,7 +349,22 @@ struct hb_hashmap_t
struct hb_map_t : hb_hashmap_t<hb_codepoint_t,
hb_codepoint_t,
HB_MAP_VALUE_INVALID,
- HB_MAP_VALUE_INVALID> {};
-
+ HB_MAP_VALUE_INVALID>
+{
+ using hashmap = hb_hashmap_t<hb_codepoint_t,
+ hb_codepoint_t,
+ HB_MAP_VALUE_INVALID,
+ HB_MAP_VALUE_INVALID>;
+
+ hb_map_t () = default;
+ ~hb_map_t () = default;
+ hb_map_t (hb_map_t& o) = default;
+ hb_map_t& operator= (const hb_map_t& other) = default;
+ hb_map_t& operator= (hb_map_t&& other) = default;
+ hb_map_t (std::initializer_list<hb_pair_t<hb_codepoint_t, hb_codepoint_t>> lst) : hashmap (lst) {}
+ template <typename Iterable,
+ hb_requires (hb_is_iterable (Iterable))>
+ hb_map_t (const Iterable &o) : hashmap (o) {}
+};
#endif /* HB_MAP_HH */
diff --git a/thirdparty/harfbuzz/src/hb-meta.hh b/thirdparty/harfbuzz/src/hb-meta.hh
index a714bc2bf0..0ea5774a9f 100644
--- a/thirdparty/harfbuzz/src/hb-meta.hh
+++ b/thirdparty/harfbuzz/src/hb-meta.hh
@@ -29,6 +29,9 @@
#include "hb.hh"
+#include <type_traits>
+#include <utility>
+
/*
* C++ template meta-programming & fundamentals used with them.
@@ -129,40 +132,7 @@ template <typename T> using hb_add_pointer = decltype (_hb_try_add_pointer<T> (h
/* TODO Add feature-parity to std::decay. */
template <typename T> using hb_decay = hb_remove_const<hb_remove_reference<T>>;
-
-template<bool B, class T, class F>
-struct _hb_conditional { typedef T type; };
-template<class T, class F>
-struct _hb_conditional<false, T, F> { typedef F type; };
-template<bool B, class T, class F>
-using hb_conditional = typename _hb_conditional<B, T, F>::type;
-
-
-template <typename From, typename To>
-struct hb_is_convertible
-{
- private:
- static constexpr bool from_void = hb_is_same (void, hb_decay<From>);
- static constexpr bool to_void = hb_is_same (void, hb_decay<To> );
- static constexpr bool either_void = from_void || to_void;
- static constexpr bool both_void = from_void && to_void;
-
- static hb_true_type impl2 (hb_conditional<to_void, int, To>);
-
- template <typename T>
- static auto impl (hb_priority<1>) -> decltype (impl2 (hb_declval (T)));
- template <typename T>
- static hb_false_type impl (hb_priority<0>);
- public:
- static constexpr bool value = both_void ||
- (!either_void &&
- decltype (impl<hb_conditional<from_void, int, From>> (hb_prioritize))::value);
-};
-#define hb_is_convertible(From,To) hb_is_convertible<From, To>::value
-
-template <typename Base, typename Derived>
-using hb_is_base_of = hb_is_convertible<hb_decay<Derived> *, hb_decay<Base> *>;
-#define hb_is_base_of(Base,Derived) hb_is_base_of<Base, Derived>::value
+#define hb_is_convertible(From,To) std::is_convertible<From, To>::value
template <typename From, typename To>
using hb_is_cr_convertible = hb_bool_constant<
@@ -172,20 +142,11 @@ using hb_is_cr_convertible = hb_bool_constant<
>;
#define hb_is_cr_convertible(From,To) hb_is_cr_convertible<From, To>::value
-/* std::move and std::forward */
-
-template <typename T>
-static constexpr hb_remove_reference<T>&& hb_move (T&& t) { return (hb_remove_reference<T>&&) (t); }
-
-template <typename T>
-static constexpr T&& hb_forward (hb_remove_reference<T>& t) { return (T&&) t; }
-template <typename T>
-static constexpr T&& hb_forward (hb_remove_reference<T>&& t) { return (T&&) t; }
struct
{
template <typename T> constexpr auto
- operator () (T&& v) const HB_AUTO_RETURN (hb_forward<T> (v))
+ operator () (T&& v) const HB_AUTO_RETURN (std::forward<T> (v))
template <typename T> constexpr auto
operator () (T *v) const HB_AUTO_RETURN (*v)
@@ -195,7 +156,7 @@ HB_FUNCOBJ (hb_deref);
struct
{
template <typename T> constexpr auto
- operator () (T&& v) const HB_AUTO_RETURN (hb_forward<T> (v))
+ operator () (T&& v) const HB_AUTO_RETURN (std::forward<T> (v))
template <typename T> constexpr auto
operator () (T& v) const HB_AUTO_RETURN (hb_addressof (v))
@@ -226,50 +187,6 @@ struct hb_reference_wrapper<T&>
/* Type traits */
-template <typename T>
-using hb_is_integral = hb_bool_constant<
- hb_is_same (hb_decay<T>, char) ||
- hb_is_same (hb_decay<T>, signed char) ||
- hb_is_same (hb_decay<T>, unsigned char) ||
- hb_is_same (hb_decay<T>, signed int) ||
- hb_is_same (hb_decay<T>, unsigned int) ||
- hb_is_same (hb_decay<T>, signed short) ||
- hb_is_same (hb_decay<T>, unsigned short) ||
- hb_is_same (hb_decay<T>, signed long) ||
- hb_is_same (hb_decay<T>, unsigned long) ||
- hb_is_same (hb_decay<T>, signed long long) ||
- hb_is_same (hb_decay<T>, unsigned long long) ||
- false
->;
-#define hb_is_integral(T) hb_is_integral<T>::value
-template <typename T>
-using hb_is_floating_point = hb_bool_constant<
- hb_is_same (hb_decay<T>, float) ||
- hb_is_same (hb_decay<T>, double) ||
- hb_is_same (hb_decay<T>, long double) ||
- false
->;
-#define hb_is_floating_point(T) hb_is_floating_point<T>::value
-template <typename T>
-using hb_is_arithmetic = hb_bool_constant<
- hb_is_integral (T) ||
- hb_is_floating_point (T) ||
- false
->;
-#define hb_is_arithmetic(T) hb_is_arithmetic<T>::value
-
-
-template <typename T, bool is_arithmetic> struct hb_is_signed_;
-template <typename T> struct hb_is_signed_<T, false> : hb_false_type {};
-template <typename T> struct hb_is_signed_<T, true> : hb_bool_constant<(T) -1 < (T) 0> {};
-template <typename T> struct hb_is_signed : hb_is_signed_<T, hb_is_arithmetic (T)> {};
-#define hb_is_signed(T) hb_is_signed<T>::value
-template <typename T, bool is_arithmetic> struct hb_is_unsigned_;
-template <typename T> struct hb_is_unsigned_<T, false> : hb_false_type {};
-template <typename T> struct hb_is_unsigned_<T, true> : hb_bool_constant<(T) 0 < (T) -1> {};
-template <typename T> struct hb_is_unsigned : hb_is_unsigned_<T, hb_is_arithmetic (T)> {};
-#define hb_is_unsigned(T) hb_is_unsigned<T>::value
-
template <typename T> struct hb_int_min;
template <> struct hb_int_min<char> : hb_integral_constant<char, CHAR_MIN> {};
template <> struct hb_int_min<signed char> : hb_integral_constant<signed char, SCHAR_MIN> {};
@@ -309,108 +226,6 @@ template <> struct hb_int_max<unsigned long long> : hb_integral_constant<unsigne
TypeName(const TypeName&) = delete; \
void operator=(const TypeName&) = delete
-template <typename T, typename>
-struct _hb_is_destructible : hb_false_type {};
-template <typename T>
-struct _hb_is_destructible<T, hb_void_t<decltype (hb_declval (T).~T ())>> : hb_true_type {};
-template <typename T>
-using hb_is_destructible = _hb_is_destructible<T, void>;
-#define hb_is_destructible(T) hb_is_destructible<T>::value
-
-template <typename T, typename, typename ...Ts>
-struct _hb_is_constructible : hb_false_type {};
-template <typename T, typename ...Ts>
-struct _hb_is_constructible<T, hb_void_t<decltype (T (hb_declval (Ts)...))>, Ts...> : hb_true_type {};
-template <typename T, typename ...Ts>
-using hb_is_constructible = _hb_is_constructible<T, void, Ts...>;
-#define hb_is_constructible(...) hb_is_constructible<__VA_ARGS__>::value
-
-template <typename T>
-using hb_is_default_constructible = hb_is_constructible<T>;
-#define hb_is_default_constructible(T) hb_is_default_constructible<T>::value
-
-template <typename T>
-using hb_is_copy_constructible = hb_is_constructible<T, hb_add_lvalue_reference<hb_add_const<T>>>;
-#define hb_is_copy_constructible(T) hb_is_copy_constructible<T>::value
-
-template <typename T>
-using hb_is_move_constructible = hb_is_constructible<T, hb_add_rvalue_reference<hb_add_const<T>>>;
-#define hb_is_move_constructible(T) hb_is_move_constructible<T>::value
-
-template <typename T, typename U, typename>
-struct _hb_is_assignable : hb_false_type {};
-template <typename T, typename U>
-struct _hb_is_assignable<T, U, hb_void_t<decltype (hb_declval (T) = hb_declval (U))>> : hb_true_type {};
-template <typename T, typename U>
-using hb_is_assignable = _hb_is_assignable<T, U, void>;
-#define hb_is_assignable(T,U) hb_is_assignable<T, U>::value
-
-template <typename T>
-using hb_is_copy_assignable = hb_is_assignable<hb_add_lvalue_reference<T>,
- hb_add_lvalue_reference<hb_add_const<T>>>;
-#define hb_is_copy_assignable(T) hb_is_copy_assignable<T>::value
-
-template <typename T>
-using hb_is_move_assignable = hb_is_assignable<hb_add_lvalue_reference<T>,
- hb_add_rvalue_reference<T>>;
-#define hb_is_move_assignable(T) hb_is_move_assignable<T>::value
-
-/* Trivial versions. */
-
-template <typename T> union hb_trivial { T value; };
-
-template <typename T>
-using hb_is_trivially_destructible= hb_is_destructible<hb_trivial<T>>;
-#define hb_is_trivially_destructible(T) hb_is_trivially_destructible<T>::value
-
-/* Don't know how to do the following. */
-//template <typename T, typename ...Ts>
-//using hb_is_trivially_constructible= hb_is_constructible<hb_trivial<T>, hb_trivial<Ts>...>;
-//#define hb_is_trivially_constructible(...) hb_is_trivially_constructible<__VA_ARGS__>::value
-
-template <typename T>
-using hb_is_trivially_default_constructible= hb_is_default_constructible<hb_trivial<T>>;
-#define hb_is_trivially_default_constructible(T) hb_is_trivially_default_constructible<T>::value
-
-template <typename T>
-using hb_is_trivially_copy_constructible= hb_is_copy_constructible<hb_trivial<T>>;
-#define hb_is_trivially_copy_constructible(T) hb_is_trivially_copy_constructible<T>::value
-
-template <typename T>
-using hb_is_trivially_move_constructible= hb_is_move_constructible<hb_trivial<T>>;
-#define hb_is_trivially_move_constructible(T) hb_is_trivially_move_constructible<T>::value
-
-/* Don't know how to do the following. */
-//template <typename T, typename U>
-//using hb_is_trivially_assignable= hb_is_assignable<hb_trivial<T>, hb_trivial<U>>;
-//#define hb_is_trivially_assignable(T,U) hb_is_trivially_assignable<T, U>::value
-
-template <typename T>
-using hb_is_trivially_copy_assignable= hb_is_copy_assignable<hb_trivial<T>>;
-#define hb_is_trivially_copy_assignable(T) hb_is_trivially_copy_assignable<T>::value
-
-template <typename T>
-using hb_is_trivially_move_assignable= hb_is_move_assignable<hb_trivial<T>>;
-#define hb_is_trivially_move_assignable(T) hb_is_trivially_move_assignable<T>::value
-
-template <typename T>
-using hb_is_trivially_copyable= hb_bool_constant<
- hb_is_trivially_destructible (T) &&
- (!hb_is_move_assignable (T) || hb_is_trivially_move_assignable (T)) &&
- (!hb_is_move_constructible (T) || hb_is_trivially_move_constructible (T)) &&
- (!hb_is_copy_assignable (T) || hb_is_trivially_copy_assignable (T)) &&
- (!hb_is_copy_constructible (T) || hb_is_trivially_copy_constructible (T)) &&
- true
->;
-#define hb_is_trivially_copyable(T) hb_is_trivially_copyable<T>::value
-
-template <typename T>
-using hb_is_trivial= hb_bool_constant<
- hb_is_trivially_copyable (T) &&
- hb_is_trivially_default_constructible (T)
->;
-#define hb_is_trivial(T) hb_is_trivial<T>::value
-
/* hb_unwrap_type (T)
* If T has no T::type, returns T. Otherwise calls itself on T::type recursively.
*/
diff --git a/thirdparty/harfbuzz/src/hb-mutex.hh b/thirdparty/harfbuzz/src/hb-mutex.hh
index a9227a741d..6914b22450 100644
--- a/thirdparty/harfbuzz/src/hb-mutex.hh
+++ b/thirdparty/harfbuzz/src/hb-mutex.hh
@@ -47,7 +47,7 @@
/* Defined externally, i.e. in config.h; must have typedef'ed hb_mutex_impl_t as well. */
-#elif !defined(HB_NO_MT) && (defined(HAVE_PTHREAD) || defined(__APPLE__))
+#elif !defined(HB_NO_MT) && !defined(HB_MUTEX_IMPL_STD_MUTEX) && (defined(HAVE_PTHREAD) || defined(__APPLE__))
#include <pthread.h>
typedef pthread_mutex_t hb_mutex_impl_t;
@@ -57,7 +57,7 @@ typedef pthread_mutex_t hb_mutex_impl_t;
#define hb_mutex_impl_finish(M) pthread_mutex_destroy (M)
-#elif !defined(HB_NO_MT) && defined(_WIN32)
+#elif !defined(HB_NO_MT) && !defined(HB_MUTEX_IMPL_STD_MUTEX) && defined(_WIN32)
typedef CRITICAL_SECTION hb_mutex_impl_t;
#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
@@ -70,7 +70,17 @@ typedef CRITICAL_SECTION hb_mutex_impl_t;
#define hb_mutex_impl_finish(M) DeleteCriticalSection (M)
-#elif defined(HB_NO_MT)
+#elif !defined(HB_NO_MT)
+
+#include <mutex>
+typedef std::mutex hb_mutex_impl_t;
+#define hb_mutex_impl_init(M) HB_STMT_START { new (M) hb_mutex_impl_t; } HB_STMT_END
+#define hb_mutex_impl_lock(M) (M)->lock ()
+#define hb_mutex_impl_unlock(M) (M)->unlock ()
+#define hb_mutex_impl_finish(M) HB_STMT_START { (M)->~hb_mutex_impl_t(); } HB_STMT_END
+
+
+#else /* defined(HB_NO_MT) */
typedef int hb_mutex_impl_t;
#define hb_mutex_impl_init(M) HB_STMT_START {} HB_STMT_END
@@ -79,22 +89,21 @@ typedef int hb_mutex_impl_t;
#define hb_mutex_impl_finish(M) HB_STMT_START {} HB_STMT_END
-#else
-
-#error "Could not find any system to define mutex macros."
-#error "Check hb-mutex.hh for possible resolutions."
-
#endif
struct hb_mutex_t
{
- hb_mutex_impl_t m;
-
- void init () { hb_mutex_impl_init (&m); }
- void lock () { hb_mutex_impl_lock (&m); }
- void unlock () { hb_mutex_impl_unlock (&m); }
- void fini () { hb_mutex_impl_finish (&m); }
+ /* Create space for, but do not initialize m. */
+ alignas(hb_mutex_impl_t) char m[sizeof (hb_mutex_impl_t)];
+
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wcast-align"
+ void init () { hb_mutex_impl_init ((hb_mutex_impl_t *) m); }
+ void lock () { hb_mutex_impl_lock ((hb_mutex_impl_t *) m); }
+ void unlock () { hb_mutex_impl_unlock ((hb_mutex_impl_t *) m); }
+ void fini () { hb_mutex_impl_finish ((hb_mutex_impl_t *) m); }
+#pragma GCC diagnostic pop
};
struct hb_lock_t
diff --git a/thirdparty/harfbuzz/src/hb-open-type.hh b/thirdparty/harfbuzz/src/hb-open-type.hh
index 49653ce97e..7e524177f6 100644
--- a/thirdparty/harfbuzz/src/hb-open-type.hh
+++ b/thirdparty/harfbuzz/src/hb-open-type.hh
@@ -64,7 +64,7 @@ struct IntType
IntType& operator = (Type i) { v = i; return *this; }
/* For reason we define cast out operator for signed/unsigned, instead of Type, see:
* https://github.com/harfbuzz/harfbuzz/pull/2875/commits/09836013995cab2b9f07577a179ad7b024130467 */
- operator hb_conditional<hb_is_signed (Type), signed, unsigned> () const { return v; }
+ operator typename std::conditional<std::is_signed<Type>::value, signed, unsigned>::type () const { return v; }
bool operator == (const IntType &o) const { return (Type) v == (Type) o.v; }
bool operator != (const IntType &o) const { return !(*this == o); }
@@ -86,7 +86,7 @@ struct IntType
return pb->cmp (*pa);
}
template <typename Type2,
- hb_enable_if (hb_is_integral (Type2) &&
+ hb_enable_if (std::is_integral<Type2>::value &&
sizeof (Type2) < sizeof (int) &&
sizeof (Type) < sizeof (int))>
int cmp (Type2 a) const
@@ -122,6 +122,15 @@ typedef IntType<int32_t> HBINT32; /* 32-bit signed integer. */
* Works for unsigned, but not signed, since we rely on compiler for sign-extension. */
typedef IntType<uint32_t, 3> HBUINT24; /* 24-bit unsigned integer. */
+/* 15-bit unsigned number; top bit used for extension. */
+struct HBUINT15 : HBUINT16
+{
+ /* TODO Flesh out; actually mask top bit. */
+ HBUINT15& operator = (uint16_t i ) { HBUINT16::operator= (i); return *this; }
+ public:
+ DEFINE_SIZE_STATIC (2);
+};
+
/* 16-bit signed integer (HBINT16) that describes a quantity in FUnits. */
typedef HBINT16 FWORD;
@@ -182,9 +191,9 @@ struct Tag : HBUINT32
};
/* Glyph index number, same as uint16 (length = 16 bits) */
-struct HBGlyphID : HBUINT16
+struct HBGlyphID16 : HBUINT16
{
- HBGlyphID& operator = (uint16_t i) { HBUINT16::operator= (i); return *this; }
+ HBGlyphID16& operator = (uint16_t i) { HBUINT16::operator= (i); return *this; }
};
/* Script/language-system/feature index */
@@ -332,7 +341,7 @@ struct OffsetTo : Offset<OffsetType, has_null>
s->push ();
- bool ret = c->dispatch (src_base+src, hb_forward<Ts> (ds)...);
+ bool ret = c->dispatch (src_base+src, std::forward<Ts> (ds)...);
if (ret || !has_null)
s->add_link (*this, s->pop_pack ());
@@ -349,7 +358,7 @@ struct OffsetTo : Offset<OffsetType, has_null>
*this = 0;
Type* obj = c->push<Type> ();
- bool ret = obj->serialize (c, hb_forward<Ts> (ds)...);
+ bool ret = obj->serialize (c, std::forward<Ts> (ds)...);
if (ret)
c->add_link (*this, c->pop_pack ());
@@ -375,7 +384,7 @@ struct OffsetTo : Offset<OffsetType, has_null>
c->push ();
- bool ret = c->copy (src_base+src, hb_forward<Ts> (ds)...);
+ bool ret = c->copy (src_base+src, std::forward<Ts> (ds)...);
c->add_link (*this, c->pop_pack (), whence, dst_bias);
@@ -401,7 +410,7 @@ struct OffsetTo : Offset<OffsetType, has_null>
TRACE_SANITIZE (this);
return_trace (sanitize_shallow (c, base) &&
(this->is_null () ||
- c->dispatch (StructAtOffset<Type> (base, *this), hb_forward<Ts> (ds)...) ||
+ c->dispatch (StructAtOffset<Type> (base, *this), std::forward<Ts> (ds)...) ||
neuter (c)));
}
@@ -509,9 +518,9 @@ struct UnsizedArrayOf
{
TRACE_SANITIZE (this);
if (unlikely (!sanitize_shallow (c, count))) return_trace (false);
- if (!sizeof... (Ts) && hb_is_trivially_copyable (Type)) return_trace (true);
+ if (!sizeof... (Ts) && std::is_trivially_copyable<Type>::value) return_trace (true);
for (unsigned int i = 0; i < count; i++)
- if (unlikely (!c->dispatch (arrayZ[i], hb_forward<Ts> (ds)...)))
+ if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
return_trace (false);
return_trace (true);
}
@@ -556,7 +565,7 @@ struct UnsizedListOfOffset16To : UnsizedArray16OfOffsetTo<Type, OffsetType, has_
{
TRACE_SANITIZE (this);
return_trace ((UnsizedArray16OfOffsetTo<Type, OffsetType, has_null>
- ::sanitize (c, count, this, hb_forward<Ts> (ds)...)));
+ ::sanitize (c, count, this, std::forward<Ts> (ds)...)));
}
};
@@ -698,10 +707,10 @@ struct ArrayOf
{
TRACE_SANITIZE (this);
if (unlikely (!sanitize_shallow (c))) return_trace (false);
- if (!sizeof... (Ts) && hb_is_trivially_copyable (Type)) return_trace (true);
+ if (!sizeof... (Ts) && std::is_trivially_copyable<Type>::value) return_trace (true);
unsigned int count = len;
for (unsigned int i = 0; i < count; i++)
- if (unlikely (!c->dispatch (arrayZ[i], hb_forward<Ts> (ds)...)))
+ if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
return_trace (false);
return_trace (true);
}
@@ -759,7 +768,7 @@ struct List16OfOffset16To : Array16OfOffset16To<Type>
bool sanitize (hb_sanitize_context_t *c, Ts&&... ds) const
{
TRACE_SANITIZE (this);
- return_trace (Array16OfOffset16To<Type>::sanitize (c, this, hb_forward<Ts> (ds)...));
+ return_trace (Array16OfOffset16To<Type>::sanitize (c, this, std::forward<Ts> (ds)...));
}
};
@@ -826,10 +835,10 @@ struct HeadlessArrayOf
{
TRACE_SANITIZE (this);
if (unlikely (!sanitize_shallow (c))) return_trace (false);
- if (!sizeof... (Ts) && hb_is_trivially_copyable (Type)) return_trace (true);
+ if (!sizeof... (Ts) && std::is_trivially_copyable<Type>::value) return_trace (true);
unsigned int count = get_length ();
for (unsigned int i = 0; i < count; i++)
- if (unlikely (!c->dispatch (arrayZ[i], hb_forward<Ts> (ds)...)))
+ if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
return_trace (false);
return_trace (true);
}
@@ -875,10 +884,10 @@ struct ArrayOfM1
{
TRACE_SANITIZE (this);
if (unlikely (!sanitize_shallow (c))) return_trace (false);
- if (!sizeof... (Ts) && hb_is_trivially_copyable (Type)) return_trace (true);
+ if (!sizeof... (Ts) && std::is_trivially_copyable<Type>::value) return_trace (true);
unsigned int count = lenM1 + 1;
for (unsigned int i = 0; i < count; i++)
- if (unlikely (!c->dispatch (arrayZ[i], hb_forward<Ts> (ds)...)))
+ if (unlikely (!c->dispatch (arrayZ[i], std::forward<Ts> (ds)...)))
return_trace (false);
return_trace (true);
}
@@ -1061,10 +1070,10 @@ struct VarSizedBinSearchArrayOf
{
TRACE_SANITIZE (this);
if (unlikely (!sanitize_shallow (c))) return_trace (false);
- if (!sizeof... (Ts) && hb_is_trivially_copyable (Type)) return_trace (true);
+ if (!sizeof... (Ts) && std::is_trivially_copyable<Type>::value) return_trace (true);
unsigned int count = get_length ();
for (unsigned int i = 0; i < count; i++)
- if (unlikely (!(*this)[i].sanitize (c, hb_forward<Ts> (ds)...)))
+ if (unlikely (!(*this)[i].sanitize (c, std::forward<Ts> (ds)...)))
return_trace (false);
return_trace (true);
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-cff-common.hh b/thirdparty/harfbuzz/src/hb-ot-cff-common.hh
index eaaf5e12ec..180c87cb89 100644
--- a/thirdparty/harfbuzz/src/hb-ot-cff-common.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-cff-common.hh
@@ -373,7 +373,7 @@ struct Dict : UnsizedByteStr
{
TRACE_SERIALIZE (this);
for (unsigned int i = 0; i < dictval.get_count (); i++)
- if (unlikely (!opszr.serialize (c, dictval[i], hb_forward<Ts> (ds)...)))
+ if (unlikely (!opszr.serialize (c, dictval[i], std::forward<Ts> (ds)...)))
return_trace (false);
return_trace (true);
diff --git a/thirdparty/harfbuzz/src/hb-ot-cmap-table.hh b/thirdparty/harfbuzz/src/hb-ot-cmap-table.hh
index b904bb46a8..c8a2af1e82 100644
--- a/thirdparty/harfbuzz/src/hb-ot-cmap-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-cmap-table.hh
@@ -604,7 +604,7 @@ struct CmapSubtableTrimmed
UINT length; /* Byte length of this subtable. */
UINT language; /* Ignore. */
UINT startCharCode; /* First character code covered. */
- ArrayOf<HBGlyphID, UINT>
+ ArrayOf<HBGlyphID16, UINT>
glyphIdArray; /* Array of glyph index values for character
* codes in the range. */
public:
@@ -900,7 +900,7 @@ struct UVSMapping
}
HBUINT24 unicodeValue; /* Base Unicode value of the UVS */
- HBGlyphID glyphID; /* Glyph ID of the UVS */
+ HBGlyphID16 glyphID; /* Glyph ID of the UVS */
public:
DEFINE_SIZE_STATIC (5);
};
diff --git a/thirdparty/harfbuzz/src/hb-ot-color-cbdt-table.hh b/thirdparty/harfbuzz/src/hb-ot-color-cbdt-table.hh
index 6c31d1b53e..14459914ee 100644
--- a/thirdparty/harfbuzz/src/hb-ot-color-cbdt-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-color-cbdt-table.hh
@@ -508,8 +508,8 @@ struct IndexSubtableRecord
offset, length, format);
}
- HBGlyphID firstGlyphIndex;
- HBGlyphID lastGlyphIndex;
+ HBGlyphID16 firstGlyphIndex;
+ HBGlyphID16 lastGlyphIndex;
Offset32To<IndexSubtable> offsetToSubtable;
public:
DEFINE_SIZE_STATIC (8);
@@ -679,8 +679,8 @@ struct BitmapSizeTable
HBUINT32 colorRef;
SBitLineMetrics horizontal;
SBitLineMetrics vertical;
- HBGlyphID startGlyphIndex;
- HBGlyphID endGlyphIndex;
+ HBGlyphID16 startGlyphIndex;
+ HBGlyphID16 endGlyphIndex;
HBUINT8 ppemX;
HBUINT8 ppemY;
HBUINT8 bitDepth;
diff --git a/thirdparty/harfbuzz/src/hb-ot-color-colr-table.hh b/thirdparty/harfbuzz/src/hb-ot-color-colr-table.hh
index 007ff3f47b..03476faba7 100644
--- a/thirdparty/harfbuzz/src/hb-ot-color-colr-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-color-colr-table.hh
@@ -30,6 +30,7 @@
#include "hb-open-type.hh"
#include "hb-ot-layout-common.hh"
+#include "hb-ot-var-common.hh"
/*
* COLR -- Color
@@ -42,7 +43,7 @@
#endif
#ifndef COLRV1_ENABLE_SUBSETTING
-#define COLRV1_ENABLE_SUBSETTING 0
+#define COLRV1_ENABLE_SUBSETTING 1
#endif
namespace OT {
@@ -121,7 +122,7 @@ struct LayerRecord
}
public:
- HBGlyphID glyphId; /* Glyph ID of layer glyph */
+ HBGlyphID16 glyphId; /* Glyph ID of layer glyph */
Index colorIdx; /* Index value to use with a
* selected color palette.
* An index value of 0xFFFF
@@ -148,7 +149,7 @@ struct BaseGlyphRecord
}
public:
- HBGlyphID glyphId; /* Glyph ID of reference glyph */
+ HBGlyphID16 glyphId; /* Glyph ID of reference glyph */
HBUINT16 firstLayerIdx; /* Index (from beginning of
* the Layer Records) to the
* layer record. There will be
@@ -163,15 +164,31 @@ struct BaseGlyphRecord
template <typename T>
struct Variable
{
+ Variable<T>* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ return_trace (c->embed (this));
+ }
+
+ void closurev1 (hb_colrv1_closure_context_t* c) const
+ { value.closurev1 (c); }
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ if (!value.subset (c)) return_trace (false);
+ return_trace (c->serializer->embed (varIdxBase));
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
- return_trace (c->check_struct (this));
+ return_trace (c->check_struct (this) && value.sanitize (c));
}
protected:
T value;
- VarIdx varIdx;
+ VarIdx varIdxBase;
public:
DEFINE_SIZE_STATIC (4 + T::static_size);
};
@@ -179,51 +196,46 @@ struct Variable
template <typename T>
struct NoVariable
{
- bool sanitize (hb_sanitize_context_t *c) const
+ NoVariable<T>* copy (hb_serialize_context_t *c) const
{
- TRACE_SANITIZE (this);
- return_trace (c->check_struct (this));
+ TRACE_SERIALIZE (this);
+ return_trace (c->embed (this));
}
- T value;
- public:
- DEFINE_SIZE_STATIC (T::static_size);
-};
-
-// Color structures
+ void closurev1 (hb_colrv1_closure_context_t* c) const
+ { value.closurev1 (c); }
-template <template<typename> class Var>
-struct ColorIndex
-{
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
- auto *out = c->serializer->embed (*this);
- if (unlikely (!out)) return_trace (false);
- return_trace (c->serializer->check_assign (out->paletteIndex, c->plan->colr_palettes->get (paletteIndex),
- HB_SERIALIZE_ERROR_INT_OVERFLOW));
+ return_trace (value.subset (c));
}
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
- return_trace (c->check_struct (this));
+ return_trace (c->check_struct (this) && value.sanitize (c));
}
- HBUINT16 paletteIndex;
- Var<F2DOT14> alpha;
+ T value;
public:
- DEFINE_SIZE_STATIC (2 + Var<F2DOT14>::static_size);
+ DEFINE_SIZE_STATIC (T::static_size);
};
-template <template<typename> class Var>
+// Color structures
+
struct ColorStop
{
+ void closurev1 (hb_colrv1_closure_context_t* c) const
+ { c->add_palette_index (paletteIndex); }
+
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
- if (unlikely (!c->serializer->embed (stopOffset))) return_trace (false);
- return_trace (color.subset (c));
+ auto *out = c->serializer->embed (*this);
+ if (unlikely (!out)) return_trace (false);
+ return_trace (c->serializer->check_assign (out->paletteIndex, c->plan->colr_palettes->get (paletteIndex),
+ HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool sanitize (hb_sanitize_context_t *c) const
@@ -232,10 +244,11 @@ struct ColorStop
return_trace (c->check_struct (this));
}
- Var<F2DOT14> stopOffset;
- ColorIndex<Var> color;
+ F2DOT14 stopOffset;
+ HBUINT16 paletteIndex;
+ F2DOT14 alpha;
public:
- DEFINE_SIZE_STATIC (Var<F2DOT14>::static_size + ColorIndex<Var>::static_size);
+ DEFINE_SIZE_STATIC (2 + 2 * F2DOT14::static_size);
};
struct Extend : HBUINT8
@@ -252,6 +265,12 @@ struct Extend : HBUINT8
template <template<typename> class Var>
struct ColorLine
{
+ void closurev1 (hb_colrv1_closure_context_t* c) const
+ {
+ for (const auto &stop : stops.iter ())
+ stop.closurev1 (c);
+ }
+
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
@@ -276,8 +295,8 @@ struct ColorLine
stops.sanitize (c));
}
- Extend extend;
- Array16Of<ColorStop<Var>> stops;
+ Extend extend;
+ Array16Of<Var<ColorStop>> stops;
public:
DEFINE_SIZE_ARRAY_SIZED (3, stops);
};
@@ -331,7 +350,6 @@ struct CompositeMode : HBUINT8
DEFINE_SIZE_STATIC (1);
};
-template <template<typename> class Var>
struct Affine2x3
{
bool sanitize (hb_sanitize_context_t *c) const
@@ -340,14 +358,14 @@ struct Affine2x3
return_trace (c->check_struct (this));
}
- Var<HBFixed> xx;
- Var<HBFixed> yx;
- Var<HBFixed> xy;
- Var<HBFixed> yy;
- Var<HBFixed> dx;
- Var<HBFixed> dy;
+ HBFixed xx;
+ HBFixed yx;
+ HBFixed xy;
+ HBFixed yy;
+ HBFixed dx;
+ HBFixed dy;
public:
- DEFINE_SIZE_STATIC (6 * Var<HBFixed>::static_size);
+ DEFINE_SIZE_STATIC (6 * HBFixed::static_size);
};
struct PaintColrLayers
@@ -373,22 +391,23 @@ struct PaintColrLayers
HBUINT8 format; /* format = 1 */
HBUINT8 numLayers;
- HBUINT32 firstLayerIndex; /* index into COLRv1::layersV1 */
+ HBUINT32 firstLayerIndex; /* index into COLRv1::layerList */
public:
DEFINE_SIZE_STATIC (6);
};
-template <template<typename> class Var>
struct PaintSolid
{
void closurev1 (hb_colrv1_closure_context_t* c) const
- { c->add_palette_index (color.paletteIndex); }
+ { c->add_palette_index (paletteIndex); }
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
- if (unlikely (!c->serializer->embed (format))) return_trace (false);
- return_trace (color.subset (c));
+ auto *out = c->serializer->embed (*this);
+ if (unlikely (!out)) return_trace (false);
+ return_trace (c->serializer->check_assign (out->paletteIndex, c->plan->colr_palettes->get (paletteIndex),
+ HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool sanitize (hb_sanitize_context_t *c) const
@@ -397,20 +416,18 @@ struct PaintSolid
return_trace (c->check_struct (this));
}
- HBUINT8 format; /* format = 2(noVar) or 3(Var)*/
- ColorIndex<Var> color;
+ HBUINT8 format; /* format = 2(noVar) or 3(Var)*/
+ HBUINT16 paletteIndex;
+ F2DOT14 alpha;
public:
- DEFINE_SIZE_STATIC (1 + ColorIndex<Var>::static_size);
+ DEFINE_SIZE_STATIC (3 + F2DOT14::static_size);
};
template <template<typename> class Var>
struct PaintLinearGradient
{
void closurev1 (hb_colrv1_closure_context_t* c) const
- {
- for (const auto &stop : (this+colorLine).stops.iter ())
- c->add_palette_index (stop.color.paletteIndex);
- }
+ { (this+colorLine).closurev1 (c); }
bool subset (hb_subset_context_t *c) const
{
@@ -430,19 +447,22 @@ struct PaintLinearGradient
HBUINT8 format; /* format = 4(noVar) or 5 (Var) */
Offset24To<ColorLine<Var>> colorLine; /* Offset (from beginning of PaintLinearGradient
* table) to ColorLine subtable. */
- Var<FWORD> x0;
- Var<FWORD> y0;
- Var<FWORD> x1;
- Var<FWORD> y1;
- Var<FWORD> x2;
- Var<FWORD> y2;
+ FWORD x0;
+ FWORD y0;
+ FWORD x1;
+ FWORD y1;
+ FWORD x2;
+ FWORD y2;
public:
- DEFINE_SIZE_STATIC (4 + 6 * Var<FWORD>::static_size);
+ DEFINE_SIZE_STATIC (4 + 6 * FWORD::static_size);
};
template <template<typename> class Var>
struct PaintRadialGradient
{
+ void closurev1 (hb_colrv1_closure_context_t* c) const
+ { (this+colorLine).closurev1 (c); }
+
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
@@ -452,12 +472,6 @@ struct PaintRadialGradient
return_trace (out->colorLine.serialize_subset (c, colorLine, this));
}
- void closurev1 (hb_colrv1_closure_context_t* c) const
- {
- for (const auto &stop : (this+colorLine).stops.iter ())
- c->add_palette_index (stop.color.paletteIndex);
- }
-
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -467,19 +481,22 @@ struct PaintRadialGradient
HBUINT8 format; /* format = 6(noVar) or 7 (Var) */
Offset24To<ColorLine<Var>> colorLine; /* Offset (from beginning of PaintRadialGradient
* table) to ColorLine subtable. */
- Var<FWORD> x0;
- Var<FWORD> y0;
- Var<UFWORD> radius0;
- Var<FWORD> x1;
- Var<FWORD> y1;
- Var<UFWORD> radius1;
+ FWORD x0;
+ FWORD y0;
+ UFWORD radius0;
+ FWORD x1;
+ FWORD y1;
+ UFWORD radius1;
public:
- DEFINE_SIZE_STATIC (4 + 6 * Var<FWORD>::static_size);
+ DEFINE_SIZE_STATIC (4 + 6 * FWORD::static_size);
};
template <template<typename> class Var>
struct PaintSweepGradient
{
+ void closurev1 (hb_colrv1_closure_context_t* c) const
+ { (this+colorLine).closurev1 (c); }
+
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
@@ -489,12 +506,6 @@ struct PaintSweepGradient
return_trace (out->colorLine.serialize_subset (c, colorLine, this));
}
- void closurev1 (hb_colrv1_closure_context_t* c) const
- {
- for (const auto &stop : (this+colorLine).stops.iter ())
- c->add_palette_index (stop.color.paletteIndex);
- }
-
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -504,12 +515,12 @@ struct PaintSweepGradient
HBUINT8 format; /* format = 8(noVar) or 9 (Var) */
Offset24To<ColorLine<Var>> colorLine; /* Offset (from beginning of PaintSweepGradient
* table) to ColorLine subtable. */
- Var<FWORD> centerX;
- Var<FWORD> centerY;
- Var<HBFixed> startAngle;
- Var<HBFixed> endAngle;
+ FWORD centerX;
+ FWORD centerY;
+ F2DOT14 startAngle;
+ F2DOT14 endAngle;
public:
- DEFINE_SIZE_STATIC (2 * Var<FWORD>::static_size + 2 * Var<HBFixed>::static_size);
+ DEFINE_SIZE_STATIC (4 + 2 * FWORD::static_size + 2 * F2DOT14::static_size);
};
struct Paint;
@@ -580,24 +591,25 @@ struct PaintTransform
TRACE_SUBSET (this);
auto *out = c->serializer->embed (this);
if (unlikely (!out)) return_trace (false);
-
+ if (!out->transform.serialize_copy (c->serializer, transform, this)) return_trace (false);
return_trace (out->src.serialize_subset (c, src, this));
}
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
- return_trace (c->check_struct (this) && src.sanitize (c, this));
+ return_trace (c->check_struct (this) &&
+ src.sanitize (c, this) &&
+ transform.sanitize (c, this));
}
- HBUINT8 format; /* format = 12(noVar) or 13 (Var) */
- Offset24To<Paint> src; /* Offset (from beginning of PaintTransform table) to Paint subtable. */
- Affine2x3<Var> transform;
+ HBUINT8 format; /* format = 12(noVar) or 13 (Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintTransform table) to Paint subtable. */
+ Offset24To<Var<Affine2x3>> transform;
public:
- DEFINE_SIZE_STATIC (4 + Affine2x3<Var>::static_size);
+ DEFINE_SIZE_STATIC (7);
};
-template <template<typename> class Var>
struct PaintTranslate
{
HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
@@ -619,14 +631,13 @@ struct PaintTranslate
HBUINT8 format; /* format = 14(noVar) or 15 (Var) */
Offset24To<Paint> src; /* Offset (from beginning of PaintTranslate table) to Paint subtable. */
- Var<HBFixed> dx;
- Var<HBFixed> dy;
+ FWORD dx;
+ FWORD dy;
public:
- DEFINE_SIZE_STATIC (4 + Var<HBFixed>::static_size);
+ DEFINE_SIZE_STATIC (4 + 2 * FWORD::static_size);
};
-template <template<typename> class Var>
-struct PaintRotate
+struct PaintScale
{
HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
@@ -646,15 +657,150 @@ struct PaintRotate
}
HBUINT8 format; /* format = 16 (noVar) or 17(Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintScale table) to Paint subtable. */
+ F2DOT14 scaleX;
+ F2DOT14 scaleY;
+ public:
+ DEFINE_SIZE_STATIC (4 + 2 * F2DOT14::static_size);
+};
+
+struct PaintScaleAroundCenter
+{
+ HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ return_trace (out->src.serialize_subset (c, src, this));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && src.sanitize (c, this));
+ }
+
+ HBUINT8 format; /* format = 18 (noVar) or 19(Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintScaleAroundCenter table) to Paint subtable. */
+ F2DOT14 scaleX;
+ F2DOT14 scaleY;
+ FWORD centerX;
+ FWORD centerY;
+ public:
+ DEFINE_SIZE_STATIC (4 + 2 * F2DOT14::static_size + 2 * FWORD::static_size);
+};
+
+struct PaintScaleUniform
+{
+ HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ return_trace (out->src.serialize_subset (c, src, this));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && src.sanitize (c, this));
+ }
+
+ HBUINT8 format; /* format = 20 (noVar) or 21(Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintScaleUniform table) to Paint subtable. */
+ F2DOT14 scale;
+ public:
+ DEFINE_SIZE_STATIC (4 + F2DOT14::static_size);
+};
+
+struct PaintScaleUniformAroundCenter
+{
+ HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ return_trace (out->src.serialize_subset (c, src, this));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && src.sanitize (c, this));
+ }
+
+ HBUINT8 format; /* format = 22 (noVar) or 23(Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintScaleUniformAroundCenter table) to Paint subtable. */
+ F2DOT14 scale;
+ FWORD centerX;
+ FWORD centerY;
+ public:
+ DEFINE_SIZE_STATIC (4 + F2DOT14::static_size + 2 * FWORD::static_size);
+};
+
+struct PaintRotate
+{
+ HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ return_trace (out->src.serialize_subset (c, src, this));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && src.sanitize (c, this));
+ }
+
+ HBUINT8 format; /* format = 24 (noVar) or 25(Var) */
Offset24To<Paint> src; /* Offset (from beginning of PaintRotate table) to Paint subtable. */
- Var<HBFixed> angle;
- Var<HBFixed> centerX;
- Var<HBFixed> centerY;
+ F2DOT14 angle;
public:
- DEFINE_SIZE_STATIC (4 + 3 * Var<HBFixed>::static_size);
+ DEFINE_SIZE_STATIC (4 + F2DOT14::static_size);
+};
+
+struct PaintRotateAroundCenter
+{
+ HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ return_trace (out->src.serialize_subset (c, src, this));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && src.sanitize (c, this));
+ }
+
+ HBUINT8 format; /* format = 26 (noVar) or 27(Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintRotateAroundCenter table) to Paint subtable. */
+ F2DOT14 angle;
+ FWORD centerX;
+ FWORD centerY;
+ public:
+ DEFINE_SIZE_STATIC (4 + F2DOT14::static_size + 2 * FWORD::static_size);
};
-template <template<typename> class Var>
struct PaintSkew
{
HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
@@ -674,14 +820,41 @@ struct PaintSkew
return_trace (c->check_struct (this) && src.sanitize (c, this));
}
- HBUINT8 format; /* format = 18(noVar) or 19 (Var) */
+ HBUINT8 format; /* format = 28(noVar) or 29 (Var) */
Offset24To<Paint> src; /* Offset (from beginning of PaintSkew table) to Paint subtable. */
- Var<HBFixed> xSkewAngle;
- Var<HBFixed> ySkewAngle;
- Var<HBFixed> centerX;
- Var<HBFixed> centerY;
+ F2DOT14 xSkewAngle;
+ F2DOT14 ySkewAngle;
public:
- DEFINE_SIZE_STATIC (4 + 4 * Var<HBFixed>::static_size);
+ DEFINE_SIZE_STATIC (4 + 2 * F2DOT14::static_size);
+};
+
+struct PaintSkewAroundCenter
+{
+ HB_INTERNAL void closurev1 (hb_colrv1_closure_context_t* c) const;
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ return_trace (out->src.serialize_subset (c, src, this));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && src.sanitize (c, this));
+ }
+
+ HBUINT8 format; /* format = 30(noVar) or 31 (Var) */
+ Offset24To<Paint> src; /* Offset (from beginning of PaintSkewAroundCenter table) to Paint subtable. */
+ F2DOT14 xSkewAngle;
+ F2DOT14 ySkewAngle;
+ FWORD centerX;
+ FWORD centerY;
+ public:
+ DEFINE_SIZE_STATIC (4 + 2 * F2DOT14::static_size + 2 * FWORD::static_size);
};
struct PaintComposite
@@ -706,7 +879,7 @@ struct PaintComposite
backdrop.sanitize (c, this));
}
- HBUINT8 format; /* format = 20 */
+ HBUINT8 format; /* format = 32 */
Offset24To<Paint> src; /* Offset (from beginning of PaintComposite table) to source Paint subtable. */
CompositeMode mode; /* If mode is unrecognized use COMPOSITE_CLEAR */
Offset24To<Paint> backdrop; /* Offset (from beginning of PaintComposite table) to backdrop Paint subtable. */
@@ -714,6 +887,179 @@ struct PaintComposite
DEFINE_SIZE_STATIC (8);
};
+struct ClipBoxFormat1
+{
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this));
+ }
+
+ public:
+ HBUINT8 format; /* format = 1(noVar) or 2(Var)*/
+ FWORD xMin;
+ FWORD yMin;
+ FWORD xMax;
+ FWORD yMax;
+ public:
+ DEFINE_SIZE_STATIC (1 + 4 * FWORD::static_size);
+};
+
+struct ClipBoxFormat2 : Variable<ClipBoxFormat1> {};
+
+struct ClipBox
+{
+ ClipBox* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ switch (u.format) {
+ case 1: return_trace (reinterpret_cast<ClipBox *> (c->embed (u.format1)));
+ case 2: return_trace (reinterpret_cast<ClipBox *> (c->embed (u.format2)));
+ default:return_trace (nullptr);
+ }
+ }
+
+ template <typename context_t, typename ...Ts>
+ typename context_t::return_t dispatch (context_t *c, Ts&&... ds) const
+ {
+ TRACE_DISPATCH (this, u.format);
+ if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
+ switch (u.format) {
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
+ default:return_trace (c->default_return_value ());
+ }
+ }
+
+ protected:
+ union {
+ HBUINT8 format; /* Format identifier */
+ ClipBoxFormat1 format1;
+ ClipBoxFormat2 format2;
+ } u;
+};
+
+struct ClipRecord
+{
+ ClipRecord* copy (hb_serialize_context_t *c, const void *base) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+ if (!out->clipBox.serialize_copy (c, clipBox, base)) return_trace (nullptr);
+ return_trace (out);
+ }
+
+ bool sanitize (hb_sanitize_context_t *c, const void *base) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && clipBox.sanitize (c, base));
+ }
+
+ public:
+ HBUINT16 startGlyphID; // first gid clip applies to
+ HBUINT16 endGlyphID; // last gid clip applies to, inclusive
+ Offset24To<ClipBox> clipBox; // Box or VarBox
+ public:
+ DEFINE_SIZE_STATIC (7);
+};
+
+struct ClipList
+{
+ unsigned serialize_clip_records (hb_serialize_context_t *c,
+ const hb_set_t& gids,
+ const hb_map_t& gid_offset_map) const
+ {
+ TRACE_SERIALIZE (this);
+ if (gids.is_empty () ||
+ gid_offset_map.get_population () != gids.get_population ())
+ return_trace (0);
+
+ unsigned count = 0;
+
+ hb_codepoint_t start_gid= gids.get_min ();
+ hb_codepoint_t prev_gid = start_gid;
+
+ unsigned offset = gid_offset_map.get (start_gid);
+ unsigned prev_offset = offset;
+ for (const hb_codepoint_t _ : gids.iter ())
+ {
+ if (_ == start_gid) continue;
+
+ offset = gid_offset_map.get (_);
+ if (_ == prev_gid + 1 && offset == prev_offset)
+ {
+ prev_gid = _;
+ continue;
+ }
+
+ ClipRecord record;
+ record.startGlyphID = start_gid;
+ record.endGlyphID = prev_gid;
+ record.clipBox = prev_offset;
+
+ if (!c->copy (record, this)) return_trace (0);
+ count++;
+
+ start_gid = _;
+ prev_gid = _;
+ prev_offset = offset;
+ }
+
+ //last one
+ {
+ ClipRecord record;
+ record.startGlyphID = start_gid;
+ record.endGlyphID = prev_gid;
+ record.clipBox = prev_offset;
+ if (!c->copy (record, this)) return_trace (0);
+ count++;
+ }
+ return_trace (count);
+ }
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+ if (!c->serializer->check_assign (out->format, format, HB_SERIALIZE_ERROR_INT_OVERFLOW)) return_trace (false);
+
+ const hb_set_t& glyphset = *c->plan->_glyphset;
+ const hb_map_t &glyph_map = *c->plan->glyph_map;
+
+ hb_map_t new_gid_offset_map;
+ hb_set_t new_gids;
+ for (const ClipRecord& record : clips.iter ())
+ {
+ unsigned start_gid = record.startGlyphID;
+ unsigned end_gid = record.endGlyphID;
+ for (unsigned gid = start_gid; gid <= end_gid; gid++)
+ {
+ if (!glyphset.has (gid) || !glyph_map.has (gid)) continue;
+ unsigned new_gid = glyph_map.get (gid);
+ new_gid_offset_map.set (new_gid, record.clipBox);
+ new_gids.add (new_gid);
+ }
+ }
+
+ unsigned count = serialize_clip_records (c->serializer, new_gids, new_gid_offset_map);
+ if (!count) return_trace (false);
+ return_trace (c->serializer->check_assign (out->clips.len, count, HB_SERIALIZE_ERROR_INT_OVERFLOW));
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) && clips.sanitize (c, this));
+ }
+
+ HBUINT8 format; // Set to 1.
+ Array32Of<ClipRecord> clips; // Clip records, sorted by startGlyphID
+ public:
+ DEFINE_SIZE_ARRAY_SIZED (5, clips);
+};
+
struct Paint
{
template <typename context_t, typename ...Ts>
@@ -722,57 +1068,81 @@ struct Paint
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.paintformat1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.paintformat2, hb_forward<Ts> (ds)...));
- case 3: return_trace (c->dispatch (u.paintformat3, hb_forward<Ts> (ds)...));
- case 4: return_trace (c->dispatch (u.paintformat4, hb_forward<Ts> (ds)...));
- case 5: return_trace (c->dispatch (u.paintformat5, hb_forward<Ts> (ds)...));
- case 6: return_trace (c->dispatch (u.paintformat6, hb_forward<Ts> (ds)...));
- case 7: return_trace (c->dispatch (u.paintformat7, hb_forward<Ts> (ds)...));
- case 8: return_trace (c->dispatch (u.paintformat8, hb_forward<Ts> (ds)...));
- case 9: return_trace (c->dispatch (u.paintformat9, hb_forward<Ts> (ds)...));
- case 10: return_trace (c->dispatch (u.paintformat10, hb_forward<Ts> (ds)...));
- case 11: return_trace (c->dispatch (u.paintformat11, hb_forward<Ts> (ds)...));
- case 12: return_trace (c->dispatch (u.paintformat12, hb_forward<Ts> (ds)...));
- case 13: return_trace (c->dispatch (u.paintformat13, hb_forward<Ts> (ds)...));
- case 14: return_trace (c->dispatch (u.paintformat14, hb_forward<Ts> (ds)...));
- case 15: return_trace (c->dispatch (u.paintformat15, hb_forward<Ts> (ds)...));
- case 16: return_trace (c->dispatch (u.paintformat16, hb_forward<Ts> (ds)...));
- case 17: return_trace (c->dispatch (u.paintformat17, hb_forward<Ts> (ds)...));
- case 18: return_trace (c->dispatch (u.paintformat18, hb_forward<Ts> (ds)...));
- case 19: return_trace (c->dispatch (u.paintformat19, hb_forward<Ts> (ds)...));
- case 20: return_trace (c->dispatch (u.paintformat20, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.paintformat1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.paintformat2, std::forward<Ts> (ds)...));
+ case 3: return_trace (c->dispatch (u.paintformat3, std::forward<Ts> (ds)...));
+ case 4: return_trace (c->dispatch (u.paintformat4, std::forward<Ts> (ds)...));
+ case 5: return_trace (c->dispatch (u.paintformat5, std::forward<Ts> (ds)...));
+ case 6: return_trace (c->dispatch (u.paintformat6, std::forward<Ts> (ds)...));
+ case 7: return_trace (c->dispatch (u.paintformat7, std::forward<Ts> (ds)...));
+ case 8: return_trace (c->dispatch (u.paintformat8, std::forward<Ts> (ds)...));
+ case 9: return_trace (c->dispatch (u.paintformat9, std::forward<Ts> (ds)...));
+ case 10: return_trace (c->dispatch (u.paintformat10, std::forward<Ts> (ds)...));
+ case 11: return_trace (c->dispatch (u.paintformat11, std::forward<Ts> (ds)...));
+ case 12: return_trace (c->dispatch (u.paintformat12, std::forward<Ts> (ds)...));
+ case 13: return_trace (c->dispatch (u.paintformat13, std::forward<Ts> (ds)...));
+ case 14: return_trace (c->dispatch (u.paintformat14, std::forward<Ts> (ds)...));
+ case 15: return_trace (c->dispatch (u.paintformat15, std::forward<Ts> (ds)...));
+ case 16: return_trace (c->dispatch (u.paintformat16, std::forward<Ts> (ds)...));
+ case 17: return_trace (c->dispatch (u.paintformat17, std::forward<Ts> (ds)...));
+ case 18: return_trace (c->dispatch (u.paintformat18, std::forward<Ts> (ds)...));
+ case 19: return_trace (c->dispatch (u.paintformat19, std::forward<Ts> (ds)...));
+ case 20: return_trace (c->dispatch (u.paintformat20, std::forward<Ts> (ds)...));
+ case 21: return_trace (c->dispatch (u.paintformat21, std::forward<Ts> (ds)...));
+ case 22: return_trace (c->dispatch (u.paintformat22, std::forward<Ts> (ds)...));
+ case 23: return_trace (c->dispatch (u.paintformat23, std::forward<Ts> (ds)...));
+ case 24: return_trace (c->dispatch (u.paintformat24, std::forward<Ts> (ds)...));
+ case 25: return_trace (c->dispatch (u.paintformat25, std::forward<Ts> (ds)...));
+ case 26: return_trace (c->dispatch (u.paintformat26, std::forward<Ts> (ds)...));
+ case 27: return_trace (c->dispatch (u.paintformat27, std::forward<Ts> (ds)...));
+ case 28: return_trace (c->dispatch (u.paintformat28, std::forward<Ts> (ds)...));
+ case 29: return_trace (c->dispatch (u.paintformat29, std::forward<Ts> (ds)...));
+ case 30: return_trace (c->dispatch (u.paintformat30, std::forward<Ts> (ds)...));
+ case 31: return_trace (c->dispatch (u.paintformat31, std::forward<Ts> (ds)...));
+ case 32: return_trace (c->dispatch (u.paintformat32, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
protected:
union {
- HBUINT8 format;
- PaintColrLayers paintformat1;
- PaintSolid<NoVariable> paintformat2;
- PaintSolid<Variable> paintformat3;
- PaintLinearGradient<NoVariable> paintformat4;
- PaintLinearGradient<Variable> paintformat5;
- PaintRadialGradient<NoVariable> paintformat6;
- PaintRadialGradient<Variable> paintformat7;
- PaintSweepGradient<NoVariable> paintformat8;
- PaintSweepGradient<Variable> paintformat9;
- PaintGlyph paintformat10;
- PaintColrGlyph paintformat11;
- PaintTransform<NoVariable> paintformat12;
- PaintTransform<Variable> paintformat13;
- PaintTranslate<NoVariable> paintformat14;
- PaintTranslate<Variable> paintformat15;
- PaintRotate<NoVariable> paintformat16;
- PaintRotate<Variable> paintformat17;
- PaintSkew<NoVariable> paintformat18;
- PaintSkew<Variable> paintformat19;
- PaintComposite paintformat20;
+ HBUINT8 format;
+ PaintColrLayers paintformat1;
+ PaintSolid paintformat2;
+ Variable<PaintSolid> paintformat3;
+ PaintLinearGradient<NoVariable> paintformat4;
+ Variable<PaintLinearGradient<Variable>> paintformat5;
+ PaintRadialGradient<NoVariable> paintformat6;
+ Variable<PaintRadialGradient<Variable>> paintformat7;
+ PaintSweepGradient<NoVariable> paintformat8;
+ Variable<PaintSweepGradient<Variable>> paintformat9;
+ PaintGlyph paintformat10;
+ PaintColrGlyph paintformat11;
+ PaintTransform<NoVariable> paintformat12;
+ PaintTransform<Variable> paintformat13;
+ PaintTranslate paintformat14;
+ Variable<PaintTranslate> paintformat15;
+ PaintScale paintformat16;
+ Variable<PaintScale> paintformat17;
+ PaintScaleAroundCenter paintformat18;
+ Variable<PaintScaleAroundCenter> paintformat19;
+ PaintScaleUniform paintformat20;
+ Variable<PaintScaleUniform> paintformat21;
+ PaintScaleUniformAroundCenter paintformat22;
+ Variable<PaintScaleUniformAroundCenter> paintformat23;
+ PaintRotate paintformat24;
+ Variable<PaintRotate> paintformat25;
+ PaintRotateAroundCenter paintformat26;
+ Variable<PaintRotateAroundCenter> paintformat27;
+ PaintSkew paintformat28;
+ Variable<PaintSkew> paintformat29;
+ PaintSkewAroundCenter paintformat30;
+ Variable<PaintSkewAroundCenter> paintformat31;
+ PaintComposite paintformat32;
} u;
};
-struct BaseGlyphV1Record
+struct BaseGlyphPaintRecord
{
int cmp (hb_codepoint_t g) const
{ return g < glyphId ? -1 : g > glyphId ? 1 : 0; }
@@ -797,14 +1167,14 @@ struct BaseGlyphV1Record
}
public:
- HBGlyphID glyphId; /* Glyph ID of reference glyph */
- Offset32To<Paint> paint; /* Offset (from beginning of BaseGlyphV1Record array) to Paint,
+ HBGlyphID16 glyphId; /* Glyph ID of reference glyph */
+ Offset32To<Paint> paint; /* Offset (from beginning of BaseGlyphPaintRecord array) to Paint,
* Typically PaintColrLayers */
public:
DEFINE_SIZE_STATIC (6);
};
-struct BaseGlyphV1List : SortedArray32Of<BaseGlyphV1Record>
+struct BaseGlyphList : SortedArray32Of<BaseGlyphPaintRecord>
{
bool subset (hb_subset_context_t *c) const
{
@@ -828,11 +1198,11 @@ struct BaseGlyphV1List : SortedArray32Of<BaseGlyphV1Record>
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
- return_trace (SortedArray32Of<BaseGlyphV1Record>::sanitize (c, this));
+ return_trace (SortedArray32Of<BaseGlyphPaintRecord>::sanitize (c, this));
}
};
-struct LayerV1List : Array32OfOffset32To<Paint>
+struct LayerList : Array32OfOffset32To<Paint>
{
const Paint& get_paint (unsigned i) const
{ return this+(*this)[i]; }
@@ -952,24 +1322,24 @@ struct COLR
hb_set_t visited_glyphs;
hb_colrv1_closure_context_t c (this, &visited_glyphs, layer_indices, palette_indices);
- const BaseGlyphV1List &baseglyphV1_records = this+baseGlyphsV1List;
+ const BaseGlyphList &baseglyph_paintrecords = this+baseGlyphList;
- for (const BaseGlyphV1Record &baseglyphV1record: baseglyphV1_records.iter ())
+ for (const BaseGlyphPaintRecord &baseglyph_paintrecord: baseglyph_paintrecords.iter ())
{
- unsigned gid = baseglyphV1record.glyphId;
+ unsigned gid = baseglyph_paintrecord.glyphId;
if (!glyphset->has (gid)) continue;
- const Paint &paint = &baseglyphV1_records+baseglyphV1record.paint;
+ const Paint &paint = &baseglyph_paintrecords+baseglyph_paintrecord.paint;
paint.dispatch (&c);
}
hb_set_union (glyphset, &visited_glyphs);
}
- const LayerV1List& get_layerV1List () const
- { return (this+layersV1); }
+ const LayerList& get_layerList () const
+ { return (this+layerList); }
- const BaseGlyphV1List& get_baseglyphV1List () const
- { return (this+baseGlyphsV1List); }
+ const BaseGlyphList& get_baseglyphList () const
+ { return (this+baseGlyphList); }
bool sanitize (hb_sanitize_context_t *c) const
{
@@ -979,8 +1349,10 @@ struct COLR
(this+layersZ).sanitize (c, numLayers) &&
(version == 0 ||
(COLRV1_ENABLE_SUBSETTING && version == 1 &&
- baseGlyphsV1List.sanitize (c, this) &&
- layersV1.sanitize (c, this) &&
+ baseGlyphList.sanitize (c, this) &&
+ layerList.sanitize (c, this) &&
+ clipList.sanitize (c, this) &&
+ varIdxMap.sanitize (c, this) &&
varStore.sanitize (c, this))));
}
@@ -996,19 +1368,17 @@ struct COLR
if (unlikely (base_it.len () != layer_it.len ()))
return_trace (false);
- if (unlikely (!c->extend_min (this))) return_trace (false);
this->version = version;
numLayers = 0;
numBaseGlyphs = base_it.len ();
- if (base_it.len () == 0)
+ if (numBaseGlyphs == 0)
{
baseGlyphsZ = 0;
layersZ = 0;
return_trace (true);
}
- baseGlyphsZ = COLR::min_size;
- layersZ = COLR::min_size + numBaseGlyphs * BaseGlyphRecord::min_size;
+ c->push ();
for (const hb_item_type<BaseIterator> _ : + base_it.iter ())
{
auto* record = c->embed (_);
@@ -1016,10 +1386,14 @@ struct COLR
record->firstLayerIdx = numLayers;
numLayers += record->numLayers;
}
+ c->add_link (baseGlyphsZ, c->pop_pack ());
+ c->push ();
for (const hb_item_type<LayerIterator>& _ : + layer_it.iter ())
_.as_array ().copy (c);
+ c->add_link (layersZ, c->pop_pack ());
+
return_trace (true);
}
@@ -1033,9 +1407,9 @@ struct COLR
return record;
}
- const BaseGlyphV1Record* get_base_glyphV1_record (hb_codepoint_t gid) const
+ const BaseGlyphPaintRecord* get_base_glyph_paintrecord (hb_codepoint_t gid) const
{
- const BaseGlyphV1Record* record = &(this+baseGlyphsV1List).bsearch ((unsigned) gid);
+ const BaseGlyphPaintRecord* record = &(this+baseGlyphList).bsearch ((unsigned) gid);
if ((record && (hb_codepoint_t) record->glyphId != gid))
record = nullptr;
return record;
@@ -1101,23 +1475,26 @@ struct COLR
return_trace (false);
COLR *colr_prime = c->serializer->start_embed<COLR> ();
- bool ret = colr_prime->serialize_V0 (c->serializer, version, base_it, layer_it);
+ if (unlikely (!c->serializer->extend_min (colr_prime))) return_trace (false);
+
+ if (version == 0)
+ return_trace (colr_prime->serialize_V0 (c->serializer, version, base_it, layer_it));
- if (version == 0) return_trace (ret);
auto snap = c->serializer->snapshot ();
- if (!c->serializer->allocate_size<void> (3 * HBUINT32::static_size)) return_trace (false);
- if (!colr_prime->baseGlyphsV1List.serialize_subset (c, baseGlyphsV1List, this))
+ if (!c->serializer->allocate_size<void> (5 * HBUINT32::static_size)) return_trace (false);
+ if (!colr_prime->baseGlyphList.serialize_subset (c, baseGlyphList, this))
{
if (c->serializer->in_error ()) return_trace (false);
//no more COLRv1 glyphs: downgrade to version 0
c->serializer->revert (snap);
- colr_prime->version = 0;
- return_trace (true);
+ return_trace (colr_prime->serialize_V0 (c->serializer, 0, base_it, layer_it));
}
- if (!colr_prime->layersV1.serialize_subset (c, layersV1, this)) return_trace (false);
+ if (!colr_prime->serialize_V0 (c->serializer, version, base_it, layer_it)) return_trace (false);
- colr_prime->varStore = 0;
+ colr_prime->layerList.serialize_subset (c, layerList, this);
+ colr_prime->clipList.serialize_subset (c, clipList, this);
+ colr_prime->varIdxMap.serialize_copy (c->serializer, varIdxMap, this);
//TODO: subset varStore once it's implemented in fonttools
return_trace (true);
}
@@ -1131,8 +1508,10 @@ struct COLR
layersZ; /* Offset to Layer Records. */
HBUINT16 numLayers; /* Number of Layer Records. */
// Version-1 additions
- Offset32To<BaseGlyphV1List> baseGlyphsV1List;
- Offset32To<LayerV1List> layersV1;
+ Offset32To<BaseGlyphList> baseGlyphList;
+ Offset32To<LayerList> layerList;
+ Offset32To<ClipList> clipList; // Offset to ClipList table (may be NULL)
+ Offset32To<DeltaSetIndexMap> varIdxMap; // Offset to DeltaSetIndexMap table (may be NULL)
Offset32To<VariationStore> varStore;
public:
DEFINE_SIZE_MIN (14);
diff --git a/thirdparty/harfbuzz/src/hb-ot-color-colrv1-closure.hh b/thirdparty/harfbuzz/src/hb-ot-color-colrv1-closure.hh
index 4124efe0b1..ca85ba6ad6 100644
--- a/thirdparty/harfbuzz/src/hb-ot-color-colrv1-closure.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-color-colrv1-closure.hh
@@ -40,7 +40,7 @@ namespace OT {
HB_INTERNAL void PaintColrLayers::closurev1 (hb_colrv1_closure_context_t* c) const
{
c->add_layer_indices (firstLayerIndex, numLayers);
- const LayerV1List &paint_offset_lists = c->get_colr_table ()->get_layerV1List ();
+ const LayerList &paint_offset_lists = c->get_colr_table ()->get_layerList ();
for (unsigned i = firstLayerIndex; i < firstLayerIndex + numLayers; i++)
{
const Paint &paint = hb_addressof (paint_offset_lists) + paint_offset_lists[i];
@@ -57,37 +57,44 @@ HB_INTERNAL void PaintGlyph::closurev1 (hb_colrv1_closure_context_t* c) const
HB_INTERNAL void PaintColrGlyph::closurev1 (hb_colrv1_closure_context_t* c) const
{
const COLR *colr_table = c->get_colr_table ();
- const BaseGlyphV1Record* baseglyphV1_record = colr_table->get_base_glyphV1_record (gid);
- if (!baseglyphV1_record) return;
+ const BaseGlyphPaintRecord* baseglyph_paintrecord = colr_table->get_base_glyph_paintrecord (gid);
+ if (!baseglyph_paintrecord) return;
c->add_glyph (gid);
- const BaseGlyphV1List &baseglyphV1_list = colr_table->get_baseglyphV1List ();
- (&baseglyphV1_list+baseglyphV1_record->paint).dispatch (c);
+ const BaseGlyphList &baseglyph_list = colr_table->get_baseglyphList ();
+ (&baseglyph_list+baseglyph_paintrecord->paint).dispatch (c);
}
template <template<typename> class Var>
HB_INTERNAL void PaintTransform<Var>::closurev1 (hb_colrv1_closure_context_t* c) const
-{
- (this+src).dispatch (c);
-}
+{ (this+src).dispatch (c); }
-template <template<typename> class Var>
-HB_INTERNAL void PaintTranslate<Var>::closurev1 (hb_colrv1_closure_context_t* c) const
-{
- (this+src).dispatch (c);
-}
+HB_INTERNAL void PaintTranslate::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
-template <template<typename> class Var>
-HB_INTERNAL void PaintRotate<Var>::closurev1 (hb_colrv1_closure_context_t* c) const
-{
- (this+src).dispatch (c);
-}
+HB_INTERNAL void PaintScale::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
-template <template<typename> class Var>
-HB_INTERNAL void PaintSkew<Var>::closurev1 (hb_colrv1_closure_context_t* c) const
-{
- (this+src).dispatch (c);
-}
+HB_INTERNAL void PaintScaleAroundCenter::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
+
+HB_INTERNAL void PaintScaleUniform::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
+
+HB_INTERNAL void PaintScaleUniformAroundCenter::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
+
+HB_INTERNAL void PaintRotate::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
+
+HB_INTERNAL void PaintRotateAroundCenter::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
+
+HB_INTERNAL void PaintSkew::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
+
+HB_INTERNAL void PaintSkewAroundCenter::closurev1 (hb_colrv1_closure_context_t* c) const
+{ (this+src).dispatch (c); }
HB_INTERNAL void PaintComposite::closurev1 (hb_colrv1_closure_context_t* c) const
{
diff --git a/thirdparty/harfbuzz/src/hb-ot-glyf-table.hh b/thirdparty/harfbuzz/src/hb-ot-glyf-table.hh
index ff7b9b2d25..6b419ea1ac 100644
--- a/thirdparty/harfbuzz/src/hb-ot-glyf-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-glyf-table.hh
@@ -388,7 +388,7 @@ struct glyf
protected:
HBUINT16 flags;
- HBGlyphID glyphIndex;
+ HBGlyphID16 glyphIndex;
public:
DEFINE_SIZE_MIN (4);
};
@@ -1118,7 +1118,7 @@ struct glyf
while (it)
{
auto item = *(it++);
- operation_count +=
+ operation_count =
add_gid_and_children (item.get_glyph_index (), gids_to_retain, depth, operation_count);
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-head-table.hh b/thirdparty/harfbuzz/src/hb-ot-head-table.hh
index ac588e3af6..20991aab2b 100644
--- a/thirdparty/harfbuzz/src/hb-ot-head-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-head-table.hh
@@ -72,12 +72,14 @@ struct head
UNDERLINE = 1u<<2,
OUTLINE = 1u<<3,
SHADOW = 1u<<4,
- CONDENSED = 1u<<5
+ CONDENSED = 1u<<5,
+ EXPANDED = 1u<<6,
};
bool is_bold () const { return macStyle & BOLD; }
bool is_italic () const { return macStyle & ITALIC; }
bool is_condensed () const { return macStyle & CONDENSED; }
+ bool is_expanded () const { return macStyle & EXPANDED; }
bool sanitize (hb_sanitize_context_t *c) const
{
diff --git a/thirdparty/harfbuzz/src/hb-ot-kern-table.hh b/thirdparty/harfbuzz/src/hb-ot-kern-table.hh
index 3563cab8bd..ffa11bc249 100644
--- a/thirdparty/harfbuzz/src/hb-ot-kern-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-kern-table.hh
@@ -134,11 +134,11 @@ struct KernSubTable
switch (subtable_type) {
case 0: return_trace (c->dispatch (u.format0));
#ifndef HB_NO_AAT_SHAPE
- case 1: return_trace (u.header.apple ? c->dispatch (u.format1, hb_forward<Ts> (ds)...) : c->default_return_value ());
+ case 1: return_trace (u.header.apple ? c->dispatch (u.format1, std::forward<Ts> (ds)...) : c->default_return_value ());
#endif
case 2: return_trace (c->dispatch (u.format2));
#ifndef HB_NO_AAT_SHAPE
- case 3: return_trace (u.header.apple ? c->dispatch (u.format3, hb_forward<Ts> (ds)...) : c->default_return_value ());
+ case 3: return_trace (u.header.apple ? c->dispatch (u.format3, std::forward<Ts> (ds)...) : c->default_return_value ());
#endif
default: return_trace (c->default_return_value ());
}
@@ -325,9 +325,9 @@ struct kern
unsigned int subtable_type = get_type ();
TRACE_DISPATCH (this, subtable_type);
switch (subtable_type) {
- case 0: return_trace (c->dispatch (u.ot, hb_forward<Ts> (ds)...));
+ case 0: return_trace (c->dispatch (u.ot, std::forward<Ts> (ds)...));
#ifndef HB_NO_AAT_SHAPE
- case 1: return_trace (c->dispatch (u.aat, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.aat, std::forward<Ts> (ds)...));
#endif
default: return_trace (c->default_return_value ());
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-base-table.hh b/thirdparty/harfbuzz/src/hb-ot-layout-base-table.hh
index 492947751e..eb4c3b46e2 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-base-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-base-table.hh
@@ -73,7 +73,7 @@ struct BaseCoordFormat2
protected:
HBUINT16 format; /* Format identifier--format = 2 */
FWORD coordinate; /* X or Y value, in design units */
- HBGlyphID referenceGlyph; /* Glyph ID of control glyph */
+ HBGlyphID16 referenceGlyph; /* Glyph ID of control glyph */
HBUINT16 coordPoint; /* Index of contour point on the
* reference glyph */
public:
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-common.hh b/thirdparty/harfbuzz/src/hb-ot-layout-common.hh
index 65f499a00d..5d98278bed 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-common.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-common.hh
@@ -89,7 +89,7 @@ static inline void ClassDef_serialize (hb_serialize_context_t *c,
static void ClassDef_remap_and_serialize (hb_serialize_context_t *c,
const hb_map_t &gid_klass_map,
- hb_sorted_vector_t<HBGlyphID> &glyphs,
+ hb_sorted_vector_t<HBGlyphID16> &glyphs,
const hb_set_t &klasses,
bool use_class_zero,
hb_map_t *klass_map /*INOUT*/);
@@ -237,9 +237,9 @@ struct subset_offset_array_t
template <typename T>
bool operator () (T&& offset)
{
+ auto snap = subset_context->serializer->snapshot ();
auto *o = out.serialize_append (subset_context->serializer);
if (unlikely (!o)) return false;
- auto snap = subset_context->serializer->snapshot ();
bool ret = o->serialize_subset (subset_context, offset, base);
if (!ret)
{
@@ -268,9 +268,9 @@ struct subset_offset_array_arg_t
template <typename T>
bool operator () (T&& offset)
{
+ auto snap = subset_context->serializer->snapshot ();
auto *o = out.serialize_append (subset_context->serializer);
if (unlikely (!o)) return false;
- auto snap = subset_context->serializer->snapshot ();
bool ret = o->serialize_subset (subset_context, offset, base, arg);
if (!ret)
{
@@ -346,6 +346,43 @@ struct
}
HB_FUNCOBJ (subset_record_array);
+
+template<typename OutputArray>
+struct serialize_math_record_array_t
+{
+ serialize_math_record_array_t (hb_serialize_context_t *serialize_context_,
+ OutputArray& out_,
+ const void *base_) : serialize_context (serialize_context_),
+ out (out_), base (base_) {}
+
+ template <typename T>
+ bool operator () (T&& record)
+ {
+ if (!serialize_context->copy (record, base)) return false;
+ out.len++;
+ return true;
+ }
+
+ private:
+ hb_serialize_context_t *serialize_context;
+ OutputArray &out;
+ const void *base;
+};
+
+/*
+ * Helper to serialize an array of MATH records.
+ */
+struct
+{
+ template<typename OutputArray>
+ serialize_math_record_array_t<OutputArray>
+ operator () (hb_serialize_context_t *serialize_context, OutputArray& out,
+ const void *base) const
+ { return serialize_math_record_array_t<OutputArray> (serialize_context, out, base); }
+
+}
+HB_FUNCOBJ (serialize_math_record_array);
+
/*
*
* OpenType Layout Common Table Formats
@@ -508,8 +545,8 @@ struct RangeRecord
bool collect_coverage (set_t *glyphs) const
{ return glyphs->add_range (first, last); }
- HBGlyphID first; /* First GlyphID in the range */
- HBGlyphID last; /* Last GlyphID in the range */
+ HBGlyphID16 first; /* First GlyphID in the range */
+ HBGlyphID16 last; /* Last GlyphID in the range */
HBUINT16 value; /* Value */
public:
DEFINE_SIZE_STATIC (6);
@@ -1249,7 +1286,7 @@ struct Lookup
TRACE_DISPATCH (this, lookup_type);
unsigned int count = get_subtable_count ();
for (unsigned int i = 0; i < count; i++) {
- typename context_t::return_t r = get_subtable<TSubTable> (i).dispatch (c, lookup_type, hb_forward<Ts> (ds)...);
+ typename context_t::return_t r = get_subtable<TSubTable> (i).dispatch (c, lookup_type, std::forward<Ts> (ds)...);
if (c->stop_sublookup_iteration (r))
return_trace (r);
}
@@ -1299,7 +1336,7 @@ struct Lookup
outMarkFilteringSet = markFilteringSet;
}
- return_trace (true);
+ return_trace (out->subTable.len);
}
template <typename TSubTable>
@@ -1454,7 +1491,7 @@ struct CoverageFormat1
protected:
HBUINT16 coverageFormat; /* Format identifier--format = 1 */
- SortedArray16Of<HBGlyphID>
+ SortedArray16Of<HBGlyphID16>
glyphArray; /* Array of GlyphIDs--in numerical order */
public:
DEFINE_SIZE_ARRAY (4, glyphArray);
@@ -1832,7 +1869,7 @@ Coverage_serialize (hb_serialize_context_t *c,
static void ClassDef_remap_and_serialize (hb_serialize_context_t *c,
const hb_map_t &gid_klass_map,
- hb_sorted_vector_t<HBGlyphID> &glyphs,
+ hb_sorted_vector_t<HBGlyphID16> &glyphs,
const hb_set_t &klasses,
bool use_class_zero,
hb_map_t *klass_map /*INOUT*/)
@@ -1859,7 +1896,7 @@ static void ClassDef_remap_and_serialize (hb_serialize_context_t *c,
auto it =
+ glyphs.iter ()
- | hb_map_retains_sorting ([&] (const HBGlyphID& gid) -> hb_pair_t<hb_codepoint_t, unsigned>
+ | hb_map_retains_sorting ([&] (const HBGlyphID16& gid) -> hb_pair_t<hb_codepoint_t, unsigned>
{
unsigned new_klass = klass_map->get (gid_klass_map[gid]);
return hb_pair ((hb_codepoint_t)gid, new_klass);
@@ -1926,7 +1963,7 @@ struct ClassDefFormat1
const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
const hb_map_t &glyph_map = *c->plan->glyph_map;
- hb_sorted_vector_t<HBGlyphID> glyphs;
+ hb_sorted_vector_t<HBGlyphID16> glyphs;
hb_set_t orig_klasses;
hb_map_t gid_org_klass_map;
@@ -2044,9 +2081,25 @@ struct ClassDefFormat1
intersect_glyphs->add (startGlyph + i);
}
+ void intersected_classes (const hb_set_t *glyphs, hb_set_t *intersect_classes) const
+ {
+ if (glyphs->is_empty ()) return;
+ hb_codepoint_t end_glyph = startGlyph + classValue.len - 1;
+ if (glyphs->get_min () < startGlyph ||
+ glyphs->get_max () > end_glyph)
+ intersect_classes->add (0);
+
+ for (const auto& _ : + hb_enumerate (classValue))
+ {
+ hb_codepoint_t g = startGlyph + _.first;
+ if (glyphs->has (g))
+ intersect_classes->add (_.second);
+ }
+ }
+
protected:
HBUINT16 classFormat; /* Format identifier--format = 1 */
- HBGlyphID startGlyph; /* First GlyphID of the classValueArray */
+ HBGlyphID16 startGlyph; /* First GlyphID of the classValueArray */
Array16Of<HBUINT16>
classValue; /* Array of Class Values--one per GlyphID */
public:
@@ -2128,7 +2181,7 @@ struct ClassDefFormat2
const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
const hb_map_t &glyph_map = *c->plan->glyph_map;
- hb_sorted_vector_t<HBGlyphID> glyphs;
+ hb_sorted_vector_t<HBGlyphID16> glyphs;
hb_set_t orig_klasses;
hb_map_t gid_org_klass_map;
@@ -2277,6 +2330,31 @@ struct ClassDefFormat2
}
}
+ void intersected_classes (const hb_set_t *glyphs, hb_set_t *intersect_classes) const
+ {
+ if (glyphs->is_empty ()) return;
+
+ unsigned count = rangeRecord.len;
+ hb_codepoint_t g = HB_SET_VALUE_INVALID;
+ for (unsigned int i = 0; i < count; i++)
+ {
+ if (!hb_set_next (glyphs, &g))
+ break;
+ if (g < rangeRecord[i].first)
+ {
+ intersect_classes->add (0);
+ break;
+ }
+ g = rangeRecord[i].last;
+ }
+ if (g != HB_SET_VALUE_INVALID && hb_set_next (glyphs, &g))
+ intersect_classes->add (0);
+
+ for (const RangeRecord& record : rangeRecord.iter ())
+ if (record.intersects (glyphs))
+ intersect_classes->add (record.value);
+ }
+
protected:
HBUINT16 classFormat; /* Format identifier--format = 2 */
SortedArray16Of<RangeRecord>
@@ -2429,6 +2507,16 @@ struct ClassDef
}
}
+ void intersected_classes (const hb_set_t *glyphs, hb_set_t *intersect_classes) const
+ {
+ switch (u.format) {
+ case 1: return u.format1.intersected_classes (glyphs, intersect_classes);
+ case 2: return u.format2.intersected_classes (glyphs, intersect_classes);
+ default:return;
+ }
+ }
+
+
protected:
union {
HBUINT16 format; /* Format identifier */
@@ -2543,7 +2631,7 @@ struct VarRegionList
public:
HBUINT16 axisCount;
- HBUINT16 regionCount;
+ HBUINT15 regionCount;
protected:
UnsizedArrayOf<VarRegionAxis>
axesZ;
@@ -2947,7 +3035,7 @@ struct Condition
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-gdef-table.hh b/thirdparty/harfbuzz/src/hb-ot-layout-gdef-table.hh
index 31a4a3e84c..aea644f3e1 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-gdef-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-gdef-table.hh
@@ -84,7 +84,7 @@ struct AttachList
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
- const hb_set_t &glyphset = *c->plan->glyphset ();
+ const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
const hb_map_t &glyph_map = *c->plan->glyph_map;
auto *out = c->serializer->start_embed (*this);
@@ -248,9 +248,9 @@ struct CaretValue
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
- case 3: return_trace (c->dispatch (u.format3, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
+ case 3: return_trace (c->dispatch (u.format3, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -371,7 +371,7 @@ struct LigCaretList
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
- const hb_set_t &glyphset = *c->plan->glyphset ();
+ const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
const hb_map_t &glyph_map = *c->plan->glyph_map;
auto *out = c->serializer->start_embed (*this);
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-gpos-table.hh b/thirdparty/harfbuzz/src/hb-ot-layout-gpos-table.hh
index 1e305518f5..a8fb5c7acb 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-gpos-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-gpos-table.hh
@@ -1050,8 +1050,8 @@ struct SinglePos
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -1144,7 +1144,7 @@ struct PairValueRecord
}
protected:
- HBGlyphID secondGlyph; /* GlyphID of second glyph in the
+ HBGlyphID16 secondGlyph; /* GlyphID of second glyph in the
* pair--first glyph is listed in the
* Coverage table */
ValueRecord values; /* Positioning data for the first glyph
@@ -1220,9 +1220,9 @@ struct PairSet
record_size);
if (record)
{
- /* Note the intentional use of "|" instead of short-circuit "||". */
- if (valueFormats[0].apply_value (c, this, &record->values[0], buffer->cur_pos()) |
- valueFormats[1].apply_value (c, this, &record->values[len1], buffer->pos[pos]))
+ bool applied_first = valueFormats[0].apply_value (c, this, &record->values[0], buffer->cur_pos());
+ bool applied_second = valueFormats[1].apply_value (c, this, &record->values[len1], buffer->pos[pos]);
+ if (applied_first || applied_second)
buffer->unsafe_to_break (buffer->idx, pos + 1);
if (len2)
pos++;
@@ -1386,9 +1386,9 @@ struct PairPosFormat1
| hb_filter (glyphset, hb_first)
| hb_filter ([this, c, out] (const Offset16To<PairSet>& _)
{
+ auto snap = c->serializer->snapshot ();
auto *o = out->pairSet.serialize_append (c->serializer);
if (unlikely (!o)) return false;
- auto snap = c->serializer->snapshot ();
bool ret = o->serialize_subset (c, _, this, valueFormat, out->valueFormat);
if (!ret)
{
@@ -1560,9 +1560,9 @@ struct PairPosFormat2
if (unlikely (klass1 >= class1Count || klass2 >= class2Count)) return_trace (false);
const Value *v = &values[record_len * (klass1 * class2Count + klass2)];
- /* Note the intentional use of "|" instead of short-circuit "||". */
- if (valueFormat1.apply_value (c, this, v, buffer->cur_pos()) |
- valueFormat2.apply_value (c, this, v + len1, buffer->pos[skippy_iter.idx]))
+ bool applied_first = valueFormat1.apply_value (c, this, v, buffer->cur_pos());
+ bool applied_second = valueFormat2.apply_value (c, this, v + len1, buffer->pos[skippy_iter.idx]);
+ if (applied_first || applied_second)
buffer->unsafe_to_break (buffer->idx, skippy_iter.idx + 1);
buffer->idx = skippy_iter.idx;
@@ -1702,8 +1702,8 @@ struct PairPos
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -1959,7 +1959,7 @@ struct CursivePos
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -2194,7 +2194,7 @@ struct MarkBasePos
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -2434,7 +2434,7 @@ struct MarkLigPos
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -2653,7 +2653,7 @@ struct MarkMarkPos
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -2704,15 +2704,15 @@ struct PosLookupSubTable
{
TRACE_DISPATCH (this, lookup_type);
switch (lookup_type) {
- case Single: return_trace (u.single.dispatch (c, hb_forward<Ts> (ds)...));
- case Pair: return_trace (u.pair.dispatch (c, hb_forward<Ts> (ds)...));
- case Cursive: return_trace (u.cursive.dispatch (c, hb_forward<Ts> (ds)...));
- case MarkBase: return_trace (u.markBase.dispatch (c, hb_forward<Ts> (ds)...));
- case MarkLig: return_trace (u.markLig.dispatch (c, hb_forward<Ts> (ds)...));
- case MarkMark: return_trace (u.markMark.dispatch (c, hb_forward<Ts> (ds)...));
- case Context: return_trace (u.context.dispatch (c, hb_forward<Ts> (ds)...));
- case ChainContext: return_trace (u.chainContext.dispatch (c, hb_forward<Ts> (ds)...));
- case Extension: return_trace (u.extension.dispatch (c, hb_forward<Ts> (ds)...));
+ case Single: return_trace (u.single.dispatch (c, std::forward<Ts> (ds)...));
+ case Pair: return_trace (u.pair.dispatch (c, std::forward<Ts> (ds)...));
+ case Cursive: return_trace (u.cursive.dispatch (c, std::forward<Ts> (ds)...));
+ case MarkBase: return_trace (u.markBase.dispatch (c, std::forward<Ts> (ds)...));
+ case MarkLig: return_trace (u.markLig.dispatch (c, std::forward<Ts> (ds)...));
+ case MarkMark: return_trace (u.markMark.dispatch (c, std::forward<Ts> (ds)...));
+ case Context: return_trace (u.context.dispatch (c, std::forward<Ts> (ds)...));
+ case ChainContext: return_trace (u.chainContext.dispatch (c, std::forward<Ts> (ds)...));
+ case Extension: return_trace (u.extension.dispatch (c, std::forward<Ts> (ds)...));
default: return_trace (c->default_return_value ());
}
}
@@ -2800,7 +2800,7 @@ struct PosLookup : Lookup
template <typename context_t, typename ...Ts>
typename context_t::return_t dispatch (context_t *c, Ts&&... ds) const
- { return Lookup::dispatch<SubTable> (c, hb_forward<Ts> (ds)...); }
+ { return Lookup::dispatch<SubTable> (c, std::forward<Ts> (ds)...); }
bool subset (hb_subset_context_t *c) const
{ return Lookup::subset<SubTable> (c); }
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-gsub-table.hh b/thirdparty/harfbuzz/src/hb-ot-layout-gsub-table.hh
index 393ada1351..710c5fbbb9 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-gsub-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-gsub-table.hh
@@ -225,7 +225,7 @@ struct SingleSubstFormat2
+ hb_zip (this+coverage, substitute)
| hb_filter (glyphset, hb_first)
| hb_filter (glyphset, hb_second)
- | hb_map_retains_sorting ([&] (hb_pair_t<hb_codepoint_t, const HBGlyphID &> p) -> hb_codepoint_pair_t
+ | hb_map_retains_sorting ([&] (hb_pair_t<hb_codepoint_t, const HBGlyphID16 &> p) -> hb_codepoint_pair_t
{ return hb_pair (glyph_map[p.first], glyph_map[p.second]); })
;
@@ -245,7 +245,7 @@ struct SingleSubstFormat2
Offset16To<Coverage>
coverage; /* Offset to Coverage table--from
* beginning of Substitution table */
- Array16Of<HBGlyphID>
+ Array16Of<HBGlyphID16>
substitute; /* Array of substitute
* GlyphIDs--ordered by Coverage Index */
public:
@@ -290,8 +290,8 @@ struct SingleSubst
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -391,7 +391,7 @@ struct Sequence
}
protected:
- Array16Of<HBGlyphID>
+ Array16Of<HBGlyphID16>
substitute; /* String of GlyphIDs to substitute */
public:
DEFINE_SIZE_ARRAY (2, substitute);
@@ -443,9 +443,9 @@ struct MultipleSubstFormat1
}
bool serialize (hb_serialize_context_t *c,
- hb_sorted_array_t<const HBGlyphID> glyphs,
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
hb_array_t<const unsigned int> substitute_len_list,
- hb_array_t<const HBGlyphID> substitute_glyphs_list)
+ hb_array_t<const HBGlyphID16> substitute_glyphs_list)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (this))) return_trace (false);
@@ -504,9 +504,9 @@ struct MultipleSubstFormat1
struct MultipleSubst
{
bool serialize (hb_serialize_context_t *c,
- hb_sorted_array_t<const HBGlyphID> glyphs,
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
hb_array_t<const unsigned int> substitute_len_list,
- hb_array_t<const HBGlyphID> substitute_glyphs_list)
+ hb_array_t<const HBGlyphID16> substitute_glyphs_list)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (u.format))) return_trace (false);
@@ -524,7 +524,7 @@ struct MultipleSubst
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -624,7 +624,7 @@ struct AlternateSet
}
protected:
- Array16Of<HBGlyphID>
+ Array16Of<HBGlyphID16>
alternates; /* Array of alternate GlyphIDs--in
* arbitrary order */
public:
@@ -686,9 +686,9 @@ struct AlternateSubstFormat1
}
bool serialize (hb_serialize_context_t *c,
- hb_sorted_array_t<const HBGlyphID> glyphs,
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
hb_array_t<const unsigned int> alternate_len_list,
- hb_array_t<const HBGlyphID> alternate_glyphs_list)
+ hb_array_t<const HBGlyphID16> alternate_glyphs_list)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (this))) return_trace (false);
@@ -747,9 +747,9 @@ struct AlternateSubstFormat1
struct AlternateSubst
{
bool serialize (hb_serialize_context_t *c,
- hb_sorted_array_t<const HBGlyphID> glyphs,
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
hb_array_t<const unsigned int> alternate_len_list,
- hb_array_t<const HBGlyphID> alternate_glyphs_list)
+ hb_array_t<const HBGlyphID16> alternate_glyphs_list)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (u.format))) return_trace (false);
@@ -767,7 +767,7 @@ struct AlternateSubst
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -861,13 +861,15 @@ struct Ligature
return_trace (true);
}
- bool subset (hb_subset_context_t *c) const
+ bool subset (hb_subset_context_t *c, unsigned coverage_idx) const
{
TRACE_SUBSET (this);
const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
const hb_map_t &glyph_map = *c->plan->glyph_map;
if (!intersects (&glyphset) || !glyphset.has (ligGlyph)) return_trace (false);
+ // Ensure Coverage table is always packed after this.
+ c->serializer->add_virtual_link (coverage_idx);
auto it =
+ hb_iter (component)
@@ -888,8 +890,8 @@ struct Ligature
}
protected:
- HBGlyphID ligGlyph; /* GlyphID of ligature to substitute */
- HeadlessArrayOf<HBGlyphID>
+ HBGlyphID16 ligGlyph; /* GlyphID of ligature to substitute */
+ HeadlessArrayOf<HBGlyphID16>
component; /* Array of component GlyphIDs--start
* with the second component--ordered
* in writing direction */
@@ -949,9 +951,9 @@ struct LigatureSet
}
bool serialize (hb_serialize_context_t *c,
- hb_array_t<const HBGlyphID> ligatures,
+ hb_array_t<const HBGlyphID16> ligatures,
hb_array_t<const unsigned int> component_count_list,
- hb_array_t<const HBGlyphID> &component_list /* Starting from second for each ligature */)
+ hb_array_t<const HBGlyphID16> &component_list /* Starting from second for each ligature */)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (this))) return_trace (false);
@@ -968,16 +970,21 @@ struct LigatureSet
return_trace (true);
}
- bool subset (hb_subset_context_t *c) const
+ bool subset (hb_subset_context_t *c, unsigned coverage_idx) const
{
TRACE_SUBSET (this);
auto *out = c->serializer->start_embed (*this);
if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+ hb_iter (ligature)
- | hb_filter (subset_offset_array (c, out->ligature, this))
+ | hb_filter (subset_offset_array (c, out->ligature, this, coverage_idx))
| hb_drain
;
+
+ if (bool (out->ligature))
+ // Ensure Coverage table is always packed after this.
+ c->serializer->add_virtual_link (coverage_idx);
+
return_trace (bool (out->ligature));
}
@@ -1059,11 +1066,11 @@ struct LigatureSubstFormat1
}
bool serialize (hb_serialize_context_t *c,
- hb_sorted_array_t<const HBGlyphID> first_glyphs,
+ hb_sorted_array_t<const HBGlyphID16> first_glyphs,
hb_array_t<const unsigned int> ligature_per_first_glyph_count_list,
- hb_array_t<const HBGlyphID> ligatures_list,
+ hb_array_t<const HBGlyphID16> ligatures_list,
hb_array_t<const unsigned int> component_count_list,
- hb_array_t<const HBGlyphID> component_list /* Starting from second for each ligature */)
+ hb_array_t<const HBGlyphID16> component_list /* Starting from second for each ligature */)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (this))) return_trace (false);
@@ -1092,15 +1099,38 @@ struct LigatureSubstFormat1
if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
out->format = format;
- hb_sorted_vector_t<hb_codepoint_t> new_coverage;
- + hb_zip (this+coverage, ligatureSet)
+ // Due to a bug in some older versions of windows 7 the Coverage table must be
+ // packed after the LigatureSet and Ligature tables, so serialize Coverage first
+ // which places it last in the packed order.
+ hb_set_t new_coverage;
+ + hb_zip (this+coverage, hb_iter (ligatureSet) | hb_map (hb_add (this)))
| hb_filter (glyphset, hb_first)
- | hb_filter (subset_offset_array (c, out->ligatureSet, this), hb_second)
+ | hb_filter ([&] (const LigatureSet& _) {
+ return _.intersects (&glyphset);
+ }, hb_second)
| hb_map (hb_first)
- | hb_map (glyph_map)
- | hb_sink (new_coverage)
+ | hb_sink (new_coverage);
+
+ if (!c->serializer->push<Coverage> ()
+ ->serialize (c->serializer,
+ + new_coverage.iter () | hb_map_retains_sorting (glyph_map)))
+ {
+ c->serializer->pop_discard ();
+ return_trace (false);
+ }
+
+ unsigned coverage_idx = c->serializer->pop_pack ();
+ c->serializer->add_link (out->coverage, coverage_idx);
+
+ + hb_zip (this+coverage, ligatureSet)
+ | hb_filter (new_coverage, hb_first)
+ | hb_map (hb_second)
+ // to ensure that the repacker always orders the coverage table after the LigatureSet
+ // and LigatureSubtable's they will be linked to the Coverage table via a virtual link
+ // the coverage table object idx is passed down to facilitate this.
+ | hb_apply (subset_offset_array (c, out->ligatureSet, this, coverage_idx))
;
- out->coverage.serialize_serialize (c->serializer, new_coverage.iter ());
+
return_trace (bool (new_coverage));
}
@@ -1125,11 +1155,11 @@ struct LigatureSubstFormat1
struct LigatureSubst
{
bool serialize (hb_serialize_context_t *c,
- hb_sorted_array_t<const HBGlyphID> first_glyphs,
+ hb_sorted_array_t<const HBGlyphID16> first_glyphs,
hb_array_t<const unsigned int> ligature_per_first_glyph_count_list,
- hb_array_t<const HBGlyphID> ligatures_list,
+ hb_array_t<const HBGlyphID16> ligatures_list,
hb_array_t<const unsigned int> component_count_list,
- hb_array_t<const HBGlyphID> component_list /* Starting from second for each ligature */)
+ hb_array_t<const HBGlyphID16> component_list /* Starting from second for each ligature */)
{
TRACE_SERIALIZE (this);
if (unlikely (!c->extend_min (u.format))) return_trace (false);
@@ -1152,7 +1182,7 @@ struct LigatureSubst
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -1208,7 +1238,7 @@ struct ReverseChainSingleSubstFormat1
if (!intersects (c->glyphs)) return;
const Array16OfOffset16To<Coverage> &lookahead = StructAfter<Array16OfOffset16To<Coverage>> (backtrack);
- const Array16Of<HBGlyphID> &substitute = StructAfter<Array16Of<HBGlyphID>> (lookahead);
+ const Array16Of<HBGlyphID16> &substitute = StructAfter<Array16Of<HBGlyphID16>> (lookahead);
+ hb_zip (this+coverage, substitute)
| hb_filter (c->parent_active_glyphs (), hb_first)
@@ -1234,7 +1264,7 @@ struct ReverseChainSingleSubstFormat1
for (unsigned int i = 0; i < count; i++)
if (unlikely (!(this+lookahead[i]).collect_coverage (c->after))) return;
- const Array16Of<HBGlyphID> &substitute = StructAfter<Array16Of<HBGlyphID>> (lookahead);
+ const Array16Of<HBGlyphID16> &substitute = StructAfter<Array16Of<HBGlyphID16>> (lookahead);
count = substitute.len;
c->output->add_array (substitute.arrayZ, substitute.len);
}
@@ -1254,7 +1284,7 @@ struct ReverseChainSingleSubstFormat1
if (likely (index == NOT_COVERED)) return_trace (false);
const Array16OfOffset16To<Coverage> &lookahead = StructAfter<Array16OfOffset16To<Coverage>> (backtrack);
- const Array16Of<HBGlyphID> &substitute = StructAfter<Array16Of<HBGlyphID>> (lookahead);
+ const Array16Of<HBGlyphID16> &substitute = StructAfter<Array16Of<HBGlyphID16>> (lookahead);
if (unlikely (index >= substitute.len)) return_trace (false);
@@ -1317,7 +1347,7 @@ struct ReverseChainSingleSubstFormat1
if (!serialize_coverage_offset_array (c, backtrack_iter)) return_trace (false);
if (!serialize_coverage_offset_array (c, lookahead_iter)) return_trace (false);
- auto *substitute_out = c->serializer->start_embed<Array16Of<HBGlyphID>> ();
+ auto *substitute_out = c->serializer->start_embed<Array16Of<HBGlyphID16>> ();
auto substitutes =
+ coverage_subst_iter
| hb_map (hb_second)
@@ -1342,13 +1372,13 @@ struct ReverseChainSingleSubstFormat1
const hb_map_t &glyph_map = *c->plan->glyph_map;
const Array16OfOffset16To<Coverage> &lookahead = StructAfter<Array16OfOffset16To<Coverage>> (backtrack);
- const Array16Of<HBGlyphID> &substitute = StructAfter<Array16Of<HBGlyphID>> (lookahead);
+ const Array16Of<HBGlyphID16> &substitute = StructAfter<Array16Of<HBGlyphID16>> (lookahead);
auto it =
+ hb_zip (this+coverage, substitute)
| hb_filter (glyphset, hb_first)
| hb_filter (glyphset, hb_second)
- | hb_map_retains_sorting ([&] (hb_pair_t<hb_codepoint_t, const HBGlyphID &> p) -> hb_codepoint_pair_t
+ | hb_map_retains_sorting ([&] (hb_pair_t<hb_codepoint_t, const HBGlyphID16 &> p) -> hb_codepoint_pair_t
{ return hb_pair (glyph_map[p.first], glyph_map[p.second]); })
;
@@ -1363,7 +1393,7 @@ struct ReverseChainSingleSubstFormat1
const Array16OfOffset16To<Coverage> &lookahead = StructAfter<Array16OfOffset16To<Coverage>> (backtrack);
if (!lookahead.sanitize (c, this))
return_trace (false);
- const Array16Of<HBGlyphID> &substitute = StructAfter<Array16Of<HBGlyphID>> (lookahead);
+ const Array16Of<HBGlyphID16> &substitute = StructAfter<Array16Of<HBGlyphID16>> (lookahead);
return_trace (substitute.sanitize (c));
}
@@ -1380,7 +1410,7 @@ struct ReverseChainSingleSubstFormat1
lookaheadX; /* Array of coverage tables
* in lookahead sequence, in glyph
* sequence order */
- Array16Of<HBGlyphID>
+ Array16Of<HBGlyphID16>
substituteX; /* Array of substitute
* GlyphIDs--ordered by Coverage Index */
public:
@@ -1395,7 +1425,7 @@ struct ReverseChainSingleSubst
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -1434,14 +1464,14 @@ struct SubstLookupSubTable
{
TRACE_DISPATCH (this, lookup_type);
switch (lookup_type) {
- case Single: return_trace (u.single.dispatch (c, hb_forward<Ts> (ds)...));
- case Multiple: return_trace (u.multiple.dispatch (c, hb_forward<Ts> (ds)...));
- case Alternate: return_trace (u.alternate.dispatch (c, hb_forward<Ts> (ds)...));
- case Ligature: return_trace (u.ligature.dispatch (c, hb_forward<Ts> (ds)...));
- case Context: return_trace (u.context.dispatch (c, hb_forward<Ts> (ds)...));
- case ChainContext: return_trace (u.chainContext.dispatch (c, hb_forward<Ts> (ds)...));
- case Extension: return_trace (u.extension.dispatch (c, hb_forward<Ts> (ds)...));
- case ReverseChainSingle: return_trace (u.reverseChainContextSingle.dispatch (c, hb_forward<Ts> (ds)...));
+ case Single: return_trace (u.single.dispatch (c, std::forward<Ts> (ds)...));
+ case Multiple: return_trace (u.multiple.dispatch (c, std::forward<Ts> (ds)...));
+ case Alternate: return_trace (u.alternate.dispatch (c, std::forward<Ts> (ds)...));
+ case Ligature: return_trace (u.ligature.dispatch (c, std::forward<Ts> (ds)...));
+ case Context: return_trace (u.context.dispatch (c, std::forward<Ts> (ds)...));
+ case ChainContext: return_trace (u.chainContext.dispatch (c, std::forward<Ts> (ds)...));
+ case Extension: return_trace (u.extension.dispatch (c, std::forward<Ts> (ds)...));
+ case ReverseChainSingle: return_trace (u.reverseChainContextSingle.dispatch (c, std::forward<Ts> (ds)...));
default: return_trace (c->default_return_value ());
}
}
@@ -1561,8 +1591,8 @@ struct SubstLookup : Lookup
bool serialize_single (hb_serialize_context_t *c,
uint32_t lookup_props,
- hb_sorted_array_t<const HBGlyphID> glyphs,
- hb_array_t<const HBGlyphID> substitutes)
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
+ hb_array_t<const HBGlyphID16> substitutes)
{
TRACE_SERIALIZE (this);
if (unlikely (!Lookup::serialize (c, SubTable::Single, lookup_props, 1))) return_trace (false);
@@ -1577,9 +1607,9 @@ struct SubstLookup : Lookup
bool serialize_multiple (hb_serialize_context_t *c,
uint32_t lookup_props,
- hb_sorted_array_t<const HBGlyphID> glyphs,
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
hb_array_t<const unsigned int> substitute_len_list,
- hb_array_t<const HBGlyphID> substitute_glyphs_list)
+ hb_array_t<const HBGlyphID16> substitute_glyphs_list)
{
TRACE_SERIALIZE (this);
if (unlikely (!Lookup::serialize (c, SubTable::Multiple, lookup_props, 1))) return_trace (false);
@@ -1598,9 +1628,9 @@ struct SubstLookup : Lookup
bool serialize_alternate (hb_serialize_context_t *c,
uint32_t lookup_props,
- hb_sorted_array_t<const HBGlyphID> glyphs,
+ hb_sorted_array_t<const HBGlyphID16> glyphs,
hb_array_t<const unsigned int> alternate_len_list,
- hb_array_t<const HBGlyphID> alternate_glyphs_list)
+ hb_array_t<const HBGlyphID16> alternate_glyphs_list)
{
TRACE_SERIALIZE (this);
if (unlikely (!Lookup::serialize (c, SubTable::Alternate, lookup_props, 1))) return_trace (false);
@@ -1620,11 +1650,11 @@ struct SubstLookup : Lookup
bool serialize_ligature (hb_serialize_context_t *c,
uint32_t lookup_props,
- hb_sorted_array_t<const HBGlyphID> first_glyphs,
+ hb_sorted_array_t<const HBGlyphID16> first_glyphs,
hb_array_t<const unsigned int> ligature_per_first_glyph_count_list,
- hb_array_t<const HBGlyphID> ligatures_list,
+ hb_array_t<const HBGlyphID16> ligatures_list,
hb_array_t<const unsigned int> component_count_list,
- hb_array_t<const HBGlyphID> component_list /* Starting from second for each ligature */)
+ hb_array_t<const HBGlyphID16> component_list /* Starting from second for each ligature */)
{
TRACE_SERIALIZE (this);
if (unlikely (!Lookup::serialize (c, SubTable::Ligature, lookup_props, 1))) return_trace (false);
@@ -1667,7 +1697,7 @@ struct SubstLookup : Lookup
template <typename context_t, typename ...Ts>
typename context_t::return_t dispatch (context_t *c, Ts&&... ds) const
- { return Lookup::dispatch<SubTable> (c, hb_forward<Ts> (ds)...); }
+ { return Lookup::dispatch<SubTable> (c, std::forward<Ts> (ds)...); }
bool subset (hb_subset_context_t *c) const
{ return Lookup::subset<SubTable> (c); }
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-gsubgpos.hh b/thirdparty/harfbuzz/src/hb-ot-layout-gsubgpos.hh
index 626abc5577..c0ed2bcc03 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-gsubgpos.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-gsubgpos.hh
@@ -1210,15 +1210,14 @@ static inline bool match_lookahead (hb_ot_apply_context_t *c,
struct LookupRecord
{
- LookupRecord* copy (hb_serialize_context_t *c,
- const hb_map_t *lookup_map) const
+ bool serialize (hb_serialize_context_t *c,
+ const hb_map_t *lookup_map) const
{
TRACE_SERIALIZE (this);
auto *out = c->embed (*this);
- if (unlikely (!out)) return_trace (nullptr);
+ if (unlikely (!out)) return_trace (false);
- out->lookupListIndex = hb_map_get (lookup_map, lookupListIndex);
- return_trace (out);
+ return_trace (c->check_assign (out->lookupListIndex, lookup_map->get (lookupListIndex), HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool sanitize (hb_sanitize_context_t *c) const
@@ -1235,6 +1234,24 @@ struct LookupRecord
DEFINE_SIZE_STATIC (4);
};
+static unsigned serialize_lookuprecord_array (hb_serialize_context_t *c,
+ const hb_array_t<const LookupRecord> lookupRecords,
+ const hb_map_t *lookup_map)
+{
+ unsigned count = 0;
+ for (const LookupRecord& r : lookupRecords)
+ {
+ if (!lookup_map->has (r.lookupListIndex))
+ continue;
+
+ if (!r.serialize (c, lookup_map))
+ return 0;
+
+ count++;
+ }
+ return count;
+}
+
enum ContextFormat { SimpleContext = 1, ClassBasedContext = 2, CoverageBasedContext = 3 };
static void context_closure_recurse_lookups (hb_closure_context_t *c,
@@ -1605,8 +1622,6 @@ struct Rule
if (unlikely (!c->extend_min (out))) return_trace (false);
out->inputCount = inputCount;
- out->lookupCount = lookupCount;
-
const hb_array_t<const HBUINT16> input = inputZ.as_array (inputCount - 1);
for (const auto org : input)
{
@@ -1617,17 +1632,9 @@ struct Rule
const UnsizedArrayOf<LookupRecord> &lookupRecord = StructAfter<UnsizedArrayOf<LookupRecord>>
(inputZ.as_array ((inputCount ? inputCount - 1 : 0)));
- for (unsigned i = 0; i < (unsigned) lookupCount; i++)
- {
- if (!lookup_map->has (lookupRecord[i].lookupListIndex))
- {
- out->lookupCount--;
- continue;
- }
- c->copy (lookupRecord[i], lookup_map);
- }
- return_trace (true);
+ unsigned count = serialize_lookuprecord_array (c, lookupRecord.as_array (lookupCount), lookup_map);
+ return_trace (c->check_assign (out->lookupCount, count, HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool subset (hb_subset_context_t *c,
@@ -1752,10 +1759,10 @@ struct RuleSet
for (const Offset16To<Rule>& _ : rule)
{
if (!_) continue;
+ auto o_snap = c->serializer->snapshot ();
auto *o = out->rule.serialize_append (c->serializer);
if (unlikely (!o)) continue;
- auto o_snap = c->serializer->snapshot ();
if (!o->serialize_subset (c, _, this, lookup_map, klass_map))
{
out->rule.pop ();
@@ -1943,12 +1950,20 @@ struct ContextFormat2
&class_def
};
+ hb_set_t retained_coverage_glyphs;
+ (this+coverage).intersected_coverage_glyphs (glyphs, &retained_coverage_glyphs);
+
+ hb_set_t coverage_glyph_classes;
+ class_def.intersected_classes (&retained_coverage_glyphs, &coverage_glyph_classes);
+
+
return
+ hb_iter (ruleSet)
| hb_map (hb_add (this))
| hb_enumerate
| hb_map ([&] (const hb_pair_t<unsigned, const RuleSet &> p)
{ return class_def.intersects_class (glyphs, p.first) &&
+ coverage_glyph_classes.has (p.first) &&
p.second.intersects (glyphs, lookup_context); })
| hb_any
;
@@ -2069,9 +2084,16 @@ struct ContextFormat2
hb_map_t klass_map;
out->classDef.serialize_subset (c, classDef, this, &klass_map);
+ const hb_set_t* glyphset = c->plan->glyphset_gsub ();
+ hb_set_t retained_coverage_glyphs;
+ (this+coverage).intersected_coverage_glyphs (glyphset, &retained_coverage_glyphs);
+
+ hb_set_t coverage_glyph_classes;
+ (this+classDef).intersected_classes (&retained_coverage_glyphs, &coverage_glyph_classes);
+
const hb_map_t *lookup_map = c->table_tag == HB_OT_TAG_GSUB ? c->plan->gsub_lookups : c->plan->gpos_lookups;
bool ret = true;
- int non_zero_index = 0, index = 0;
+ int non_zero_index = -1, index = 0;
for (const auto& _ : + hb_enumerate (ruleSet)
| hb_filter (klass_map, hb_first))
{
@@ -2082,13 +2104,14 @@ struct ContextFormat2
break;
}
- if (o->serialize_subset (c, _.second, this, lookup_map, &klass_map))
+ if (coverage_glyph_classes.has (_.first) &&
+ o->serialize_subset (c, _.second, this, lookup_map, &klass_map))
non_zero_index = index;
index++;
}
- if (!ret) return_trace (ret);
+ if (!ret || non_zero_index == -1) return_trace (false);
//prune empty trailing ruleSets
--index;
@@ -2226,7 +2249,6 @@ struct ContextFormat3
out->format = format;
out->glyphCount = glyphCount;
- out->lookupCount = lookupCount;
auto coverages = coverageZ.as_array (glyphCount);
@@ -2238,19 +2260,12 @@ struct ContextFormat3
if (!o->serialize_subset (c, offset, this)) return_trace (false);
}
- const LookupRecord *lookupRecord = &StructAfter<LookupRecord> (coverageZ.as_array (glyphCount));
+ const UnsizedArrayOf<LookupRecord>& lookupRecord = StructAfter<UnsizedArrayOf<LookupRecord>> (coverageZ.as_array (glyphCount));
const hb_map_t *lookup_map = c->table_tag == HB_OT_TAG_GSUB ? c->plan->gsub_lookups : c->plan->gpos_lookups;
- for (unsigned i = 0; i < (unsigned) lookupCount; i++)
- {
- if (!lookup_map->has (lookupRecord[i].lookupListIndex))
- {
- out->lookupCount--;
- continue;
- }
- c->serializer->copy (lookupRecord[i], lookup_map);
- }
- return_trace (true);
+
+ unsigned count = serialize_lookuprecord_array (c->serializer, lookupRecord.as_array (lookupCount), lookup_map);
+ return_trace (c->serializer->check_assign (out->lookupCount, count, HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool sanitize (hb_sanitize_context_t *c) const
@@ -2289,9 +2304,9 @@ struct Context
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
- case 3: return_trace (c->dispatch (u.format3, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
+ case 3: return_trace (c->dispatch (u.format3, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -2539,15 +2554,15 @@ struct ChainRule
c->copy ((HBUINT16) g);
}
- ChainRule* copy (hb_serialize_context_t *c,
- const hb_map_t *lookup_map,
- const hb_map_t *backtrack_map,
- const hb_map_t *input_map = nullptr,
- const hb_map_t *lookahead_map = nullptr) const
+ bool serialize (hb_serialize_context_t *c,
+ const hb_map_t *lookup_map,
+ const hb_map_t *backtrack_map,
+ const hb_map_t *input_map = nullptr,
+ const hb_map_t *lookahead_map = nullptr) const
{
TRACE_SERIALIZE (this);
auto *out = c->start_embed (this);
- if (unlikely (!out)) return_trace (nullptr);
+ if (unlikely (!out)) return_trace (false);
const hb_map_t *mapping = backtrack_map;
serialize_array (c, backtrack.len, + backtrack.iter ()
@@ -2566,19 +2581,10 @@ struct ChainRule
const Array16Of<LookupRecord> &lookupRecord = StructAfter<Array16Of<LookupRecord>> (lookahead);
HBUINT16* lookupCount = c->embed (&(lookupRecord.len));
- if (!lookupCount) return_trace (nullptr);
+ if (!lookupCount) return_trace (false);
- for (unsigned i = 0; i < lookupRecord.len; i++)
- {
- if (!lookup_map->has (lookupRecord[i].lookupListIndex))
- {
- (*lookupCount)--;
- continue;
- }
- if (!c->copy (lookupRecord[i], lookup_map)) return_trace (nullptr);
- }
-
- return_trace (out);
+ unsigned count = serialize_lookuprecord_array (c, lookupRecord.as_array (), lookup_map);
+ return_trace (c->check_assign (*lookupCount, count, HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool subset (hb_subset_context_t *c,
@@ -2600,7 +2606,7 @@ struct ChainRule
!hb_all (lookahead, glyphset))
return_trace (false);
- copy (c->serializer, lookup_map, c->plan->glyph_map);
+ serialize (c->serializer, lookup_map, c->plan->glyph_map);
}
else
{
@@ -2609,7 +2615,7 @@ struct ChainRule
!hb_all (lookahead, lookahead_map))
return_trace (false);
- copy (c->serializer, lookup_map, backtrack_map, input_map, lookahead_map);
+ serialize (c->serializer, lookup_map, backtrack_map, input_map, lookahead_map);
}
return_trace (true);
@@ -2724,10 +2730,10 @@ struct ChainRuleSet
for (const Offset16To<ChainRule>& _ : rule)
{
if (!_) continue;
+ auto o_snap = c->serializer->snapshot ();
auto *o = out->rule.serialize_append (c->serializer);
if (unlikely (!o)) continue;
- auto o_snap = c->serializer->snapshot ();
if (!o->serialize_subset (c, _, this,
lookup_map,
backtrack_klass_map,
@@ -2920,12 +2926,19 @@ struct ChainContextFormat2
&lookahead_class_def}
};
+ hb_set_t retained_coverage_glyphs;
+ (this+coverage).intersected_coverage_glyphs (glyphs, &retained_coverage_glyphs);
+
+ hb_set_t coverage_glyph_classes;
+ input_class_def.intersected_classes (&retained_coverage_glyphs, &coverage_glyph_classes);
+
return
+ hb_iter (ruleSet)
| hb_map (hb_add (this))
| hb_enumerate
| hb_map ([&] (const hb_pair_t<unsigned, const ChainRuleSet &> p)
{ return input_class_def.intersects_class (glyphs, p.first) &&
+ coverage_glyph_classes.has (p.first) &&
p.second.intersects (glyphs, lookup_context); })
| hb_any
;
@@ -3080,13 +3093,19 @@ struct ChainContextFormat2
lookahead_klass_map)))
return_trace (false);
+ const hb_set_t* glyphset = c->plan->glyphset_gsub ();
+ hb_set_t retained_coverage_glyphs;
+ (this+coverage).intersected_coverage_glyphs (glyphset, &retained_coverage_glyphs);
+
+ hb_set_t coverage_glyph_classes;
+ (this+inputClassDef).intersected_classes (&retained_coverage_glyphs, &coverage_glyph_classes);
+
int non_zero_index = -1, index = 0;
bool ret = true;
const hb_map_t *lookup_map = c->table_tag == HB_OT_TAG_GSUB ? c->plan->gsub_lookups : c->plan->gpos_lookups;
auto last_non_zero = c->serializer->snapshot ();
- for (const Offset16To<ChainRuleSet>& _ : + hb_enumerate (ruleSet)
- | hb_filter (input_klass_map, hb_first)
- | hb_map (hb_second))
+ for (const auto& _ : + hb_enumerate (ruleSet)
+ | hb_filter (input_klass_map, hb_first))
{
auto *o = out->ruleSet.serialize_append (c->serializer);
if (unlikely (!o))
@@ -3094,7 +3113,8 @@ struct ChainContextFormat2
ret = false;
break;
}
- if (o->serialize_subset (c, _, this,
+ if (coverage_glyph_classes.has (_.first) &&
+ o->serialize_subset (c, _.second, this,
lookup_map,
&backtrack_klass_map,
&input_klass_map,
@@ -3107,7 +3127,7 @@ struct ChainContextFormat2
index++;
}
- if (!ret) return_trace (ret);
+ if (!ret || non_zero_index == -1) return_trace (false);
// prune empty trailing ruleSets
if (index > non_zero_index) {
@@ -3318,22 +3338,12 @@ struct ChainContextFormat3
const Array16Of<LookupRecord> &lookupRecord = StructAfter<Array16Of<LookupRecord>> (lookahead);
const hb_map_t *lookup_map = c->table_tag == HB_OT_TAG_GSUB ? c->plan->gsub_lookups : c->plan->gpos_lookups;
- hb_set_t lookup_indices;
- for (unsigned i = 0; i < (unsigned) lookupRecord.len; i++)
- if (lookup_map->has (lookupRecord[i].lookupListIndex))
- lookup_indices.add (i);
- HBUINT16 lookupCount;
- lookupCount = lookup_indices.get_population ();
- if (!c->serializer->copy (lookupCount)) return_trace (false);
+ HBUINT16 *lookupCount = c->serializer->copy<HBUINT16> (lookupRecord.len);
+ if (!lookupCount) return_trace (false);
- for (unsigned i : lookup_indices.iter ())
- {
- if (!c->serializer->copy (lookupRecord[i], lookup_map))
- return_trace (false);
- }
-
- return_trace (true);
+ unsigned count = serialize_lookuprecord_array (c->serializer, lookupRecord.as_array (), lookup_map);
+ return_trace (c->serializer->check_assign (*lookupCount, count, HB_SERIALIZE_ERROR_INT_OVERFLOW));
}
bool sanitize (hb_sanitize_context_t *c) const
@@ -3378,9 +3388,9 @@ struct ChainContext
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (c->dispatch (u.format1, hb_forward<Ts> (ds)...));
- case 2: return_trace (c->dispatch (u.format2, hb_forward<Ts> (ds)...));
- case 3: return_trace (c->dispatch (u.format3, hb_forward<Ts> (ds)...));
+ case 1: return_trace (c->dispatch (u.format1, std::forward<Ts> (ds)...));
+ case 2: return_trace (c->dispatch (u.format2, std::forward<Ts> (ds)...));
+ case 3: return_trace (c->dispatch (u.format3, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -3409,7 +3419,7 @@ struct ExtensionFormat1
{
TRACE_DISPATCH (this, format);
if (unlikely (!c->may_dispatch (this, this))) return_trace (c->no_dispatch_return_value ());
- return_trace (get_subtable<typename T::SubTable> ().dispatch (c, get_type (), hb_forward<Ts> (ds)...));
+ return_trace (get_subtable<typename T::SubTable> ().dispatch (c, get_type (), std::forward<Ts> (ds)...));
}
void collect_variation_indices (hb_collect_variation_indices_context_t *c) const
@@ -3489,7 +3499,7 @@ struct Extension
TRACE_DISPATCH (this, u.format);
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ());
switch (u.format) {
- case 1: return_trace (u.format1.dispatch (c, hb_forward<Ts> (ds)...));
+ case 1: return_trace (u.format1.dispatch (c, std::forward<Ts> (ds)...));
default:return_trace (c->default_return_value ());
}
}
@@ -3678,57 +3688,72 @@ struct GSUBGPOS
const hb_set_t *feature_indices,
hb_map_t *duplicate_feature_map /* OUT */) const
{
+ if (feature_indices->is_empty ()) return;
+ hb_hashmap_t<hb_tag_t, hb_set_t *, (unsigned)-1, nullptr> unique_features;
//find out duplicate features after subset
- unsigned prev = 0xFFFFu;
for (unsigned i : feature_indices->iter ())
{
- if (prev == 0xFFFFu)
+ hb_tag_t t = get_feature_tag (i);
+ if (t == unique_features.INVALID_KEY) continue;
+ if (!unique_features.has (t))
{
+ hb_set_t* indices = hb_set_create ();
+ if (unlikely (indices == hb_set_get_empty () ||
+ !unique_features.set (t, indices)))
+ {
+ hb_set_destroy (indices);
+ for (auto _ : unique_features.iter ())
+ hb_set_destroy (_.second);
+ return;
+ }
+ if (unique_features.get (t))
+ unique_features.get (t)->add (i);
duplicate_feature_map->set (i, i);
- prev = i;
continue;
}
- hb_tag_t t = get_feature_tag (i);
- hb_tag_t prev_t = get_feature_tag (prev);
- if (t != prev_t)
+ bool found = false;
+
+ hb_set_t* same_tag_features = unique_features.get (t);
+ for (unsigned other_f_index : same_tag_features->iter ())
{
- duplicate_feature_map->set (i, i);
- prev = i;
- continue;
- }
+ const Feature& f = get_feature (i);
+ const Feature& other_f = get_feature (other_f_index);
- const Feature& f = get_feature (i);
- const Feature& prev_f = get_feature (prev);
+ auto f_iter =
+ + hb_iter (f.lookupIndex)
+ | hb_filter (lookup_indices)
+ ;
- auto f_iter =
- + hb_iter (f.lookupIndex)
- | hb_filter (lookup_indices)
- ;
+ auto other_f_iter =
+ + hb_iter (other_f.lookupIndex)
+ | hb_filter (lookup_indices)
+ ;
- auto prev_iter =
- + hb_iter (prev_f.lookupIndex)
- | hb_filter (lookup_indices)
- ;
+ bool is_equal = true;
+ for (; f_iter && other_f_iter; f_iter++, other_f_iter++)
+ {
+ unsigned a = *f_iter;
+ unsigned b = *other_f_iter;
+ if (a != b) { is_equal = false; break; }
+ }
- if (f_iter.len () != prev_iter.len ())
- {
- duplicate_feature_map->set (i, i);
- prev = i;
- continue;
- }
+ if (is_equal == false || f_iter || other_f_iter) continue;
- bool is_equal = true;
- for (auto _ : + hb_zip (f_iter, prev_iter))
- if (_.first != _.second) { is_equal = false; break; }
+ found = true;
+ duplicate_feature_map->set (i, other_f_index);
+ break;
+ }
- if (is_equal == true) duplicate_feature_map->set (i, prev);
- else
+ if (found == false)
{
+ same_tag_features->add (i);
duplicate_feature_map->set (i, i);
- prev = i;
}
}
+
+ for (auto _ : unique_features.iter ())
+ hb_set_destroy (_.second);
}
void prune_features (const hb_map_t *lookup_indices, /* IN */
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout-jstf-table.hh b/thirdparty/harfbuzz/src/hb-ot-layout-jstf-table.hh
index 3b2293dff0..a1c125b11b 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout-jstf-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout-jstf-table.hh
@@ -136,7 +136,7 @@ struct JstfLangSys : List16OfOffset16To<JstfPriority>
* ExtenderGlyphs -- Extender Glyph Table
*/
-typedef SortedArray16Of<HBGlyphID> ExtenderGlyphs;
+typedef SortedArray16Of<HBGlyphID16> ExtenderGlyphs;
/*
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout.cc b/thirdparty/harfbuzz/src/hb-ot-layout.cc
index 0454af2063..fbdedd0e20 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-layout.cc
@@ -613,7 +613,7 @@ hb_ot_layout_table_get_feature_tags (hb_face_t *face,
* hb_ot_layout_table_find_feature:
* @face: #hb_face_t to work upon
* @table_tag: #HB_OT_TAG_GSUB or #HB_OT_TAG_GPOS
- * @feature_tag: The #hb_tag_t og the requested feature tag
+ * @feature_tag: The #hb_tag_t of the requested feature tag
* @feature_index: (out): The index of the requested feature
*
* Fetches the index for a given feature tag in the specified face's GSUB table
@@ -688,8 +688,8 @@ hb_ot_layout_script_get_language_tags (hb_face_t *face,
*
* Return value: %true if the language tag is found, %false otherwise
*
- * Since: ??
- * Deprecated: ??
+ * Since: 0.6.0
+ * Deprecated: 2.0.0
**/
hb_bool_t
hb_ot_layout_script_find_language (hb_face_t *face,
@@ -717,10 +717,14 @@ hb_ot_layout_script_find_language (hb_face_t *face,
* @language_tags: The array of language tags
* @language_index: (out): The index of the requested language
*
- * Fetches the index of a given language tag in the specified face's GSUB table
- * or GPOS table, underneath the specified script index.
+ * Fetches the index of the first language tag fom @language_tags that is present
+ * in the specified face's GSUB or GPOS table, underneath the specified script
+ * index.
*
- * Return value: %true if the language tag is found, %false otherwise
+ * If none of the given language tags is found, %false is returned and
+ * @language_index is set to the default language index.
+ *
+ * Return value: %true if one of the given language tags is found, %false otherwise
*
* Since: 2.0.0
**/
@@ -746,7 +750,8 @@ hb_ot_layout_script_select_language (hb_face_t *face,
if (s.find_lang_sys_index (HB_OT_TAG_DEFAULT_LANGUAGE, language_index))
return false;
- if (language_index) *language_index = HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX;
+ if (language_index)
+ *language_index = HB_OT_LAYOUT_DEFAULT_LANGUAGE_INDEX;
return false;
}
@@ -1013,24 +1018,15 @@ struct hb_collect_features_context_t
}
has_feature_filter = true;
+ hb_set_t features_set;
for (; *features; features++)
- {
- hb_tag_t tag = *features;
- unsigned index;
- g.find_feature_index (tag, &index);
- if (index == OT::Index::NOT_FOUND_INDEX) continue;
+ features_set.add (*features);
- feature_indices_filter.add(index);
- for (int i = (int) index - 1; i >= 0; i--)
- {
- if (g.get_feature_tag (i) != tag) break;
- feature_indices_filter.add(i);
- }
- for (unsigned i = index + 1; i < g.get_feature_count (); i++)
- {
- if (g.get_feature_tag (i) != tag) break;
+ for (unsigned i = 0; i < g.get_feature_count (); i++)
+ {
+ hb_tag_t tag = g.get_feature_tag (i);
+ if (features_set.has (tag))
feature_indices_filter.add(i);
- }
}
}
@@ -2011,14 +2007,14 @@ struct hb_get_glyph_alternates_dispatch_t :
private:
template <typename T, typename ...Ts> auto
_dispatch (const T &obj, hb_priority<1>, Ts&&... ds) HB_AUTO_RETURN
- ( obj.get_glyph_alternates (hb_forward<Ts> (ds)...) )
+ ( obj.get_glyph_alternates (std::forward<Ts> (ds)...) )
template <typename T, typename ...Ts> auto
_dispatch (const T &obj, hb_priority<0>, Ts&&... ds) HB_AUTO_RETURN
( default_return_value () )
public:
template <typename T, typename ...Ts> auto
dispatch (const T &obj, Ts&&... ds) HB_AUTO_RETURN
- ( _dispatch (obj, hb_prioritize, hb_forward<Ts> (ds)...) )
+ ( _dispatch (obj, hb_prioritize, std::forward<Ts> (ds)...) )
};
/**
diff --git a/thirdparty/harfbuzz/src/hb-ot-layout.hh b/thirdparty/harfbuzz/src/hb-ot-layout.hh
index bcc014ee98..b15d053835 100644
--- a/thirdparty/harfbuzz/src/hb-ot-layout.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-layout.hh
@@ -187,7 +187,7 @@ _hb_clear_syllables (const hb_ot_shape_plan_t *plan HB_UNUSED,
* - General_Category: 5 bits.
* - A bit each for:
* * Is it Default_Ignorable(); we have a modified Default_Ignorable().
- * * Whether it's one of the three Mongolian Free Variation Selectors,
+ * * Whether it's one of the four Mongolian Free Variation Selectors,
* CGJ, or other characters that are hidden but should not be ignored
* like most other Default_Ignorable()s do during matching.
* * Whether it's a grapheme continuation.
@@ -202,7 +202,7 @@ _hb_clear_syllables (const hb_ot_shape_plan_t *plan HB_UNUSED,
enum hb_unicode_props_flags_t {
UPROPS_MASK_GEN_CAT = 0x001Fu,
UPROPS_MASK_IGNORABLE = 0x0020u,
- UPROPS_MASK_HIDDEN = 0x0040u, /* MONGOLIAN FREE VARIATION SELECTOR 1..3, or TAG characters */
+ UPROPS_MASK_HIDDEN = 0x0040u, /* MONGOLIAN FREE VARIATION SELECTOR 1..4, or TAG characters */
UPROPS_MASK_CONTINUATION=0x0080u,
/* If GEN_CAT=FORMAT, top byte masks: */
@@ -236,7 +236,7 @@ _hb_glyph_info_set_unicode_props (hb_glyph_info_t *info, hb_buffer_t *buffer)
* FVSes are GC=Mn, we have use a separate bit to remember them.
* Fixes:
* https://github.com/harfbuzz/harfbuzz/issues/234 */
- else if (unlikely (hb_in_range<hb_codepoint_t> (u, 0x180Bu, 0x180Du))) props |= UPROPS_MASK_HIDDEN;
+ else if (unlikely (hb_in_ranges<hb_codepoint_t> (u, 0x180Bu, 0x180Du, 0x180Fu, 0x180Fu))) props |= UPROPS_MASK_HIDDEN;
/* TAG characters need similar treatment. Fixes:
* https://github.com/harfbuzz/harfbuzz/issues/463 */
else if (unlikely (hb_in_range<hb_codepoint_t> (u, 0xE0020u, 0xE007Fu))) props |= UPROPS_MASK_HIDDEN;
diff --git a/thirdparty/harfbuzz/src/hb-ot-math-table.hh b/thirdparty/harfbuzz/src/hb-ot-math-table.hh
index 5916ad29f2..c2e365dbd6 100644
--- a/thirdparty/harfbuzz/src/hb-ot-math-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-math-table.hh
@@ -41,6 +41,16 @@ struct MathValueRecord
hb_position_t get_y_value (hb_font_t *font, const void *base) const
{ return font->em_scale_y (value) + (base+deviceTable).get_y_delta (font); }
+ MathValueRecord* copy (hb_serialize_context_t *c, const void *base) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+ out->deviceTable.serialize_copy (c, deviceTable, base, 0, hb_serialize_context_t::Head);
+
+ return_trace (out);
+ }
+
bool sanitize (hb_sanitize_context_t *c, const void *base) const
{
TRACE_SANITIZE (this);
@@ -59,6 +69,29 @@ struct MathValueRecord
struct MathConstants
{
+ MathConstants* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->start_embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+
+ HBINT16 *p = c->allocate_size<HBINT16> (HBINT16::static_size * 2);
+ if (unlikely (!p)) return_trace (nullptr);
+ memcpy (p, percentScaleDown, HBINT16::static_size * 2);
+
+ HBUINT16 *m = c->allocate_size<HBUINT16> (HBUINT16::static_size * 2);
+ if (unlikely (!m)) return_trace (nullptr);
+ memcpy (m, minHeight, HBUINT16::static_size * 2);
+
+ unsigned count = ARRAY_LENGTH (mathValueRecords);
+ for (unsigned i = 0; i < count; i++)
+ if (!c->copy (mathValueRecords[i], this))
+ return_trace (nullptr);
+
+ if (!c->embed (radicalDegreeBottomRaisePercent)) return_trace (nullptr);
+ return_trace (out);
+ }
+
bool sanitize_math_value_records (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -165,6 +198,28 @@ struct MathConstants
struct MathItalicsCorrectionInfo
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ const hb_set_t &glyphset = *c->plan->_glyphset_mathed;
+ const hb_map_t &glyph_map = *c->plan->glyph_map;
+
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+
+ hb_sorted_vector_t<hb_codepoint_t> new_coverage;
+ + hb_zip (this+coverage, italicsCorrection)
+ | hb_filter (glyphset, hb_first)
+ | hb_filter (serialize_math_record_array (c->serializer, out->italicsCorrection, this), hb_second)
+ | hb_map (hb_first)
+ | hb_map (glyph_map)
+ | hb_sink (new_coverage)
+ ;
+
+ out->coverage.serialize_serialize (c->serializer, new_coverage.iter ());
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -196,6 +251,28 @@ struct MathItalicsCorrectionInfo
struct MathTopAccentAttachment
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ const hb_set_t &glyphset = *c->plan->_glyphset_mathed;
+ const hb_map_t &glyph_map = *c->plan->glyph_map;
+
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+
+ hb_sorted_vector_t<hb_codepoint_t> new_coverage;
+ + hb_zip (this+topAccentCoverage, topAccentAttachment)
+ | hb_filter (glyphset, hb_first)
+ | hb_filter (serialize_math_record_array (c->serializer, out->topAccentAttachment, this), hb_second)
+ | hb_map (hb_first)
+ | hb_map (glyph_map)
+ | hb_sink (new_coverage)
+ ;
+
+ out->topAccentCoverage.serialize_serialize (c->serializer, new_coverage.iter ());
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -229,6 +306,22 @@ struct MathTopAccentAttachment
struct MathKern
{
+ MathKern* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->start_embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+
+ if (unlikely (!c->embed (heightCount))) return_trace (nullptr);
+
+ unsigned count = 2 * heightCount + 1;
+ for (unsigned i = 0; i < count; i++)
+ if (!c->copy (mathValueRecordsZ.arrayZ[i], this))
+ return_trace (nullptr);
+
+ return_trace (out);
+ }
+
bool sanitize_math_value_records (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -295,6 +388,19 @@ struct MathKern
struct MathKernInfoRecord
{
+ MathKernInfoRecord* copy (hb_serialize_context_t *c, const void *base) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+
+ unsigned count = ARRAY_LENGTH (mathKern);
+ for (unsigned i = 0; i < count; i++)
+ out->mathKern[i].serialize_copy (c, mathKern[i], base, 0, hb_serialize_context_t::Head);
+
+ return_trace (out);
+ }
+
bool sanitize (hb_sanitize_context_t *c, const void *base) const
{
TRACE_SANITIZE (this);
@@ -328,6 +434,28 @@ struct MathKernInfoRecord
struct MathKernInfo
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ const hb_set_t &glyphset = *c->plan->_glyphset_mathed;
+ const hb_map_t &glyph_map = *c->plan->glyph_map;
+
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+
+ hb_sorted_vector_t<hb_codepoint_t> new_coverage;
+ + hb_zip (this+mathKernCoverage, mathKernInfoRecords)
+ | hb_filter (glyphset, hb_first)
+ | hb_filter (serialize_math_record_array (c->serializer, out->mathKernInfoRecords, this), hb_second)
+ | hb_map (hb_first)
+ | hb_map (glyph_map)
+ | hb_sink (new_coverage)
+ ;
+
+ out->mathKernCoverage.serialize_serialize (c->serializer, new_coverage.iter ());
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -365,6 +493,30 @@ struct MathKernInfo
struct MathGlyphInfo
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (*this);
+ if (unlikely (!out)) return_trace (false);
+
+ out->mathItalicsCorrectionInfo.serialize_subset (c, mathItalicsCorrectionInfo, this);
+ out->mathTopAccentAttachment.serialize_subset (c, mathTopAccentAttachment, this);
+
+ const hb_set_t &glyphset = *c->plan->_glyphset_mathed;
+ const hb_map_t &glyph_map = *c->plan->glyph_map;
+
+ auto it =
+ + hb_iter (this+extendedShapeCoverage)
+ | hb_filter (glyphset)
+ | hb_map_retains_sorting (glyph_map)
+ ;
+
+ out->extendedShapeCoverage.serialize_serialize (c->serializer, it);
+
+ out->mathKernInfo.serialize_subset (c, mathKernInfo, this);
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -420,14 +572,27 @@ struct MathGlyphVariantRecord
{
friend struct MathGlyphConstruction;
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ const hb_map_t& glyph_map = *c->plan->glyph_map;
+ return_trace (c->serializer->check_assign (out->variantGlyph, glyph_map.get (variantGlyph), HB_SERIALIZE_ERROR_INT_OVERFLOW));
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
return_trace (c->check_struct (this));
}
+ void closure_glyphs (hb_set_t *variant_glyphs) const
+ { variant_glyphs->add (variantGlyph); }
+
protected:
- HBGlyphID variantGlyph; /* Glyph ID for the variant. */
+ HBGlyphID16 variantGlyph; /* Glyph ID for the variant. */
HBUINT16 advanceMeasurement; /* Advance width/height, in design units, of the
* variant, in the direction of requested
* glyph extension. */
@@ -450,6 +615,16 @@ struct PartFlags : HBUINT16
struct MathGlyphPartRecord
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (this);
+ if (unlikely (!out)) return_trace (false);
+
+ const hb_map_t& glyph_map = *c->plan->glyph_map;
+ return_trace (c->serializer->check_assign (out->glyph, glyph_map.get (glyph), HB_SERIALIZE_ERROR_INT_OVERFLOW));
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -474,8 +649,11 @@ struct MathGlyphPartRecord
(partFlags & PartFlags::Defined);
}
+ void closure_glyphs (hb_set_t *variant_glyphs) const
+ { variant_glyphs->add (glyph); }
+
protected:
- HBGlyphID glyph; /* Glyph ID for the part. */
+ HBGlyphID16 glyph; /* Glyph ID for the part. */
HBUINT16 startConnectorLength;
/* Advance width/ height of the straight bar
* connector material, in design units, is at
@@ -497,6 +675,20 @@ struct MathGlyphPartRecord
struct MathGlyphAssembly
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!out)) return_trace (false);
+
+ if (!c->serializer->copy (italicsCorrection, this)) return_trace (false);
+ if (!c->serializer->copy<HBUINT16> (partRecords.len)) return_trace (false);
+
+ for (const auto& record : partRecords.iter ())
+ if (!record.subset (c)) return_trace (false);
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -526,6 +718,12 @@ struct MathGlyphAssembly
return partRecords.len;
}
+ void closure_glyphs (hb_set_t *variant_glyphs) const
+ {
+ for (const auto& _ : partRecords.iter ())
+ _.closure_glyphs (variant_glyphs);
+ }
+
protected:
MathValueRecord
italicsCorrection;
@@ -543,6 +741,22 @@ struct MathGlyphAssembly
struct MathGlyphConstruction
{
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+
+ out->glyphAssembly.serialize_subset (c, glyphAssembly, this);
+
+ if (!c->serializer->check_assign (out->mathGlyphVariantRecord.len, mathGlyphVariantRecord.len, HB_SERIALIZE_ERROR_INT_OVERFLOW))
+ return_trace (false);
+ for (const auto& record : mathGlyphVariantRecord.iter ())
+ if (!record.subset (c)) return_trace (false);
+
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -569,6 +783,14 @@ struct MathGlyphConstruction
return mathGlyphVariantRecord.len;
}
+ void closure_glyphs (hb_set_t *variant_glyphs) const
+ {
+ (this+glyphAssembly).closure_glyphs (variant_glyphs);
+
+ for (const auto& _ : mathGlyphVariantRecord.iter ())
+ _.closure_glyphs (variant_glyphs);
+ }
+
protected:
/* Offset to MathGlyphAssembly table for this shape - from the beginning of
MathGlyphConstruction table. May be NULL. */
@@ -583,6 +805,91 @@ struct MathGlyphConstruction
struct MathVariants
{
+ void closure_glyphs (const hb_set_t *glyph_set,
+ hb_set_t *variant_glyphs) const
+ {
+ const hb_array_t<const Offset16To<MathGlyphConstruction>> glyph_construction_offsets = glyphConstruction.as_array (vertGlyphCount + horizGlyphCount);
+
+ if (vertGlyphCoverage)
+ {
+ const auto vert_offsets = glyph_construction_offsets.sub_array (0, vertGlyphCount);
+ + hb_zip (this+vertGlyphCoverage, vert_offsets)
+ | hb_filter (glyph_set, hb_first)
+ | hb_map (hb_second)
+ | hb_map (hb_add (this))
+ | hb_apply ([=] (const MathGlyphConstruction &_) { _.closure_glyphs (variant_glyphs); })
+ ;
+ }
+
+ if (horizGlyphCoverage)
+ {
+ const auto hori_offsets = glyph_construction_offsets.sub_array (vertGlyphCount, horizGlyphCount);
+ + hb_zip (this+horizGlyphCoverage, hori_offsets)
+ | hb_filter (glyph_set, hb_first)
+ | hb_map (hb_second)
+ | hb_map (hb_add (this))
+ | hb_apply ([=] (const MathGlyphConstruction &_) { _.closure_glyphs (variant_glyphs); })
+ ;
+ }
+ }
+
+ void collect_coverage_and_indices (hb_sorted_vector_t<hb_codepoint_t>& new_coverage,
+ const Offset16To<Coverage>& coverage,
+ unsigned i,
+ unsigned end_index,
+ hb_set_t& indices,
+ const hb_set_t& glyphset,
+ const hb_map_t& glyph_map) const
+ {
+ if (!coverage) return;
+
+ for (const auto _ : (this+coverage).iter ())
+ {
+ if (i >= end_index) return;
+ if (glyphset.has (_))
+ {
+ unsigned new_gid = glyph_map.get (_);
+ new_coverage.push (new_gid);
+ indices.add (i);
+ }
+ i++;
+ }
+ }
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ const hb_set_t &glyphset = *c->plan->_glyphset_mathed;
+ const hb_map_t &glyph_map = *c->plan->glyph_map;
+
+ auto *out = c->serializer->start_embed (*this);
+ if (unlikely (!c->serializer->extend_min (out))) return_trace (false);
+ if (!c->serializer->check_assign (out->minConnectorOverlap, minConnectorOverlap, HB_SERIALIZE_ERROR_INT_OVERFLOW))
+ return_trace (false);
+
+ hb_sorted_vector_t<hb_codepoint_t> new_vert_coverage;
+ hb_sorted_vector_t<hb_codepoint_t> new_hori_coverage;
+ hb_set_t indices;
+ collect_coverage_and_indices (new_vert_coverage, vertGlyphCoverage, 0, vertGlyphCount, indices, glyphset, glyph_map);
+ collect_coverage_and_indices (new_hori_coverage, horizGlyphCoverage, vertGlyphCount, vertGlyphCount + horizGlyphCount, indices, glyphset, glyph_map);
+
+ if (!c->serializer->check_assign (out->vertGlyphCount, new_vert_coverage.length, HB_SERIALIZE_ERROR_INT_OVERFLOW))
+ return_trace (false);
+ if (!c->serializer->check_assign (out->horizGlyphCount, new_hori_coverage.length, HB_SERIALIZE_ERROR_INT_OVERFLOW))
+ return_trace (false);
+
+ for (unsigned i : indices.iter ())
+ {
+ auto *o = c->serializer->embed (glyphConstruction[i]);
+ if (!o) return_trace (false);
+ o->serialize_subset (c, glyphConstruction[i], this);
+ }
+
+ out->vertGlyphCoverage.serialize_serialize (c->serializer, new_vert_coverage.iter ());
+ out->horizGlyphCoverage.serialize_serialize (c->serializer, new_hori_coverage.iter ());
+ return_trace (true);
+ }
+
bool sanitize_offsets (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
@@ -690,6 +997,28 @@ struct MATH
bool has_data () const { return version.to_int (); }
+ void closure_glyphs (hb_set_t *glyph_set) const
+ {
+ if (mathVariants)
+ {
+ hb_set_t variant_glyphs;
+ (this+mathVariants).closure_glyphs (glyph_set, &variant_glyphs);
+ hb_set_union (glyph_set, &variant_glyphs);
+ }
+ }
+
+ bool subset (hb_subset_context_t *c) const
+ {
+ TRACE_SUBSET (this);
+ auto *out = c->serializer->embed (*this);
+ if (unlikely (!out)) return_trace (false);
+
+ out->mathConstants.serialize_copy (c->serializer, mathConstants, this, 0, hb_serialize_context_t::Head);
+ out->mathGlyphInfo.serialize_subset (c, mathGlyphInfo, this);
+ out->mathVariants.serialize_subset (c, mathVariants, this);
+ return_trace (true);
+ }
+
bool sanitize (hb_sanitize_context_t *c) const
{
TRACE_SANITIZE (this);
diff --git a/thirdparty/harfbuzz/src/hb-ot-name.h b/thirdparty/harfbuzz/src/hb-ot-name.h
index 9359014c8a..1ea4b55e5c 100644
--- a/thirdparty/harfbuzz/src/hb-ot-name.h
+++ b/thirdparty/harfbuzz/src/hb-ot-name.h
@@ -36,12 +36,42 @@ HB_BEGIN_DECLS
/**
* hb_ot_name_id_t:
+ * @HB_OT_NAME_ID_COPYRIGHT: Copyright notice
+ * @HB_OT_NAME_ID_FONT_FAMILY: Font Family name
+ * @HB_OT_NAME_ID_FONT_SUBFAMILY: Font Subfamily name
+ * @HB_OT_NAME_ID_UNIQUE_ID: Unique font identifier
+ * @HB_OT_NAME_ID_FULL_NAME: Full font name that reflects
+ * all family and relevant subfamily descriptors
+ * @HB_OT_NAME_ID_VERSION_STRING: Version string
+ * @HB_OT_NAME_ID_POSTSCRIPT_NAME: PostScript name for the font
+ * @HB_OT_NAME_ID_TRADEMARK: Trademark
+ * @HB_OT_NAME_ID_MANUFACTURER: Manufacturer Name
+ * @HB_OT_NAME_ID_DESIGNER: Designer
+ * @HB_OT_NAME_ID_DESCRIPTION: Description
+ * @HB_OT_NAME_ID_VENDOR_URL: URL of font vendor
+ * @HB_OT_NAME_ID_DESIGNER_URL: URL of typeface designer
+ * @HB_OT_NAME_ID_LICENSE: License Description
+ * @HB_OT_NAME_ID_LICENSE_URL: URL where additional licensing
+ * information can be found
+ * @HB_OT_NAME_ID_TYPOGRAPHIC_FAMILY: Typographic Family name
+ * @HB_OT_NAME_ID_TYPOGRAPHIC_SUBFAMILY: Typographic Subfamily name
+ * @HB_OT_NAME_ID_MAC_FULL_NAME: Compatible Full Name for MacOS
+ * @HB_OT_NAME_ID_SAMPLE_TEXT: Sample text
+ * @HB_OT_NAME_ID_CID_FINDFONT_NAME: PostScript CID findfont name
+ * @HB_OT_NAME_ID_WWS_FAMILY: WWS Family Name
+ * @HB_OT_NAME_ID_WWS_SUBFAMILY: WWS Subfamily Name
+ * @HB_OT_NAME_ID_LIGHT_BACKGROUND: Light Background Palette
+ * @HB_OT_NAME_ID_DARK_BACKGROUND: Dark Background Palette
+ * @HB_OT_NAME_ID_VARIATIONS_PS_PREFIX: Variations PostScript Name Prefix
* @HB_OT_NAME_ID_INVALID: Value to represent a nonexistent name ID.
*
* An integral type representing an OpenType 'name' table name identifier.
* There are predefined name IDs, as well as name IDs return from other
* API. These can be used to fetch name strings from a font face.
*
+ * For more information on these fields, see the
+ * [OpenType spec](https://docs.microsoft.com/en-us/typography/opentype/spec/name#name-ids).
+ *
* Since: 2.0.0
**/
enum
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic-fallback.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic-fallback.hh
index 2b3b134ae3..78f46c1cac 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic-fallback.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic-fallback.hh
@@ -49,8 +49,8 @@ arabic_fallback_synthesize_lookup_single (const hb_ot_shape_plan_t *plan HB_UNUS
hb_font_t *font,
unsigned int feature_index)
{
- OT::HBGlyphID glyphs[SHAPING_TABLE_LAST - SHAPING_TABLE_FIRST + 1];
- OT::HBGlyphID substitutes[SHAPING_TABLE_LAST - SHAPING_TABLE_FIRST + 1];
+ OT::HBGlyphID16 glyphs[SHAPING_TABLE_LAST - SHAPING_TABLE_FIRST + 1];
+ OT::HBGlyphID16 substitutes[SHAPING_TABLE_LAST - SHAPING_TABLE_FIRST + 1];
unsigned int num_glyphs = 0;
/* Populate arrays */
@@ -78,7 +78,7 @@ arabic_fallback_synthesize_lookup_single (const hb_ot_shape_plan_t *plan HB_UNUS
/* Bubble-sort or something equally good!
* May not be good-enough for presidential candidate interviews, but good-enough for us... */
hb_stable_sort (&glyphs[0], num_glyphs,
- (int(*)(const OT::HBUINT16*, const OT::HBUINT16 *)) OT::HBGlyphID::cmp,
+ (int(*)(const OT::HBUINT16*, const OT::HBUINT16 *)) OT::HBGlyphID16::cmp,
&substitutes[0]);
@@ -99,15 +99,15 @@ static OT::SubstLookup *
arabic_fallback_synthesize_lookup_ligature (const hb_ot_shape_plan_t *plan HB_UNUSED,
hb_font_t *font)
{
- OT::HBGlyphID first_glyphs[ARRAY_LENGTH_CONST (ligature_table)];
+ OT::HBGlyphID16 first_glyphs[ARRAY_LENGTH_CONST (ligature_table)];
unsigned int first_glyphs_indirection[ARRAY_LENGTH_CONST (ligature_table)];
unsigned int ligature_per_first_glyph_count_list[ARRAY_LENGTH_CONST (first_glyphs)];
unsigned int num_first_glyphs = 0;
/* We know that all our ligatures are 2-component */
- OT::HBGlyphID ligature_list[ARRAY_LENGTH_CONST (first_glyphs) * ARRAY_LENGTH_CONST(ligature_table[0].ligatures)];
+ OT::HBGlyphID16 ligature_list[ARRAY_LENGTH_CONST (first_glyphs) * ARRAY_LENGTH_CONST(ligature_table[0].ligatures)];
unsigned int component_count_list[ARRAY_LENGTH_CONST (ligature_list)];
- OT::HBGlyphID component_list[ARRAY_LENGTH_CONST (ligature_list) * 1/* One extra component per ligature */];
+ OT::HBGlyphID16 component_list[ARRAY_LENGTH_CONST (ligature_list) * 1/* One extra component per ligature */];
unsigned int num_ligatures = 0;
/* Populate arrays */
@@ -125,7 +125,7 @@ arabic_fallback_synthesize_lookup_ligature (const hb_ot_shape_plan_t *plan HB_UN
num_first_glyphs++;
}
hb_stable_sort (&first_glyphs[0], num_first_glyphs,
- (int(*)(const OT::HBUINT16*, const OT::HBUINT16 *)) OT::HBGlyphID::cmp,
+ (int(*)(const OT::HBUINT16*, const OT::HBUINT16 *)) OT::HBGlyphID16::cmp,
&first_glyphs_indirection[0]);
/* Now that the first-glyphs are sorted, walk again, populate ligatures. */
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic.cc b/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic.cc
index 1f8c1410fc..222c5d6b71 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-arabic.cc
@@ -349,7 +349,7 @@ mongolian_variation_selectors (hb_buffer_t *buffer)
unsigned int count = buffer->len;
hb_glyph_info_t *info = buffer->info;
for (unsigned int i = 1; i < count; i++)
- if (unlikely (hb_in_range<hb_codepoint_t> (info[i].codepoint, 0x180Bu, 0x180Du)))
+ if (unlikely (hb_in_ranges<hb_codepoint_t> (info[i].codepoint, 0x180Bu, 0x180Du, 0x180Fu, 0x180Fu)))
info[i].arabic_shaping_action() = info[i - 1].arabic_shaping_action();
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-indic.cc b/thirdparty/harfbuzz/src/hb-ot-shape-complex-indic.cc
index 0983a32848..4a8781c8f8 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-indic.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-indic.cc
@@ -202,9 +202,6 @@ collect_features_indic (hb_ot_shape_planner_t *plan)
for (; i < INDIC_NUM_FEATURES; i++)
map->add_feature (indic_features[i]);
- map->enable_feature (HB_TAG('c','a','l','t'));
- map->enable_feature (HB_TAG('c','l','i','g'));
-
map->add_gsub_pause (_hb_clear_syllables);
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-khmer.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-khmer.hh
index e24d68a8b5..35bfbb64d5 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-khmer.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-khmer.hh
@@ -49,13 +49,15 @@ enum khmer_category_t
//OT_VPst = 29,
};
+using khmer_position_t = indic_position_t;
+
static inline void
set_khmer_properties (hb_glyph_info_t &info)
{
hb_codepoint_t u = info.codepoint;
unsigned int type = hb_indic_get_categories (u);
khmer_category_t cat = (khmer_category_t) (type & 0xFFu);
- indic_position_t pos = (indic_position_t) (type >> 8);
+ khmer_position_t pos = (khmer_position_t) (type >> 8);
/*
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar-machine.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar-machine.hh
index c09497896d..f4ef33004d 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar-machine.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar-machine.hh
@@ -51,6 +51,7 @@ enum myanmar_syllable_type_t {
#define myanmar_syllable_machine_ex_H 4u
#define myanmar_syllable_machine_ex_IV 2u
#define myanmar_syllable_machine_ex_MH 21u
+#define myanmar_syllable_machine_ex_ML 33u
#define myanmar_syllable_machine_ex_MR 22u
#define myanmar_syllable_machine_ex_MW 23u
#define myanmar_syllable_machine_ex_MY 24u
@@ -67,35 +68,36 @@ enum myanmar_syllable_type_t {
#define myanmar_syllable_machine_ex_ZWNJ 5u
-#line 71 "hb-ot-shape-complex-myanmar-machine.hh"
+#line 72 "hb-ot-shape-complex-myanmar-machine.hh"
static const unsigned char _myanmar_syllable_machine_trans_keys[] = {
- 1u, 32u, 3u, 30u, 5u, 29u, 5u, 8u, 5u, 29u, 3u, 25u, 5u, 25u, 5u, 25u,
- 3u, 29u, 3u, 29u, 3u, 29u, 3u, 29u, 1u, 16u, 3u, 29u, 3u, 29u, 3u, 29u,
- 3u, 29u, 3u, 29u, 3u, 30u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 29u,
- 5u, 29u, 5u, 8u, 5u, 29u, 3u, 25u, 5u, 25u, 5u, 25u, 3u, 29u, 3u, 29u,
- 3u, 29u, 3u, 29u, 1u, 16u, 3u, 30u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 29u,
- 3u, 29u, 3u, 30u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 30u,
- 3u, 29u, 1u, 32u, 1u, 32u, 8u, 8u, 0
+ 1u, 33u, 3u, 33u, 5u, 29u, 5u, 8u, 5u, 29u, 3u, 25u, 5u, 25u, 5u, 25u,
+ 3u, 33u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 33u, 1u, 16u, 3u, 33u, 3u, 33u,
+ 3u, 29u, 3u, 29u, 3u, 29u, 3u, 30u, 3u, 29u, 3u, 33u, 3u, 33u, 3u, 33u,
+ 3u, 33u, 3u, 33u, 5u, 29u, 5u, 8u, 5u, 29u, 3u, 25u, 5u, 25u, 5u, 25u,
+ 3u, 33u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 33u, 1u, 16u, 3u, 33u, 3u, 33u,
+ 3u, 33u, 3u, 29u, 3u, 29u, 3u, 29u, 3u, 30u, 3u, 29u, 3u, 33u, 3u, 33u,
+ 3u, 33u, 3u, 33u, 3u, 33u, 3u, 33u, 3u, 33u, 1u, 33u, 1u, 32u, 8u, 8u,
+ 0
};
static const char _myanmar_syllable_machine_key_spans[] = {
- 32, 28, 25, 4, 25, 23, 21, 21,
- 27, 27, 27, 27, 16, 27, 27, 27,
- 27, 27, 28, 27, 27, 27, 27, 27,
- 25, 4, 25, 23, 21, 21, 27, 27,
- 27, 27, 16, 28, 27, 27, 27, 27,
- 27, 28, 27, 27, 27, 27, 27, 28,
- 27, 32, 32, 1
+ 33, 31, 25, 4, 25, 23, 21, 21,
+ 31, 27, 27, 27, 31, 16, 31, 31,
+ 27, 27, 27, 28, 27, 31, 31, 31,
+ 31, 31, 25, 4, 25, 23, 21, 21,
+ 31, 27, 27, 27, 31, 16, 31, 31,
+ 31, 27, 27, 27, 28, 27, 31, 31,
+ 31, 31, 31, 31, 31, 33, 32, 1
};
static const short _myanmar_syllable_machine_index_offsets[] = {
- 0, 33, 62, 88, 93, 119, 143, 165,
- 187, 215, 243, 271, 299, 316, 344, 372,
- 400, 428, 456, 485, 513, 541, 569, 597,
- 625, 651, 656, 682, 706, 728, 750, 778,
- 806, 834, 862, 879, 908, 936, 964, 992,
- 1020, 1048, 1077, 1105, 1133, 1161, 1189, 1217,
- 1246, 1274, 1307, 1340
+ 0, 34, 66, 92, 97, 123, 147, 169,
+ 191, 223, 251, 279, 307, 339, 356, 388,
+ 420, 448, 476, 504, 533, 561, 593, 625,
+ 657, 689, 721, 747, 752, 778, 802, 824,
+ 846, 878, 906, 934, 962, 994, 1011, 1043,
+ 1075, 1107, 1135, 1163, 1191, 1220, 1248, 1280,
+ 1312, 1344, 1376, 1408, 1440, 1472, 1506, 1539
};
static const char _myanmar_syllable_machine_indicies[] = {
@@ -103,192 +105,217 @@ static const char _myanmar_syllable_machine_indicies[] = {
0, 6, 1, 0, 0, 0, 0, 7,
0, 8, 9, 0, 10, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 1,
- 0, 22, 23, 24, 24, 21, 25, 21,
- 26, 21, 21, 21, 21, 21, 21, 21,
- 27, 21, 21, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 21, 24, 24,
- 21, 25, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 38, 21, 21, 21, 21,
- 21, 21, 32, 21, 21, 21, 36, 21,
- 24, 24, 21, 25, 21, 24, 24, 21,
- 25, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 32, 21, 21, 21, 36, 21, 39,
- 21, 24, 24, 21, 25, 21, 32, 21,
- 21, 21, 21, 21, 21, 21, 40, 21,
- 21, 21, 21, 21, 21, 32, 21, 24,
- 24, 21, 25, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 40, 21, 21, 21,
- 21, 21, 21, 32, 21, 24, 24, 21,
- 25, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 32, 21, 22, 21, 24, 24, 21,
- 25, 21, 26, 21, 21, 21, 21, 21,
- 21, 21, 41, 21, 21, 41, 21, 21,
- 21, 32, 42, 21, 21, 36, 21, 22,
- 21, 24, 24, 21, 25, 21, 26, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 32, 21, 21,
- 21, 36, 21, 22, 21, 24, 24, 21,
- 25, 21, 26, 21, 21, 21, 21, 21,
- 21, 21, 41, 21, 21, 21, 21, 21,
- 21, 32, 42, 21, 21, 36, 21, 22,
- 21, 24, 24, 21, 25, 21, 26, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 32, 42, 21,
- 21, 36, 21, 1, 1, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 1, 21, 22, 21, 24, 24,
- 21, 25, 21, 26, 21, 21, 21, 21,
- 21, 21, 21, 27, 21, 21, 28, 29,
- 30, 31, 32, 33, 34, 35, 36, 21,
- 22, 21, 24, 24, 21, 25, 21, 26,
- 21, 21, 21, 21, 21, 21, 21, 43,
- 21, 21, 21, 21, 21, 21, 32, 33,
- 34, 35, 36, 21, 22, 21, 24, 24,
- 21, 25, 21, 26, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 32, 33, 34, 35, 36, 21,
- 22, 21, 24, 24, 21, 25, 21, 26,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 32, 33,
- 34, 21, 36, 21, 22, 21, 24, 24,
- 21, 25, 21, 26, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 32, 21, 34, 21, 36, 21,
- 22, 21, 24, 24, 21, 25, 21, 26,
- 21, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 32, 33,
- 34, 35, 36, 43, 21, 22, 21, 24,
- 24, 21, 25, 21, 26, 21, 21, 21,
- 21, 21, 21, 21, 21, 21, 21, 28,
- 21, 30, 21, 32, 33, 34, 35, 36,
- 21, 22, 21, 24, 24, 21, 25, 21,
- 26, 21, 21, 21, 21, 21, 21, 21,
- 43, 21, 21, 28, 21, 21, 21, 32,
- 33, 34, 35, 36, 21, 22, 21, 24,
- 24, 21, 25, 21, 26, 21, 21, 21,
- 21, 21, 21, 21, 44, 21, 21, 28,
- 29, 30, 21, 32, 33, 34, 35, 36,
- 21, 22, 21, 24, 24, 21, 25, 21,
- 26, 21, 21, 21, 21, 21, 21, 21,
- 21, 21, 21, 28, 29, 30, 21, 32,
- 33, 34, 35, 36, 21, 22, 23, 24,
- 24, 21, 25, 21, 26, 21, 21, 21,
- 21, 21, 21, 21, 27, 21, 21, 28,
- 29, 30, 31, 32, 33, 34, 35, 36,
- 21, 46, 46, 45, 5, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 47, 45,
- 45, 45, 45, 45, 45, 14, 45, 45,
- 45, 18, 45, 46, 46, 45, 5, 45,
- 46, 46, 45, 5, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 14, 45, 45, 45,
- 18, 45, 48, 45, 46, 46, 45, 5,
- 45, 14, 45, 45, 45, 45, 45, 45,
- 45, 49, 45, 45, 45, 45, 45, 45,
- 14, 45, 46, 46, 45, 5, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 49,
- 45, 45, 45, 45, 45, 45, 14, 45,
- 46, 46, 45, 5, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 14, 45, 2, 45,
- 46, 46, 45, 5, 45, 6, 45, 45,
- 45, 45, 45, 45, 45, 50, 45, 45,
- 50, 45, 45, 45, 14, 51, 45, 45,
- 18, 45, 2, 45, 46, 46, 45, 5,
- 45, 6, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 14, 45, 45, 45, 18, 45, 2, 45,
- 46, 46, 45, 5, 45, 6, 45, 45,
- 45, 45, 45, 45, 45, 50, 45, 45,
- 45, 45, 45, 45, 14, 51, 45, 45,
- 18, 45, 2, 45, 46, 46, 45, 5,
- 45, 6, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 14, 51, 45, 45, 18, 45, 52, 52,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 52, 45, 2,
- 3, 46, 46, 45, 5, 45, 6, 45,
- 45, 45, 45, 45, 45, 45, 8, 45,
- 45, 10, 11, 12, 13, 14, 15, 16,
- 17, 18, 19, 45, 2, 45, 46, 46,
- 45, 5, 45, 6, 45, 45, 45, 45,
- 45, 45, 45, 8, 45, 45, 10, 11,
- 12, 13, 14, 15, 16, 17, 18, 45,
- 2, 45, 46, 46, 45, 5, 45, 6,
- 45, 45, 45, 45, 45, 45, 45, 53,
- 45, 45, 45, 45, 45, 45, 14, 15,
- 16, 17, 18, 45, 2, 45, 46, 46,
- 45, 5, 45, 6, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 14, 15, 16, 17, 18, 45,
- 2, 45, 46, 46, 45, 5, 45, 6,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 14, 15,
- 16, 45, 18, 45, 2, 45, 46, 46,
- 45, 5, 45, 6, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 14, 45, 16, 45, 18, 45,
- 2, 45, 46, 46, 45, 5, 45, 6,
- 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 14, 15,
- 16, 17, 18, 53, 45, 2, 45, 46,
- 46, 45, 5, 45, 6, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 10,
- 45, 12, 45, 14, 15, 16, 17, 18,
- 45, 2, 45, 46, 46, 45, 5, 45,
- 6, 45, 45, 45, 45, 45, 45, 45,
- 53, 45, 45, 10, 45, 45, 45, 14,
- 15, 16, 17, 18, 45, 2, 45, 46,
- 46, 45, 5, 45, 6, 45, 45, 45,
- 45, 45, 45, 45, 54, 45, 45, 10,
- 11, 12, 45, 14, 15, 16, 17, 18,
- 45, 2, 45, 46, 46, 45, 5, 45,
- 6, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 10, 11, 12, 45, 14,
- 15, 16, 17, 18, 45, 2, 3, 46,
- 46, 45, 5, 45, 6, 45, 45, 45,
- 45, 45, 45, 45, 8, 45, 45, 10,
- 11, 12, 13, 14, 15, 16, 17, 18,
- 45, 22, 23, 24, 24, 21, 25, 21,
- 26, 21, 21, 21, 21, 21, 21, 21,
- 55, 21, 21, 28, 29, 30, 31, 32,
- 33, 34, 35, 36, 37, 21, 22, 56,
- 24, 24, 21, 25, 21, 26, 21, 21,
- 21, 21, 21, 21, 21, 27, 21, 21,
- 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 21, 1, 1, 2, 3, 46, 46,
- 45, 5, 45, 6, 1, 45, 45, 45,
- 45, 1, 45, 8, 45, 45, 10, 11,
- 12, 13, 14, 15, 16, 17, 18, 19,
- 45, 1, 45, 1, 1, 57, 57, 57,
- 57, 57, 57, 57, 57, 1, 57, 57,
- 57, 57, 1, 57, 57, 57, 57, 57,
- 57, 57, 57, 57, 57, 57, 57, 57,
- 57, 57, 1, 57, 58, 57, 0
+ 21, 0, 23, 24, 25, 25, 22, 26,
+ 22, 27, 22, 22, 22, 22, 22, 22,
+ 22, 28, 22, 22, 29, 30, 31, 32,
+ 33, 34, 35, 36, 37, 38, 22, 22,
+ 39, 22, 25, 25, 22, 26, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 40,
+ 22, 22, 22, 22, 22, 22, 33, 22,
+ 22, 22, 37, 22, 25, 25, 22, 26,
+ 22, 25, 25, 22, 26, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 33, 22, 22,
+ 22, 37, 22, 41, 22, 25, 25, 22,
+ 26, 22, 33, 22, 22, 22, 22, 22,
+ 22, 22, 42, 22, 22, 22, 22, 22,
+ 22, 33, 22, 25, 25, 22, 26, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 42, 22, 22, 22, 22, 22, 22, 33,
+ 22, 25, 25, 22, 26, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 33, 22, 23,
+ 22, 25, 25, 22, 26, 22, 27, 22,
+ 22, 22, 22, 22, 22, 22, 43, 22,
+ 22, 44, 22, 22, 22, 33, 45, 22,
+ 22, 37, 22, 22, 22, 43, 22, 23,
+ 22, 25, 25, 22, 26, 22, 27, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 33, 22, 22,
+ 22, 37, 22, 23, 22, 25, 25, 22,
+ 26, 22, 27, 22, 22, 22, 22, 22,
+ 22, 22, 43, 22, 22, 22, 22, 22,
+ 22, 33, 45, 22, 22, 37, 22, 23,
+ 22, 25, 25, 22, 26, 22, 27, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 33, 45, 22,
+ 22, 37, 22, 23, 22, 25, 25, 22,
+ 26, 22, 27, 22, 22, 22, 22, 22,
+ 22, 22, 43, 22, 22, 22, 22, 22,
+ 22, 33, 45, 22, 22, 37, 22, 22,
+ 22, 43, 22, 1, 1, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 1, 22, 23, 22, 25, 25,
+ 22, 26, 22, 27, 22, 22, 22, 22,
+ 22, 22, 22, 28, 22, 22, 29, 30,
+ 31, 32, 33, 34, 35, 36, 37, 22,
+ 22, 22, 39, 22, 23, 22, 25, 25,
+ 22, 26, 22, 27, 22, 22, 22, 22,
+ 22, 22, 22, 46, 22, 22, 22, 22,
+ 22, 22, 33, 34, 35, 36, 37, 22,
+ 22, 22, 39, 22, 23, 22, 25, 25,
+ 22, 26, 22, 27, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 33, 34, 35, 36, 37, 22,
+ 23, 22, 25, 25, 22, 26, 22, 27,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 33, 34,
+ 35, 22, 37, 22, 23, 22, 25, 25,
+ 22, 26, 22, 27, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 33, 22, 35, 22, 37, 22,
+ 23, 22, 25, 25, 22, 26, 22, 27,
+ 22, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 22, 22, 22, 33, 34,
+ 35, 36, 37, 46, 22, 23, 22, 25,
+ 25, 22, 26, 22, 27, 22, 22, 22,
+ 22, 22, 22, 22, 46, 22, 22, 22,
+ 22, 22, 22, 33, 34, 35, 36, 37,
+ 22, 23, 22, 25, 25, 22, 26, 22,
+ 27, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 29, 22, 31, 22, 33,
+ 34, 35, 36, 37, 22, 22, 22, 39,
+ 22, 23, 22, 25, 25, 22, 26, 22,
+ 27, 22, 22, 22, 22, 22, 22, 22,
+ 46, 22, 22, 29, 22, 22, 22, 33,
+ 34, 35, 36, 37, 22, 22, 22, 39,
+ 22, 23, 22, 25, 25, 22, 26, 22,
+ 27, 22, 22, 22, 22, 22, 22, 22,
+ 47, 22, 22, 29, 30, 31, 22, 33,
+ 34, 35, 36, 37, 22, 22, 22, 39,
+ 22, 23, 22, 25, 25, 22, 26, 22,
+ 27, 22, 22, 22, 22, 22, 22, 22,
+ 22, 22, 22, 29, 30, 31, 22, 33,
+ 34, 35, 36, 37, 22, 22, 22, 39,
+ 22, 23, 24, 25, 25, 22, 26, 22,
+ 27, 22, 22, 22, 22, 22, 22, 22,
+ 28, 22, 22, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 22, 22, 22, 39,
+ 22, 49, 49, 48, 5, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 50, 48,
+ 48, 48, 48, 48, 48, 14, 48, 48,
+ 48, 18, 48, 49, 49, 48, 5, 48,
+ 49, 49, 48, 5, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 14, 48, 48, 48,
+ 18, 48, 51, 48, 49, 49, 48, 5,
+ 48, 14, 48, 48, 48, 48, 48, 48,
+ 48, 52, 48, 48, 48, 48, 48, 48,
+ 14, 48, 49, 49, 48, 5, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 52,
+ 48, 48, 48, 48, 48, 48, 14, 48,
+ 49, 49, 48, 5, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 14, 48, 2, 48,
+ 49, 49, 48, 5, 48, 6, 48, 48,
+ 48, 48, 48, 48, 48, 53, 48, 48,
+ 54, 48, 48, 48, 14, 55, 48, 48,
+ 18, 48, 48, 48, 53, 48, 2, 48,
+ 49, 49, 48, 5, 48, 6, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 14, 48, 48, 48,
+ 18, 48, 2, 48, 49, 49, 48, 5,
+ 48, 6, 48, 48, 48, 48, 48, 48,
+ 48, 53, 48, 48, 48, 48, 48, 48,
+ 14, 55, 48, 48, 18, 48, 2, 48,
+ 49, 49, 48, 5, 48, 6, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 14, 55, 48, 48,
+ 18, 48, 2, 48, 49, 49, 48, 5,
+ 48, 6, 48, 48, 48, 48, 48, 48,
+ 48, 53, 48, 48, 48, 48, 48, 48,
+ 14, 55, 48, 48, 18, 48, 48, 48,
+ 53, 48, 56, 56, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 56, 48, 2, 3, 49, 49, 48,
+ 5, 48, 6, 48, 48, 48, 48, 48,
+ 48, 48, 8, 48, 48, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 19, 48,
+ 48, 21, 48, 2, 48, 49, 49, 48,
+ 5, 48, 6, 48, 48, 48, 48, 48,
+ 48, 48, 8, 48, 48, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 48, 48,
+ 48, 21, 48, 2, 48, 49, 49, 48,
+ 5, 48, 6, 48, 48, 48, 48, 48,
+ 48, 48, 57, 48, 48, 48, 48, 48,
+ 48, 14, 15, 16, 17, 18, 48, 48,
+ 48, 21, 48, 2, 48, 49, 49, 48,
+ 5, 48, 6, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 14, 15, 16, 17, 18, 48, 2,
+ 48, 49, 49, 48, 5, 48, 6, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 14, 15, 16,
+ 48, 18, 48, 2, 48, 49, 49, 48,
+ 5, 48, 6, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 14, 48, 16, 48, 18, 48, 2,
+ 48, 49, 49, 48, 5, 48, 6, 48,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 48, 48, 48, 14, 15, 16,
+ 17, 18, 57, 48, 2, 48, 49, 49,
+ 48, 5, 48, 6, 48, 48, 48, 48,
+ 48, 48, 48, 57, 48, 48, 48, 48,
+ 48, 48, 14, 15, 16, 17, 18, 48,
+ 2, 48, 49, 49, 48, 5, 48, 6,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 10, 48, 12, 48, 14, 15,
+ 16, 17, 18, 48, 48, 48, 21, 48,
+ 2, 48, 49, 49, 48, 5, 48, 6,
+ 48, 48, 48, 48, 48, 48, 48, 57,
+ 48, 48, 10, 48, 48, 48, 14, 15,
+ 16, 17, 18, 48, 48, 48, 21, 48,
+ 2, 48, 49, 49, 48, 5, 48, 6,
+ 48, 48, 48, 48, 48, 48, 48, 58,
+ 48, 48, 10, 11, 12, 48, 14, 15,
+ 16, 17, 18, 48, 48, 48, 21, 48,
+ 2, 48, 49, 49, 48, 5, 48, 6,
+ 48, 48, 48, 48, 48, 48, 48, 48,
+ 48, 48, 10, 11, 12, 48, 14, 15,
+ 16, 17, 18, 48, 48, 48, 21, 48,
+ 2, 3, 49, 49, 48, 5, 48, 6,
+ 48, 48, 48, 48, 48, 48, 48, 8,
+ 48, 48, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 48, 48, 48, 21, 48,
+ 23, 24, 25, 25, 22, 26, 22, 27,
+ 22, 22, 22, 22, 22, 22, 22, 59,
+ 22, 22, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 38, 22, 22, 39, 22,
+ 23, 60, 25, 25, 22, 26, 22, 27,
+ 22, 22, 22, 22, 22, 22, 22, 28,
+ 22, 22, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 22, 22, 22, 39, 22,
+ 1, 1, 2, 3, 49, 49, 48, 5,
+ 48, 6, 1, 48, 48, 48, 48, 1,
+ 48, 8, 48, 48, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 48, 1,
+ 21, 48, 1, 1, 61, 61, 61, 61,
+ 61, 61, 61, 61, 1, 61, 61, 61,
+ 61, 1, 61, 61, 61, 61, 61, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61,
+ 61, 1, 61, 62, 61, 0
};
static const char _myanmar_syllable_machine_trans_targs[] = {
- 0, 1, 24, 34, 0, 25, 31, 47,
- 36, 50, 37, 42, 43, 44, 27, 39,
- 40, 41, 30, 46, 51, 0, 2, 12,
- 0, 3, 9, 13, 14, 19, 20, 21,
- 5, 16, 17, 18, 8, 23, 4, 6,
- 7, 10, 11, 15, 22, 0, 0, 26,
- 28, 29, 32, 33, 35, 38, 45, 48,
- 49, 0, 0
+ 0, 1, 26, 37, 0, 27, 33, 51,
+ 39, 54, 40, 46, 47, 48, 29, 42,
+ 43, 44, 32, 50, 55, 45, 0, 2,
+ 13, 0, 3, 9, 14, 15, 21, 22,
+ 23, 5, 17, 18, 19, 8, 25, 20,
+ 4, 6, 7, 10, 12, 11, 16, 24,
+ 0, 0, 28, 30, 31, 34, 36, 35,
+ 38, 41, 49, 52, 53, 0, 0
};
static const char _myanmar_syllable_machine_trans_actions[] = {
3, 0, 0, 0, 4, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 5, 0, 0,
- 6, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 5, 0,
+ 0, 6, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 7, 8, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 9, 10
+ 7, 8, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 9, 10
};
static const char _myanmar_syllable_machine_to_state_actions[] = {
@@ -298,7 +325,7 @@ static const char _myanmar_syllable_machine_to_state_actions[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0
+ 0, 0, 0, 0, 0, 0, 0, 0
};
static const char _myanmar_syllable_machine_from_state_actions[] = {
@@ -308,17 +335,17 @@ static const char _myanmar_syllable_machine_from_state_actions[] = {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0
+ 0, 0, 0, 0, 0, 0, 0, 0
};
static const short _myanmar_syllable_machine_eof_trans[] = {
- 0, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22,
- 22, 22, 22, 22, 22, 22, 22, 22,
- 46, 46, 46, 46, 46, 46, 46, 46,
- 46, 46, 46, 46, 46, 46, 46, 46,
- 46, 46, 46, 46, 46, 46, 46, 22,
- 22, 46, 58, 58
+ 0, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 23,
+ 23, 23, 49, 49, 49, 49, 49, 49,
+ 49, 49, 49, 49, 49, 49, 49, 49,
+ 49, 49, 49, 49, 49, 49, 49, 49,
+ 49, 49, 49, 23, 23, 49, 62, 62
};
static const int myanmar_syllable_machine_start = 0;
@@ -332,7 +359,7 @@ static const int myanmar_syllable_machine_en_main = 0;
-#line 101 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 102 "hb-ot-shape-complex-myanmar-machine.rl"
#define found_syllable(syllable_type) \
@@ -351,7 +378,7 @@ find_syllables_myanmar (hb_buffer_t *buffer)
int cs;
hb_glyph_info_t *info = buffer->info;
-#line 355 "hb-ot-shape-complex-myanmar-machine.hh"
+#line 382 "hb-ot-shape-complex-myanmar-machine.hh"
{
cs = myanmar_syllable_machine_start;
ts = 0;
@@ -359,7 +386,7 @@ find_syllables_myanmar (hb_buffer_t *buffer)
act = 0;
}
-#line 121 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 122 "hb-ot-shape-complex-myanmar-machine.rl"
p = 0;
@@ -367,7 +394,7 @@ find_syllables_myanmar (hb_buffer_t *buffer)
unsigned int syllable_serial = 1;
-#line 371 "hb-ot-shape-complex-myanmar-machine.hh"
+#line 398 "hb-ot-shape-complex-myanmar-machine.hh"
{
int _slen;
int _trans;
@@ -381,7 +408,7 @@ _resume:
#line 1 "NONE"
{ts = p;}
break;
-#line 385 "hb-ot-shape-complex-myanmar-machine.hh"
+#line 412 "hb-ot-shape-complex-myanmar-machine.hh"
}
_keys = _myanmar_syllable_machine_trans_keys + (cs<<1);
@@ -400,38 +427,38 @@ _eof_trans:
switch ( _myanmar_syllable_machine_trans_actions[_trans] ) {
case 6:
-#line 93 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 94 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p+1;{ found_syllable (myanmar_consonant_syllable); }}
break;
case 4:
-#line 94 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 95 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p+1;{ found_syllable (myanmar_non_myanmar_cluster); }}
break;
case 10:
-#line 95 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 96 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p+1;{ found_syllable (myanmar_punctuation_cluster); }}
break;
case 8:
-#line 96 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 97 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p+1;{ found_syllable (myanmar_broken_cluster); }}
break;
case 3:
-#line 97 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 98 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p+1;{ found_syllable (myanmar_non_myanmar_cluster); }}
break;
case 5:
-#line 93 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 94 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p;p--;{ found_syllable (myanmar_consonant_syllable); }}
break;
case 7:
-#line 96 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 97 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p;p--;{ found_syllable (myanmar_broken_cluster); }}
break;
case 9:
-#line 97 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 98 "hb-ot-shape-complex-myanmar-machine.rl"
{te = p;p--;{ found_syllable (myanmar_non_myanmar_cluster); }}
break;
-#line 435 "hb-ot-shape-complex-myanmar-machine.hh"
+#line 462 "hb-ot-shape-complex-myanmar-machine.hh"
}
_again:
@@ -440,7 +467,7 @@ _again:
#line 1 "NONE"
{ts = 0;}
break;
-#line 444 "hb-ot-shape-complex-myanmar-machine.hh"
+#line 471 "hb-ot-shape-complex-myanmar-machine.hh"
}
if ( ++p != pe )
@@ -456,7 +483,7 @@ _again:
}
-#line 129 "hb-ot-shape-complex-myanmar-machine.rl"
+#line 130 "hb-ot-shape-complex-myanmar-machine.rl"
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.cc b/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.cc
index 6e92a9b0ae..e6ae75e8f2 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.cc
@@ -185,7 +185,7 @@ initial_reordering_consonant_syllable (hb_buffer_t *buffer,
info[i].myanmar_position() = POS_BASE_C;
i++;
}
- indic_position_t pos = POS_AFTER_MAIN;
+ myanmar_position_t pos = POS_AFTER_MAIN;
/* The following loop may be ugly, but it implements all of
* Myanmar reordering! */
for (; i < end; i++)
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.hh
index a6d68aae57..7fbca3878f 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-myanmar.hh
@@ -56,8 +56,10 @@ enum myanmar_category_t {
OT_VS = 30, /* Variation selectors */
OT_P = 31, /* Punctuation */
OT_D = 32, /* Digits except zero */
+ OT_ML = 33, /* Various consonant medial types */
};
+using myanmar_position_t = indic_position_t;
static inline void
set_myanmar_properties (hb_glyph_info_t &info)
@@ -65,7 +67,7 @@ set_myanmar_properties (hb_glyph_info_t &info)
hb_codepoint_t u = info.codepoint;
unsigned int type = hb_indic_get_categories (u);
unsigned int cat = type & 0xFFu;
- indic_position_t pos = (indic_position_t) (type >> 8);
+ myanmar_position_t pos = (myanmar_position_t) (type >> 8);
/* Myanmar
* https://docs.microsoft.com/en-us/typography/script-development/myanmar#analyze
@@ -114,10 +116,14 @@ set_myanmar_properties (hb_glyph_info_t &info)
cat = OT_D; /* XXX The spec says D0, but Uniscribe doesn't seem to do. */
break;
- case 0x103Eu: case 0x1060u:
+ case 0x103Eu:
cat = OT_MH;
break;
+ case 0x1060u:
+ cat = OT_ML;
+ break;
+
case 0x103Cu:
cat = OT_MR;
break;
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
index bb046a72ec..c3920b2cc6 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-machine.hh
@@ -41,7 +41,6 @@
#define USE(Cat) use_syllable_machine_ex_##Cat
enum use_syllable_type_t {
- use_independent_cluster,
use_virama_terminated_cluster,
use_sakot_terminated_cluster,
use_standard_cluster,
@@ -54,8 +53,9 @@ enum use_syllable_type_t {
};
-#line 58 "hb-ot-shape-complex-use-machine.hh"
+#line 57 "hb-ot-shape-complex-use-machine.hh"
#define use_syllable_machine_ex_B 1u
+#define use_syllable_machine_ex_CGJ 6u
#define use_syllable_machine_ex_CMAbv 31u
#define use_syllable_machine_ex_CMBlw 32u
#define use_syllable_machine_ex_CS 43u
@@ -78,7 +78,6 @@ enum use_syllable_type_t {
#define use_syllable_machine_ex_N 4u
#define use_syllable_machine_ex_O 0u
#define use_syllable_machine_ex_R 18u
-#define use_syllable_machine_ex_S 19u
#define use_syllable_machine_ex_SB 51u
#define use_syllable_machine_ex_SE 52u
#define use_syllable_machine_ex_SMAbv 41u
@@ -96,280 +95,278 @@ enum use_syllable_type_t {
#define use_syllable_machine_ex_ZWNJ 14u
-#line 100 "hb-ot-shape-complex-use-machine.hh"
+#line 99 "hb-ot-shape-complex-use-machine.hh"
static const unsigned char _use_syllable_machine_trans_keys[] = {
- 1u, 1u, 1u, 1u, 0u, 51u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u, 23u, 48u,
+ 0u, 51u, 41u, 42u, 42u, 42u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u, 23u, 48u,
24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u, 24u, 48u,
1u, 1u, 24u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u, 22u, 48u,
- 11u, 48u, 1u, 48u, 13u, 13u, 4u, 4u, 11u, 48u, 41u, 42u, 42u, 42u, 11u, 48u,
- 22u, 48u, 23u, 48u, 24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u,
- 24u, 48u, 24u, 48u, 24u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u,
- 22u, 48u, 11u, 48u, 1u, 48u, 1u, 1u, 4u, 4u, 13u, 13u, 1u, 48u, 11u, 48u,
- 41u, 42u, 42u, 42u, 1u, 5u, 50u, 52u, 49u, 52u, 49u, 51u, 0
+ 11u, 48u, 1u, 48u, 13u, 13u, 4u, 4u, 11u, 48u, 11u, 48u, 1u, 1u, 22u, 48u,
+ 23u, 48u, 24u, 47u, 25u, 47u, 26u, 47u, 45u, 46u, 46u, 46u, 24u, 48u, 24u, 48u,
+ 24u, 48u, 1u, 1u, 24u, 48u, 23u, 48u, 23u, 48u, 23u, 48u, 22u, 48u, 22u, 48u,
+ 22u, 48u, 11u, 48u, 1u, 48u, 4u, 4u, 13u, 13u, 1u, 48u, 11u, 48u, 41u, 42u,
+ 42u, 42u, 1u, 5u, 50u, 52u, 49u, 52u, 49u, 51u, 0
};
static const char _use_syllable_machine_key_spans[] = {
- 1, 1, 52, 38, 38, 1, 27, 26,
+ 52, 2, 1, 38, 38, 1, 27, 26,
24, 23, 22, 2, 1, 25, 25, 25,
1, 25, 26, 26, 26, 27, 27, 27,
- 38, 48, 1, 1, 38, 2, 1, 38,
- 27, 26, 24, 23, 22, 2, 1, 25,
- 25, 25, 25, 26, 26, 26, 27, 27,
- 27, 38, 48, 1, 1, 1, 48, 38,
- 2, 1, 5, 3, 4, 3
+ 38, 48, 1, 1, 38, 38, 1, 27,
+ 26, 24, 23, 22, 2, 1, 25, 25,
+ 25, 1, 25, 26, 26, 26, 27, 27,
+ 27, 38, 48, 1, 1, 48, 38, 2,
+ 1, 5, 3, 4, 3
};
static const short _use_syllable_machine_index_offsets[] = {
- 0, 2, 4, 57, 96, 135, 137, 165,
- 192, 217, 241, 264, 267, 269, 295, 321,
- 347, 349, 375, 402, 429, 456, 484, 512,
- 540, 579, 628, 630, 632, 671, 674, 676,
- 715, 743, 770, 795, 819, 842, 845, 847,
- 873, 899, 925, 951, 978, 1005, 1032, 1060,
- 1088, 1116, 1155, 1204, 1206, 1208, 1210, 1259,
- 1298, 1301, 1303, 1309, 1313, 1318
+ 0, 53, 56, 58, 97, 136, 138, 166,
+ 193, 218, 242, 265, 268, 270, 296, 322,
+ 348, 350, 376, 403, 430, 457, 485, 513,
+ 541, 580, 629, 631, 633, 672, 711, 713,
+ 741, 768, 793, 817, 840, 843, 845, 871,
+ 897, 923, 925, 951, 978, 1005, 1032, 1060,
+ 1088, 1116, 1155, 1204, 1206, 1208, 1257, 1296,
+ 1299, 1301, 1307, 1311, 1316
};
static const char _use_syllable_machine_indicies[] = {
- 1, 0, 2, 0, 3, 4, 5, 5,
- 6, 7, 5, 5, 5, 5, 5, 1,
- 8, 9, 5, 5, 5, 5, 10, 11,
- 5, 5, 12, 13, 14, 15, 16, 17,
- 18, 12, 19, 20, 21, 22, 23, 24,
- 5, 25, 26, 27, 5, 28, 29, 30,
- 31, 32, 33, 34, 8, 35, 5, 36,
- 5, 38, 39, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 40, 41, 42, 43,
- 44, 45, 46, 40, 47, 4, 48, 49,
- 50, 51, 37, 52, 53, 54, 37, 37,
- 37, 37, 55, 56, 57, 58, 39, 37,
- 38, 39, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 40, 41, 42, 43, 44,
- 45, 46, 40, 47, 48, 48, 49, 50,
- 51, 37, 52, 53, 54, 37, 37, 37,
- 37, 55, 56, 57, 58, 39, 37, 38,
- 59, 40, 41, 42, 43, 44, 37, 37,
- 37, 37, 37, 37, 49, 50, 51, 37,
- 52, 53, 54, 37, 37, 37, 37, 41,
- 56, 57, 58, 60, 37, 41, 42, 43,
- 44, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 52, 53, 54, 37, 37,
- 37, 37, 37, 56, 57, 58, 60, 37,
- 42, 43, 44, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 56, 57, 58,
- 37, 43, 44, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 56, 57, 58,
- 37, 44, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 56, 57, 58, 37,
- 56, 57, 37, 57, 37, 42, 43, 44,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 52, 53, 54, 37, 37, 37,
- 37, 37, 56, 57, 58, 60, 37, 42,
- 43, 44, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 53, 54, 37,
- 37, 37, 37, 37, 56, 57, 58, 60,
- 37, 42, 43, 44, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 54, 37, 37, 37, 37, 37, 56, 57,
- 58, 60, 37, 62, 61, 42, 43, 44,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 37,
- 37, 37, 56, 57, 58, 60, 37, 41,
- 42, 43, 44, 37, 37, 37, 37, 37,
- 37, 49, 50, 51, 37, 52, 53, 54,
- 37, 37, 37, 37, 41, 56, 57, 58,
- 60, 37, 41, 42, 43, 44, 37, 37,
- 37, 37, 37, 37, 37, 50, 51, 37,
- 52, 53, 54, 37, 37, 37, 37, 41,
- 56, 57, 58, 60, 37, 41, 42, 43,
- 44, 37, 37, 37, 37, 37, 37, 37,
- 37, 51, 37, 52, 53, 54, 37, 37,
- 37, 37, 41, 56, 57, 58, 60, 37,
- 40, 41, 42, 43, 44, 37, 46, 40,
- 37, 37, 37, 49, 50, 51, 37, 52,
- 53, 54, 37, 37, 37, 37, 41, 56,
- 57, 58, 60, 37, 40, 41, 42, 43,
- 44, 37, 37, 40, 37, 37, 37, 49,
- 50, 51, 37, 52, 53, 54, 37, 37,
- 37, 37, 41, 56, 57, 58, 60, 37,
- 40, 41, 42, 43, 44, 45, 46, 40,
- 37, 37, 37, 49, 50, 51, 37, 52,
- 53, 54, 37, 37, 37, 37, 41, 56,
- 57, 58, 60, 37, 38, 39, 37, 37,
- 37, 37, 37, 37, 37, 37, 37, 40,
- 41, 42, 43, 44, 45, 46, 40, 47,
- 37, 48, 49, 50, 51, 37, 52, 53,
- 54, 37, 37, 37, 37, 55, 56, 57,
- 58, 39, 37, 38, 59, 59, 59, 59,
- 59, 59, 59, 59, 59, 59, 59, 59,
- 59, 59, 59, 59, 59, 59, 59, 59,
- 59, 41, 42, 43, 44, 59, 59, 59,
- 59, 59, 59, 59, 59, 59, 59, 52,
- 53, 54, 59, 59, 59, 59, 59, 56,
- 57, 58, 60, 59, 64, 63, 6, 65,
- 38, 39, 37, 37, 37, 37, 37, 37,
- 37, 37, 37, 40, 41, 42, 43, 44,
- 45, 46, 40, 47, 4, 48, 49, 50,
- 51, 37, 52, 53, 54, 37, 11, 66,
- 37, 55, 56, 57, 58, 39, 37, 11,
- 66, 67, 66, 67, 1, 69, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 12,
- 13, 14, 15, 16, 17, 18, 12, 19,
- 21, 21, 22, 23, 24, 68, 25, 26,
- 27, 68, 68, 68, 68, 31, 32, 33,
- 34, 69, 68, 12, 13, 14, 15, 16,
- 68, 68, 68, 68, 68, 68, 22, 23,
- 24, 68, 25, 26, 27, 68, 68, 68,
- 68, 13, 32, 33, 34, 70, 68, 13,
- 14, 15, 16, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 25, 26, 27,
- 68, 68, 68, 68, 68, 32, 33, 34,
- 70, 68, 14, 15, 16, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 32,
- 33, 34, 68, 15, 16, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 32,
- 33, 34, 68, 16, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 32, 33,
- 34, 68, 32, 33, 68, 33, 68, 14,
- 15, 16, 68, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 25, 26, 27, 68,
- 68, 68, 68, 68, 32, 33, 34, 70,
- 68, 14, 15, 16, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 26,
- 27, 68, 68, 68, 68, 68, 32, 33,
- 34, 70, 68, 14, 15, 16, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 27, 68, 68, 68, 68, 68,
- 32, 33, 34, 70, 68, 14, 15, 16,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 32, 33, 34, 70, 68, 13,
- 14, 15, 16, 68, 68, 68, 68, 68,
- 68, 22, 23, 24, 68, 25, 26, 27,
- 68, 68, 68, 68, 13, 32, 33, 34,
- 70, 68, 13, 14, 15, 16, 68, 68,
- 68, 68, 68, 68, 68, 23, 24, 68,
- 25, 26, 27, 68, 68, 68, 68, 13,
- 32, 33, 34, 70, 68, 13, 14, 15,
- 16, 68, 68, 68, 68, 68, 68, 68,
- 68, 24, 68, 25, 26, 27, 68, 68,
- 68, 68, 13, 32, 33, 34, 70, 68,
- 12, 13, 14, 15, 16, 68, 18, 12,
- 68, 68, 68, 22, 23, 24, 68, 25,
- 26, 27, 68, 68, 68, 68, 13, 32,
- 33, 34, 70, 68, 12, 13, 14, 15,
- 16, 68, 68, 12, 68, 68, 68, 22,
- 23, 24, 68, 25, 26, 27, 68, 68,
- 68, 68, 13, 32, 33, 34, 70, 68,
- 12, 13, 14, 15, 16, 17, 18, 12,
- 68, 68, 68, 22, 23, 24, 68, 25,
- 26, 27, 68, 68, 68, 68, 13, 32,
- 33, 34, 70, 68, 1, 69, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 12,
- 13, 14, 15, 16, 17, 18, 12, 19,
- 68, 21, 22, 23, 24, 68, 25, 26,
- 27, 68, 68, 68, 68, 31, 32, 33,
- 34, 69, 68, 1, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 68,
- 68, 13, 14, 15, 16, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 68, 25,
- 26, 27, 68, 68, 68, 68, 68, 32,
- 33, 34, 70, 68, 1, 71, 72, 68,
- 9, 68, 4, 68, 68, 68, 4, 68,
- 68, 68, 68, 68, 1, 69, 9, 68,
- 68, 68, 68, 68, 68, 68, 68, 12,
- 13, 14, 15, 16, 17, 18, 12, 19,
- 20, 21, 22, 23, 24, 68, 25, 26,
- 27, 68, 28, 29, 68, 31, 32, 33,
- 34, 69, 68, 1, 69, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 12, 13,
- 14, 15, 16, 17, 18, 12, 19, 20,
- 21, 22, 23, 24, 68, 25, 26, 27,
- 68, 68, 68, 68, 31, 32, 33, 34,
- 69, 68, 28, 29, 68, 29, 68, 4,
- 71, 71, 71, 4, 71, 74, 73, 35,
- 73, 35, 74, 73, 74, 73, 35, 73,
- 36, 73, 0
+ 0, 1, 2, 2, 3, 4, 2, 2,
+ 2, 2, 2, 5, 6, 7, 2, 2,
+ 2, 2, 8, 2, 2, 2, 9, 10,
+ 11, 12, 13, 14, 15, 9, 16, 17,
+ 18, 19, 20, 21, 2, 22, 23, 24,
+ 2, 25, 26, 27, 28, 29, 30, 31,
+ 6, 32, 2, 33, 2, 0, 35, 34,
+ 35, 34, 37, 38, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 39, 40, 41,
+ 42, 43, 44, 45, 39, 46, 1, 47,
+ 48, 49, 50, 36, 51, 52, 53, 36,
+ 36, 36, 36, 54, 55, 56, 57, 38,
+ 36, 37, 38, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 39, 40, 41, 42,
+ 43, 44, 45, 39, 46, 47, 47, 48,
+ 49, 50, 36, 51, 52, 53, 36, 36,
+ 36, 36, 54, 55, 56, 57, 38, 36,
+ 37, 58, 39, 40, 41, 42, 43, 36,
+ 36, 36, 36, 36, 36, 48, 49, 50,
+ 36, 51, 52, 53, 36, 36, 36, 36,
+ 40, 55, 56, 57, 59, 36, 40, 41,
+ 42, 43, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 51, 52, 53, 36,
+ 36, 36, 36, 36, 55, 56, 57, 59,
+ 36, 41, 42, 43, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 55, 56,
+ 57, 36, 42, 43, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 55, 56,
+ 57, 36, 43, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 55, 56, 57,
+ 36, 55, 56, 36, 56, 36, 41, 42,
+ 43, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 51, 52, 53, 36, 36,
+ 36, 36, 36, 55, 56, 57, 59, 36,
+ 41, 42, 43, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 52, 53,
+ 36, 36, 36, 36, 36, 55, 56, 57,
+ 59, 36, 41, 42, 43, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 53, 36, 36, 36, 36, 36, 55,
+ 56, 57, 59, 36, 61, 60, 41, 42,
+ 43, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 36, 36, 36, 55, 56, 57, 59, 36,
+ 40, 41, 42, 43, 36, 36, 36, 36,
+ 36, 36, 48, 49, 50, 36, 51, 52,
+ 53, 36, 36, 36, 36, 40, 55, 56,
+ 57, 59, 36, 40, 41, 42, 43, 36,
+ 36, 36, 36, 36, 36, 36, 49, 50,
+ 36, 51, 52, 53, 36, 36, 36, 36,
+ 40, 55, 56, 57, 59, 36, 40, 41,
+ 42, 43, 36, 36, 36, 36, 36, 36,
+ 36, 36, 50, 36, 51, 52, 53, 36,
+ 36, 36, 36, 40, 55, 56, 57, 59,
+ 36, 39, 40, 41, 42, 43, 36, 45,
+ 39, 36, 36, 36, 48, 49, 50, 36,
+ 51, 52, 53, 36, 36, 36, 36, 40,
+ 55, 56, 57, 59, 36, 39, 40, 41,
+ 42, 43, 36, 36, 39, 36, 36, 36,
+ 48, 49, 50, 36, 51, 52, 53, 36,
+ 36, 36, 36, 40, 55, 56, 57, 59,
+ 36, 39, 40, 41, 42, 43, 44, 45,
+ 39, 36, 36, 36, 48, 49, 50, 36,
+ 51, 52, 53, 36, 36, 36, 36, 40,
+ 55, 56, 57, 59, 36, 37, 38, 36,
+ 36, 36, 36, 36, 36, 36, 36, 36,
+ 39, 40, 41, 42, 43, 44, 45, 39,
+ 46, 36, 47, 48, 49, 50, 36, 51,
+ 52, 53, 36, 36, 36, 36, 54, 55,
+ 56, 57, 38, 36, 37, 58, 58, 58,
+ 58, 58, 58, 58, 58, 58, 58, 58,
+ 58, 58, 58, 58, 58, 58, 58, 58,
+ 58, 58, 40, 41, 42, 43, 58, 58,
+ 58, 58, 58, 58, 58, 58, 58, 58,
+ 51, 52, 53, 58, 58, 58, 58, 58,
+ 55, 56, 57, 59, 58, 63, 62, 3,
+ 64, 37, 38, 36, 36, 36, 36, 36,
+ 36, 36, 36, 36, 39, 40, 41, 42,
+ 43, 44, 45, 39, 46, 1, 47, 48,
+ 49, 50, 36, 51, 52, 53, 36, 0,
+ 35, 36, 54, 55, 56, 57, 38, 36,
+ 5, 6, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 9, 10, 11, 12, 13,
+ 14, 15, 9, 16, 18, 18, 19, 20,
+ 21, 65, 22, 23, 24, 65, 65, 65,
+ 65, 28, 29, 30, 31, 6, 65, 5,
+ 65, 9, 10, 11, 12, 13, 65, 65,
+ 65, 65, 65, 65, 19, 20, 21, 65,
+ 22, 23, 24, 65, 65, 65, 65, 10,
+ 29, 30, 31, 66, 65, 10, 11, 12,
+ 13, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 22, 23, 24, 65, 65,
+ 65, 65, 65, 29, 30, 31, 66, 65,
+ 11, 12, 13, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 29, 30, 31,
+ 65, 12, 13, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 29, 30, 31,
+ 65, 13, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 29, 30, 31, 65,
+ 29, 30, 65, 30, 65, 11, 12, 13,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 22, 23, 24, 65, 65, 65,
+ 65, 65, 29, 30, 31, 66, 65, 11,
+ 12, 13, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 23, 24, 65,
+ 65, 65, 65, 65, 29, 30, 31, 66,
+ 65, 11, 12, 13, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 24, 65, 65, 65, 65, 65, 29, 30,
+ 31, 66, 65, 67, 65, 11, 12, 13,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 29, 30, 31, 66, 65, 10,
+ 11, 12, 13, 65, 65, 65, 65, 65,
+ 65, 19, 20, 21, 65, 22, 23, 24,
+ 65, 65, 65, 65, 10, 29, 30, 31,
+ 66, 65, 10, 11, 12, 13, 65, 65,
+ 65, 65, 65, 65, 65, 20, 21, 65,
+ 22, 23, 24, 65, 65, 65, 65, 10,
+ 29, 30, 31, 66, 65, 10, 11, 12,
+ 13, 65, 65, 65, 65, 65, 65, 65,
+ 65, 21, 65, 22, 23, 24, 65, 65,
+ 65, 65, 10, 29, 30, 31, 66, 65,
+ 9, 10, 11, 12, 13, 65, 15, 9,
+ 65, 65, 65, 19, 20, 21, 65, 22,
+ 23, 24, 65, 65, 65, 65, 10, 29,
+ 30, 31, 66, 65, 9, 10, 11, 12,
+ 13, 65, 65, 9, 65, 65, 65, 19,
+ 20, 21, 65, 22, 23, 24, 65, 65,
+ 65, 65, 10, 29, 30, 31, 66, 65,
+ 9, 10, 11, 12, 13, 14, 15, 9,
+ 65, 65, 65, 19, 20, 21, 65, 22,
+ 23, 24, 65, 65, 65, 65, 10, 29,
+ 30, 31, 66, 65, 5, 6, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 9,
+ 10, 11, 12, 13, 14, 15, 9, 16,
+ 65, 18, 19, 20, 21, 65, 22, 23,
+ 24, 65, 65, 65, 65, 28, 29, 30,
+ 31, 6, 65, 5, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 65,
+ 65, 10, 11, 12, 13, 65, 65, 65,
+ 65, 65, 65, 65, 65, 65, 65, 22,
+ 23, 24, 65, 65, 65, 65, 65, 29,
+ 30, 31, 66, 65, 68, 65, 7, 65,
+ 1, 65, 65, 65, 1, 65, 65, 65,
+ 65, 65, 5, 6, 7, 65, 65, 65,
+ 65, 65, 65, 65, 65, 9, 10, 11,
+ 12, 13, 14, 15, 9, 16, 17, 18,
+ 19, 20, 21, 65, 22, 23, 24, 65,
+ 25, 26, 65, 28, 29, 30, 31, 6,
+ 65, 5, 6, 65, 65, 65, 65, 65,
+ 65, 65, 65, 65, 9, 10, 11, 12,
+ 13, 14, 15, 9, 16, 17, 18, 19,
+ 20, 21, 65, 22, 23, 24, 65, 65,
+ 65, 65, 28, 29, 30, 31, 6, 65,
+ 25, 26, 65, 26, 65, 1, 69, 69,
+ 69, 1, 69, 71, 70, 32, 70, 32,
+ 71, 70, 71, 70, 32, 70, 33, 70,
+ 0
};
static const char _use_syllable_machine_trans_targs[] = {
- 2, 31, 42, 2, 3, 2, 26, 28,
- 51, 52, 54, 29, 32, 33, 34, 35,
- 36, 46, 47, 48, 55, 49, 43, 44,
- 45, 39, 40, 41, 56, 57, 58, 50,
- 37, 38, 2, 59, 61, 2, 4, 5,
- 6, 7, 8, 9, 10, 21, 22, 23,
- 24, 18, 19, 20, 13, 14, 15, 25,
- 11, 12, 2, 2, 16, 2, 17, 2,
- 27, 2, 30, 2, 2, 0, 1, 2,
- 53, 2, 60
+ 1, 3, 0, 26, 28, 29, 30, 51,
+ 53, 31, 32, 33, 34, 35, 46, 47,
+ 48, 54, 49, 43, 44, 45, 38, 39,
+ 40, 55, 56, 57, 50, 36, 37, 0,
+ 58, 60, 0, 2, 0, 4, 5, 6,
+ 7, 8, 9, 10, 21, 22, 23, 24,
+ 18, 19, 20, 13, 14, 15, 25, 11,
+ 12, 0, 0, 16, 0, 17, 0, 27,
+ 0, 0, 41, 42, 52, 0, 0, 59
};
static const char _use_syllable_machine_trans_actions[] = {
- 1, 2, 2, 5, 0, 6, 0, 0,
- 0, 0, 2, 0, 2, 2, 0, 0,
- 0, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 0, 0, 0, 2,
- 0, 0, 7, 0, 0, 8, 0, 0,
+ 0, 0, 3, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 9, 10, 0, 11, 0, 12,
- 0, 13, 0, 14, 15, 0, 0, 16,
- 0, 17, 0
+ 0, 0, 0, 0, 0, 0, 0, 4,
+ 0, 0, 5, 0, 6, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 7, 8, 0, 9, 0, 10, 0,
+ 11, 12, 0, 0, 0, 13, 14, 0
};
static const char _use_syllable_machine_to_state_actions[] = {
- 0, 0, 3, 0, 0, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0
+ 0, 0, 0, 0, 0
};
static const char _use_syllable_machine_from_state_actions[] = {
- 0, 0, 4, 0, 0, 0, 0, 0,
+ 2, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0
+ 0, 0, 0, 0, 0
};
static const short _use_syllable_machine_eof_trans[] = {
- 1, 1, 0, 38, 38, 60, 38, 38,
- 38, 38, 38, 38, 38, 38, 38, 38,
- 62, 38, 38, 38, 38, 38, 38, 38,
- 38, 60, 64, 66, 38, 68, 68, 69,
- 69, 69, 69, 69, 69, 69, 69, 69,
- 69, 69, 69, 69, 69, 69, 69, 69,
- 69, 69, 69, 72, 69, 69, 69, 69,
- 69, 69, 72, 74, 74, 74
+ 0, 35, 35, 37, 37, 59, 37, 37,
+ 37, 37, 37, 37, 37, 37, 37, 37,
+ 61, 37, 37, 37, 37, 37, 37, 37,
+ 37, 59, 63, 65, 37, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 66, 66, 66, 66, 66, 66, 66,
+ 66, 70, 71, 71, 71
};
-static const int use_syllable_machine_start = 2;
-static const int use_syllable_machine_first_final = 2;
+static const int use_syllable_machine_start = 0;
+static const int use_syllable_machine_first_final = 0;
static const int use_syllable_machine_error = -1;
-static const int use_syllable_machine_en_main = 2;
+static const int use_syllable_machine_en_main = 0;
-#line 59 "hb-ot-shape-complex-use-machine.rl"
+#line 58 "hb-ot-shape-complex-use-machine.rl"
-#line 176 "hb-ot-shape-complex-use-machine.rl"
+#line 179 "hb-ot-shape-complex-use-machine.rl"
#define found_syllable(syllable_type) \
@@ -422,8 +419,8 @@ HB_FUNCOBJ (machine_index);
static bool
-not_standard_default_ignorable (const hb_glyph_info_t &i)
-{ return !(i.use_category() == USE(O) && _hb_glyph_info_is_default_ignorable (&i)); }
+not_ccs_default_ignorable (const hb_glyph_info_t &i)
+{ return !(i.use_category() == USE(CGJ) && _hb_glyph_info_is_default_ignorable (&i)); }
static inline void
find_syllables_use (hb_buffer_t *buffer)
@@ -432,13 +429,13 @@ find_syllables_use (hb_buffer_t *buffer)
auto p =
+ hb_iter (info, buffer->len)
| hb_enumerate
- | hb_filter ([] (const hb_glyph_info_t &i) { return not_standard_default_ignorable (i); },
+ | hb_filter ([] (const hb_glyph_info_t &i) { return not_ccs_default_ignorable (i); },
hb_second)
| hb_filter ([&] (const hb_pair_t<unsigned, const hb_glyph_info_t &> p)
{
if (p.second.use_category() == USE(ZWNJ))
for (unsigned i = p.first + 1; i < buffer->len; ++i)
- if (not_standard_default_ignorable (info[i]))
+ if (not_ccs_default_ignorable (info[i]))
return !_hb_glyph_info_is_unicode_mark (&info[i]);
return true;
})
@@ -452,7 +449,7 @@ find_syllables_use (hb_buffer_t *buffer)
unsigned int act HB_UNUSED;
int cs;
-#line 456 "hb-ot-shape-complex-use-machine.hh"
+#line 453 "hb-ot-shape-complex-use-machine.hh"
{
cs = use_syllable_machine_start;
ts = 0;
@@ -460,12 +457,12 @@ find_syllables_use (hb_buffer_t *buffer)
act = 0;
}
-#line 260 "hb-ot-shape-complex-use-machine.rl"
+#line 263 "hb-ot-shape-complex-use-machine.rl"
unsigned int syllable_serial = 1;
-#line 469 "hb-ot-shape-complex-use-machine.hh"
+#line 466 "hb-ot-shape-complex-use-machine.hh"
{
int _slen;
int _trans;
@@ -475,11 +472,11 @@ find_syllables_use (hb_buffer_t *buffer)
goto _test_eof;
_resume:
switch ( _use_syllable_machine_from_state_actions[cs] ) {
- case 4:
+ case 2:
#line 1 "NONE"
{ts = p;}
break;
-#line 483 "hb-ot-shape-complex-use-machine.hh"
+#line 480 "hb-ot-shape-complex-use-machine.hh"
}
_keys = _use_syllable_machine_trans_keys + (cs<<1);
@@ -497,76 +494,64 @@ _eof_trans:
goto _again;
switch ( _use_syllable_machine_trans_actions[_trans] ) {
- case 2:
-#line 1 "NONE"
- {te = p+1;}
- break;
- case 5:
-#line 163 "hb-ot-shape-complex-use-machine.rl"
- {te = p+1;{ found_syllable (use_independent_cluster); }}
- break;
- case 9:
-#line 166 "hb-ot-shape-complex-use-machine.rl"
+ case 7:
+#line 169 "hb-ot-shape-complex-use-machine.rl"
{te = p+1;{ found_syllable (use_standard_cluster); }}
break;
- case 7:
-#line 171 "hb-ot-shape-complex-use-machine.rl"
+ case 4:
+#line 174 "hb-ot-shape-complex-use-machine.rl"
{te = p+1;{ found_syllable (use_broken_cluster); }}
break;
- case 6:
-#line 172 "hb-ot-shape-complex-use-machine.rl"
+ case 3:
+#line 175 "hb-ot-shape-complex-use-machine.rl"
{te = p+1;{ found_syllable (use_non_cluster); }}
break;
- case 10:
-#line 164 "hb-ot-shape-complex-use-machine.rl"
+ case 8:
+#line 167 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_virama_terminated_cluster); }}
break;
- case 11:
-#line 165 "hb-ot-shape-complex-use-machine.rl"
+ case 9:
+#line 168 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_sakot_terminated_cluster); }}
break;
- case 8:
-#line 166 "hb-ot-shape-complex-use-machine.rl"
+ case 6:
+#line 169 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_standard_cluster); }}
break;
- case 13:
-#line 167 "hb-ot-shape-complex-use-machine.rl"
+ case 11:
+#line 170 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_number_joiner_terminated_cluster); }}
break;
- case 12:
-#line 168 "hb-ot-shape-complex-use-machine.rl"
+ case 10:
+#line 171 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_numeral_cluster); }}
break;
- case 14:
-#line 169 "hb-ot-shape-complex-use-machine.rl"
+ case 5:
+#line 172 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_symbol_cluster); }}
break;
- case 17:
-#line 170 "hb-ot-shape-complex-use-machine.rl"
+ case 14:
+#line 173 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_hieroglyph_cluster); }}
break;
- case 15:
-#line 171 "hb-ot-shape-complex-use-machine.rl"
+ case 12:
+#line 174 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_broken_cluster); }}
break;
- case 16:
-#line 172 "hb-ot-shape-complex-use-machine.rl"
+ case 13:
+#line 175 "hb-ot-shape-complex-use-machine.rl"
{te = p;p--;{ found_syllable (use_non_cluster); }}
break;
- case 1:
-#line 171 "hb-ot-shape-complex-use-machine.rl"
- {{p = ((te))-1;}{ found_syllable (use_broken_cluster); }}
- break;
-#line 561 "hb-ot-shape-complex-use-machine.hh"
+#line 546 "hb-ot-shape-complex-use-machine.hh"
}
_again:
switch ( _use_syllable_machine_to_state_actions[cs] ) {
- case 3:
+ case 1:
#line 1 "NONE"
{ts = 0;}
break;
-#line 570 "hb-ot-shape-complex-use-machine.hh"
+#line 555 "hb-ot-shape-complex-use-machine.hh"
}
if ( ++p != pe )
@@ -582,7 +567,7 @@ _again:
}
-#line 265 "hb-ot-shape-complex-use-machine.rl"
+#line 268 "hb-ot-shape-complex-use-machine.rl"
}
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-table.hh b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-table.hh
index 7903a0ef89..7a3a995c8c 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use-table.hh
@@ -2,7 +2,7 @@
/*
* The following table is generated by running:
*
- * ./gen-use-table.py IndicSyllabicCategory.txt IndicPositionalCategory.txt UnicodeData.txt ArabicShaping.txt Blocks.txt IndicSyllabicCategory-Additional.txt IndicPositionalCategory-Additional.txt
+ * ./gen-use-table.py IndicSyllabicCategory.txt IndicPositionalCategory.txt ArabicShaping.txt DerivedCoreProperties.txt UnicodeData.txt Blocks.txt Scripts.txt IndicSyllabicCategory-Additional.txt IndicPositionalCategory-Additional.txt
*
* on files with these headers:
*
@@ -12,22 +12,28 @@
* # Date: 2021-05-22, 01:01:00 GMT [KW, RP]
* # ArabicShaping-14.0.0.txt
* # Date: 2021-05-21, 01:54:00 GMT [KW, RP]
+ * # DerivedCoreProperties-14.0.0.txt
+ * # Date: 2021-08-12, 23:12:53 GMT
* # Blocks-14.0.0.txt
* # Date: 2021-01-22, 23:29:00 GMT [KW]
+ * # Scripts-14.0.0.txt
+ * # Date: 2021-07-10, 00:35:31 GMT
* # Override values For Indic_Syllabic_Category
* # Not derivable
* # Initial version based on Unicode 7.0 by Andrew Glass 2014-03-17
- * # Updated for Unicode 10.0 by Andrew Glass 2017-07-25
- * # Updated for Unicode 12.1 by Andrew Glass 2019-05-24
- * # Updated for Unicode 13.0 by Andrew Glass 2020-07-28
+ * # Updated for Unicode 10.0 by Andrew Glass 2017-07-25
+ * # Updated for Unicode 12.1 by Andrew Glass 2019-05-24
+ * # Updated for Unicode 13.0 by Andrew Glass 2020-07-28
+ * # Updated for Unicode 14.0 by Andrew Glass 2021-09-25
* # Override values For Indic_Positional_Category
* # Not derivable
* # Initial version based on Unicode 7.0 by Andrew Glass 2014-03-17
- * # Updated for Unicode 10.0 by Andrew Glass 2017-07-25
+ * # Updated for Unicode 10.0 by Andrew Glass 2017-07-25
* # Ammended for Unicode 10.0 by Andrew Glass 2018-09-21
- * # Updated for L2/19-083 by Andrew Glass 2019-05-06
- * # Updated for Unicode 12.1 by Andrew Glass 2019-05-30
- * # Updated for Unicode 13.0 by Andrew Glass 2020-07-28
+ * # Updated for L2/19-083 by Andrew Glass 2019-05-06
+ * # Updated for Unicode 12.1 by Andrew Glass 2019-05-30
+ * # Updated for Unicode 13.0 by Andrew Glass 2020-07-28
+ * # Updated for Unicode 14.0 by Andrew Glass 2021-09-28
* UnicodeData.txt does not have a header.
*/
@@ -41,6 +47,7 @@
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-macros"
#define B USE(B) /* BASE */
+#define CGJ USE(CGJ) /* CGJ */
#define CS USE(CS) /* CONS_WITH_STACKER */
#define G USE(G) /* HIEROGLYPH */
#define GB USE(GB) /* BASE_OTHER */
@@ -51,7 +58,6 @@
#define N USE(N) /* BASE_NUM */
#define O USE(O) /* OTHER */
#define R USE(R) /* REPHA */
-#define S USE(S) /* SYM */
#define SB USE(SB) /* HIEROGLYPH_SEGMENT_BEGIN */
#define SE USE(SE) /* HIEROGLYPH_SEGMENT_END */
#define SUB USE(SUB) /* CONS_SUB */
@@ -101,14 +107,20 @@ static const uint8_t use_table[] = {
/* 00C0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
/* 00D0 */ O, O, O, O, O, O, O, GB,
-#define use_offset_0x0640u 80
+#define use_offset_0x0348u 80
+
+
+ /* Combining Diacritical Marks */
+ O, O, O, O, O, O, O, CGJ,
+
+#define use_offset_0x0640u 88
/* Arabic */
/* 0640 */ B, O, O, O, O, O, O, O,
-#define use_offset_0x07c8u 88
+#define use_offset_0x07c8u 96
/* NKo */
@@ -117,7 +129,7 @@ static const uint8_t use_table[] = {
/* 07E0 */ B, B, B, B, B, B, B, B, B, B, B, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv,
/* 07F0 */ VMAbv, VMAbv, VMAbv, VMAbv, O, O, O, O, O, O, B, O, O, VMAbv, O, O,
-#define use_offset_0x0840u 144
+#define use_offset_0x0840u 152
/* Mandaic */
@@ -125,7 +137,7 @@ static const uint8_t use_table[] = {
/* 0840 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 0850 */ B, B, B, B, B, B, B, B, B, CMBlw, CMBlw, CMBlw, O, O, O, O,
-#define use_offset_0x0900u 176
+#define use_offset_0x0900u 184
/* Devanagari */
@@ -238,7 +250,7 @@ static const uint8_t use_table[] = {
/* 0DE0 */ O, O, O, O, O, O, B, B, B, B, B, B, B, B, B, B,
/* 0DF0 */ O, O, VPst, VPst, O, O, O, O,
-#define use_offset_0x0f00u 1448
+#define use_offset_0x0f00u 1456
/* Tibetan */
@@ -257,7 +269,7 @@ static const uint8_t use_table[] = {
/* 0FB0 */ SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, O, O, O,
/* 0FC0 */ O, O, O, O, O, O, FBlw, O,
-#define use_offset_0x1000u 1648
+#define use_offset_0x1000u 1656
/* Myanmar */
@@ -273,7 +285,7 @@ static const uint8_t use_table[] = {
/* 1080 */ B, B, MBlw, VPst, VPre, VAbv, VAbv, VMPst, VMPst, VMPst, VMPst, VMPst, VMPst, VMBlw, B, VMPst,
/* 1090 */ B, B, B, B, B, B, B, B, B, B, VMPst, VMPst, VPst, VAbv, O, O,
-#define use_offset_0x1700u 1808
+#define use_offset_0x1700u 1816
/* Tagalog */
@@ -301,7 +313,7 @@ static const uint8_t use_table[] = {
/* 1780 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 1790 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 17A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
- /* 17B0 */ B, B, B, B, O, O, VPst, VAbv, VAbv, VAbv, VAbv, VBlw, VBlw, VBlw, VPre, VPre,
+ /* 17B0 */ B, B, B, B, CGJ, CGJ, VPst, VAbv, VAbv, VAbv, VAbv, VBlw, VBlw, VBlw, VPre, VPre,
/* 17C0 */ VPre, VPre, VPre, VPre, VPre, VPre, VMAbv, VMPst, VPst, VMAbv, VMAbv, FMAbv, FAbv, CMAbv, FMAbv, VMAbv,
/* 17D0 */ FMAbv, VAbv, H, FMAbv, O, O, O, O, O, O, O, O, B, FMAbv, O, O,
/* 17E0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
@@ -309,7 +321,7 @@ static const uint8_t use_table[] = {
/* Mongolian */
- /* 1800 */ B, O, O, O, O, O, O, B, O, O, B, O, O, O, O, O,
+ /* 1800 */ B, O, O, O, O, O, O, B, O, O, B, CGJ, CGJ, CGJ, O, CGJ,
/* 1810 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
/* 1820 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 1830 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
@@ -321,7 +333,7 @@ static const uint8_t use_table[] = {
/* 1890 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 18A0 */ B, B, B, B, B, B, B, B, B, CMBlw, B, O, O, O, O, O,
-#define use_offset_0x1900u 2240
+#define use_offset_0x1900u 2248
/* Limbu */
@@ -365,7 +377,7 @@ static const uint8_t use_table[] = {
/* 1A80 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
/* 1A90 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x1b00u 2656
+#define use_offset_0x1b00u 2664
/* Balinese */
@@ -376,7 +388,7 @@ static const uint8_t use_table[] = {
/* 1B30 */ B, B, B, B, CMAbv, VPst, VAbv, VAbv, VBlw, VBlw, VBlw, VBlw, VAbv, VAbv, VPre, VPre,
/* 1B40 */ VPre, VPre, VAbv, VAbv, H, B, B, B, B, B, B, B, B, O, O, O,
/* 1B50 */ B, B, B, B, B, B, B, B, B, B, O, GB, GB, O, O, GB,
- /* 1B60 */ O, S, GB, S, S, S, S, S, GB, S, S, SMAbv, SMBlw, SMAbv, SMAbv, SMAbv,
+ /* 1B60 */ O, O, GB, O, O, O, O, O, GB, O, O, SMAbv, SMBlw, SMAbv, SMAbv, SMAbv,
/* 1B70 */ SMAbv, SMAbv, SMAbv, SMAbv, O, O, O, O, O, O, O, O, O, O, O, O,
/* Sundanese */
@@ -401,7 +413,7 @@ static const uint8_t use_table[] = {
/* 1C30 */ FAbv, FAbv, FAbv, FAbv, VMPre, VMPre, FMAbv, CMBlw, O, O, O, O, O, O, O, O,
/* 1C40 */ B, B, B, B, B, B, B, B, B, B, O, O, O, B, B, B,
-#define use_offset_0x1cd0u 2992
+#define use_offset_0x1cd0u 3000
/* Vedic Extensions */
@@ -410,20 +422,20 @@ static const uint8_t use_table[] = {
/* 1CE0 */ VMAbv, VMPst, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, O, O, O, O, VMBlw, O, O,
/* 1CF0 */ O, O, O, O, VMAbv, CS, CS, VMPst, VMAbv, VMAbv, GB, O, O, O, O, O,
-#define use_offset_0x1df8u 3040
+#define use_offset_0x1df8u 3048
/* Combining Diacritical Marks Supplement */
O, O, O, FMAbv, O, O, O, O,
-#define use_offset_0x2008u 3048
+#define use_offset_0x2008u 3056
/* General Punctuation */
- O, O, O, O, ZWNJ, O, O, O,
+ O, O, O, O, ZWNJ, CGJ, O, O,
/* 2010 */ GB, GB, GB, GB, GB, O, O, O,
-#define use_offset_0x2070u 3064
+#define use_offset_0x2070u 3072
/* Superscripts and Subscripts */
@@ -431,20 +443,20 @@ static const uint8_t use_table[] = {
/* 2070 */ O, O, O, O, FMPst, O, O, O, O, O, O, O, O, O, O, O,
/* 2080 */ O, O, FMPst, FMPst, FMPst, O, O, O,
-#define use_offset_0x20f0u 3088
+#define use_offset_0x20f0u 3096
/* Combining Diacritical Marks for Symbols */
/* 20F0 */ VMAbv, O, O, O, O, O, O, O,
-#define use_offset_0x25c8u 3096
+#define use_offset_0x25c8u 3104
/* Geometric Shapes */
O, O, O, O, B, O, O, O,
-#define use_offset_0x2d30u 3104
+#define use_offset_0x2d30u 3112
/* Tifinagh */
@@ -455,7 +467,7 @@ static const uint8_t use_table[] = {
/* 2D60 */ B, B, B, B, B, B, B, B, O, O, O, O, O, O, O, B,
/* 2D70 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, H,
-#define use_offset_0xa800u 3184
+#define use_offset_0xa800u 3192
/* Syloti Nagri */
@@ -542,7 +554,7 @@ static const uint8_t use_table[] = {
/* AAE0 */ B, B, B, B, B, B, B, B, B, B, B, VPre, VBlw, VAbv, VPre, VPst,
/* AAF0 */ O, O, O, O, O, VMPst, H, O,
-#define use_offset_0xabc0u 3944
+#define use_offset_0xabc0u 3952
/* Meetei Mayek */
@@ -552,7 +564,25 @@ static const uint8_t use_table[] = {
/* ABE0 */ B, B, B, VPst, VPst, VAbv, VPst, VPst, VBlw, VPst, VPst, O, VMPst, VBlw, O, O,
/* ABF0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x10a00u 4008
+#define use_offset_0xfe00u 4016
+
+
+ /* Variation Selectors */
+
+ /* FE00 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+
+#define use_offset_0x10570u 4032
+
+
+ /* Vithkuqi */
+
+ /* 10570 */ B, B, B, B, B, B, B, B, B, B, B, O, B, B, B, B,
+ /* 10580 */ B, B, B, B, B, B, B, B, B, B, B, O, B, B, B, B,
+ /* 10590 */ B, B, B, O, B, B, O, B, B, B, B, B, B, B, B, B,
+ /* 105A0 */ B, B, O, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 105B0 */ B, B, O, B, B, B, B, B, B, B, O, B, B, O, O, O,
+
+#define use_offset_0x10a00u 4112
/* Kharoshthi */
@@ -563,16 +593,16 @@ static const uint8_t use_table[] = {
/* 10A30 */ B, B, B, B, B, B, O, O, CMAbv, CMBlw, CMBlw, O, O, O, O, H,
/* 10A40 */ B, B, B, B, B, B, B, B, B, O, O, O, O, O, O, O,
-#define use_offset_0x10ac0u 4088
+#define use_offset_0x10ac0u 4192
/* Manichaean */
/* 10AC0 */ B, B, B, B, B, B, B, B, O, B, B, B, B, B, B, B,
/* 10AD0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
- /* 10AE0 */ B, B, B, B, B, CMBlw, CMBlw, O,
+ /* 10AE0 */ B, B, B, B, B, CMBlw, CMBlw, O, O, O, O, B, B, B, B, B,
-#define use_offset_0x10b80u 4128
+#define use_offset_0x10b80u 4240
/* Psalter Pahlavi */
@@ -581,7 +611,7 @@ static const uint8_t use_table[] = {
/* 10B90 */ B, B, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
/* 10BA0 */ O, O, O, O, O, O, O, O, O, B, B, B, B, B, B, O,
-#define use_offset_0x10d00u 4176
+#define use_offset_0x10d00u 4288
/* Hanifi Rohingya */
@@ -591,7 +621,7 @@ static const uint8_t use_table[] = {
/* 10D20 */ B, B, B, B, VMAbv, VMAbv, VMAbv, CMAbv, O, O, O, O, O, O, O, O,
/* 10D30 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x10e80u 4240
+#define use_offset_0x10e80u 4352
/* Yezidi */
@@ -601,17 +631,22 @@ static const uint8_t use_table[] = {
/* 10EA0 */ B, B, B, B, B, B, B, B, B, B, O, VAbv, VAbv, O, O, O,
/* 10EB0 */ B, B, O, O, O, O, O, O,
-#define use_offset_0x10f30u 4296
+#define use_offset_0x10f30u 4408
/* Sogdian */
/* 10F30 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 10F40 */ B, B, B, B, B, B, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw, VMBlw,
- /* 10F50 */ VMBlw, B, B, B, B, O, O, O,
+ /* 10F50 */ VMBlw, B, B, B, B, O, O, O, O, O, O, O, O, O, O, O,
+ /* 10F60 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
-#define use_offset_0x10fb0u 4336
+ /* Old Uyghur */
+ /* 10F70 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 10F80 */ B, B, CMBlw, CMBlw, CMBlw, CMBlw, O, O, O, O, O, O, O, O, O, O,
+ /* 10F90 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
+ /* 10FA0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
/* Chorasmian */
@@ -627,7 +662,7 @@ static const uint8_t use_table[] = {
/* 11010 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 11020 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 11030 */ B, B, B, B, B, B, B, B, VAbv, VAbv, VAbv, VAbv, VBlw, VBlw, VBlw, VBlw,
- /* 11040 */ VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, HVM, O, O, O, O, O, O, O, O, O,
+ /* 11040 */ VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, H, O, O, O, O, O, O, O, O, O,
/* 11050 */ O, O, N, N, N, N, N, N, N, N, N, N, N, N, N, N,
/* 11060 */ N, N, N, N, N, N, B, B, B, B, B, B, B, B, B, B,
/* 11070 */ VAbv, B, B, VAbv, VAbv, B, O, O, O, O, O, O, O, O, O, HN,
@@ -640,7 +675,7 @@ static const uint8_t use_table[] = {
/* 110B0 */ VPst, VPre, VPst, VBlw, VBlw, VAbv, VAbv, VPst, VPst, H, CMBlw, O, O, O, O, O,
/* 110C0 */ O, O, VBlw, O, O, O, O, O,
-#define use_offset_0x11100u 4616
+#define use_offset_0x11100u 4816
/* Chakma */
@@ -678,7 +713,7 @@ static const uint8_t use_table[] = {
/* 11220 */ B, B, B, B, B, B, B, B, B, B, B, B, VPst, VPst, VPst, VBlw,
/* 11230 */ VAbv, VAbv, VAbv, VAbv, VMAbv, H, CMAbv, CMAbv, O, O, O, O, O, O, VMAbv, O,
-#define use_offset_0x11280u 4936
+#define use_offset_0x11280u 5136
/* Multani */
@@ -706,7 +741,7 @@ static const uint8_t use_table[] = {
/* 11360 */ B, B, VPst, VPst, O, O, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, O, O, O,
/* 11370 */ VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, O, O, O,
-#define use_offset_0x11400u 5184
+#define use_offset_0x11400u 5384
/* Newa */
@@ -729,7 +764,7 @@ static const uint8_t use_table[] = {
/* 114C0 */ VMAbv, VMAbv, H, CMBlw, B, O, O, O, O, O, O, O, O, O, O, O,
/* 114D0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x11580u 5408
+#define use_offset_0x11580u 5608
/* Siddham */
@@ -773,7 +808,7 @@ static const uint8_t use_table[] = {
/* 11730 */ B, B, B, B, B, B, B, B, B, B, B, B, O, O, O, O,
/* 11740 */ B, B, B, B, B, B, B, O,
-#define use_offset_0x11800u 5864
+#define use_offset_0x11800u 6064
/* Dogra */
@@ -783,7 +818,7 @@ static const uint8_t use_table[] = {
/* 11820 */ B, B, B, B, B, B, B, B, B, B, B, B, VPst, VPre, VPst, VBlw,
/* 11830 */ VBlw, VBlw, VBlw, VAbv, VAbv, VAbv, VAbv, VMAbv, VMPst, H, CMBlw, O, O, O, O, O,
-#define use_offset_0x11900u 5928
+#define use_offset_0x11900u 6128
/* Dives Akuru */
@@ -795,7 +830,7 @@ static const uint8_t use_table[] = {
/* 11940 */ MPst, R, MPst, CMBlw, O, O, O, O, O, O, O, O, O, O, O, O,
/* 11950 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x119a0u 6024
+#define use_offset_0x119a0u 6224
/* Nandinagari */
@@ -823,7 +858,7 @@ static const uint8_t use_table[] = {
/* 11A80 */ B, B, B, B, R, R, R, R, R, R, FBlw, FBlw, FBlw, FBlw, FBlw, FBlw,
/* 11A90 */ FBlw, FBlw, FBlw, FBlw, FBlw, FBlw, VMAbv, VMPst, CMAbv, H, O, O, O, B, O, O,
-#define use_offset_0x11c00u 6280
+#define use_offset_0x11c00u 6480
/* Bhaiksuki */
@@ -844,7 +879,7 @@ static const uint8_t use_table[] = {
/* 11CA0 */ SUB, SUB, SUB, SUB, SUB, SUB, SUB, SUB, O, SUB, SUB, SUB, SUB, SUB, SUB, SUB,
/* 11CB0 */ VBlw, VPre, VBlw, VAbv, VPst, VMAbv, VMAbv, O,
-#define use_offset_0x11d00u 6464
+#define use_offset_0x11d00u 6664
/* Masaram Gondi */
@@ -864,7 +899,7 @@ static const uint8_t use_table[] = {
/* 11D90 */ VAbv, VAbv, O, VPst, VPst, VMAbv, VMPst, H, O, O, O, O, O, O, O, O,
/* 11DA0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x11ee0u 6640
+#define use_offset_0x11ee0u 6840
/* Makasar */
@@ -872,85 +907,92 @@ static const uint8_t use_table[] = {
/* 11EE0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 11EF0 */ B, B, GB, VAbv, VBlw, VPre, VPst, O,
-#define use_offset_0x13000u 6664
+#define use_offset_0x13000u 6864
/* Egyptian Hieroglyphs */
- /* 13000 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13010 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13020 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13030 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13040 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13050 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13060 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13070 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13080 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13090 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 130A0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 130B0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 130C0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 130D0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 130E0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 130F0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13100 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13110 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13120 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13130 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13140 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13150 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13160 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13170 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13180 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13190 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 131A0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 131B0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 131C0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 131D0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 131E0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 131F0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13200 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13210 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13220 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13230 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13240 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13250 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13260 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13270 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13280 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13290 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 132A0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 132B0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 132C0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 132D0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 132E0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 132F0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13300 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13310 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13320 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13330 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13340 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13350 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13360 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13370 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13380 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13390 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 133A0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 133B0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 133C0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 133D0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 133E0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 133F0 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13400 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13410 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, G,
- /* 13420 */ G, G, G, G, G, G, G, G, G, G, G, G, G, G, G, O,
+ /* 13000 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13010 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13020 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13030 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13040 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13050 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13060 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13070 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13080 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13090 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 130A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 130B0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 130C0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 130D0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 130E0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 130F0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13100 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13110 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13120 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13130 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13140 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13150 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13160 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13170 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13180 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13190 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 131A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 131B0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 131C0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 131D0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 131E0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 131F0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13200 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13210 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13220 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13230 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13240 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13250 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13260 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13270 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13280 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13290 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 132A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 132B0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 132C0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 132D0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 132E0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 132F0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13300 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13310 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13320 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13330 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13340 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13350 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13360 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13370 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13380 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13390 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 133A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 133B0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 133C0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 133D0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 133E0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 133F0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13400 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13410 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 13420 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, O,
/* Egyptian Hieroglyph Format Controls */
- /* 13430 */ J, J, J, J, J, J, J, SB, SE, O, O, O, O, O, O, O,
+ /* 13430 */ H, H, H, H, H, H, H, B, B, O, O, O, O, O, O, O,
+
+#define use_offset_0x16ac0u 7952
-#define use_offset_0x16b00u 7752
+ /* Tangsa */
+
+ /* 16AC0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
+ /* 16AD0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
+ /* 16AE0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
+ /* 16AF0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
/* Pahawh Hmong */
@@ -959,7 +1001,7 @@ static const uint8_t use_table[] = {
/* 16B20 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 16B30 */ VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, O,
-#define use_offset_0x16f00u 7808
+#define use_offset_0x16f00u 8072
/* Miao */
@@ -975,14 +1017,14 @@ static const uint8_t use_table[] = {
/* 16F80 */ VBlw, VBlw, VBlw, VBlw, VBlw, VBlw, VBlw, VBlw, O, O, O, O, O, O, O, VMBlw,
/* 16F90 */ VMBlw, VMBlw, VMBlw, O, O, O, O, O,
-#define use_offset_0x16fe0u 7960
+#define use_offset_0x16fe0u 8224
/* Ideographic Symbols and Punctuation */
/* 16FE0 */ O, O, O, O, B, O, O, O,
-#define use_offset_0x18b00u 7968
+#define use_offset_0x18b00u 8232
/* Khitan Small Script */
@@ -1018,7 +1060,7 @@ static const uint8_t use_table[] = {
/* 18CC0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
/* 18CD0 */ B, B, B, B, B, B, O, O,
-#define use_offset_0x1bc00u 8440
+#define use_offset_0x1bc00u 8704
/* Duployan */
@@ -1034,7 +1076,7 @@ static const uint8_t use_table[] = {
/* 1BC80 */ B, B, B, B, B, B, B, B, B, O, O, O, O, O, O, O,
/* 1BC90 */ B, B, B, B, B, B, B, B, B, B, O, O, O, CMBlw, CMBlw, O,
-#define use_offset_0x1e100u 8600
+#define use_offset_0x1e100u 8864
/* Nyiakeng Puachue Hmong */
@@ -1045,8 +1087,14 @@ static const uint8_t use_table[] = {
/* 1E130 */ VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, VMAbv, B, B, B, B, B, B, B, O, O,
/* 1E140 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, B, B,
-#define use_offset_0x1e2c0u 8680
+#define use_offset_0x1e290u 8944
+
+
+ /* Toto */
+ /* 1E290 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, B, B,
+ /* 1E2A0 */ B, B, B, B, B, B, B, B, B, B, B, B, B, B, VMAbv, O,
+ /* 1E2B0 */ O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O,
/* Wancho */
@@ -1055,7 +1103,7 @@ static const uint8_t use_table[] = {
/* 1E2E0 */ B, B, B, B, B, B, B, B, B, B, B, B, VMAbv, VMAbv, VMAbv, VMAbv,
/* 1E2F0 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-#define use_offset_0x1e900u 8744
+#define use_offset_0x1e900u 9056
/* Adlam */
@@ -1067,7 +1115,28 @@ static const uint8_t use_table[] = {
/* 1E940 */ B, B, B, B, CMAbv, CMAbv, CMAbv, CMAbv, CMAbv, CMAbv, CMAbv, B, O, O, O, O,
/* 1E950 */ B, B, B, B, B, B, B, B, B, B, O, O, O, O, O, O,
-}; /* Table items: 8840; occupancy: 79% */
+#define use_offset_0xe0100u 9152
+
+
+ /* Variation Selectors Supplement */
+
+ /* E0100 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0110 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0120 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0130 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0140 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0150 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0160 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0170 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0180 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E0190 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E01A0 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E01B0 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E01C0 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E01D0 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+ /* E01E0 */ CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ, CGJ,
+
+}; /* Table items: 9392; occupancy: 79% */
static inline uint8_t
hb_use_get_category (hb_codepoint_t u)
@@ -1077,6 +1146,7 @@ hb_use_get_category (hb_codepoint_t u)
case 0x0u:
if (hb_in_range<hb_codepoint_t> (u, 0x0028u, 0x003Fu)) return use_table[u - 0x0028u + use_offset_0x0028u];
if (hb_in_range<hb_codepoint_t> (u, 0x00A0u, 0x00D7u)) return use_table[u - 0x00A0u + use_offset_0x00a0u];
+ if (hb_in_range<hb_codepoint_t> (u, 0x0348u, 0x034Fu)) return use_table[u - 0x0348u + use_offset_0x0348u];
if (hb_in_range<hb_codepoint_t> (u, 0x0640u, 0x0647u)) return use_table[u - 0x0640u + use_offset_0x0640u];
if (hb_in_range<hb_codepoint_t> (u, 0x07C8u, 0x07FFu)) return use_table[u - 0x07C8u + use_offset_0x07c8u];
if (hb_in_range<hb_codepoint_t> (u, 0x0840u, 0x085Fu)) return use_table[u - 0x0840u + use_offset_0x0840u];
@@ -1106,18 +1176,22 @@ hb_use_get_category (hb_codepoint_t u)
if (hb_in_range<hb_codepoint_t> (u, 0xABC0u, 0xABFFu)) return use_table[u - 0xABC0u + use_offset_0xabc0u];
break;
+ case 0xFu:
+ if (hb_in_range<hb_codepoint_t> (u, 0xFE00u, 0xFE0Fu)) return use_table[u - 0xFE00u + use_offset_0xfe00u];
+ break;
+
case 0x10u:
+ if (hb_in_range<hb_codepoint_t> (u, 0x10570u, 0x105BFu)) return use_table[u - 0x10570u + use_offset_0x10570u];
if (hb_in_range<hb_codepoint_t> (u, 0x10A00u, 0x10A4Fu)) return use_table[u - 0x10A00u + use_offset_0x10a00u];
- if (hb_in_range<hb_codepoint_t> (u, 0x10AC0u, 0x10AE7u)) return use_table[u - 0x10AC0u + use_offset_0x10ac0u];
+ if (hb_in_range<hb_codepoint_t> (u, 0x10AC0u, 0x10AEFu)) return use_table[u - 0x10AC0u + use_offset_0x10ac0u];
if (hb_in_range<hb_codepoint_t> (u, 0x10B80u, 0x10BAFu)) return use_table[u - 0x10B80u + use_offset_0x10b80u];
if (hb_in_range<hb_codepoint_t> (u, 0x10D00u, 0x10D3Fu)) return use_table[u - 0x10D00u + use_offset_0x10d00u];
if (hb_in_range<hb_codepoint_t> (u, 0x10E80u, 0x10EB7u)) return use_table[u - 0x10E80u + use_offset_0x10e80u];
- if (hb_in_range<hb_codepoint_t> (u, 0x10F30u, 0x10F57u)) return use_table[u - 0x10F30u + use_offset_0x10f30u];
- if (hb_in_range<hb_codepoint_t> (u, 0x10FB0u, 0x110C7u)) return use_table[u - 0x10FB0u + use_offset_0x10fb0u];
+ if (hb_in_range<hb_codepoint_t> (u, 0x10F30u, 0x110C7u)) return use_table[u - 0x10F30u + use_offset_0x10f30u];
break;
case 0x11u:
- if (hb_in_range<hb_codepoint_t> (u, 0x10FB0u, 0x110C7u)) return use_table[u - 0x10FB0u + use_offset_0x10fb0u];
+ if (hb_in_range<hb_codepoint_t> (u, 0x10F30u, 0x110C7u)) return use_table[u - 0x10F30u + use_offset_0x10f30u];
if (hb_in_range<hb_codepoint_t> (u, 0x11100u, 0x1123Fu)) return use_table[u - 0x11100u + use_offset_0x11100u];
if (hb_in_range<hb_codepoint_t> (u, 0x11280u, 0x11377u)) return use_table[u - 0x11280u + use_offset_0x11280u];
if (hb_in_range<hb_codepoint_t> (u, 0x11400u, 0x114DFu)) return use_table[u - 0x11400u + use_offset_0x11400u];
@@ -1135,7 +1209,7 @@ hb_use_get_category (hb_codepoint_t u)
break;
case 0x16u:
- if (hb_in_range<hb_codepoint_t> (u, 0x16B00u, 0x16B37u)) return use_table[u - 0x16B00u + use_offset_0x16b00u];
+ if (hb_in_range<hb_codepoint_t> (u, 0x16AC0u, 0x16B37u)) return use_table[u - 0x16AC0u + use_offset_0x16ac0u];
if (hb_in_range<hb_codepoint_t> (u, 0x16F00u, 0x16F97u)) return use_table[u - 0x16F00u + use_offset_0x16f00u];
if (hb_in_range<hb_codepoint_t> (u, 0x16FE0u, 0x16FE7u)) return use_table[u - 0x16FE0u + use_offset_0x16fe0u];
break;
@@ -1150,10 +1224,14 @@ hb_use_get_category (hb_codepoint_t u)
case 0x1Eu:
if (hb_in_range<hb_codepoint_t> (u, 0x1E100u, 0x1E14Fu)) return use_table[u - 0x1E100u + use_offset_0x1e100u];
- if (hb_in_range<hb_codepoint_t> (u, 0x1E2C0u, 0x1E2FFu)) return use_table[u - 0x1E2C0u + use_offset_0x1e2c0u];
+ if (hb_in_range<hb_codepoint_t> (u, 0x1E290u, 0x1E2FFu)) return use_table[u - 0x1E290u + use_offset_0x1e290u];
if (hb_in_range<hb_codepoint_t> (u, 0x1E900u, 0x1E95Fu)) return use_table[u - 0x1E900u + use_offset_0x1e900u];
break;
+ case 0xE0u:
+ if (hb_in_range<hb_codepoint_t> (u, 0xE0100u, 0xE01EFu)) return use_table[u - 0xE0100u + use_offset_0xe0100u];
+ break;
+
default:
break;
}
@@ -1161,6 +1239,7 @@ hb_use_get_category (hb_codepoint_t u)
}
#undef B
+#undef CGJ
#undef CS
#undef G
#undef GB
@@ -1171,7 +1250,6 @@ hb_use_get_category (hb_codepoint_t u)
#undef N
#undef O
#undef R
-#undef S
#undef SB
#undef SE
#undef SUB
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use.cc b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use.cc
index 1e4804c4a2..70b637933d 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-complex-use.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-complex-use.cc
@@ -257,7 +257,6 @@ setup_topographical_masks (const hb_ot_shape_plan_t *plan,
use_syllable_type_t syllable_type = (use_syllable_type_t) (info[start].syllable() & 0x0F);
switch (syllable_type)
{
- case use_independent_cluster:
case use_symbol_cluster:
case use_hieroglyph_cluster:
case use_non_cluster:
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-normalize.cc b/thirdparty/harfbuzz/src/hb-ot-shape-normalize.cc
index 778b5b8bd8..839cc9122c 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-normalize.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-normalize.cc
@@ -171,7 +171,7 @@ decompose_current_character (const hb_ot_shape_normalize_context_t *c, bool shor
hb_codepoint_t u = buffer->cur().codepoint;
hb_codepoint_t glyph = 0;
- if (shortest && c->font->get_nominal_glyph (u, &glyph))
+ if (shortest && c->font->get_nominal_glyph (u, &glyph, c->not_found))
{
next_char (buffer, glyph);
return;
@@ -183,7 +183,7 @@ decompose_current_character (const hb_ot_shape_normalize_context_t *c, bool shor
return;
}
- if (!shortest && c->font->get_nominal_glyph (u, &glyph))
+ if (!shortest && c->font->get_nominal_glyph (u, &glyph, c->not_found))
{
next_char (buffer, glyph);
return;
@@ -312,6 +312,7 @@ _hb_ot_shape_normalize (const hb_ot_shape_plan_t *plan,
buffer,
font,
buffer->unicode,
+ buffer->not_found,
plan->shaper->decompose ? plan->shaper->decompose : decompose_unicode,
plan->shaper->compose ? plan->shaper->compose : compose_unicode
};
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape-normalize.hh b/thirdparty/harfbuzz/src/hb-ot-shape-normalize.hh
index 04f1a80091..12c78a2352 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape-normalize.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-shape-normalize.hh
@@ -56,6 +56,7 @@ struct hb_ot_shape_normalize_context_t
hb_buffer_t *buffer;
hb_font_t *font;
hb_unicode_funcs_t *unicode;
+ const hb_codepoint_t not_found;
bool (*decompose) (const hb_ot_shape_normalize_context_t *c,
hb_codepoint_t ab,
hb_codepoint_t *a,
diff --git a/thirdparty/harfbuzz/src/hb-ot-shape.cc b/thirdparty/harfbuzz/src/hb-ot-shape.cc
index 0e215c24f7..4e8a4bc3d1 100644
--- a/thirdparty/harfbuzz/src/hb-ot-shape.cc
+++ b/thirdparty/harfbuzz/src/hb-ot-shape.cc
@@ -150,23 +150,25 @@ hb_ot_shape_planner_t::compile (hb_ot_shape_plan_t &plan,
*/
#ifndef HB_NO_AAT_SHAPE
- bool has_gsub = hb_ot_layout_has_substitution (face);
+ bool has_kerx = hb_aat_layout_has_positioning (face);
+ bool has_gsub = !apply_morx && hb_ot_layout_has_substitution (face);
#endif
bool has_gpos = !disable_gpos && hb_ot_layout_has_positioning (face);
if (false)
;
#ifndef HB_NO_AAT_SHAPE
- else if (hb_aat_layout_has_positioning (face) && !(has_gsub && has_gpos))
+ /* Prefer GPOS over kerx if GSUB is present;
+ * https://github.com/harfbuzz/harfbuzz/issues/3008 */
+ else if (has_kerx && !(has_gsub && has_gpos))
plan.apply_kerx = true;
#endif
- else if (!apply_morx && has_gpos)
+ else if (has_gpos)
plan.apply_gpos = true;
if (!plan.apply_kerx && (!has_gpos_kern || !plan.apply_gpos))
{
- /* Apparently Apple applies kerx if GPOS kern was not applied. */
#ifndef HB_NO_AAT_SHAPE
- if (hb_aat_layout_has_positioning (face))
+ if (has_kerx)
plan.apply_kerx = true;
else
#endif
diff --git a/thirdparty/harfbuzz/src/hb-ot-var-common.hh b/thirdparty/harfbuzz/src/hb-ot-var-common.hh
new file mode 100644
index 0000000000..0eafb949d5
--- /dev/null
+++ b/thirdparty/harfbuzz/src/hb-ot-var-common.hh
@@ -0,0 +1,264 @@
+/*
+ * Copyright © 2021 Google, Inc.
+ *
+ * This is part of HarfBuzz, a text shaping library.
+ *
+ * Permission is hereby granted, without written agreement and without
+ * license or royalty fees, to use, copy, modify, and distribute this
+ * software and its documentation for any purpose, provided that the
+ * above copyright notice and the following two paragraphs appear in
+ * all copies of this software.
+ *
+ * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
+ * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
+ * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ * DAMAGE.
+ *
+ * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
+ * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
+ * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
+ * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ */
+
+#ifndef HB_OT_VAR_COMMON_HH
+#define HB_OT_VAR_COMMON_HH
+
+#include "hb-ot-layout-common.hh"
+
+
+namespace OT {
+
+struct DeltaSetIndexMapFormat0
+{
+ friend struct DeltaSetIndexMap;
+
+ private:
+ DeltaSetIndexMapFormat0* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->start_embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+
+ unsigned total_size = min_size + mapCount * get_width ();
+ HBUINT8 *p = c->allocate_size<HBUINT8> (total_size);
+ if (unlikely (!p)) return_trace (nullptr);
+
+ memcpy (p, this, HBUINT8::static_size * total_size);
+ return_trace (out);
+ }
+
+ template <typename T>
+ bool serialize (hb_serialize_context_t *c, const T &plan)
+ {
+ unsigned int width = plan.get_width ();
+ unsigned int inner_bit_count = plan.get_inner_bit_count ();
+ const hb_array_t<const uint32_t> output_map = plan.get_output_map ();
+
+ TRACE_SERIALIZE (this);
+ if (unlikely (output_map.length && ((((inner_bit_count-1)&~0xF)!=0) || (((width-1)&~0x3)!=0))))
+ return_trace (false);
+ if (unlikely (!c->extend_min (this))) return_trace (false);
+
+ entryFormat = ((width-1)<<4)|(inner_bit_count-1);
+ mapCount = output_map.length;
+ HBUINT8 *p = c->allocate_size<HBUINT8> (width * output_map.length);
+ if (unlikely (!p)) return_trace (false);
+ for (unsigned int i = 0; i < output_map.length; i++)
+ {
+ unsigned int v = output_map[i];
+ unsigned int outer = v >> 16;
+ unsigned int inner = v & 0xFFFF;
+ unsigned int u = (outer << inner_bit_count) | inner;
+ for (unsigned int w = width; w > 0;)
+ {
+ p[--w] = u;
+ u >>= 8;
+ }
+ p += width;
+ }
+ return_trace (true);
+ }
+
+ uint32_t map (unsigned int v) const /* Returns 16.16 outer.inner. */
+ {
+ /* If count is zero, pass value unchanged. This takes
+ * care of direct mapping for advance map. */
+ if (!mapCount)
+ return v;
+
+ if (v >= mapCount)
+ v = mapCount - 1;
+
+ unsigned int u = 0;
+ { /* Fetch it. */
+ unsigned int w = get_width ();
+ const HBUINT8 *p = mapDataZ.arrayZ + w * v;
+ for (; w; w--)
+ u = (u << 8) + *p++;
+ }
+
+ { /* Repack it. */
+ unsigned int n = get_inner_bit_count ();
+ unsigned int outer = u >> n;
+ unsigned int inner = u & ((1 << n) - 1);
+ u = (outer<<16) | inner;
+ }
+
+ return u;
+ }
+
+ unsigned get_map_count () const { return mapCount; }
+ unsigned get_width () const { return ((entryFormat >> 4) & 3) + 1; }
+ unsigned get_inner_bit_count () const { return (entryFormat & 0xF) + 1; }
+
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) &&
+ c->check_range (mapDataZ.arrayZ,
+ mapCount,
+ get_width ()));
+ }
+
+ protected:
+ HBUINT8 format; /* Format identifier--format = 0 */
+ HBUINT8 entryFormat; /* A packed field that describes the compressed
+ * representation of delta-set indices. */
+ HBUINT16 mapCount; /* The number of mapping entries. */
+ UnsizedArrayOf<HBUINT8>
+ mapDataZ; /* The delta-set index mapping data. */
+
+ public:
+ DEFINE_SIZE_ARRAY (4, mapDataZ);
+};
+
+struct DeltaSetIndexMapFormat1
+{
+ friend struct DeltaSetIndexMap;
+
+ private:
+ DeltaSetIndexMapFormat1* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ auto *out = c->start_embed (this);
+ if (unlikely (!out)) return_trace (nullptr);
+
+ unsigned total_size = min_size + mapCount * get_width ();
+ HBUINT8 *p = c->allocate_size<HBUINT8> (total_size);
+ if (unlikely (!p)) return_trace (nullptr);
+
+ memcpy (p, this, HBUINT8::static_size * total_size);
+ return_trace (out);
+ }
+
+ unsigned get_map_count () const { return mapCount; }
+ unsigned get_width () const { return ((entryFormat >> 4) & 3) + 1; }
+ unsigned get_inner_bit_count () const { return (entryFormat & 0xF) + 1; }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ return_trace (c->check_struct (this) &&
+ c->check_range (mapDataZ.arrayZ,
+ mapCount,
+ get_width ()));
+ }
+
+ protected:
+ HBUINT8 format; /* Format identifier--format = 1 */
+ HBUINT8 entryFormat; /* A packed field that describes the compressed
+ * representation of delta-set indices. */
+ HBUINT32 mapCount; /* The number of mapping entries. */
+ UnsizedArrayOf<HBUINT8>
+ mapDataZ; /* The delta-set index mapping data. */
+
+ public:
+ DEFINE_SIZE_ARRAY (6, mapDataZ);
+};
+
+struct DeltaSetIndexMap
+{
+ template <typename T>
+ bool serialize (hb_serialize_context_t *c, const T &plan)
+ {
+ TRACE_SERIALIZE (this);
+ switch (u.format) {
+ case 0: return_trace (u.format0.serialize (c, plan));
+ default:return_trace (false);
+ }
+ }
+
+ uint32_t map (unsigned v) const
+ {
+ switch (u.format) {
+ case 0: return (u.format0.map (v));
+ default:return v;
+ }
+ }
+
+ unsigned get_map_count () const
+ {
+ switch (u.format) {
+ case 0: return u.format0.get_map_count ();
+ case 1: return u.format1.get_map_count ();
+ default:return 0;
+ }
+ }
+
+ unsigned get_width () const
+ {
+ switch (u.format) {
+ case 0: return u.format0.get_width ();
+ case 1: return u.format1.get_width ();
+ default:return 0;
+ }
+ }
+
+ unsigned get_inner_bit_count () const
+ {
+ switch (u.format) {
+ case 0: return u.format0.get_inner_bit_count ();
+ case 1: return u.format1.get_inner_bit_count ();
+ default:return 0;
+ }
+ }
+
+ bool sanitize (hb_sanitize_context_t *c) const
+ {
+ TRACE_SANITIZE (this);
+ if (!u.format.sanitize (c)) return_trace (false);
+ switch (u.format) {
+ case 0: return_trace (u.format0.sanitize (c));
+ case 1: return_trace (u.format1.sanitize (c));
+ default:return_trace (true);
+ }
+ }
+
+ DeltaSetIndexMap* copy (hb_serialize_context_t *c) const
+ {
+ TRACE_SERIALIZE (this);
+ switch (u.format) {
+ case 0: return_trace (reinterpret_cast<DeltaSetIndexMap *> (u.format0.copy (c)));
+ case 1: return_trace (reinterpret_cast<DeltaSetIndexMap *> (u.format1.copy (c)));
+ default:return_trace (nullptr);
+ }
+ }
+
+ protected:
+ union {
+ HBUINT8 format; /* Format identifier */
+ DeltaSetIndexMapFormat0 format0;
+ DeltaSetIndexMapFormat1 format1;
+ } u;
+ public:
+ DEFINE_SIZE_UNION (1, format);
+};
+
+} /* namespace OT */
+
+
+#endif /* HB_OT_VAR_COMMON_HH */
diff --git a/thirdparty/harfbuzz/src/hb-ot-var-hvar-table.hh b/thirdparty/harfbuzz/src/hb-ot-var-hvar-table.hh
index 72217e7f29..074b6a3785 100644
--- a/thirdparty/harfbuzz/src/hb-ot-var-hvar-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-var-hvar-table.hh
@@ -28,97 +28,11 @@
#define HB_OT_VAR_HVAR_TABLE_HH
#include "hb-ot-layout-common.hh"
-
+#include "hb-ot-var-common.hh"
namespace OT {
-struct DeltaSetIndexMap
-{
- bool sanitize (hb_sanitize_context_t *c) const
- {
- TRACE_SANITIZE (this);
- return_trace (c->check_struct (this) &&
- c->check_range (mapDataZ.arrayZ,
- mapCount,
- get_width ()));
- }
-
- template <typename T>
- bool serialize (hb_serialize_context_t *c, const T &plan)
- {
- unsigned int width = plan.get_width ();
- unsigned int inner_bit_count = plan.get_inner_bit_count ();
- const hb_array_t<const uint32_t> output_map = plan.get_output_map ();
-
- TRACE_SERIALIZE (this);
- if (unlikely (output_map.length && ((((inner_bit_count-1)&~0xF)!=0) || (((width-1)&~0x3)!=0))))
- return_trace (false);
- if (unlikely (!c->extend_min (this))) return_trace (false);
-
- format = ((width-1)<<4)|(inner_bit_count-1);
- mapCount = output_map.length;
- HBUINT8 *p = c->allocate_size<HBUINT8> (width * output_map.length);
- if (unlikely (!p)) return_trace (false);
- for (unsigned int i = 0; i < output_map.length; i++)
- {
- unsigned int v = output_map[i];
- unsigned int outer = v >> 16;
- unsigned int inner = v & 0xFFFF;
- unsigned int u = (outer << inner_bit_count) | inner;
- for (unsigned int w = width; w > 0;)
- {
- p[--w] = u;
- u >>= 8;
- }
- p += width;
- }
- return_trace (true);
- }
-
- uint32_t map (unsigned int v) const /* Returns 16.16 outer.inner. */
- {
- /* If count is zero, pass value unchanged. This takes
- * care of direct mapping for advance map. */
- if (!mapCount)
- return v;
-
- if (v >= mapCount)
- v = mapCount - 1;
-
- unsigned int u = 0;
- { /* Fetch it. */
- unsigned int w = get_width ();
- const HBUINT8 *p = mapDataZ.arrayZ + w * v;
- for (; w; w--)
- u = (u << 8) + *p++;
- }
-
- { /* Repack it. */
- unsigned int n = get_inner_bit_count ();
- unsigned int outer = u >> n;
- unsigned int inner = u & ((1 << n) - 1);
- u = (outer<<16) | inner;
- }
-
- return u;
- }
-
- unsigned int get_map_count () const { return mapCount; }
- unsigned int get_width () const { return ((format >> 4) & 3) + 1; }
- unsigned int get_inner_bit_count () const { return (format & 0xF) + 1; }
-
- protected:
- HBUINT16 format; /* A packed field that describes the compressed
- * representation of delta-set indices. */
- HBUINT16 mapCount; /* The number of mapping entries. */
- UnsizedArrayOf<HBUINT8>
- mapDataZ; /* The delta-set index mapping data. */
-
- public:
- DEFINE_SIZE_ARRAY (4, mapDataZ);
-};
-
struct index_map_subset_plan_t
{
enum index_map_index_t {
diff --git a/thirdparty/harfbuzz/src/hb-ot-vorg-table.hh b/thirdparty/harfbuzz/src/hb-ot-vorg-table.hh
index efa7737d6f..811e13919e 100644
--- a/thirdparty/harfbuzz/src/hb-ot-vorg-table.hh
+++ b/thirdparty/harfbuzz/src/hb-ot-vorg-table.hh
@@ -48,7 +48,7 @@ struct VertOriginMetric
}
public:
- HBGlyphID glyph;
+ HBGlyphID16 glyph;
FWORD vertOriginY;
public:
diff --git a/thirdparty/harfbuzz/src/hb-repacker.hh b/thirdparty/harfbuzz/src/hb-repacker.hh
index b02128b5c4..26faa56ea8 100644
--- a/thirdparty/harfbuzz/src/hb-repacker.hh
+++ b/thirdparty/harfbuzz/src/hb-repacker.hh
@@ -33,6 +33,10 @@
#include "hb-serialize.hh"
#include "hb-vector.hh"
+/*
+ * For a detailed writeup on the overflow resolution algorithm see:
+ * docs/repacker.md
+ */
struct graph_t
{
@@ -40,23 +44,58 @@ struct graph_t
{
vertex_t () :
distance (0),
- incoming_edges (0),
+ space (0),
+ parents (),
start (0),
end (0),
priority(0) {}
- void fini () { obj.fini (); }
+ void fini () {
+ obj.fini ();
+ parents.fini ();
+ }
hb_serialize_context_t::object_t obj;
int64_t distance;
- unsigned incoming_edges;
+ int64_t space;
+ hb_vector_t<unsigned> parents;
unsigned start;
unsigned end;
unsigned priority;
bool is_shared () const
{
- return incoming_edges > 1;
+ return parents.length > 1;
+ }
+
+ unsigned incoming_edges () const
+ {
+ return parents.length;
+ }
+
+ void remove_parent (unsigned parent_index)
+ {
+ for (unsigned i = 0; i < parents.length; i++)
+ {
+ if (parents[i] != parent_index) continue;
+ parents.remove (i);
+ break;
+ }
+ }
+
+ void remap_parents (const hb_vector_t<unsigned>& id_map)
+ {
+ for (unsigned i = 0; i < parents.length; i++)
+ parents[i] = id_map[parents[i]];
+ }
+
+ void remap_parent (unsigned old_index, unsigned new_index)
+ {
+ for (unsigned i = 0; i < parents.length; i++)
+ {
+ if (parents[i] == old_index)
+ parents[i] = new_index;
+ }
}
bool is_leaf () const
@@ -77,7 +116,7 @@ struct graph_t
int64_t modified_distance =
hb_min (hb_max(distance + distance_modifier (), 0), 0x7FFFFFFFFF);
- return (modified_distance << 24) | (0x00FFFFFF & order);
+ return (modified_distance << 22) | (0x003FFFFF & order);
}
int64_t distance_modifier () const
@@ -91,34 +130,7 @@ struct graph_t
struct overflow_record_t
{
unsigned parent;
- const hb_serialize_context_t::object_t::link_t* link;
- };
-
- struct clone_buffer_t
- {
- clone_buffer_t () : head (nullptr), tail (nullptr) {}
-
- bool copy (const hb_serialize_context_t::object_t& object)
- {
- fini ();
- unsigned size = object.tail - object.head;
- head = (char*) hb_malloc (size);
- if (!head) return false;
-
- memcpy (head, object.head, size);
- tail = head + size;
- return true;
- }
-
- char* head;
- char* tail;
-
- void fini ()
- {
- if (!head) return;
- hb_free (head);
- head = nullptr;
- }
+ unsigned child;
};
/*
@@ -129,11 +141,12 @@ struct graph_t
* serializer
*/
graph_t (const hb_vector_t<hb_serialize_context_t::object_t *>& objects)
- : edge_count_invalid (true),
+ : parents_invalid (true),
distance_invalid (true),
positions_invalid (true),
successful (true)
{
+ num_roots_for_space_.push (1);
bool removed_nil = false;
for (unsigned i = 0; i < objects.length; i++)
{
@@ -160,12 +173,13 @@ struct graph_t
~graph_t ()
{
vertices_.fini_deep ();
- clone_buffers_.fini_deep ();
}
bool in_error () const
{
- return !successful || vertices_.in_error () || clone_buffers_.in_error ();
+ return !successful ||
+ vertices_.in_error () ||
+ num_roots_for_space_.in_error ();
}
const vertex_t& root () const
@@ -226,12 +240,13 @@ struct graph_t
hb_vector_t<unsigned> queue;
hb_vector_t<vertex_t> sorted_graph;
+ if (unlikely (!check_success (sorted_graph.resize (vertices_.length)))) return;
hb_vector_t<unsigned> id_map;
if (unlikely (!check_success (id_map.resize (vertices_.length)))) return;
hb_vector_t<unsigned> removed_edges;
if (unlikely (!check_success (removed_edges.resize (vertices_.length)))) return;
- update_incoming_edge_count ();
+ update_parents ();
queue.push (root_idx ());
int new_id = vertices_.length - 1;
@@ -242,12 +257,12 @@ struct graph_t
queue.remove (0);
vertex_t& next = vertices_[next_id];
- sorted_graph.push (next);
+ sorted_graph[new_id] = next;
id_map[next_id] = new_id--;
for (const auto& link : next.obj.links) {
removed_edges[link.objidx]++;
- if (!(vertices_[link.objidx].incoming_edges - removed_edges[link.objidx]))
+ if (!(vertices_[link.objidx].incoming_edges () - removed_edges[link.objidx]))
queue.push (link.objidx);
}
}
@@ -255,14 +270,11 @@ struct graph_t
check_success (!queue.in_error ());
check_success (!sorted_graph.in_error ());
if (!check_success (new_id == -1))
- DEBUG_MSG (SUBSET_REPACK, nullptr, "Graph is not fully connected.");
-
- remap_obj_indices (id_map, &sorted_graph);
+ print_orphaned_nodes ();
- sorted_graph.as_array ().reverse ();
+ remap_all_obj_indices (id_map, &sorted_graph);
- vertices_.fini_deep ();
- vertices_ = sorted_graph;
+ hb_swap (vertices_, sorted_graph);
sorted_graph.fini_deep ();
}
@@ -283,12 +295,13 @@ struct graph_t
hb_priority_queue_t queue;
hb_vector_t<vertex_t> sorted_graph;
+ if (unlikely (!check_success (sorted_graph.resize (vertices_.length)))) return;
hb_vector_t<unsigned> id_map;
if (unlikely (!check_success (id_map.resize (vertices_.length)))) return;
hb_vector_t<unsigned> removed_edges;
if (unlikely (!check_success (removed_edges.resize (vertices_.length)))) return;
- update_incoming_edge_count ();
+ update_parents ();
queue.insert (root ().modified_distance (0), root_idx ());
int new_id = root_idx ();
@@ -298,12 +311,12 @@ struct graph_t
unsigned next_id = queue.pop_minimum().second;
vertex_t& next = vertices_[next_id];
- sorted_graph.push (next);
+ sorted_graph[new_id] = next;
id_map[next_id] = new_id--;
for (const auto& link : next.obj.links) {
removed_edges[link.objidx]++;
- if (!(vertices_[link.objidx].incoming_edges - removed_edges[link.objidx]))
+ if (!(vertices_[link.objidx].incoming_edges () - removed_edges[link.objidx]))
// Add the order that the links were encountered to the priority.
// This ensures that ties between priorities objects are broken in a consistent
// way. More specifically this is set up so that if a set of objects have the same
@@ -317,66 +330,264 @@ struct graph_t
check_success (!queue.in_error ());
check_success (!sorted_graph.in_error ());
if (!check_success (new_id == -1))
- DEBUG_MSG (SUBSET_REPACK, nullptr, "Graph is not fully connected.");
-
- remap_obj_indices (id_map, &sorted_graph);
+ print_orphaned_nodes ();
- sorted_graph.as_array ().reverse ();
+ remap_all_obj_indices (id_map, &sorted_graph);
- vertices_.fini_deep ();
- vertices_ = sorted_graph;
+ hb_swap (vertices_, sorted_graph);
sorted_graph.fini_deep ();
}
/*
- * Creates a copy of child and re-assigns the link from
- * parent to the clone. The copy is a shallow copy, objects
- * linked from child are not duplicated.
+ * Assign unique space numbers to each connected subgraph of 32 bit offset(s).
*/
- void duplicate (unsigned parent_idx, unsigned child_idx)
+ bool assign_32bit_spaces ()
{
- DEBUG_MSG (SUBSET_REPACK, nullptr, " Duplicating %d => %d",
- parent_idx, child_idx);
+ unsigned root_index = root_idx ();
+ hb_set_t visited;
+ hb_set_t roots;
+ for (unsigned i = 0; i <= root_index; i++)
+ {
+ for (auto& l : vertices_[i].obj.links)
+ {
+ if (l.width == 4 && !l.is_signed)
+ {
+ roots.add (l.objidx);
+ find_subgraph (l.objidx, visited);
+ }
+ }
+ }
+
+ // Mark everything not in the subgraphs of 32 bit roots as visited.
+ // This prevents 32 bit subgraphs from being connected via nodes not in the 32 bit subgraphs.
+ visited.invert ();
+
+ if (!roots) return false;
+
+ while (roots)
+ {
+ unsigned next = HB_SET_VALUE_INVALID;
+ if (!roots.next (&next)) break;
+
+ hb_set_t connected_roots;
+ find_connected_nodes (next, roots, visited, connected_roots);
+ isolate_subgraph (connected_roots);
+
+ unsigned next_space = this->next_space ();
+ num_roots_for_space_.push (0);
+ for (unsigned root : connected_roots)
+ {
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "Subgraph %u gets space %u", root, next_space);
+ vertices_[root].space = next_space;
+ num_roots_for_space_[next_space] = num_roots_for_space_[next_space] + 1;
+ distance_invalid = true;
+ positions_invalid = true;
+ }
+
+ // TODO(grieger): special case for GSUB/GPOS use extension promotions to move 16 bit space
+ // into the 32 bit space as needed, instead of using isolation.
+ }
+
+ return true;
+ }
+
+ /*
+ * Isolates the subgraph of nodes reachable from root. Any links to nodes in the subgraph
+ * that originate from outside of the subgraph will be removed by duplicating the linked to
+ * object.
+ *
+ * Indices stored in roots will be updated if any of the roots are duplicated to new indices.
+ */
+ bool isolate_subgraph (hb_set_t& roots)
+ {
+ update_parents ();
+ hb_hashmap_t<unsigned, unsigned> subgraph;
+
+ // incoming edges to root_idx should be all 32 bit in length so we don't need to de-dup these
+ // set the subgraph incoming edge count to match all of root_idx's incoming edges
+ hb_set_t parents;
+ for (unsigned root_idx : roots)
+ {
+ subgraph.set (root_idx, wide_parents (root_idx, parents));
+ find_subgraph (root_idx, subgraph);
+ }
+
+ unsigned original_root_idx = root_idx ();
+ hb_hashmap_t<unsigned, unsigned> index_map;
+ bool made_changes = false;
+ for (auto entry : subgraph.iter ())
+ {
+ const auto& node = vertices_[entry.first];
+ unsigned subgraph_incoming_edges = entry.second;
+
+ if (subgraph_incoming_edges < node.incoming_edges ())
+ {
+ // Only de-dup objects with incoming links from outside the subgraph.
+ made_changes = true;
+ duplicate_subgraph (entry.first, index_map);
+ }
+ }
+
+ if (!made_changes)
+ return false;
+ if (original_root_idx != root_idx ()
+ && parents.has (original_root_idx))
+ {
+ // If the root idx has changed since parents was determined, update root idx in parents
+ parents.add (root_idx ());
+ parents.del (original_root_idx);
+ }
+
+ auto new_subgraph =
+ + subgraph.keys ()
+ | hb_map([&] (unsigned node_idx) {
+ if (index_map.has (node_idx)) return index_map[node_idx];
+ return node_idx;
+ })
+ ;
+
+ remap_obj_indices (index_map, new_subgraph);
+ remap_obj_indices (index_map, parents.iter (), true);
+
+ // Update roots set with new indices as needed.
+ unsigned next = HB_SET_VALUE_INVALID;
+ while (roots.next (&next))
+ {
+ if (index_map.has (next))
+ {
+ roots.del (next);
+ roots.add (index_map[next]);
+ }
+ }
+
+ return true;
+ }
+
+ void find_subgraph (unsigned node_idx, hb_hashmap_t<unsigned, unsigned>& subgraph)
+ {
+ for (const auto& link : vertices_[node_idx].obj.links)
+ {
+ if (subgraph.has (link.objidx))
+ {
+ subgraph.set (link.objidx, subgraph[link.objidx] + 1);
+ continue;
+ }
+ subgraph.set (link.objidx, 1);
+ find_subgraph (link.objidx, subgraph);
+ }
+ }
+
+ void find_subgraph (unsigned node_idx, hb_set_t& subgraph)
+ {
+ if (subgraph.has (node_idx)) return;
+ subgraph.add (node_idx);
+ for (const auto& link : vertices_[node_idx].obj.links)
+ find_subgraph (link.objidx, subgraph);
+ }
+
+ /*
+ * duplicates all nodes in the subgraph reachable from node_idx. Does not re-assign
+ * links. index_map is updated with mappings from old id to new id. If a duplication has already
+ * been performed for a given index, then it will be skipped.
+ */
+ void duplicate_subgraph (unsigned node_idx, hb_hashmap_t<unsigned, unsigned>& index_map)
+ {
+ if (index_map.has (node_idx))
+ return;
+
+ index_map.set (node_idx, duplicate (node_idx));
+ for (const auto& l : object (node_idx).links) {
+ duplicate_subgraph (l.objidx, index_map);
+ }
+ }
+
+ /*
+ * Creates a copy of node_idx and returns it's new index.
+ */
+ unsigned duplicate (unsigned node_idx)
+ {
positions_invalid = true;
+ distance_invalid = true;
auto* clone = vertices_.push ();
- auto& child = vertices_[child_idx];
- clone_buffer_t* buffer = clone_buffers_.push ();
- if (vertices_.in_error ()
- || clone_buffers_.in_error ()
- || !check_success (buffer->copy (child.obj))) {
- return;
+ auto& child = vertices_[node_idx];
+ if (vertices_.in_error ()) {
+ return -1;
}
- clone->obj.head = buffer->head;
- clone->obj.tail = buffer->tail;
+ clone->obj.head = child.obj.head;
+ clone->obj.tail = child.obj.tail;
clone->distance = child.distance;
+ clone->space = child.space;
+ clone->parents.reset ();
+ unsigned clone_idx = vertices_.length - 2;
for (const auto& l : child.obj.links)
+ {
clone->obj.links.push (l);
+ vertices_[l.objidx].parents.push (clone_idx);
+ }
check_success (!clone->obj.links.in_error ());
+ // The last object is the root of the graph, so swap back the root to the end.
+ // The root's obj idx does change, however since it's root nothing else refers to it.
+ // all other obj idx's will be unaffected.
+ vertex_t root = vertices_[vertices_.length - 2];
+ vertices_[clone_idx] = *clone;
+ vertices_[vertices_.length - 1] = root;
+
+ // Since the root moved, update the parents arrays of all children on the root.
+ for (const auto& l : root.obj.links)
+ vertices_[l.objidx].remap_parent (root_idx () - 1, root_idx ());
+
+ return clone_idx;
+ }
+
+ /*
+ * Creates a copy of child and re-assigns the link from
+ * parent to the clone. The copy is a shallow copy, objects
+ * linked from child are not duplicated.
+ */
+ bool duplicate (unsigned parent_idx, unsigned child_idx)
+ {
+ update_parents ();
+
+ unsigned links_to_child = 0;
+ for (const auto& l : vertices_[parent_idx].obj.links)
+ {
+ if (l.objidx == child_idx) links_to_child++;
+ }
+
+ if (vertices_[child_idx].incoming_edges () <= links_to_child)
+ {
+ // Can't duplicate this node, doing so would orphan the original one as all remaining links
+ // to child are from parent.
+ DEBUG_MSG (SUBSET_REPACK, nullptr, " Not duplicating %d => %d",
+ parent_idx, child_idx);
+ return false;
+ }
+
+ DEBUG_MSG (SUBSET_REPACK, nullptr, " Duplicating %d => %d",
+ parent_idx, child_idx);
+
+ unsigned clone_idx = duplicate (child_idx);
+ if (clone_idx == (unsigned) -1) return false;
+ // duplicate shifts the root node idx, so if parent_idx was root update it.
+ if (parent_idx == clone_idx) parent_idx++;
+
auto& parent = vertices_[parent_idx];
- unsigned clone_idx = vertices_.length - 2;
for (unsigned i = 0; i < parent.obj.links.length; i++)
{
auto& l = parent.obj.links[i];
- if (l.objidx == child_idx)
- {
- l.objidx = clone_idx;
- clone->incoming_edges++;
- child.incoming_edges--;
- }
+ if (l.objidx != child_idx)
+ continue;
+
+ reassign_link (l, parent_idx, clone_idx);
}
- // The last object is the root of the graph, so swap back the root to the end.
- // The root's obj idx does change, however since it's root nothing else refers to it.
- // all other obj idx's will be unaffected.
- vertex_t root = vertices_[vertices_.length - 2];
- vertices_[vertices_.length - 2] = *clone;
- vertices_[vertices_.length - 1] = root;
+ return true;
}
/*
@@ -414,7 +625,7 @@ struct graph_t
overflow_record_t r;
r.parent = parent_idx;
- r.link = &link;
+ r.child = link.objidx;
overflows->push (r);
}
}
@@ -423,48 +634,134 @@ struct graph_t
return overflows->length;
}
+ void print_orphaned_nodes ()
+ {
+ if (!DEBUG_ENABLED(SUBSET_REPACK)) return;
+
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "Graph is not fully connected.");
+ parents_invalid = true;
+ update_parents();
+
+ for (unsigned i = 0; i < root_idx (); i++)
+ {
+ const auto& v = vertices_[i];
+ if (!v.parents)
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "Node %u is orphaned.", i);
+ }
+ }
+
void print_overflows (const hb_vector_t<overflow_record_t>& overflows)
{
if (!DEBUG_ENABLED(SUBSET_REPACK)) return;
- update_incoming_edge_count ();
+ update_parents ();
for (const auto& o : overflows)
{
- const auto& child = vertices_[o.link->objidx];
- DEBUG_MSG (SUBSET_REPACK, nullptr, " overflow from %d => %d (%d incoming , %d outgoing)",
+ const auto& parent = vertices_[o.parent];
+ const auto& child = vertices_[o.child];
+ DEBUG_MSG (SUBSET_REPACK, nullptr,
+ " overflow from "
+ "%4d (%4d in, %4d out, space %2d) => "
+ "%4d (%4d in, %4d out, space %2d)",
o.parent,
- o.link->objidx,
- child.incoming_edges,
- child.obj.links.length);
+ parent.incoming_edges (),
+ parent.obj.links.length,
+ space_for (o.parent),
+ o.child,
+ child.incoming_edges (),
+ child.obj.links.length,
+ space_for (o.child));
}
}
+ unsigned num_roots_for_space (unsigned space) const
+ {
+ return num_roots_for_space_[space];
+ }
+
+ unsigned next_space () const
+ {
+ return num_roots_for_space_.length;
+ }
+
+ void move_to_new_space (unsigned index)
+ {
+ auto& node = vertices_[index];
+ num_roots_for_space_.push (1);
+ num_roots_for_space_[node.space] = num_roots_for_space_[node.space] - 1;
+ node.space = num_roots_for_space_.length - 1;
+ }
+
+ unsigned space_for (unsigned index, unsigned* root = nullptr) const
+ {
+ const auto& node = vertices_[index];
+ if (node.space)
+ {
+ if (root != nullptr)
+ *root = index;
+ return node.space;
+ }
+
+ if (!node.parents)
+ {
+ if (root)
+ *root = index;
+ return 0;
+ }
+
+ return space_for (node.parents[0], root);
+ }
+
void err_other_error () { this->successful = false; }
private:
+ /*
+ * Returns the numbers of incoming edges that are 32bits wide.
+ */
+ unsigned wide_parents (unsigned node_idx, hb_set_t& parents) const
+ {
+ unsigned count = 0;
+ hb_set_t visited;
+ for (unsigned p : vertices_[node_idx].parents)
+ {
+ if (visited.has (p)) continue;
+ visited.add (p);
+
+ for (const auto& l : vertices_[p].obj.links)
+ {
+ if (l.objidx == node_idx && l.width == 4 && !l.is_signed)
+ {
+ count++;
+ parents.add (p);
+ }
+ }
+ }
+ return count;
+ }
+
bool check_success (bool success)
{ return this->successful && (success || (err_other_error (), false)); }
/*
* Creates a map from objid to # of incoming edges.
*/
- void update_incoming_edge_count ()
+ void update_parents ()
{
- if (!edge_count_invalid) return;
+ if (!parents_invalid) return;
for (unsigned i = 0; i < vertices_.length; i++)
- vertices_[i].incoming_edges = 0;
+ vertices_[i].parents.reset ();
- for (const vertex_t& v : vertices_)
+ for (unsigned p = 0; p < vertices_.length; p++)
{
- for (auto& l : v.obj.links)
+ for (auto& l : vertices_[p].obj.links)
{
- vertices_[l.objidx].incoming_edges++;
+ vertices_[l.objidx].parents.push (p);
}
}
- edge_count_invalid = false;
+ parents_invalid = false;
}
/*
@@ -515,23 +812,25 @@ struct graph_t
hb_priority_queue_t queue;
queue.insert (0, vertices_.length - 1);
- hb_set_t visited;
+ hb_vector_t<bool> visited;
+ visited.resize (vertices_.length);
while (!queue.in_error () && !queue.is_empty ())
{
unsigned next_idx = queue.pop_minimum ().second;
- if (visited.has (next_idx)) continue;
+ if (visited[next_idx]) continue;
const auto& next = vertices_[next_idx];
int64_t next_distance = vertices_[next_idx].distance;
- visited.add (next_idx);
+ visited[next_idx] = true;
for (const auto& link : next.obj.links)
{
- if (visited.has (link.objidx)) continue;
+ if (visited[link.objidx]) continue;
const auto& child = vertices_[link.objidx].obj;
- int64_t child_weight = child.tail - child.head +
- ((int64_t) 1 << (link.width * 8));
+ unsigned link_width = link.width ? link.width : 4; // treat virtual offsets as 32 bits wide
+ int64_t child_weight = (child.tail - child.head) +
+ ((int64_t) 1 << (link_width * 8)) * (vertices_[link.objidx].space + 1);
int64_t child_distance = next_distance + child_weight;
if (child_distance < vertices_[link.objidx].distance)
@@ -545,7 +844,7 @@ struct graph_t
check_success (!queue.in_error ());
if (!check_success (queue.is_empty ()))
{
- DEBUG_MSG (SUBSET_REPACK, nullptr, "Graph is not fully connected.");
+ print_orphaned_nodes ();
return;
}
@@ -576,6 +875,10 @@ struct graph_t
bool is_valid_offset (int64_t offset,
const hb_serialize_context_t::object_t::link_t& link) const
{
+ if (unlikely (!link.width))
+ // Virtual links can't overflow.
+ return link.is_signed || offset >= 0;
+
if (link.is_signed)
{
if (link.width == 4)
@@ -595,13 +898,50 @@ struct graph_t
}
/*
+ * Updates a link in the graph to point to a different object. Corrects the
+ * parents vector on the previous and new child nodes.
+ */
+ void reassign_link (hb_serialize_context_t::object_t::link_t& link,
+ unsigned parent_idx,
+ unsigned new_idx)
+ {
+ unsigned old_idx = link.objidx;
+ link.objidx = new_idx;
+ vertices_[old_idx].remove_parent (parent_idx);
+ vertices_[new_idx].parents.push (parent_idx);
+ }
+
+ /*
+ * Updates all objidx's in all links using the provided mapping. Corrects incoming edge counts.
+ */
+ template<typename Iterator, hb_requires (hb_is_iterator (Iterator))>
+ void remap_obj_indices (const hb_hashmap_t<unsigned, unsigned>& id_map,
+ Iterator subgraph,
+ bool only_wide = false)
+ {
+ if (!id_map) return;
+ for (unsigned i : subgraph)
+ {
+ for (unsigned j = 0; j < vertices_[i].obj.links.length; j++)
+ {
+ auto& link = vertices_[i].obj.links[j];
+ if (!id_map.has (link.objidx)) continue;
+ if (only_wide && !(link.width == 4 && !link.is_signed)) continue;
+
+ reassign_link (link, i, id_map[link.objidx]);
+ }
+ }
+ }
+
+ /*
* Updates all objidx's in all links using the provided mapping.
*/
- void remap_obj_indices (const hb_vector_t<unsigned>& id_map,
- hb_vector_t<vertex_t>* sorted_graph) const
+ void remap_all_obj_indices (const hb_vector_t<unsigned>& id_map,
+ hb_vector_t<vertex_t>* sorted_graph) const
{
for (unsigned i = 0; i < sorted_graph->length; i++)
{
+ (*sorted_graph)[i].remap_parents (id_map);
for (unsigned j = 0; j < (*sorted_graph)[i].obj.links.length; j++)
{
auto& link = (*sorted_graph)[i].obj.links[j];
@@ -631,6 +971,9 @@ struct graph_t
{
switch (link.width)
{
+ case 0:
+ // Virtual links aren't serialized.
+ return;
case 4:
if (link.is_signed)
{
@@ -656,17 +999,120 @@ struct graph_t
}
}
+ /*
+ * Finds all nodes in targets that are reachable from start_idx, nodes in visited will be skipped.
+ * For this search the graph is treated as being undirected.
+ *
+ * Connected targets will be added to connected and removed from targets. All visited nodes
+ * will be added to visited.
+ */
+ void find_connected_nodes (unsigned start_idx,
+ hb_set_t& targets,
+ hb_set_t& visited,
+ hb_set_t& connected)
+ {
+ if (visited.has (start_idx)) return;
+ visited.add (start_idx);
+
+ if (targets.has (start_idx))
+ {
+ targets.del (start_idx);
+ connected.add (start_idx);
+ }
+
+ const auto& v = vertices_[start_idx];
+
+ // Graph is treated as undirected so search children and parents of start_idx
+ for (const auto& l : v.obj.links)
+ find_connected_nodes (l.objidx, targets, visited, connected);
+
+ for (unsigned p : v.parents)
+ find_connected_nodes (p, targets, visited, connected);
+ }
+
public:
// TODO(garretrieger): make private, will need to move most of offset overflow code into graph.
hb_vector_t<vertex_t> vertices_;
private:
- hb_vector_t<clone_buffer_t> clone_buffers_;
- bool edge_count_invalid;
+ bool parents_invalid;
bool distance_invalid;
bool positions_invalid;
bool successful;
+ hb_vector_t<unsigned> num_roots_for_space_;
};
+static bool _try_isolating_subgraphs (const hb_vector_t<graph_t::overflow_record_t>& overflows,
+ graph_t& sorted_graph)
+{
+ for (int i = overflows.length - 1; i >= 0; i--)
+ {
+ const graph_t::overflow_record_t& r = overflows[i];
+ unsigned root = 0;
+ unsigned space = sorted_graph.space_for (r.parent, &root);
+ if (!space) continue;
+ if (sorted_graph.num_roots_for_space (space) <= 1) continue;
+
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "Overflow in space %d moving subgraph %d to space %d.",
+ space,
+ root,
+ sorted_graph.next_space ());
+
+ hb_set_t roots;
+ roots.add (root);
+ sorted_graph.isolate_subgraph (roots);
+ for (unsigned new_root : roots)
+ sorted_graph.move_to_new_space (new_root);
+ return true;
+ }
+ return false;
+}
+
+static bool _process_overflows (const hb_vector_t<graph_t::overflow_record_t>& overflows,
+ hb_set_t& priority_bumped_parents,
+ graph_t& sorted_graph)
+{
+ bool resolution_attempted = false;
+
+ // Try resolving the furthest overflows first.
+ for (int i = overflows.length - 1; i >= 0; i--)
+ {
+ const graph_t::overflow_record_t& r = overflows[i];
+ const auto& child = sorted_graph.vertices_[r.child];
+ if (child.is_shared ())
+ {
+ // The child object is shared, we may be able to eliminate the overflow
+ // by duplicating it.
+ if (!sorted_graph.duplicate (r.parent, r.child)) continue;
+ return true;
+ }
+
+ if (child.is_leaf () && !priority_bumped_parents.has (r.parent))
+ {
+ // This object is too far from it's parent, attempt to move it closer.
+ //
+ // TODO(garretrieger): initially limiting this to leaf's since they can be
+ // moved closer with fewer consequences. However, this can
+ // likely can be used for non-leafs as well.
+ // TODO(garretrieger): add a maximum priority, don't try to raise past this.
+ // TODO(garretrieger): also try lowering priority of the parent. Make it
+ // get placed further up in the ordering, closer to it's children.
+ // this is probably preferable if the total size of the parent object
+ // is < then the total size of the children (and the parent can be moved).
+ // Since in that case moving the parent will cause a smaller increase in
+ // the length of other offsets.
+ sorted_graph.raise_childrens_priority (r.parent);
+ priority_bumped_parents.add (r.parent);
+ resolution_attempted = true;
+ continue;
+ }
+
+ // TODO(garretrieger): add additional offset resolution strategies
+ // - Promotion to extension lookups.
+ // - Table splitting.
+ }
+
+ return resolution_attempted;
+}
/*
* Attempts to modify the topological sorting of the provided object graph to
@@ -677,10 +1123,15 @@ struct graph_t
* If necessary the structure of the graph may be modified in ways that do not
* affect the functionality of the graph. For example shared objects may be
* duplicated.
+ *
+ * For a detailed writeup describing how the algorithm operates see:
+ * docs/repacker.md
*/
inline void
hb_resolve_overflows (const hb_vector_t<hb_serialize_context_t::object_t *>& packed,
- hb_serialize_context_t* c) {
+ hb_tag_t table_tag,
+ hb_serialize_context_t* c,
+ unsigned max_rounds = 10) {
// Kahn sort is ~twice as fast as shortest distance sort and works for many fonts
// so try it first to save time.
graph_t sorted_graph (packed);
@@ -693,68 +1144,36 @@ hb_resolve_overflows (const hb_vector_t<hb_serialize_context_t::object_t *>& pac
sorted_graph.sort_shortest_distance ();
+ if ((table_tag == HB_OT_TAG_GPOS
+ || table_tag == HB_OT_TAG_GSUB)
+ && sorted_graph.will_overflow ())
+ {
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "Assigning spaces to 32 bit subgraphs.");
+ if (sorted_graph.assign_32bit_spaces ())
+ sorted_graph.sort_shortest_distance ();
+ }
+
unsigned round = 0;
hb_vector_t<graph_t::overflow_record_t> overflows;
// TODO(garretrieger): select a good limit for max rounds.
while (!sorted_graph.in_error ()
&& sorted_graph.will_overflow (&overflows)
- && round++ < 10) {
- DEBUG_MSG (SUBSET_REPACK, nullptr, "=== Over flow resolution round %d ===", round);
+ && round++ < max_rounds) {
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "=== Overflow resolution round %d ===", round);
sorted_graph.print_overflows (overflows);
- bool resolution_attempted = false;
hb_set_t priority_bumped_parents;
- // Try resolving the furthest overflows first.
- for (int i = overflows.length - 1; i >= 0; i--)
+
+ if (!_try_isolating_subgraphs (overflows, sorted_graph))
{
- const graph_t::overflow_record_t& r = overflows[i];
- const auto& child = sorted_graph.vertices_[r.link->objidx];
- if (child.is_shared ())
+ if (!_process_overflows (overflows, priority_bumped_parents, sorted_graph))
{
- // The child object is shared, we may be able to eliminate the overflow
- // by duplicating it.
- sorted_graph.duplicate (r.parent, r.link->objidx);
- resolution_attempted = true;
-
- // Stop processing overflows for this round so that object order can be
- // updated to account for the newly added object.
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "No resolution available :(");
break;
}
-
- if (child.is_leaf () && !priority_bumped_parents.has (r.parent))
- {
- // This object is too far from it's parent, attempt to move it closer.
- //
- // TODO(garretrieger): initially limiting this to leaf's since they can be
- // moved closer with fewer consequences. However, this can
- // likely can be used for non-leafs as well.
- // TODO(garretrieger): add a maximum priority, don't try to raise past this.
- // TODO(garretrieger): also try lowering priority of the parent. Make it
- // get placed further up in the ordering, closer to it's children.
- // this is probably preferable if the total size of the parent object
- // is < then the total size of the children (and the parent can be moved).
- // Since in that case moving the parent will cause a smaller increase in
- // the length of other offsets.
- sorted_graph.raise_childrens_priority (r.parent);
- priority_bumped_parents.add (r.parent);
- resolution_attempted = true;
- continue;
- }
-
- // TODO(garretrieger): add additional offset resolution strategies
- // - Promotion to extension lookups.
- // - Table splitting.
- }
-
- if (resolution_attempted)
- {
- sorted_graph.sort_shortest_distance ();
- continue;
}
- DEBUG_MSG (SUBSET_REPACK, nullptr, "No resolution available :(");
- c->err (HB_SERIALIZE_ERROR_OFFSET_OVERFLOW);
- return;
+ sorted_graph.sort_shortest_distance ();
}
if (sorted_graph.in_error ())
@@ -762,8 +1181,14 @@ hb_resolve_overflows (const hb_vector_t<hb_serialize_context_t::object_t *>& pac
c->err (HB_SERIALIZE_ERROR_OTHER);
return;
}
+
+ if (sorted_graph.will_overflow ())
+ {
+ c->err (HB_SERIALIZE_ERROR_OFFSET_OVERFLOW);
+ DEBUG_MSG (SUBSET_REPACK, nullptr, "Offset overflow resolution failed.");
+ return;
+ }
sorted_graph.serialize (c);
}
-
#endif /* HB_REPACKER_HH */
diff --git a/thirdparty/harfbuzz/src/hb-sanitize.hh b/thirdparty/harfbuzz/src/hb-sanitize.hh
index 56c46015a6..2e536c7a81 100644
--- a/thirdparty/harfbuzz/src/hb-sanitize.hh
+++ b/thirdparty/harfbuzz/src/hb-sanitize.hh
@@ -145,14 +145,14 @@ struct hb_sanitize_context_t :
private:
template <typename T, typename ...Ts> auto
_dispatch (const T &obj, hb_priority<1>, Ts&&... ds) HB_AUTO_RETURN
- ( obj.sanitize (this, hb_forward<Ts> (ds)...) )
+ ( obj.sanitize (this, std::forward<Ts> (ds)...) )
template <typename T, typename ...Ts> auto
_dispatch (const T &obj, hb_priority<0>, Ts&&... ds) HB_AUTO_RETURN
- ( obj.dispatch (this, hb_forward<Ts> (ds)...) )
+ ( obj.dispatch (this, std::forward<Ts> (ds)...) )
public:
template <typename T, typename ...Ts> auto
dispatch (const T &obj, Ts&&... ds) HB_AUTO_RETURN
- ( _dispatch (obj, hb_prioritize, hb_forward<Ts> (ds)...) )
+ ( _dispatch (obj, hb_prioritize, std::forward<Ts> (ds)...) )
void init (hb_blob_t *b)
diff --git a/thirdparty/harfbuzz/src/hb-serialize.hh b/thirdparty/harfbuzz/src/hb-serialize.hh
index 7212d9872a..57689916f6 100644
--- a/thirdparty/harfbuzz/src/hb-serialize.hh
+++ b/thirdparty/harfbuzz/src/hb-serialize.hh
@@ -189,8 +189,8 @@ struct hb_serialize_context_t
{ return check_success (!hb_deref (obj).in_error ()); }
template <typename T1, typename... Ts> bool propagate_error (T1 &&o1, Ts&&... os)
- { return propagate_error (hb_forward<T1> (o1)) &&
- propagate_error (hb_forward<Ts> (os)...); }
+ { return propagate_error (std::forward<T1> (o1)) &&
+ propagate_error (std::forward<Ts> (os)...); }
/* To be called around main operation. */
template <typename Type>
@@ -358,6 +358,35 @@ struct hb_serialize_context_t
assert (packed.tail ()->head == tail);
}
+ // Adds a virtual link from the current object to objidx. A virtual link is not associated with
+ // an actual offset field. They are solely used to enforce ordering constraints between objects.
+ // Adding a virtual link from object a to object b will ensure that object b is always packed after
+ // object a in the final serialized order.
+ //
+ // This is useful in certain situtations where there needs to be a specific ordering in the
+ // final serialization. Such as when platform bugs require certain orderings, or to provide
+ // guidance to the repacker for better offset overflow resolution.
+ void add_virtual_link (objidx_t objidx)
+ {
+ if (unlikely (in_error ())) return;
+
+ if (!objidx)
+ return;
+
+ assert (current);
+
+ auto& link = *current->links.push ();
+ if (current->links.in_error ())
+ err (HB_SERIALIZE_ERROR_OTHER);
+
+ link.width = 0;
+ link.objidx = objidx;
+ link.is_signed = 0;
+ link.whence = 0;
+ link.position = 0;
+ link.bias = 0;
+ }
+
template <typename T>
void add_link (T &ofs, objidx_t objidx,
whence_t whence = Head,
@@ -376,11 +405,22 @@ struct hb_serialize_context_t
err (HB_SERIALIZE_ERROR_OTHER);
link.width = sizeof (T);
- link.is_signed = hb_is_signed (hb_unwrap_type (T));
+ link.objidx = objidx;
+ if (unlikely (!sizeof (T)))
+ {
+ // This link is not associated with an actual offset and exists merely to enforce
+ // an ordering constraint.
+ link.is_signed = 0;
+ link.whence = 0;
+ link.position = 0;
+ link.bias = 0;
+ return;
+ }
+
+ link.is_signed = std::is_signed<hb_unwrap_type (T)>::value;
link.whence = (unsigned) whence;
link.position = (const char *) &ofs - current->head;
link.bias = bias;
- link.objidx = objidx;
}
unsigned to_bias (const void *base) const
@@ -402,6 +442,8 @@ struct hb_serialize_context_t
for (const object_t* parent : ++hb_iter (packed))
for (const object_t::link_t &link : parent->links)
{
+ if (unlikely (!link.width)) continue; // Don't need to resolve virtual offsets
+
const object_t* child = packed[link.objidx];
if (unlikely (!child)) { err (HB_SERIALIZE_ERROR_OTHER); return; }
unsigned offset = 0;
@@ -494,7 +536,7 @@ struct hb_serialize_context_t
template <typename Type, typename ...Ts> auto
_copy (const Type &src, hb_priority<1>, Ts&&... ds) HB_RETURN
- (Type *, src.copy (this, hb_forward<Ts> (ds)...))
+ (Type *, src.copy (this, std::forward<Ts> (ds)...))
template <typename Type> auto
_copy (const Type &src, hb_priority<0>) -> decltype (&(hb_declval<Type> () = src))
@@ -509,16 +551,16 @@ struct hb_serialize_context_t
* instead of memcpy(). */
template <typename Type, typename ...Ts>
Type *copy (const Type &src, Ts&&... ds)
- { return _copy (src, hb_prioritize, hb_forward<Ts> (ds)...); }
+ { return _copy (src, hb_prioritize, std::forward<Ts> (ds)...); }
template <typename Type, typename ...Ts>
Type *copy (const Type *src, Ts&&... ds)
- { return copy (*src, hb_forward<Ts> (ds)...); }
+ { return copy (*src, std::forward<Ts> (ds)...); }
template<typename Iterator,
hb_requires (hb_is_iterator (Iterator)),
typename ...Ts>
void copy_all (Iterator it, Ts&&... ds)
- { for (decltype (*it) _ : it) copy (_, hb_forward<Ts> (ds)...); }
+ { for (decltype (*it) _ : it) copy (_, std::forward<Ts> (ds)...); }
template <typename Type>
hb_serialize_context_t& operator << (const Type &obj) & { embed (obj); return *this; }
@@ -546,10 +588,10 @@ struct hb_serialize_context_t
template <typename Type, typename ...Ts>
Type *extend (Type *obj, Ts&&... ds)
- { return extend_size (obj, obj->get_size (hb_forward<Ts> (ds)...)); }
+ { return extend_size (obj, obj->get_size (std::forward<Ts> (ds)...)); }
template <typename Type, typename ...Ts>
Type *extend (Type &obj, Ts&&... ds)
- { return extend (hb_addressof (obj), hb_forward<Ts> (ds)...); }
+ { return extend (hb_addressof (obj), std::forward<Ts> (ds)...); }
/* Output routines. */
hb_bytes_t copy_bytes () const
diff --git a/thirdparty/harfbuzz/src/hb-set-digest.hh b/thirdparty/harfbuzz/src/hb-set-digest.hh
index 1ef1ba5fb2..7d4979b73b 100644
--- a/thirdparty/harfbuzz/src/hb-set-digest.hh
+++ b/thirdparty/harfbuzz/src/hb-set-digest.hh
@@ -168,15 +168,17 @@ struct hb_set_digest_combiner_t
* There is not much science to this: it's a result of intuition
* and testing.
*/
-typedef hb_set_digest_combiner_t
-<
- hb_set_digest_lowest_bits_t<unsigned long, 4>,
+using hb_set_digest_t =
hb_set_digest_combiner_t
<
- hb_set_digest_lowest_bits_t<unsigned long, 0>,
- hb_set_digest_lowest_bits_t<unsigned long, 9>
+ hb_set_digest_lowest_bits_t<unsigned long, 4>,
+ hb_set_digest_combiner_t
+ <
+ hb_set_digest_lowest_bits_t<unsigned long, 0>,
+ hb_set_digest_lowest_bits_t<unsigned long, 9>
+ >
>
-> hb_set_digest_t;
+;
#endif /* HB_SET_DIGEST_HH */
diff --git a/thirdparty/harfbuzz/src/hb-set.hh b/thirdparty/harfbuzz/src/hb-set.hh
index 437e234361..8841427189 100644
--- a/thirdparty/harfbuzz/src/hb-set.hh
+++ b/thirdparty/harfbuzz/src/hb-set.hh
@@ -42,9 +42,22 @@ struct hb_sparseset_t
~hb_sparseset_t () { fini (); }
hb_sparseset_t (const hb_sparseset_t& other) : hb_sparseset_t () { set (other); }
- void operator= (const hb_sparseset_t& other) { set (other); }
- // TODO Add move construtor/assign
- // TODO Add constructor for Iterator
+ hb_sparseset_t (hb_sparseset_t&& other) : hb_sparseset_t () { s = std::move (other.s); }
+ hb_sparseset_t& operator= (const hb_sparseset_t& other) { set (other); return *this; }
+ hb_sparseset_t& operator= (hb_sparseset_t&& other) { hb_swap (*this, other); return *this; }
+ friend void swap (hb_sparseset_t& a, hb_sparseset_t& b) { hb_swap (a.s, b.s); }
+
+ hb_sparseset_t (std::initializer_list<hb_codepoint_t> lst) : hb_sparseset_t ()
+ {
+ for (auto&& item : lst)
+ add (item);
+ }
+ template <typename Iterable,
+ hb_requires (hb_is_iterable (Iterable))>
+ hb_sparseset_t (const Iterable &o) : hb_sparseset_t ()
+ {
+ hb_copy (o, *this);
+ }
void init_shallow () { s.init (); }
void init ()
@@ -140,7 +153,18 @@ struct hb_sparseset_t
operator iter_t () const { return iter (); }
};
-struct hb_set_t : hb_sparseset_t<hb_bit_set_invertible_t> {};
+struct hb_set_t : hb_sparseset_t<hb_bit_set_invertible_t>
+{
+ hb_set_t () = default;
+ ~hb_set_t () = default;
+ hb_set_t (hb_set_t& o) = default;
+ hb_set_t& operator= (const hb_set_t& other) = default;
+ hb_set_t& operator= (hb_set_t&& other) = default;
+ hb_set_t (std::initializer_list<hb_codepoint_t> lst) : hb_sparseset_t<hb_bit_set_invertible_t> (lst) {}
+ template <typename Iterable,
+ hb_requires (hb_is_iterable (Iterable))>
+ hb_set_t (const Iterable &o) : hb_sparseset_t<hb_bit_set_invertible_t> (o) {}
+};
static_assert (hb_set_t::INVALID == HB_SET_VALUE_INVALID, "");
diff --git a/thirdparty/harfbuzz/src/hb-style.cc b/thirdparty/harfbuzz/src/hb-style.cc
index dfb1017c88..f1b44cea53 100644
--- a/thirdparty/harfbuzz/src/hb-style.cc
+++ b/thirdparty/harfbuzz/src/hb-style.cc
@@ -113,7 +113,9 @@ hb_style_get_value (hb_font_t *font, hb_style_tag_t style_tag)
case HB_STYLE_TAG_WIDTH:
return face->table.OS2->has_data ()
? face->table.OS2->get_width ()
- : (face->table.head->is_condensed () ? 75 : 100);
+ : (face->table.head->is_condensed () ? 75 :
+ face->table.head->is_expanded () ? 125 :
+ 100);
case HB_STYLE_TAG_WEIGHT:
return face->table.OS2->has_data ()
? face->table.OS2->usWeightClass
diff --git a/thirdparty/harfbuzz/src/hb-subset-input.hh b/thirdparty/harfbuzz/src/hb-subset-input.hh
index a3e28b0562..07c0e22676 100644
--- a/thirdparty/harfbuzz/src/hb-subset-input.hh
+++ b/thirdparty/harfbuzz/src/hb-subset-input.hh
@@ -42,17 +42,19 @@ struct hb_subset_input_t
{
hb_object_header_t header;
+ struct sets_t {
+ hb_set_t *glyphs;
+ hb_set_t *unicodes;
+ hb_set_t *no_subset_tables;
+ hb_set_t *drop_tables;
+ hb_set_t *name_ids;
+ hb_set_t *name_languages;
+ hb_set_t *layout_features;
+ };
+
union {
- struct {
- hb_set_t *glyphs;
- hb_set_t *unicodes;
- hb_set_t *no_subset_tables;
- hb_set_t *drop_tables;
- hb_set_t *name_ids;
- hb_set_t *name_languages;
- hb_set_t *layout_features;
- } sets;
- hb_set_t* set_ptrs[sizeof (sets) / sizeof (hb_set_t*)];
+ sets_t sets;
+ hb_set_t* set_ptrs[sizeof (sets_t) / sizeof (hb_set_t*)];
};
unsigned flags;
diff --git a/thirdparty/harfbuzz/src/hb-subset-plan.cc b/thirdparty/harfbuzz/src/hb-subset-plan.cc
index 677df35fad..1e195ff660 100644
--- a/thirdparty/harfbuzz/src/hb-subset-plan.cc
+++ b/thirdparty/harfbuzz/src/hb-subset-plan.cc
@@ -38,6 +38,7 @@
#include "hb-ot-color-colrv1-closure.hh"
#include "hb-ot-var-fvar-table.hh"
#include "hb-ot-stat-table.hh"
+#include "hb-ot-math-table.hh"
typedef hb_hashmap_t<unsigned, hb_set_t *, (unsigned)-1, nullptr> script_langsys_map;
@@ -221,6 +222,50 @@ _cmap_closure (hb_face_t *face,
cmap.fini ();
}
+static void _colr_closure (hb_face_t *face,
+ hb_map_t *layers_map,
+ hb_map_t *palettes_map,
+ hb_set_t *glyphs_colred)
+{
+ OT::COLR::accelerator_t colr;
+ colr.init (face);
+ if (!colr.is_valid ()) return;
+
+ unsigned iteration_count = 0;
+ hb_set_t palette_indices, layer_indices;
+ unsigned glyphs_num;
+ {
+ glyphs_num = glyphs_colred->get_population ();
+
+ // Collect all glyphs referenced by COLRv0
+ hb_set_t glyphset_colrv0;
+ for (hb_codepoint_t gid : glyphs_colred->iter ())
+ colr.closure_glyphs (gid, &glyphset_colrv0);
+
+ glyphs_colred->union_ (glyphset_colrv0);
+
+ //closure for COLRv1
+ colr.closure_forV1 (glyphs_colred, &layer_indices, &palette_indices);
+ } while (iteration_count++ <= HB_CLOSURE_MAX_STAGES &&
+ glyphs_num != glyphs_colred->get_population ());
+
+ colr.closure_V0palette_indices (glyphs_colred, &palette_indices);
+ _remap_indexes (&layer_indices, layers_map);
+ _remap_palette_indexes (&palette_indices, palettes_map);
+ colr.fini ();
+}
+
+static inline void
+_math_closure (hb_face_t *face,
+ hb_set_t *glyphset)
+{
+ hb_blob_ptr_t<OT::MATH> math = hb_sanitize_context_t ().reference_table<OT::MATH> (face);
+ if (math->has_data ())
+ math->closure_glyphs (glyphset);
+ math.destroy ();
+}
+
+
static inline void
_remove_invalid_gids (hb_set_t *glyphs,
unsigned int num_glyphs)
@@ -301,12 +346,10 @@ _populate_gids_to_retain (hb_subset_plan_t* plan,
#ifndef HB_NO_SUBSET_CFF
OT::cff1::accelerator_t cff;
#endif
- OT::COLR::accelerator_t colr;
glyf.init (plan->source);
#ifndef HB_NO_SUBSET_CFF
cff.init (plan->source);
#endif
- colr.init (plan->source);
plan->_glyphset_gsub->add (0); // Not-def
@@ -334,30 +377,17 @@ _populate_gids_to_retain (hb_subset_plan_t* plan,
#endif
_remove_invalid_gids (plan->_glyphset_gsub, plan->source->get_num_glyphs ());
- // Collect all glyphs referenced by COLRv0
- hb_set_t* cur_glyphset = plan->_glyphset_gsub;
- hb_set_t glyphset_colrv0;
- if (colr.is_valid ())
- {
- glyphset_colrv0.union_ (*cur_glyphset);
- for (hb_codepoint_t gid : cur_glyphset->iter ())
- colr.closure_glyphs (gid, &glyphset_colrv0);
- cur_glyphset = &glyphset_colrv0;
- }
+ hb_set_set (plan->_glyphset_mathed, plan->_glyphset_gsub);
+ _math_closure (plan->source, plan->_glyphset_mathed);
+ _remove_invalid_gids (plan->_glyphset_mathed, plan->source->get_num_glyphs ());
- hb_set_t palette_indices;
- colr.closure_V0palette_indices (cur_glyphset, &palette_indices);
-
- hb_set_t layer_indices;
- colr.closure_forV1 (cur_glyphset, &layer_indices, &palette_indices);
- _remap_indexes (&layer_indices, plan->colrv1_layers);
- _remap_palette_indexes (&palette_indices, plan->colr_palettes);
- colr.fini ();
- _remove_invalid_gids (cur_glyphset, plan->source->get_num_glyphs ());
+ hb_set_t cur_glyphset = *plan->_glyphset_mathed;
+ _colr_closure (plan->source, plan->colrv1_layers, plan->colr_palettes, &cur_glyphset);
+ _remove_invalid_gids (&cur_glyphset, plan->source->get_num_glyphs ());
// Populate a full set of glyphs to retain by adding all referenced
// composite glyphs.
- for (hb_codepoint_t gid : cur_glyphset->iter ())
+ for (hb_codepoint_t gid : cur_glyphset.iter ())
{
glyf.add_gid_and_children (gid, plan->_glyphset);
#ifndef HB_NO_SUBSET_CFF
@@ -468,6 +498,7 @@ hb_subset_plan_create (hb_face_t *face,
plan->_glyphset = hb_set_create ();
plan->_glyphset_gsub = hb_set_create ();
+ plan->_glyphset_mathed = hb_set_create ();
plan->codepoint_to_glyph = hb_map_create ();
plan->glyph_map = hb_map_create ();
plan->reverse_glyph_map = hb_map_create ();
@@ -535,6 +566,7 @@ hb_subset_plan_destroy (hb_subset_plan_t *plan)
hb_map_destroy (plan->reverse_glyph_map);
hb_set_destroy (plan->_glyphset);
hb_set_destroy (plan->_glyphset_gsub);
+ hb_set_destroy (plan->_glyphset_mathed);
hb_map_destroy (plan->gsub_lookups);
hb_map_destroy (plan->gpos_lookups);
hb_map_destroy (plan->gsub_features);
diff --git a/thirdparty/harfbuzz/src/hb-subset-plan.hh b/thirdparty/harfbuzz/src/hb-subset-plan.hh
index 92a4e27ccc..c30feeb42f 100644
--- a/thirdparty/harfbuzz/src/hb-subset-plan.hh
+++ b/thirdparty/harfbuzz/src/hb-subset-plan.hh
@@ -77,6 +77,7 @@ struct hb_subset_plan_t
unsigned int _num_output_glyphs;
hb_set_t *_glyphset;
hb_set_t *_glyphset_gsub;
+ hb_set_t *_glyphset_mathed;
//active lookups we'd like to retain
hb_map_t *gsub_lookups;
diff --git a/thirdparty/harfbuzz/src/hb-subset.cc b/thirdparty/harfbuzz/src/hb-subset.cc
index 34f92e0d81..048bdf1888 100644
--- a/thirdparty/harfbuzz/src/hb-subset.cc
+++ b/thirdparty/harfbuzz/src/hb-subset.cc
@@ -52,6 +52,7 @@
#include "hb-ot-layout-gpos-table.hh"
#include "hb-ot-var-gvar-table.hh"
#include "hb-ot-var-hvar-table.hh"
+#include "hb-ot-math-table.hh"
#include "hb-repacker.hh"
/**
@@ -109,7 +110,7 @@ _repack (hb_tag_t tag, const hb_serialize_context_t& c)
return nullptr;
hb_serialize_context_t repacked ((void *) buf, buf_size);
- hb_resolve_overflows (c.object_graph (), &repacked);
+ hb_resolve_overflows (c.object_graph (), tag, &repacked);
if (unlikely (repacked.in_error ()))
// TODO(garretrieger): refactor so we can share the resize/retry logic with the subset
@@ -305,6 +306,7 @@ _subset_table (hb_subset_plan_t *plan, hb_tag_t tag)
case HB_OT_TAG_CPAL: return _subset<const OT::CPAL> (plan);
case HB_OT_TAG_CBLC: return _subset<const OT::CBLC> (plan);
case HB_OT_TAG_CBDT: return true; /* skip CBDT, handled by CBLC */
+ case HB_OT_TAG_MATH: return _subset<const OT::MATH> (plan);
#ifndef HB_NO_SUBSET_CFF
case HB_OT_TAG_cff1: return _subset<const OT::cff1> (plan);
diff --git a/thirdparty/harfbuzz/src/hb-subset.hh b/thirdparty/harfbuzz/src/hb-subset.hh
index c9b01c67f3..98c5f06fbf 100644
--- a/thirdparty/harfbuzz/src/hb-subset.hh
+++ b/thirdparty/harfbuzz/src/hb-subset.hh
@@ -45,14 +45,14 @@ struct hb_subset_context_t :
private:
template <typename T, typename ...Ts> auto
_dispatch (const T &obj, hb_priority<1>, Ts&&... ds) HB_AUTO_RETURN
- ( obj.subset (this, hb_forward<Ts> (ds)...) )
+ ( obj.subset (this, std::forward<Ts> (ds)...) )
template <typename T, typename ...Ts> auto
_dispatch (const T &obj, hb_priority<0>, Ts&&... ds) HB_AUTO_RETURN
- ( obj.dispatch (this, hb_forward<Ts> (ds)...) )
+ ( obj.dispatch (this, std::forward<Ts> (ds)...) )
public:
template <typename T, typename ...Ts> auto
dispatch (const T &obj, Ts&&... ds) HB_AUTO_RETURN
- ( _dispatch (obj, hb_prioritize, hb_forward<Ts> (ds)...) )
+ ( _dispatch (obj, hb_prioritize, std::forward<Ts> (ds)...) )
hb_blob_t *source_blob;
hb_subset_plan_t *plan;
diff --git a/thirdparty/harfbuzz/src/hb-unicode.hh b/thirdparty/harfbuzz/src/hb-unicode.hh
index 0a79944107..4c28bb0cdf 100644
--- a/thirdparty/harfbuzz/src/hb-unicode.hh
+++ b/thirdparty/harfbuzz/src/hb-unicode.hh
@@ -121,7 +121,7 @@ HB_UNICODE_FUNCS_IMPLEMENT_CALLBACKS_SIMPLE
static hb_bool_t
is_variation_selector (hb_codepoint_t unicode)
{
- /* U+180B..180D MONGOLIAN FREE VARIATION SELECTORs are handled in the
+ /* U+180B..180D, U+180F MONGOLIAN FREE VARIATION SELECTORs are handled in the
* Arabic shaper. No need to match them here. */
return unlikely (hb_in_ranges<hb_codepoint_t> (unicode,
0xFE00u, 0xFE0Fu, /* VARIATION SELECTOR-1..16 */
@@ -136,7 +136,7 @@ HB_UNICODE_FUNCS_IMPLEMENT_CALLBACKS_SIMPLE
* As such, we make exceptions for those four.
* Also ignoring U+1BCA0..1BCA3. https://github.com/harfbuzz/harfbuzz/issues/503
*
- * Unicode 7.0:
+ * Unicode 14.0:
* $ grep '; Default_Ignorable_Code_Point ' DerivedCoreProperties.txt | sed 's/;.*#/#/'
* 00AD # Cf SOFT HYPHEN
* 034F # Mn COMBINING GRAPHEME JOINER
@@ -145,6 +145,7 @@ HB_UNICODE_FUNCS_IMPLEMENT_CALLBACKS_SIMPLE
* 17B4..17B5 # Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA
* 180B..180D # Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE
* 180E # Cf MONGOLIAN VOWEL SEPARATOR
+ * 180F # Mn MONGOLIAN FREE VARIATION SELECTOR FOUR
* 200B..200F # Cf [5] ZERO WIDTH SPACE..RIGHT-TO-LEFT MARK
* 202A..202E # Cf [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE
* 2060..2064 # Cf [5] WORD JOINER..INVISIBLE PLUS
diff --git a/thirdparty/harfbuzz/src/hb-vector.hh b/thirdparty/harfbuzz/src/hb-vector.hh
index 110d457caf..b0a1e5e966 100644
--- a/thirdparty/harfbuzz/src/hb-vector.hh
+++ b/thirdparty/harfbuzz/src/hb-vector.hh
@@ -38,10 +38,23 @@ struct hb_vector_t
typedef Type item_t;
static constexpr unsigned item_size = hb_static_size (Type);
- hb_vector_t () { init (); }
- hb_vector_t (const hb_vector_t &o)
+ hb_vector_t () = default;
+ hb_vector_t (std::initializer_list<Type> lst) : hb_vector_t ()
+ {
+ alloc (lst.size ());
+ for (auto&& item : lst)
+ push (item);
+ }
+ template <typename Iterable,
+ hb_requires (hb_is_iterable (Iterable))>
+ hb_vector_t (const Iterable &o) : hb_vector_t ()
+ {
+ if (hb_iter (o).is_random_access_iterator)
+ alloc (hb_len (hb_iter (o)));
+ hb_copy (o, *this);
+ }
+ hb_vector_t (const hb_vector_t &o) : hb_vector_t ()
{
- init ();
alloc (o.length);
hb_copy (o, *this);
}
@@ -55,11 +68,11 @@ struct hb_vector_t
~hb_vector_t () { fini (); }
private:
- int allocated; /* == -1 means allocation failed. */
+ int allocated = 0; /* == -1 means allocation failed. */
public:
- unsigned int length;
+ unsigned int length = 0;
public:
- Type *arrayZ;
+ Type *arrayZ = nullptr;
void init ()
{
@@ -87,6 +100,13 @@ struct hb_vector_t
resize (0);
}
+ friend void swap (hb_vector_t& a, hb_vector_t& b)
+ {
+ hb_swap (a.allocated, b.allocated);
+ hb_swap (a.length, b.length);
+ hb_swap (a.arrayZ, b.arrayZ);
+ }
+
hb_vector_t& operator = (const hb_vector_t &o)
{
reset ();
@@ -96,11 +116,7 @@ struct hb_vector_t
}
hb_vector_t& operator = (hb_vector_t &&o)
{
- fini ();
- allocated = o.allocated;
- length = o.length;
- arrayZ = o.arrayZ;
- o.init ();
+ hb_swap (*this, o);
return *this;
}
@@ -134,7 +150,7 @@ struct hb_vector_t
/* Sink interface. */
template <typename T>
- hb_vector_t& operator << (T&& v) { push (hb_forward<T> (v)); return *this; }
+ hb_vector_t& operator << (T&& v) { push (std::forward<T> (v)); return *this; }
hb_array_t< Type> as_array () { return hb_array (arrayZ, length); }
hb_array_t<const Type> as_array () const { return hb_array (arrayZ, length); }
@@ -182,7 +198,7 @@ struct hb_vector_t
// the created copy to leak memory since we won't have stored a
// reference to it.
return p;
- *p = hb_forward<T> (v);
+ *p = std::forward<T> (v);
return p;
}
@@ -239,7 +255,7 @@ struct hb_vector_t
Type pop ()
{
if (!length) return Null (Type);
- return hb_move (arrayZ[--length]); /* Does this move actually work? */
+ return std::move (arrayZ[--length]); /* Does this move actually work? */
}
void remove (unsigned int i)
@@ -295,6 +311,19 @@ struct hb_vector_t
template <typename Type>
struct hb_sorted_vector_t : hb_vector_t<Type>
{
+ hb_sorted_vector_t () = default;
+ ~hb_sorted_vector_t () = default;
+ hb_sorted_vector_t (hb_sorted_vector_t& o) = default;
+ hb_sorted_vector_t (hb_sorted_vector_t &&o) = default;
+ hb_sorted_vector_t (std::initializer_list<Type> lst) : hb_vector_t<Type> (lst) {}
+ template <typename Iterable,
+ hb_requires (hb_is_iterable (Iterable))>
+ hb_sorted_vector_t (const Iterable &o) : hb_vector_t<Type> (o) {}
+ hb_sorted_vector_t& operator = (const hb_sorted_vector_t &o) = default;
+ hb_sorted_vector_t& operator = (hb_sorted_vector_t &&o) = default;
+ friend void swap (hb_sorted_vector_t& a, hb_sorted_vector_t& b)
+ { hb_swap ((hb_vector_t<Type>&) (a), (hb_vector_t<Type>&) (b)); }
+
hb_sorted_array_t< Type> as_array () { return hb_sorted_array (this->arrayZ, this->length); }
hb_sorted_array_t<const Type> as_array () const { return hb_sorted_array (this->arrayZ, this->length); }
diff --git a/thirdparty/harfbuzz/src/hb-version.h b/thirdparty/harfbuzz/src/hb-version.h
index 70325f88eb..1a4f0bf62a 100644
--- a/thirdparty/harfbuzz/src/hb-version.h
+++ b/thirdparty/harfbuzz/src/hb-version.h
@@ -47,20 +47,20 @@ HB_BEGIN_DECLS
*
* The minor component of the library version available at compile-time.
*/
-#define HB_VERSION_MINOR 0
+#define HB_VERSION_MINOR 1
/**
* HB_VERSION_MICRO:
*
* The micro component of the library version available at compile-time.
*/
-#define HB_VERSION_MICRO 0
+#define HB_VERSION_MICRO 1
/**
* HB_VERSION_STRING:
*
* A string literal containing the library version available at compile-time.
*/
-#define HB_VERSION_STRING "3.0.0"
+#define HB_VERSION_STRING "3.1.1"
/**
* HB_VERSION_ATLEAST:
diff --git a/thirdparty/harfbuzz/src/hb.hh b/thirdparty/harfbuzz/src/hb.hh
index 829b5a1ab7..1f14267525 100644
--- a/thirdparty/harfbuzz/src/hb.hh
+++ b/thirdparty/harfbuzz/src/hb.hh
@@ -62,6 +62,7 @@
/* Error. Should never happen. */
#ifndef HB_NO_PRAGMA_GCC_DIAGNOSTIC_ERROR
+#pragma GCC diagnostic error "-Wbitwise-instead-of-logical"
#pragma GCC diagnostic error "-Wcast-align"
#pragma GCC diagnostic error "-Wcast-function-type"
#pragma GCC diagnostic error "-Wdelete-non-virtual-dtor"